中兴新支点系统离线安装ceph 16.2.10
发布时间 - 2023-06-08 00:00:00 点击率:次关于中兴新支点系统
中兴新支点操作系统基于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。
# 操作系统
# bootstrap
# 标识符
# 对象
# ceph
# linux
# 离线
# 配置文件
# 文件系统
# 也会
# 尤其是
# 都要
# 我只
# 一台
# 将其
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何将凡科建站内容保存为本地文件?
Laravel如何实现本地化和多语言支持?(i18n教程)
Laravel的.env文件有什么用_Laravel环境变量配置与管理详解
北京的网站制作公司有哪些,哪个视频网站最好?
Laravel如何实现文件上传和存储?(本地与S3配置)
Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案
javascript中闭包概念与用法深入理解
Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】
如何在企业微信快速生成手机电脑官网?
中山网站推广排名,中山信息港登录入口?
昵图网官网入口 昵图网素材平台官方入口
高端智能建站公司优选:品牌定制与SEO优化一站式服务
Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】
Python制作简易注册登录系统
DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解
Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】
php json中文编码为null的解决办法
ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集
Laravel怎么使用Intervention Image库处理图片上传和缩放
javascript中对象的定义、使用以及对象和原型链操作小结
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
如何在局域网内绑定自建网站域名?
Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布
UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】
动图在线制作网站有哪些,滑动动图图集怎么做?
php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
Laravel如何从数据库删除数据_Laravel destroy和delete方法区别
如何快速搭建支持数据库操作的智能建站平台?
如何用狗爹虚拟主机快速搭建网站?
Laravel如何处理和验证JSON类型的数据库字段
想要更高端的建设网站,这些原则一定要坚持!
米侠浏览器网页图片不显示怎么办 米侠图片加载修复
如何在建站宝盒中设置产品搜索功能?
公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?
百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧
高防服务器租用如何选择配置与防御等级?
Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转
Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控
Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解
如何用好域名打造高点击率的自主建站?
如何在Ubuntu系统下快速搭建WordPress个人网站?
高端网站建设与定制开发一站式解决方案 中企动力
如何在云主机上快速搭建多站点网站?
装修招标网站设计制作流程,装修招标流程?
JavaScript如何实现继承_有哪些常用方法
javascript中的数组方法有哪些_如何利用数组方法简化数据处理
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】
Android Socket接口实现即时通讯实例代码


:/etc/ceph/scp /var/lib/ceph/bootstrap-osd/ceph.keyring root@ceph3:/var/lib/ceph/bootstrap-osd/