中興新支點系統離線安裝ceph 16.2.10

中興新支點系統離線安裝ceph 16.2.10

關于中興新支點系統

中興新支點操作系統基于linux穩定內核,分為嵌入式操作系統(newstart cgel)、服務器操作系統(newstart cgsl)、桌面操作系統(newstart nsdl),經過近10年專業研發團隊的積累和發展,產品形成安全加固、自主可控、易用管理的突出優勢。目前,中興新支點操作系統已在國內外各大電信運營商、國有大中型企業及電子政務解決方案中投入使用,服務于交換網絡、核心網絡、骨干網絡、智慧城市、視頻監控等系統底層。以上轉自某乎。

背景

在國家數字化轉型和國產化替代的大背景下,尤其是政務類項目,現在基本用國產化的CPU和操作系統來承載其業務,實現自主創新和安全可靠。在本文中,我們用中興新支點系統(CGSL)和海光處理器進行了ceph的離線部署。下面方法也適用于龍蜥和centos8。

制作離線安裝包

要開始制作ceph的離線rpm源,首先需要找一臺已連接網絡的中興新支點機器。中興新支點系統會默認安裝一些組件(如libvirt、qemu),為避免安裝ceph時與其他包產生依賴沖突問題,安裝系統的時候可以選擇最小安裝。項目中其他需要安裝的組件后面一起安裝。我這邊除了ceph,libvirt的包也會用到,系統默認安裝libvirt的版本較低,我這里都采用手動方式部署并制作離線的rpm包。

yum源配置

中興新支點系統目前沒發現有官方的在線yum源地址。在線安裝可以使用龍蜥和epel8的yum源。下面是yum源的配置。

AnolisOS.repo[AppStream]name=AnolisOS-8.6 - AppStreambaseurl=http://mirrors.openanolis.cn/anolis/8.6/AppStream/x86_64/osenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[BaseOS]name=AnolisOS-8.6 - BaseOSbaseurl=http://mirrors.openanolis.cn/anolis/8.6/BaseOS/x86_64/osenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[DDE]name=AnolisOS-8.6 - DDEbaseurl=http://mirrors.openanolis.cn/anolis/8.6/DDE/x86_64/osenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[AppStream-debuginfo]name=AnolisOS-8.6 - AppStream Debuginfobaseurl=http://mirrors.openanolis.cn/anolis/8.6/AppStream/x86_64/debugenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[BaseOS-debuginfo]name=AnolisOS-8.6 - BaseOS Debuginfobaseurl=http://mirrors.openanolis.cn/anolis/8.6/BaseOS/x86_64/debugenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[Plus-debuginfo]name=AnolisOS-8.6 - Plus Debuginfobaseurl=http://mirrors.openanolis.cn/anolis/8.6/Plus/x86_64/debugenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[PowerTools-debuginfo]name=AnolisOS-8.6 - PowerTools Debuginfobaseurl=http://mirrors.openanolis.cn/anolis/8.6/PowerTools/x86_64/debugenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[DDE-debuginfo]name=AnolisOS-8.6 - DDE Debuginfobaseurl=http://mirrors.openanolis.cn/anolis/8.6/DDE/x86_64/debugenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[Extras]name=AnolisOS-8.6 - Extrasbaseurl=http://mirrors.openanolis.cn/anolis/8.6/Extras/x86_64/osenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[HighAvailability]name=AnolisOS-8.6 - HighAvailabilitybaseurl=http://mirrors.openanolis.cn/anolis/8.6/HighAvailability/x86_64/osenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[Plus]name=AnolisOS-8.6 - Plusbaseurl=http://mirrors.openanolis.cn/anolis/8.6/Plus/x86_64/osenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6[PowerTools]name=AnolisOS-8.6 - PowerToolsbaseurl=http://mirrors.openanolis.cn/anolis/8.6/PowerTools/x86_64/osenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CGSL-V6
epel.repo[epel]name=Extra Packages for Enterprise Linux 8 - $basearch# It is much more secure to use the metalink, but if you wish to use a local mirror# place its address here.baseurl=https://mirrors.aliyun.com/epel/8/Everything/$basearchmetalink=https://mirrors.fedoraproject.org/metalink?repo=epel-8&arch=$basearch&infra=$infra&content=$contentdirenabled=1gpgcheck=1countme=1gpgkey=file:///etc/yum.repos.d/RPM-GPG-KEY-EPEL-8
ceph.repo[Ceph]name=Ceph packages for $basearchbaseurl=http://download.ceph.com/rpm-pacific/el8/$basearchenabled=1gpgcheck=0type=rpm-mdgpgkey=https://download.ceph.com/keys/release.asc[Ceph-noarch]name=Ceph noarch packagesbaseurl=http://download.ceph.com/rpm-pacific/el8/noarchenabled=1gpgcheck=0type=rpm-mdgpgkey=https://download.ceph.com/keys/release.asc[ceph-source]name=Ceph source packagesbaseurl=http://download.ceph.com/rpm-pacific/el8/SRPMSenabled=1gpgcheck=0type=rpm-mdgpgkey=https://download.ceph.com/keys/release.asc

