ceph - 扩容记录
来源:互联网 发布:mac os office 破解版 编辑:程序博客网 时间:2024/05/16 06:03
时间点与步骤
p1
参考事件
确认主机名正确确认 ntp 正确确认磁盘都已经能够被识别, 每个磁盘 4T,调整内核参数 (echo 4194303 > /proc/sys/kernel/pid_max)安装 ceph 软件 (0.87)格式化所有 osd 相关磁盘, 确保开机自动挂载 (参考脚本 initdisk.sh)导入 ssh 密钥到所有新 ceph 主机中
相关脚本
initdisk.sh
#!/bin/bashLANG=en_USdisk=`fdisk -l | grep ^Disk | grep sectors | grep sd | grep -v sda | awk -F[:\ ] '{print $2}' | sort`yum install -y hdparmfor partition in $diskdo dd if=/dev/zero of=$partition bs=1M count=100 parted -s $partition mklabel gpt parted $partition mkpart primary xfs 1 100% hdparm -z "$partition"1 mkfs.xfs -f -i size=512 "$partition"1done
p2
参考事件
创建 osd, 参考脚本 (createosd.sh)初始化 osd, 参考下面脚本 (initosd.sh)osd 授权, 参考下面脚本 (authosd.sh)导出当前 ceph crush map, 并修改新的 crush map 规则, 参考下面 crush map 信息启动 ceph
相关脚本
createosd.sh
#!/bin/bashLANG=en_USnum=70 <- 注意 osd 开始 numberfor ip in $ipsdo diskpart=`ssh $ip "fdisk -l | grep Linux | grep -v sda" | awk '{print $1}' | sort` for partition in $diskpart do ssh $ip "ceph osd create" ssh $ip "mkdir /var/lib/ceph/osd/ceph-$num" ssh $ip "echo $partition /var/lib/ceph/osd/ceph-$num xfs defaults 0 0 >> /etc/fstab" let num++ done ssh $ip "mount -a"done
initosd.sh
#!/bin/bashLANG=en_USnum=70 <--- 注意这里, 是新 osd 的开始 NUMfor ip in $ipsdo diskpart=`ssh $ip "fdisk -l | grep GPT | grep -v sda" | awk '{print $1}' | sort` for partition in $diskpart do ssh $ip "ceph-osd -i $num --mkfs --mkkey --osd-uuid dc4f91c1-8792-4948-b68f-2fcea75f53b9" <-- 主机 ceph fsid let num++ donedone
authosd.sh
#!/bin/bashLANG=en_USnum=70 <- 注意 osd 开始数字for ip in $ipsdo diskpart=`ssh $ip "fdisk -l | grep GPT | grep -v sda" | awk '{print $1}' | sort` for partition in $diskpart do ssh $ip "ceph auth add osd.$num osd 'allow *' mon 'allow profile osd' -i /var/lib/ceph/osd/ceph-$num/keyring" let num++ donedone
crushmap 获得及重新导入方法
获得默认 crushmap (加密) [ ceph osd getcrushmap -o crushmap.dump ]备份当前 crushmap [ cp crushmap.dump crushmap.dump_20151218 <- 备份这个当前 crush map ]转换crushmap 格式(加密格式 -> 明文) [ crushtool -d crushmap.dump -o crushmap.txt ]转换 crushmap 格式(明文 -> 加密格式) [ crushtool -c crushmap.txt -o crushmap.done ]重新使用新 crushmap [ ceph osd setcrushmap -i crushmap.done ]
p3
参考事件
先设定 norecovery, noin 模式 ceph osd set noin ceph osd set norecover启动 osd参考启动脚本 (startosd.sh)恢复 noin, norecovery ceph osd unset noin ceph osd unset norecover
startosd.sh
#!/bin/bashstart=1while [ $start -le 3 ]do for ip in $newceph do ssh_port=`nmap -p22 $ip | grep '22/tcp' | awk '{print $2}'` ssh_status=${ssh_port:-faile} if [ "$ssh_status" == "faile" ] then start=1 break else start=10 fi donedonefor ip in $newcephdo ssh $ip 'find /var/lib/ceph/osd/ -maxdepth 1 -name "ceph-*" -exec touch {}/sysvinit \;'donefor ip in $newcephdo ssh $ip "/etc/init.d/ceph -a start osd"done
p4
参考事件
for num in `seq 70 99`; do ceph tell osd.$num injectargs '--osd_recovery_threads 5'; donefor num in `seq 70 99`; do ceph tell osd.$num injectargs '--osd_recovery_op_priority 40'; donefor num in `seq 70 99`; do ceph tell osd.$num injectargs '--osd_disk_threads 5'; done
0 0
- ceph - 扩容记录
- ceph - crushmap 扩容记录
- ceph OSD 故障记录
- ceph集群维护记录
- 系统重装--硬盘扩容--记录
- ceph osd 更换硬盘记录
- 记录一次ceph recovery经历
- ceph存储 ceph整体学习记录(未整理较乱)
- win10 C盘扩容折腾记录
- 双系统Ubuntu分区扩容过程记录
- 双系统Ubuntu分区扩容过程记录
- 2017.10.11 network 网络扩容 思考记录
- ceph分布式存储环境搭建记录
- ceph-mon.CC代码阅读记录
- 扩容
- ceph
- ceph
- System.arraycopy实现数组扩容,ArrayList阅读记录
- Python-闭包详解
- 红皇后假说
- Photoshop CC 2017 安装与激活(Mac 版)(仅供学习研究,勿作商业用途)
- TensorFlow简要教程系列(一)Mac安装TensorFlow
- React Native与Android通信交互
- ceph - 扩容记录
- 80数据库中几个菜单表
- Apache OpenNLP介绍(一)
- 【数据结构4】队列
- Hive安装 (hadoop2.6.2 hive 1.2.1)
- qq分组
- CSS的4种引入方式及优先级
- window7+red5搭建直播服务
- HTML编码问题--IE中编码问题