中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

南通網(wǎng)站開發(fā)招聘按效果付費的網(wǎng)絡(luò)推廣方式

南通網(wǎng)站開發(fā)招聘,按效果付費的網(wǎng)絡(luò)推廣方式,施工企業(yè)會計分錄,長沙網(wǎng)站建設(shè)網(wǎng)站OpenStack與云計算 什么是云? 如何正確理解云,可以從以下幾個方面。 云的構(gòu)成。 用戶:對用戶而言是透明無感知的,不用關(guān)心底層構(gòu)成,只需要知道利用云完成自己任務即可。 云提供商:對云資產(chǎn)管理和運維。 云…

OpenStack與云計算

什么是云?
如何正確理解云,可以從以下幾個方面。
云的構(gòu)成。
用戶:對用戶而言是透明無感知的,不用關(guān)心底層構(gòu)成,只需要知道利用云完成自己任務即可。
云提供商:對云資產(chǎn)管理和運維。
云的特點。
彈性擴展;自助服務;標準接口方便二次開發(fā)和其他系統(tǒng)對接;付費和計量。
云的定義。
云是指你作為接受服務的對象,是云端,不管你在何時何地,都能享受云計算提供的服務。云是網(wǎng)絡(luò)、互聯(lián)網(wǎng)的一種比喻說法。
云分為私有云、公有云、混合云及行業(yè)云等等。
OpenStack
既是一個社區(qū),也是一個項目和一個開源軟件,提供了一個部署云的操作平臺或工具集。用OpenStack易于構(gòu)建虛擬計算或存儲服務的云,既可以為公有云、私有云,也可以為大云、小云提供可擴展、靈活的云計算。
OpenStack是一個管理計算、存儲和網(wǎng)絡(luò)資源的數(shù)據(jù)中心云計算開放平臺,通過一個儀表板,為管理員提供了所有的管理控制,同時通過Web界面為其用戶提供資源。

簡介

OpenStack部署方式多樣化,本文采用腳本方式部署OpenStack Q版本。私有云平臺搭建的各項軟件包、依賴包、安裝腳本等離線安裝,可滿足私有云平臺的搭建、云平臺的使用、各組件的運維操作等。

個人使用方面

1、DevStack
2、Rdo
3、手動部署
手動部署all-in-one、multi-node、multi-HA-node環(huán)境。

企業(yè)、團體方面

1、Puppet
2、ansible

構(gòu)建OpenStack私有云平臺

基本環(huán)境配置

image.png
云計算平臺的拓撲圖如圖1所示,IP地址規(guī)劃如下圖所示。
image.png
云計算IaaS控制節(jié)點
image.png

本次搭建采用雙節(jié)點安裝,即 controller node 控制節(jié)點和 compute node 計算節(jié)點。ens34為內(nèi)部管理網(wǎng)絡(luò),ens33 為外部網(wǎng)絡(luò)。存儲節(jié)點安裝操作系統(tǒng)時劃分兩個空白分區(qū)以 sda,sdb 為例。作為 cinder 和 swift存儲磁盤,搭建 ftp 服務器作為搭建云平臺的 yum 源。配置文件中密碼需要根據(jù)實際環(huán)境進行配置。

角色接口主機名IP地址用途
controller nodeens33controller192.168.150.10用于外部網(wǎng)絡(luò)
ens34192.168.200.10用于內(nèi)部管理網(wǎng)絡(luò)
compute nodeens33compute192.168.150.20用于外部網(wǎng)絡(luò)
ens34192.168.200.20用于內(nèi)部管理網(wǎng)絡(luò)
ceph nodeens33ceph1192.168.150.11后端分布式存儲
ceph nodeens33ceph2192.168.150.12后端分布式存儲
ceph nodeens33ceph3192.168.150.13后端分布式存儲
安裝CentOS7說明

【CentOS7版本】
:::info
CentOS7系統(tǒng)選擇1804版本:CentOS-7-x86_64-DVD-1804.iso 最小化安裝系統(tǒng)
controller node:4G內(nèi)存,40G存儲
:::
image.png
image.png
compute node:4G內(nèi)存,40G存儲,額外添加一塊100G硬盤作為cinder存儲。
image.png

配置網(wǎng)絡(luò)、主機名
controller節(jié)點

配置網(wǎng)絡(luò):
ens33: 192.168.150.10
ens34: 192.168.200.10

[root@controller ~]# nmcli con mod ens33 ipv4.method manual ipv4.address 192.168.150.10/24 ipv4.gateway 192.168.150.2 ipv4.dns 223.5.5.5 autoconnect yes
[root@controller ~]# nmcli con mod ens34 ipv4.method manual ipv4.address 192.168.200.10/24 autoconnect yes
[root@controller ~]# nmcli con up ens33
[root@controller ~]# nmcli con up ens34

配置主機名:

# hostnamectl set-hostname controller
# 按ctrl+d 退出  重新登陸
compute 節(jié)點

配置網(wǎng)絡(luò):
ens33: 192.168.150.20
ens34: 192.168.200.20

[root@compute ~]# nmcli con mod ens33 ipv4.method manual ipv4.address 192.168.150.20/24 ipv4.gateway 192.168.150.2 ipv4.dns 223.5.5.5 autoconnect yes
[root@compute ~]# nmcli con mod ens34 ipv4.method manual ipv4.address 192.168.200.20/24 autoconnect yes
[root@compute ~]# nmcli con up ens33
[root@compute ~]# nmcli con up ens34

配置主機名:

# hostnamectl set-hostname compute
# 按ctrl+d 退出  重新登陸
配置yum源(Controller和compute節(jié)點)

1)yum源備份

# cd /etc/yum.repos.d/
# mkdir bak_repo
# mv *.repo bak_repo/

2)創(chuàng)建repo文件
controller:

