ceph动态扩展

一、准备及注意事项

  1. SES 5.X 必须使⽤SLES 12 sp3作为操作系统
  2. 准备SLES和SES的官⽅ISO镜像,以及对应的更新包,共计4个文件,后续配置软件源时需要使用,且保证所有节点的数据一致。
  3. 建议在zypper软件源的配置上,尽量使用集群外的机器提供http/ftp/nfs服务,或者把所有文件都复制到每一台节点里,作为本地file服务,而不要使用集群里的服务器来提供http/ftp/nfs,避免和ceph集群环境有冲突。
  4. mem = TB of raw OSD capacity * 2GB vs 3/5 * OSD count
  5. WAL-size = 2GB and more, no limitation (optional)
  6. DB-size = 10GB * TB of raw OSD capacity
  7. Journal: 6 journals on 1 SSD, 12 journals on 1 NVMe

二、操作系统

2.1 安装操作系统 - 安装指南补充

3.5.1章节

光盘引导启动后,将光标移动到“installation”上,在Boot Options中输入
self_update=0
可以跳过检查系统更新的步骤。

3.6.3章节,建议使⽤如下分区结构

/boot, ext4, 1GB
swap, swap, 16GB
/, ext4, 100GB
/var, ext4, 剩余所有容量

3.9.4 ~ 3.9.5章节

不⽤安装: AppArmor 和 32-bit runtime environment
仅安装以下四项即可:
"Help and Support Documentation"
"Base System"
"Minimal System"
"YaST2 configuration packages"

3.9.6 ~ 3.9.7章节

点击“Firewall will be enabled”旁边的“disable”,可直接禁用操作系统内置的防火

2.2 操作系统初始化设置

修改每台服务器的主机名,示例如下

hostnamectl set-hostname node1.fiberhome.com

配置服务器的网络,如IP、 bond

yast lan
mode=1
primary_reselect=1
MTU=9000

建议先登出再登陆,确保主机名修改成功

2.3 配置zypper软件源

可以从现有集群内copy.
本文档使用本地文件模式,不依赖额外的设备与服务,但是会在每个节点占用约15GB的本地磁盘空间。

rm -rf /etc/zypp/repos.d/*
mkdir -p /repo/sles/
mkdir -p /repo/ses/
mkdir -p /repo/sles_updates/
mkdir -p /repo/ses_updates/

  1. sles目录用于原版SLES 12 sp3操作系统的文件存放
  2. ses目录用于原版SES 5.0的文件存放
  3. sles_updates目录用于存放操作系统的更新包
  4. ses_updates目录用于存放SES 5.0的更新包(SES5.5没有独立的ISO,这个目录也可以看作是SES 5.5的安装包)
  5. 然后把ISO和tar包里面的文件全部复制到上述目录

添加软件源
备注:非官方签名的软件包需要将-fg修改为-fG(G为不检查签名)

zypper ar -fg -t yast2 /repo/sles/ sles
zypper ar -fg -t yast2 /repo/ses/ ses
zypper ar -fg -t rpm-md /repo/sles_updates/ sles_updates
zypper ar -fg -t rpm-md /repo/ses_updates/ ses_updates

2.4 SES安装准备工作

修改/etc/hosts文件,新增记录,示例如下
注意:系统会自动添加一条本机的记录,注意不要重复,避免冲突,在集群内添加新的服务器信息,保证每台服务器的如下配置文件一致。

192.168.1.101 admin.fiberhome.com admin
192.168.1.102 node1.fiberhome.com node1
192.168.1.103 node2.fiberhome.com node2
192.168.1.104 node3.fiberhome.com node3
192.168.1.105 node4.fiberhome.com node4

node新节点的NTP服务配置

echo "server 192.168.1.101" >> /etc/ntp.conf
echo "restrict 192.168.1.0 mask 255.255.255.0 notrap nomodify" >> /etc/ntp.conf
systemctl enable ntpd.service

新加节点的系统更新 zypper update

zypper ref
zypper update
reboot

三、SES的扩容与配置

1.node节点

zypper install salt-minion
systemctl enable salt-minion.service
echo "master: admin.fiberhome.com" > /etc/salt/minion.d/master.conf
systemctl start salt-minion

2.如果 Salt Master 的主机名不是 salt ,请编辑 /etc/salt/minion 并添加下面一行:

sed -i 's/#master: salt/master: admin/g' /etc/salt/minion

3.salt验证,仅在admin节点执行

在 Salt Master 上接受所有 Salt 密钥:

salt-key --accept-all
salt-key -L
sleep 5
salt '*' test.ping

4.deepsea安装与配置,仅在admin节点执行

salt '' grains.append deepsea default
sleep 5
salt -C 'G@deepsea:
' test.ping

5.开始使用deepsea部署SES集群, stage 0~3

deepsea stage run ceph.stage.0 等同于 salt-run state.orch ceph.stage.0

5.1执行deepsea 0-1

deepsea stage run ceph.stage.0
deepsea stage run ceph.stage.1

5.2此时需配置SES环境

生成配置方案(不同的硬件配置会有不同的配置方案,以达到最优效果)
配置方案以创建集群的方案为准:
示例如下:

salt-run proposal.populate name=fiberhome target='*' ratio=1 db=1-600 journal=1-600 data=3000-8000 db-size=400G journal-size=10G

查看上述命令的具体含义

salt-run proposal.help

5.3继续SES集群部署

deepsea stage run ceph.stage.2
deepsea stage run ceph.stage.3

检查集群状态,部署完成。

四、问题排查:

1.如出现卡在stage.3上某一节点无法创建osd的解决办法:

关闭这一节点 ceph.target服务

systemctl stop ceph.target

擦除磁盘:
脚本根据实际osd盘符具体修改:

for i in {b..z};do sgdisk -Z -o -g /dev/sd$i && dd if=/dev/zero of=/dev/sd$i count=1000000;done

【可选】将磁盘打上gpt标签:

for i in {b..z};do parted -m -a opt /dev/sd$i mklabel gpt;done

重启系统

reboot

开机后停止ceph.target服务

systemctl stop ceph.target

重新运行stage.3

deepsea stage run ceph.stage.3

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,732评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,496评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,264评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,807评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,806评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,675评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,029评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,683评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,704评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,666评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,773评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,413评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,016评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,204评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,083评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,503评论 2 343

推荐阅读更多精彩内容

  • 533c934f7c8a阅读 173评论 0 0
  • 我相信,你的人生一定有一个无论如何必须达成的目标,有一个无论如何不能放弃的理由。 请!你!想!起!来! ...
    起飞吧楚楚楚阅读 307评论 0 1
  • 找个理由相聚一起, 不为别的, 只想在一起叙叙旧, 怀念曾经的岁月,美好的时光,最初的青春模样, 我们在一起肆无忌...
    叮当奶奶阅读 402评论 0 0
  • redux 应该是非常有用的。虽然学习起来挺费劲的,还是值得学下。我根据学习的做个小笔记,免的忘了。 首先要安装第...
    cc2049阅读 856评论 0 0