配置yum緩存:

[main]gpgcheck=1installonly_limit=3clean_requirements_on_remove=Truebest=Trueskip_if_unavailable=Falsecachedir=/data/yumkeepcache=1

安裝ceph

yum install ceph -y

制作離線倉庫

find /data/cache -name "*.rpm" -exec cp {} /mnt ;createrepo /mnttar -zcvf offline.tar.gz mnt/

安裝ceph

使用做的離線rpm包安裝ceph。

tar -zxvf offline.tar.gz cd mntrpm -ivh *.rpm --nodeps --force

部署monitor節點

Ceph集群必須至少有一個監控器,并且所需的OSD數量至少應與集群中存儲的對象副本數量相同。引導初始mon是部署 Ceph 存儲群集的第一步,這里我直接在node1、node2、node3創建三個mon。

在node1添加monitor

為集群生成唯一的fsid,fsid是群集的唯一標識符,代表 Ceph 存儲群集主要用于 Ceph 文件系統的文件系統 ID。

uuidgen

創建ceph配置文件,將生成的fsid添加到配置文件中。

vim /etc/ceph/ceph.conf[global]fsid=9c079a1f-6fc2-4c59-bd4d-e8bc232d33a4mon initial members = node1mon host = 192.168.2.16public network = 192.168.2.0/24auth cluster required = cephxauth service required = cephxauth client required = cephxosd journal size = 1024osd pool default size = 3osd pool default min size = 2osd pool default pg num = 8osd pool default pgp num = 8osd crush chooseleaf type = 1

創建keyring并生成監視器keyring來為群集做準備。monitor通過密鑰相互通信。在引導初始監控時,必須提供已生成的具有監控密鑰的鍵環。

ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'

創建管理keyring并添加用戶到client.admin的keyring中。必須創建一個用戶并將其添加到monitor keyring,才能使用 CLI 工具。

ceph-authtool --create-keyring /etc/ceph/ceph.client.admin.keyring --gen-key -n client.admin --cap mon 'allow *' --cap osd 'allow *' --cap mds 'allow *' --cap mgr 'allow *'

生成引導 osd 密鑰,生成用戶并將用戶添加到client.bootstrap-osd keyring中。

ceph-authtool --create-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring --gen-key -n client.bootstrap-osd --cap mon 'profile bootstrap-osd' --cap mgr 'allow r'

將生成的鍵添加到?ceph.mon.keyring。

ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyringceph-authtool /tmp/ceph.mon.keyring --import-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring

更改?ceph.mon.keyring的所有者。

chown ceph:ceph /tmp/ceph.mon.keyring

生成monitor映射時,需用到主機名、主機IP地址和FSID。將其保存為 :/tmp/monmap。