在/etc/yum.repos.d創(chuàng)建CentOS.repo源文件[root@controller yum.repos.d]# cat > CentOS.repo << EOF
[CentOS]
name=CentOS
baseurl=file:///opt/centos
gpgcheck=0
[iaas]
name=iaas
baseurl=file:///opt/iaas-repo
gpgcheck=0
EOF

compute:

在/etc/yum.repos.d創(chuàng)建CentOS.repo源文件[root@compute yum.repos.d]# cat > CentOS.repo << EOF
[CentOS]
name=CentOS
baseurl=ftp://192.168.150.10/centos
gpgcheck=0
[iaas]
name=iaas
baseurl=ftp://192.168.150.10/iaas-repo
gpgcheck=0
EOF

3)掛載iso文件

【掛載CentOS-7-x86_64-DVD-1804.iso】
[root@controller ~]# mount /dev/sr0 /mnt/
[root@controller ~]# mkdir /opt/centos
[root@controller ~]# cp -rf /mnt/* /opt/centos/
[root@controller ~]# umount  /mnt/
【掛載XianDian-IaaS-v2.4.iso】
[root@controller ~]# mount -o loop XianDian-IaaS-V2.4.iso /mnt/
[root@controller ~]# cp -rf /mnt/* /opt/
[root@controller ~]# umount  /mnt/

4)搭建ftp服務器,開啟并設(shè)置自啟

[root@controller ~]# yum install vsftpd -y
[root@controller ~]# vi /etc/vsftpd/vsftpd.conf
添加anon_root=/opt/保存退出[root@controller ~]# systemctl enable --now vsftpd

5)配置防火墻和Selinux

【controller/compute】
編輯selinux文件# sed -i '/^SELINUX=/ c SELINUX=disabled' /etc/selinux/config
# setenforce 0
編輯環(huán)境變量

controller和compute節(jié)點

yum install iaas-xiandian -y

編輯文件/etc/xiandian/openrc.sh,此文件是安裝過程中的各項參數(shù),根據(jù)每項參數(shù)上一行的說明及服務器實際情況進行配置。

vim etc/xiandian/openrc.shHOST_IP=192.168.150.10
HOST_PASS=redhat
HOST_NAME=controller
HOST_IP_NODE=192.168.150.20
HOST_PASS_NODE=redhat
HOST_NAME_NODE=compute
network_segment_IP=192.168.150.0/24
RABBIT_USER=redhat
RABBIT_PASS=redhat
DB_PASS=redhat
DOMAIN_NAME=demo
ADMIN_PASS=redhat
DEMO_PASS=redhat
KEYSTONE_DBPASS=redhat
GLANCE_DBPASS=redhat
GLANCE_PASS=redhat
NOVA_DBPASS=redhat
NOVA_PASS=redhat
NEUTRON_DBPASS=redhat
NEUTRON_PASS=redhat
METADATA_SECRET=redhat
INTERFACE_IP=192.168.150.10/192.168.150.20(controllerIP/computeIP)
INTERFACE_NAME=enp9s0 (外部網(wǎng)絡(luò)網(wǎng)卡名稱)
Physical_NAME=provider (外部網(wǎng)絡(luò)適配器名稱)
minvlan=101 (vlan網(wǎng)絡(luò)范圍的第一個vlanID)
maxvlan=200 (vlan網(wǎng)絡(luò)范圍的最后一個vlanID)
CINDER_DBPASS=redhat
CINDER_PASS=redhat
BLOCK_DISK=sdb1 (空白分區(qū))
SWIFT_PASS=redhat
OBJECT_DISK=sdb2 (空白分區(qū))
STORAGE_LOCAL_NET_IP=192.168.150.20
HEAT_DBPASS=redhat
HEAT_PASS=redhat
ZUN_DBPASS=redhat
ZUN_PASS=redhat
KURYR_DBPASS=redhat
KURYR_PASS=redhat
CEILOMETER_DBPASS=redhat
CEILOMETER_PASS=redhat
AODH_DBPASS=redhat
AODH_PASS=redhat
通過腳本安裝服務

Compute節(jié)點:劃分兩個分區(qū)