monmaptool --create --add `hostname` 192.168.2.16--fsid 9c079a1f-6fc2-4c59-bd4d-e8bc232d33a4 /tmp/monmap

在monitor主機上創建默認數據目錄,目錄名是{cluster-name}-{hostname}格式。

sudo -u ceph mkdir /var/lib/ceph/mon/ceph-`hostname`

在node1節點對monitor進行初始化。

sudo -u ceph ceph-mon --mkfs -i `hostname` --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring

啟動mon。

systemctl start ceph-mon@`hostname` && systemctl enable ceph-mon@`hostname`

在另外兩個節點安裝mon

將密鑰和配置文件拷貝至其他節點。

scp /tmp/ceph.mon.keyring ceph2:/tmp/ceph.mon.keyringscp /etc/ceph/* root@ceph2:/etc/ceph/scp /var/lib/ceph/bootstrap-osd/ceph.keyring root@ceph2:/var/lib/ceph/bootstrap-osd/scp /tmp/ceph.mon.keyring ceph3:/tmp/ceph.mon.keyringscp /etc/ceph/* root@ceph3:/etc/ceph/scp /var/lib/ceph/bootstrap-osd/ceph.keyring root@ceph3:/var/lib/ceph/bootstrap-osd/

在兩個節點上修改ceph.mon.keyring屬主和屬組為ceph。

chown ceph.ceph /tmp/ceph.mon.keyring

獲取monmap信息。

ceph mon getmap -o /tmp/ceph.mon.mapgot monmap epoch 1

在mon節點上進行mon初始化。

sudo -u ceph ceph-mon --mkfs -i `hostname` --monmap /tmp/ceph.mon.map --keyring /tmp/ceph.mon.keyringsudo -u ceph ceph-mon --mkfs -i `hostname` --monmap /tmp/ceph.mon.map --keyring /tmp/ceph.mon.keyring

在兩個節點上啟動mon。

systemctl start ceph-mon@`hostname` && systemctl enable ceph-mon@`hostname`

修改ceph.conf并重啟ceph-mon(所有節點操作)。

vim /etc/ceph/ceph.confmon initial members = node1,node2,node3mon host = 192.168.2.16,192.168.2.17,192.168.2.18systemctl restart ceph-mon@`hostname`

移除mon

ceph mon remove {mon-id}

添加osd

Ceph可使用其ceph-volume工具來準備邏輯卷、磁盤或分區。ceph-volume工具會增加索引來創建OSD ID。

創建osd

在node1執行。

ceph-volume lvm create --data /dev/sdb

上面的創建過程可以分為兩個階段(準備和激活):

ceph-volume lvm prepare --data /dev/sdb查看osd fsidceph-volume lvm listceph-volume lvm activate {ID} {FSID}

啟動各個節點osd進程。

#node1systemctl restart ceph-osd@0systemctl enable ceph-osd@0 #node2systemctl restart ceph-osd@1systemctl enable ceph-osd@1#node3systemctl restart ceph-osd@2systemctl enable ceph-osd@2

創建MGR

在運行ceph-mon守護程序的每個節點上,還應該設置一個ceph-mgr守護程序。

創建密鑰目錄

所有mgr節點都要執行。

sudo -u ceph mkdir /var/lib/ceph/mgr/ceph-`hostname -s`cd /var/lib/ceph/mgr/ceph-`hostname -s`

創建身份驗證密鑰

ceph auth get-or-create mgr.`hostname -s` mon 'allow profile mgr' osd 'allow *' mds 'allow *' > keyringchown ceph.ceph /var/lib/ceph/mgr/ceph-`hostname`/keyring

啟動mgr守護進程

systemctl enable ceph-mgr@`hostname -s` && systemctl start ceph-mgr@`hostname -s`或者ceph-mgr -i `hostname`

最后查看ceph運行狀態,我只添加了兩個osd。

中興新支點系統離線安裝ceph 16.2.10

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享