[root@compute ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x0e7a20a8.Command (m for help): n
Partition type:
p   primary (0 primary, 0 extended, 4 free)
e   extended
Select (default p): p
Partition number (1-4, default 1):
First sector (2048-629145599, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-629145599, default 629145599): +150G
Partition 1 of type Linux and of size 150 GiB is setCommand (m for help): n
Partition type:
p   primary (1 primary, 0 extended, 3 free)
e   extended
Select (default p):
Using default response p
Partition number (2-4, default 2):
First sector (314574848-629145599, default 314574848):
Using default value 314574848
Last sector, +sectors or +size{K,M,G} (314574848-629145599, default 629145599):
Using default value 629145599
Partition 2 of type Linux and of size 150 GiB is setCommand (m for help): pDisk /dev/sdb: 322.1 GB, 322122547200 bytes, 629145600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0e7a20a8Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048   314574847   157286400   83  Linux
/dev/sdb2       314574848   629145599   157285376   83  LinuxCommand (m for help): w
The partition table has been altered!Calling ioctl() to re-read partition table.
Syncing disks.

基礎(chǔ)配置操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:

Controller節(jié)點和Compute節(jié)點

執(zhí)行腳本iaas-pre-host.sh進行安裝
腳本主要完成安裝OpenStack包、配置hosts解析、安裝chrony服務
[root@controller ~]# iaas-pre-host.sh

安裝完成后同時重啟

[root@controller ~]# reboot

通過腳本安裝數(shù)據(jù)庫服務

基礎(chǔ)服務的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:

Controller節(jié)點

執(zhí)行腳本iaas-install-mysql.sh進行安裝

安裝Keystone認證服務

#Controller
通過腳本安裝keystone服務
認證服務的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:
腳本主要完成安裝keystone軟件、創(chuàng)建keystone數(shù)據(jù)庫、配置數(shù)據(jù)庫連接、為keystone服務創(chuàng)建數(shù)據(jù)庫表、創(chuàng)建令牌、創(chuàng)建簽名密鑰和證書、定義用戶、租戶和角色、配置環(huán)境變量。

Controller節(jié)點

執(zhí)行腳本iaas-install-keystone.sh進行安裝。

安裝Glance鏡像服務

#Controller
通過腳本安裝glance服務
鏡像服務的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:
腳本主要完成安裝glance軟件包、創(chuàng)建glance數(shù)據(jù)庫、配置數(shù)據(jù)庫連接、為鏡像服務創(chuàng)建數(shù)據(jù)庫表、創(chuàng)建用戶、配置鏡像服務、創(chuàng)建Endpoint和API端點、啟動服務。

Controller 節(jié)點

執(zhí)行腳本iaas-install-glance.sh進行安裝

安裝Nova計算服務

#Controller
通過腳本安裝nova服務 計算服務的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:
#Controller節(jié)點
執(zhí)行腳本iaas-install-nova-controller.sh進行安裝

#Compute節(jié)點
執(zhí)行腳本iaas-install-nova-compute.sh進行安裝

安裝Neutron網(wǎng)絡(luò)服務

#Controller節(jié)點
通過腳本安裝neutron服務
網(wǎng)絡(luò)服務的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:
#Controller節(jié)點
執(zhí)行腳本iaas-install-neutron-controller.sh進行安裝
#Compute節(jié)點
執(zhí)行腳本iaas-install-neutron-compute.sh進行安裝

安裝Dashboard服務
通過腳本安裝dashboard服務

dashboard的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:
#Controller節(jié)點
執(zhí)行腳本iaas-install-dashboard.sh進行安裝

訪問dashboard

打開瀏覽器訪問Dashboard
http://controller(或本機內(nèi)網(wǎng)ip)/dashboard
注:檢查防火墻規(guī)則,確保允許http服務相關(guān)端口通行,或者關(guān)閉防火墻。
image.png
image.png

OpenStack命令補全

設(shè)置openstack命令補全
很多時候,在輸入openstack命令的時候總感覺重復手打輸入和記不住想不起來命令時,很困擾,所以為了解決這個問題,下面提供一種方法:

首先執(zhí)行安裝命令:
[root@controller ~]# yum -y install bash-completion
將命令寫入到/etc/bash_completion.d/中,這個路徑一定要寫正確:
[root@controller ~]# openstack complete >> /etc/bash_completion.d/complete
最后執(zhí)行以下命令即可,最后reboot,即可生效
[root@controller ~]# echo "source /etc/bash_completion.d/complete" >> ~/.bashrc
安裝Cinder塊存儲服務

通過腳本安裝Cinder服務
塊存儲服務的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:

#Controller
執(zhí)行腳本iaas-install-cinder-controller.sh進行安裝
#Compute節(jié)點
執(zhí)行腳本iaas-install-cinder-compute.sh進行安裝

安裝Swift對象存儲服務

通過腳本安裝Swift服務
對象存儲服務的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:

#Controller
執(zhí)行腳本iaas-install-swift-controller.sh進行安裝
#Compute節(jié)點
執(zhí)行腳本iaas-install-swift-compute.sh進行安裝

安裝Heat編配服務

Controller節(jié)點

通過腳本安裝heat服務
編配服務的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:
#Controller節(jié)點
執(zhí)行腳本iaas-install-heat.sh進行安裝

安裝Ceilometer監(jiān)控服務

通過腳本安裝Ceilometer服務
ceilometer監(jiān)控服務的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:
#Controller節(jié)點
執(zhí)行腳本iaas-install-ceilometer-controller.sh進行安裝
#Compute節(jié)點
執(zhí)行腳本iaas-install-ceilometer-compute.sh進行安裝

安裝Aodh監(jiān)控服務

通過腳本安裝Aodh服務
Alarm監(jiān)控服務的操作命令已經(jīng)編寫成shell腳本,通過腳本進行一鍵安裝。如下:
#Controller節(jié)點
執(zhí)行腳本iaas-install-aodh.sh進行安裝

構(gòu)建ceph分布式存儲

基本環(huán)境配置

本文將通過ceph-deloy工具,一個集群自動化部署工具,使用較久,成熟穩(wěn)定,被很多自動化工具所集成,可用于生產(chǎn)部署。

安裝CentOS7說明

【CentOS7版本】
CentOS7系統(tǒng)選擇2009版本:CentOS-7-x86_64-Minimal-2009.iso 最小化安裝系統(tǒng)
規(guī)劃:
image.png

三臺CentOS7.9服務器,2核CPU,2G內(nèi)存,根磁盤50GB,新增3塊硬盤(sdb、sdc、sdd)其中sdb 200G硬盤,sdc和sdd各100G,sdb劃分兩個分區(qū)各100G,作為journal跟cache的緩存盤,sdc和sdd作為數(shù)據(jù)共享盤。

集群ceph1管理IP:192.168.150.11
集群ceph2管理IP:192.168.150.12
集群ceph3管理IP:192.168.150.13
配置網(wǎng)絡(luò)、主機名
關(guān)閉防火墻關(guān)閉selinux
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
同步時間
yum install chrony -y
sed -i -e '3,6 s/^/#/' -e '3 c server ntp1.aliyun.com iburst' /etc/chrony.conf
systemctl enable --now chronyd
chronyc sources
分別修改三臺機器hostname
hostnamectl set-hostname ceph1
hostnamectl set-hostname ceph2
hostnamectl set-hostname ceph3
在三臺機器分別添加配置hosts
cat >> /etc/hosts << EOF
192.168.150.11 ceph1
192.168.150.12 ceph2
192.168.150.13 ceph3
EOF
配置ceph1到所有節(jié)點root用戶免密鑰互信。
[root@ceph1 ~]# ssh-keygen -f ~/.ssh/id_rsa -N '' -q
# 公鑰分發(fā)到所有節(jié)點
[root@ceph1 ~]# for i in ceph1 ceph2 ceph3 ; do ssh-copy-id $i; done
配置本地yum源。

ceph1配置為yum倉庫服務器,其他節(jié)點使用ftp方式使用ceph倉庫

# 上傳ceph.iso到ceph1
[root@ceph1 ~]# ll ceph.iso
-rw-r--r-- 1 root root 2408808448 Mar 18 09:15 ceph.iso# 安裝httpd并設(shè)置為開機自啟動
[root@ceph1 ~]# yum install -y vsftpd
[root@ceph1 ~]# systemctl enable vsftpd --now# 掛載ceph.iso到/var/ftp
[root@ceph1 ~]# mkdir /var/ftp/ceph
[root@ceph1 ~]# echo "/root/ceph.iso  /var/ftp/ceph  iso9660 defaults 0 0" >> /etc/fstab 
[root@ceph1 ~]# mount -a
# yum文件ceph.repo由后面的ceph-deploy工具安裝時自動生成。
部署ceph集群

步驟一:安裝ceph-deploy
重要:直接設(shè)置環(huán)境變量即可,否則集群部署過程將使用官方y(tǒng)um源。

[root@ceph1 ~]# export CEPH_DEPLOY_REPO_URL=ftp://ceph1/ceph/
在ceph1上安裝部署工具。
Ceph官方推出了一個用python寫的工具 cpeh-deploy,可以很大的簡化ceph集群的配置過程[root@ceph1 ~]# yum install /var/ftp/ceph/noarch/ceph-deploy-2.0.1-0.noarch.rpm 
# 注意:安裝高版本的ceph-deploy,否則后面配置會報錯
ceph1上創(chuàng)建工作目錄
[root@ceph1 ~]# mkdir /ceph-cluster
[root@ceph1 ~]# cd /ceph-cluster

步驟二:創(chuàng)建ceph集群,在/ceph-cluster目錄下生成配置文件。

創(chuàng)建ceph集群

創(chuàng)建一個新集群,并設(shè)置mon節(jié)點。

ceph1-ceph3添加epel源wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
[root@ceph1 ceph-cluster]# ceph-deploy new ceph1 ceph2 ceph3
[root@ceph1 ceph-cluster]# ll
total 16
-rw-r--r-- 1 root root  235 Mar 18 09:19 ceph.conf
-rw-r--r-- 1 root root 4852 Mar 18 09:19 ceph-deploy-ceph.log
-rw------- 1 root root   73 Mar 18 09:19 ceph.mon.keyring
給所有節(jié)點安裝ceph相關(guān)軟件包。
[root@ ceph1 ceph-cluster]# ceph-deploy install ceph1 ceph2 ceph3
添加監(jiān)控節(jié)點
初始化所有節(jié)點的mon服務,也就是啟動mon服務。
[root@ceph1 ceph-cluster]# ceph-deploy mon create-initial
# 作用是將ceph.conf配置文件拷貝到所有mon節(jié)點,并將ceph-mon服務啟動并設(shè)置開機自啟
創(chuàng)建ceph管理節(jié)點(mgr)
注意:每個運行了mon的節(jié)點上都需要安裝mgr節(jié)點
[root@ceph1 ceph-cluster]# ceph-deploy mgr create ceph1 ceph2 ceph3 

步驟三:準備日志磁盤分區(qū)
注意:sdb1和sdb2兩個分區(qū)用來做存儲服務器的journal緩存盤。生產(chǎn)中固態(tài)用于緩存,sas用戶共享。

格式化sdb
[root@ceph1 ceph-cluster]# for i in ceph{1..3}
dossh $i parted /dev/sdb mklabel gptssh $i parted /dev/sdb mkpart primary 1 50%ssh $i parted /dev/sdb mkpart primart 50% 100%
done
磁盤分區(qū)后的默認權(quán)限無法讓ceph對其進行讀寫操作,需要修改權(quán)限。
[root@ceph1 ceph-cluster]# for i in ceph{1..3}
dossh $i chown ceph.ceph /dev/sdb1 /dev/sdb2
done

以上操作服務器重啟后再次重值導致授權(quán)失效,所以需要把規(guī)則寫到配置文件實現(xiàn)永久有效。

規(guī)則1:如果設(shè)備名為/dev/sdb1,則設(shè)備文件的擁有者和擁有組為ceph
規(guī)則2:如果設(shè)備名為/dev/sdb2,則設(shè)備文件的擁有者和擁有組為ceph

[root@ceph1 ceph-cluster]# vim /etc/udev/rules.d/70-sdb.rules
ENV{DEVNAME}=="/dev/sdb1",OWNER="ceph",GROUP="ceph"
ENV{DEVNAME}=="/dev/sdb2",OWNER="ceph",GROUP="ceph"

復制到其他osd節(jié)點

[root@ceph1 ceph-cluster]# for i in ceph{2..3}
doscp /etc/udev/rules.d/70-sdb.rules $i:/etc/udev/rules.d/
done

步驟四:創(chuàng)建OSD存儲空間

初始化清空磁盤數(shù)據(jù)(僅在ceph1操作)

注意ceph-deploy v2.0.0開始不再使用ceph-disk命令來初始化osd磁盤,如果還使用舊的命令初始磁盤報錯

[root@ceph1 ceph-cluster]# for i in ceph{1..3}
dossh $i parted /dev/sdc mklabel gptssh $i parted /dev/sdd mklabel gpt
done

#清理磁盤

[root@ceph1 ceph-cluster]# for i in ceph{1..3}
do ssh $i ceph-volume lvm zap /dev/sdcssh $i ceph-volume lvm zap /dev/sdd
done
創(chuàng)建OSD存儲空間
// 創(chuàng)建osd存儲設(shè)備,sdc提供存儲空間,sdb1提供緩存
[root@ceph1 ceph-cluster]# ceph-deploy osd create --data /dev/sdc --journal /dev/sdb1 ceph1
[root@ceph1 ceph-cluster]# ceph-deploy osd create --data /dev/sdd --journal /dev/sdb2 ceph1
[root@ceph1 ceph-cluster]# ceph-deploy osd create --data /dev/sdc --journal /dev/sdb1 ceph2
[root@ceph1 ceph-cluster]# ceph-deploy osd create --data /dev/sdd --journal /dev/sdb2 ceph2
[root@ceph1 ceph-cluster]# ceph-deploy osd create --data /dev/sdc --journal /dev/sdb1 ceph3
[root@ceph1 ceph-cluster]# ceph-deploy osd create --data /dev/sdd --journal /dev/sdb2 ceph3

步驟五:查看ceph狀態(tài),驗證在主節(jié)點生成的ceph.client.admin.keyring文件拷貝至所有節(jié)點的/etc/ceph下

[root@ceph1 ceph-cluster]# ceph-deploy admin ceph1 ceph2 ceph3# 檢查集群狀態(tài):使用命令 ceph health 或者 ceph -s
[root@ceph1 ceph-cluster]# ceph health
HEALTH_OK
[root@ceph1 ~]# ceph -scluster:id:     55eafb95-ab53-4045-9c64-82d2726a6b31health: HEALTH_OKservices:mon: 3 daemons, quorum ceph1,ceph2,ceph3 (age 68m)mgr: ceph1(active, since 68m), standbys: ceph3, ceph2osd: 6 osds: 6 up (since 75s), 6 in (since 75s)data:pools:   0 pools, 0 pgsobjects: 0 objects, 0 Busage:   6.0 GiB used, 594 GiB / 600 GiB avail
pgs:   

步驟六:啟用dashboard自 nautilus開始,dashboard作為一個單獨的模塊獨立出來了,使用時需要在所有的mgr節(jié)點上單獨安裝

# 在所有的mgr節(jié)點上單獨安裝
[root@ceph1 ceph-cluster]# for i in ceph{1..3}
dossh $i yum install -y ceph-mgr-dashboard
done# 啟用dashboard
[root@ceph1 ceph-cluster]# ceph mgr module enable dashboard --force
# 默認啟用SSL/TLS,所以需要創(chuàng)建自簽名根證書
[root@ceph1 ceph-cluster]# ceph dashboard create-self-signed-cert# 創(chuàng)建具有管理員角色的用戶
[root@ceph1 ceph-cluster]# ceph dashboard ac-user-create admin admin administrator
{"username": "admin", "lastUpdate": 1616031372, "name": null, "roles": ["administrator"], "password": "$2b$12$4wa4pCKkDf.pvDO9LFldZuwn1GRt.W6zDXvV9QHxnjovrmpA3inWS",
"email": null}# 查看ceph-mgr服務
[root@ceph1 ~]# ceph mgr services
{"dashboard": "https://ceph1:8443/"
}

image.png
image.png
(注)如果儀表盤(dashboard)密碼忘了,可以使用以下命令重置密碼
ceph dashboard ac-user-set-password admin “RedHat@123”

ceph和openstack集成

OpenStack 使用 Ceph 作為后端存儲可以帶來以下好處:

  • 不需要購買昂貴的商業(yè)存儲設(shè)備,降低 OpenStack 的部署成本
  • Ceph 同時提供了塊存儲、文件系統(tǒng)和對象存儲,能夠完全滿足 OpenStack 的存儲類型需求
  • RBD COW 特性支持快速的并發(fā)啟動多個 OpenStack 實例
  • 為 OpenStack 實例默認的提供持久化卷
  • 為 OpenStack 卷提供快照、備份以及復制功能
  • 為 Swift 和 S3 對象存儲接口提供了兼容的 API 支持
配置Ceph環(huán)境

首先,openstack和ceph節(jié)點統(tǒng)一hosts解析:

192.168.150.11 ceph1
192.168.150.12 ceph2
192.168.150.13 ceph3
192.168.150.10 controller
192.168.150.20 compute
創(chuàng)建后端需要的存儲池(ceph-01節(jié)點操作)
# cinder卷的存儲池
root@ceph1:~# ceph osd pool create volumes 32
# glance存儲池
root@ceph1:~# ceph osd pool create images 32
# 備份存儲池
root@ceph1:~# ceph osd pool create backups 32
# 創(chuàng)建實例存儲池
root@ceph1:~# ceph osd pool create vms 32# 查看存儲池
root@ceph1:~# ceph osd pool ls
volumes
images
backups
vms
root@ceph1:~# ceph osd pool ls detail
pool 1 'volumes' replicated size 3 min_size 2 crush_rule 0 object_hash rjenkins pg_num 32 pgp_num 32 autoscale_mode warn last_change 68 flags hashpspool stripe_width 0
pool 2 'images' replicated size 3 min_size 2 crush_rule 0 object_hash rjenkins pg_num 32 pgp_num 32 autoscale_mode warn last_change 71 flags hashpspool stripe_width 0
pool 3 'backups' replicated size 3 min_size 2 crush_rule 0 object_hash rjenkins pg_num 32 pgp_num 32 autoscale_mode warn last_change 74 flags hashpspool stripe_width 0
pool 4 'vms' replicated size 3 min_size 2 crush_rule 0 object_hash rjenkins pg_num 32 pgp_num 32 autoscale_mode warn last_change 77 flags hashpspool stripe_width 0
創(chuàng)建后端用戶

2.1創(chuàng)建密鑰(ceph1節(jié)點操作)
在ceph上創(chuàng)建cinder、glance、cinder-backup、nova用戶創(chuàng)建密鑰,允許訪問使用Ceph存儲池

2.1.1創(chuàng)建用戶client.cinder

對volumes存儲池有rwx權(quán)限,對vms存儲池有rwx權(quán)限,對images池有rx權(quán)限

root@ceph1:~# ceph auth get-or-create client.cinder mon “allow r” osd “allow class-read object_prefix rbd_children,allow rwx pool=volumes,allow rwx pool=vms,allow rx pool=images”

class-read:x的子集,授予用戶調(diào)用類讀取方法的能力 object_prefix 通過對象名稱前綴。下例將訪問限制為任何池中名稱僅以 rbd_children 為開頭的對象。

2.1.2 創(chuàng)建用戶client.glance

對images存儲池有rwx權(quán)限

root@ceph1:~# ceph auth get-or-create client.glance mon “allow r” osd “allow class-read object_prefix rbd_children,allow rwx pool=images”

2.1.3 創(chuàng)建用戶client.cinder-backup

對backups存儲池有rwx權(quán)限

root@ceph1:~# ceph auth get-or-create client.cinder-backup mon “profile rbd” osd “profile rbd pool=backups”
使用 rbd profile 為新的 cinder-backup 用戶帳戶定義訪問權(quán)限。然后,客戶端應用使用這一帳戶基于塊來訪問利用了 RADOS 塊設(shè)備的 Ceph 存儲。

2.2 導出密鑰(ceph-01節(jié)點操作)

# 切換到ceph目錄
root@ceph1:~# cd /etc/ceph/# 導出glance密鑰
root@ceph1:/etc/ceph# ceph auth get client.glance -o ceph.client.glance.keyring# 導出cinder密鑰
root@ceph1:/etc/ceph# ceph auth get client.cinder -o ceph.client.cinder.keyring# 導出cinder-backup密鑰
root@ceph1:/etc/ceph# ceph auth get client.cinder-backup -o ceph.client.cinder-backup.keyring
拷貝密鑰

3.1 創(chuàng)建存放目錄(openstack節(jié)點執(zhí)行)

root@controller:~# mkdir /etc/ceph/

3.2 拷貝密鑰到控制節(jié)點(ceph1節(jié)點操作)

# 拷貝glance密鑰
root@ceph1:/etc/ceph# scp ceph.client.glance.keyring root@controller:/etc/ceph/# 拷貝cinder密鑰
root@ceph-01:/etc/ceph# scp ceph.client.cinder.keyring root@controller:/etc/ceph/# 拷貝ceph集群認證配置文件
root@ceph-01:/etc/ceph# scp ceph.conf root@controller:/etc/ceph/

3.3 拷貝密鑰到計算節(jié)點(ceph-01節(jié)點操作)

# 拷貝cinder密鑰
[root@compute ~]# mkdir /etc/ceph
root@ceph1:/etc/ceph# scp ceph.client.cinder.keyring root@compute:/etc/ceph/# 拷貝cinder-backup密鑰(backup服務節(jié)點)
root@ceph1:/etc/ceph# scp ceph.client.cinder-backup.keyring root@compute:/etc/ceph/# 拷貝ceph集群認證配置文件
root@ceph1:/etc/ceph# scp ceph.conf root@compute:/etc/ceph/
添加libvirt密鑰(計算節(jié)點執(zhí)行)
# 生成密鑰(PS:注意,如果有多個計算節(jié)點,它們的UUID必須一致)
root@compute:~# cd /etc/ceph/
root@compute:/etc/ceph# UUID=bf168fa8-8d5b-4991-ba4c-12ae622a98b1
root@compute:/etc/ceph# cat >> secret.xml << EOF
<secret ephemeral='no' private='no'><uuid>$UUID</uuid><usage type='ceph'><name>client.cinder secret</name></usage>
</secret>
EOF# 執(zhí)行命令寫入secret
[root@compute ~]# virsh secret-define --file secret.xml# 查看添加后端密鑰
root@compute ~:/etc/ceph# virsh secret-listUUID                                   Usage
-------------------------------------------------------------------bf168fa8-8d5b-4991-ba4c-12ae622a98b1   ceph client.cinder secret# 加入key
# 將key值復制出來
[root@compute ~]# cat ceph.client.cinder.keyring
AQCvztRk8ssALhAAXshR1E+Y90HvIyxkhal1cQ==[root@compute ~]# virsh secret-set-value --secret ${UUID} --base64 $(cat ceph.client.cinder.keyring | grep key | awk -F ' ' '{print $3}')
注意:本文controller節(jié)點復用計算節(jié)點,執(zhí)行相同操作。
安裝ceph客戶端(openstack所有節(jié)點執(zhí)行)
# 主要作用是OpenStack可調(diào)用Ceph資源
root@controller:~# yum install -y ceph-common
root@compute:~# yum install -y ceph-common
ceph和openstack glance集成
配置glance后端存儲(控制節(jié)點執(zhí)行)
# 更改glance密鑰屬性
root@controller:~# chown glance.glance /etc/ceph/ceph.client.glance.keyring# 修改配置文件
root@controller:~# cp /etc/glance/glance-api.conf{,.bak}
root@controller:~# vim /etc/glance/glance-api.conf
root@controller:~# sed -n "14,23p" /etc/glance/glance-api.conf
[DEFAULT]
...
# enable COW cloning of images
show_image_direct_url = True
[glance_store]# stores = file,http
# default_store = file
# filesystem_store_datadir = /var/lib/glance/images/stores = rbd,file,http
default_store = rbd
rbd_store_pool = images
rbd_store_user = glance
rbd_store_ceph_conf = /etc/ceph/ceph.conf
rbd_store_chunk_size = 8# 重啟生效ceph配置
root@controller:~# systemctl restart openstack-glance-api.service# 設(shè)置開機自啟動
root@controller:~# systemctl enable openstack-glance-api.service# 配置管理員環(huán)境變量
root@controller ~# vim admin-openrc.sh
export OS_PROJECT_DOMAIN_NAME=default
export OS_USER_DOMAIN_NAME=default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=redhat
export OS_AUTH_URL=http://192.168.150.10:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2
export PS1='[\u@\h \W(keystone_admin)]\$ '
# 上傳鏡像
root@controller ~# 
root@controller ~# ll CentOS-7-x86_64-GenericCloud-2009.qcow2
-rw-r--r--. 1 root root 888995840 Dec 23 13:04 CentOS-7-x86_64-GenericCloud-2009.qcow2root@controller:~# openstack image create centos7 --disk-format qcow2 --file CentOS-7-x86_64-GenericCloud-2009.qcow2 --public
# openstack image list
+--------------------------------------+---------+--------+--------+
| ID                                    | Name  | Status |
+--------------------------------------+---------+--------+--------+
| 88342def-69e7-4aaa-a8d2-936473b0cb0e | centos7 | active |
+--------------------------------------+---------+--------+--------+
驗證鏡像(ceph1節(jié)點執(zhí)行)
root@ceph1:/etc/ceph# rbd ls images
88342def-69e7-4aaa-a8d2-936473b0cb0e[root@ceph1 ceph]# ceph df
RAW STORAGE:CLASS     SIZE        AVAIL       USED        RAW USED     %RAW USED hdd       600 GiB     591 GiB     2.6 GiB      8.6 GiB          1.43 TOTAL     600 GiB     591 GiB     2.6 GiB      8.6 GiB          1.43 POOLS:POOL        ID     STORED      OBJECTS     USED        %USED     MAX AVAIL volumes      1         0 B           0         0 B         0       187 GiB images       2     848 MiB         112     2.5 GiB      0.44       187 GiB backups      3         0 B           0         0 B         0       187 GiB vms          4         0 B           0         0 B         0       187 GiB 
ceph和openstack cinder集成
更改cinder密鑰屬性(openstack節(jié)點執(zhí)行)
root@controller:~# chown cinder.cinder /etc/ceph/ceph.client.cinder.keyring
root@compute:~# chown cinder.cinder /etc/ceph/ceph.client.cinder.keyring
修改cinder配置文件

控制節(jié)點執(zhí)行

# 指定存儲類型,否則在創(chuàng)建卷時,類型為 __DEFAULT__
root@controller:~# vim /etc/cinder/cinder.conf
root@controller:~# sed -n "1,2p" /etc/cinder/cinder.conf
[DEFAULT]
default_volume_type = ceph# 重啟服務生效配置
root@controller:~# systemctl restart openstack-cinder-scheduler.service
# 計算節(jié)點執(zhí)行
root@compute:~# vim /etc/cinder/cinder.conf
root@compute:/etc/ceph# sed -n "1,2p;28,39p" /etc/cinder/cinder.conf[DEFAULT]
#enabled_backends = lvm
enabled_backends = ceph,lvm[ceph]
volume_driver = cinder.volume.drivers.rbd.RBDDriver
rbd_pool = volumes
rbd_ceph_conf = /etc/ceph/ceph.conf
rbd_flatten_volume_from_snapshot = false
rbd_max_clone_depth = 5
rbd_store_chunk_size = 4
rados_connect_timeout = -1
glance_api_version = 2
rbd_user = cinder
rbd_secret_uuid = bf168fa8-8d5b-4991-ba4c-12ae622a98b1
volume_backend_name = ceph# 重啟服務生效配置
root@compute:/etc/ceph# systemctl restart openstack-cinder-volume.service
創(chuàng)建卷類型(控制節(jié)點執(zhí)行)
# 創(chuàng)建卷類型
root@controller:~# openstack volume type create ceph
root@controller:~# openstack volume type create lvm# 設(shè)置卷類型元數(shù)據(jù)
root@controller:~# cinder --os-username admin --os-tenant-name admin type-key ceph set volume_backend_name=ceph
root@controller:~# cinder --os-username admin --os-tenant-name admin type-key lvm set volume_backend_name=lvm
# 查看存儲類型root@controller:~# openstack volume type list
+--------------------------------------+------+-----------+--------+
| ID                                   | Name | Is Public |
+--------------------------------------+---------+--------+--------+
| a64c49a3-b5a2-4c2d-a26f-ba392f91d22f | lvm  | True   |
| 2e42be46-1f70-481f-9db0-8638547e9011 | ceph | True   |
+--------------------------------------+------+-----------+--------+# 創(chuàng)建卷測試
root@controller:~# openstack volume create ceph01 --type ceph --size 1
# 查看volumes存儲池是否存在卷
root@ceph1:/etc/ceph# rbd ls volumes
volume-22ddb8e3-7390-4390-be67-dbd83ea1394f 
配置cinder卷備份
配置卷備份(計算節(jié)點執(zhí)行)
# 更改密鑰屬性
root@compute:/etc/ceph# chown cinder.cinder /etc/ceph/ceph.client.cinder-backup.keyring# 修改配置文件
root@compute-01:/etc/ceph# vim /etc/cinder/cinder.conf
root@compute-01:/etc/ceph# sed -n "1,9p" /etc/cinder/cinder.conf
[DEFAULT]
backup_driver = cinder.backup.drivers.ceph.CephBackupDriver
backup_ceph_conf=/etc/ceph/ceph.conf
backup_ceph_user = cinder-backup
backup_ceph_chunk_size = 4194304
backup_ceph_pool = backups
backup_ceph_stripe_unit = 0
backup_ceph_stripe_count = 0
restore_discard_excess_bytes = true# 重啟生效配置
root@compute-01:/etc/ceph# systemctl restart openstack-cinder-backup.service# 設(shè)置開機自啟動
root@compute-01:/etc/ceph# systemctl enable openstack-cinder-backup.service
創(chuàng)建卷備份(控制節(jié)點執(zhí)行)
root@controller:~# openstack volume backup create --name ceph_backup ceph01
驗證卷備份(ceph1節(jié)點執(zhí)行)
root@ceph1:/etc/ceph# rbd ls backups
volume-22ddb8e3-7390-4390-be67-dbd83ea1394f.backup.base
ceph和openstack nova集成

注意:vmware嵌套虛擬化環(huán)境需要修改nova配置文件,修改virt_type=qemu,然后重啟nova-compute服務。

修改nova配置文件(計算節(jié)點執(zhí)行)
# 修改nova配置文件root@compute:/etc/ceph# vim /etc/nova/nova.conf
root@compute:/etc/ceph# sed -n "1,2p;47,52p" /etc/nova/nova.conf
[DEFAULT]
live_migration_flag = "VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE"[libvirt]
images_type = rbd
images_rbd_pool = vms
images_rbd_ceph_conf = /etc/ceph/ceph.conf
rbd_user = cinder
rbd_secret_uuid = bf168fa8-8d5b-4991-ba4c-12ae622a98b1# 重啟nova服務生效配置
root@compute1:/etc/ceph# systemctl restart openstack-nova-compute.service
創(chuàng)建實例測試(控制節(jié)點執(zhí)行)
# 創(chuàng)建云主機類型
openstack flavor create --vcpus 1 --ram 2048 --disk 20 --public m1.web# 創(chuàng)建外部網(wǎng)絡(luò)
openstack network create --share --external --provider-physical-network provider 
--provider-network-type flat public
# 創(chuàng)建子網(wǎng)
openstack subnet create --network public --allocation-pool start=192.168.150.100,end=192.168.150.200 --dns-nameserver 223.5.5.5 --gateway 192.168.150.2 --subnet-range 192.168.150.0/24 public_150# 創(chuàng)建云主機
openstack server create --flavor m1.web --image centos7 --security-group default --nic net-id=ba8a9f55-9d0e-4f08-9db7-e38ea8526ab4 vm01

image.png

驗證是否到ceph中的vms存儲池(ceph1節(jié)點執(zhí)行)
oot@ceph1:/etc/ceph# rbd ls vms
ae046a56-79d5-46b0-a62a-380fc677a3e4_disk在存儲節(jié)點Ceph OSD使能pool
[root@ceph1 ceph]# ceph osd pool application enable volumes rbd
enabled application 'rbd' on pool 'volumes'
[root@ceph1 ceph]# ceph osd pool application enable vms rbd
enabled application 'rbd' on pool 'vms'
[root@ceph1 ceph]# ceph osd pool application enable images rbd
enabled application 'rbd' on pool 'images'
[root@ceph1 ceph]# ceph osd pool application enable backups rbd
enabled application 'rbd' on pool 'backups'

查看ceph狀態(tài)
image.png

http://www.risenshineclean.com/news/43219.html

相關(guān)文章:

  • html5手機網(wǎng)站開發(fā)區(qū)別百度快照推廣
  • 建設(shè)網(wǎng)站必備條件長春網(wǎng)站建設(shè)推廣
  • 大于二高端網(wǎng)站建設(shè)新手seo入門教程
  • 網(wǎng)站標簽怎么做重慶網(wǎng)站網(wǎng)絡(luò)推廣
  • 淄博北京網(wǎng)站建設(shè)手機百度搜索引擎入口
  • 做網(wǎng)站收費標準哪個平臺可以免費打廣告
  • 網(wǎng)站在建設(shè)時不容忽略的一些細節(jié)最權(quán)威的排行榜網(wǎng)站
  • 網(wǎng)站建設(shè)中模板下載武漢百度開戶代理
  • 百度搜索不到asp做的網(wǎng)站天津搜狗seo推廣
  • 網(wǎng)站建設(shè)哪個空間比較好網(wǎng)站怎么優(yōu)化到首頁
  • 上海簡站商貿(mào)有限公司seo基礎(chǔ)理論
  • 做任務傭金網(wǎng)站源碼互聯(lián)網(wǎng)營銷培訓平臺
  • 公眾號編輯 wordpress魔貝課凡seo
  • 聚美優(yōu)品網(wǎng)站怎么做的最新的即時比分
  • 白糖貿(mào)易怎么做網(wǎng)站廈門seo公司到1火星
  • 外貿(mào)網(wǎng)站建設(shè)設(shè)計杭州做seo的公司
  • 微信h5免費制作網(wǎng)站seo優(yōu)化與推廣招聘
  • 招聘網(wǎng)站怎么做營銷軟文代寫平臺
  • 個人網(wǎng)站可以做淘寶客杭州網(wǎng)站推廣平臺
  • 商城網(wǎng)站建站深圳優(yōu)化seo排名
  • 如果做鏡像網(wǎng)站360廣告投放平臺
  • 北京的網(wǎng)站設(shè)計公司線上營銷策劃方案
  • 重慶做網(wǎng)站微信的公司提高搜索引擎檢索效果的方法
  • 郴州seo快速排名關(guān)鍵詞優(yōu)化排名工具
  • 重慶市建設(shè)工程信息網(wǎng)一體化平臺河源市企業(yè)網(wǎng)站seo價格
  • 手機網(wǎng)站排名優(yōu)化軟件網(wǎng)絡(luò)營銷推廣方式都有哪些
  • 遼寧省網(wǎng)站制作公司排名怎樣在百度發(fā)廣告貼
  • html5網(wǎng)站優(yōu)點優(yōu)化推廣網(wǎng)站怎么做最好
  • 鄭州網(wǎng)站建設(shè)培訓短期班營銷推廣怎么做
  • ??谧鼍W(wǎng)站10大品牌優(yōu)化大師使用心得