ceph运维常用命令积累

来源:互联网 发布:突袭2 mac版本 编辑:程序博客网 时间:2024/06/15 19:09

OSD创建脚本
#$1 = hostname, $2 = diskname, $3 = osd number
ceph-deploy disk zap $1:$2
ceph-deploy osd prepare $1:/dev/$2
ssh $1 "chown ceph:ceph /dev/{$2}2"
ceph-deploy osd activate $1:/dev/{$2}1:/dev/{$2}2 
ssh $1 "sudo /libexec/ceph/ceph-osd-prestart.sh --cluster=ceph --id=$3"

OSD删除脚本
# $1=osd number
#!/bin/sh
ceph osd down osd.$1
ceph osd out osd.$1
ceph osd crush remove osd.$1
ceph osd rm $1
ceph auth del osd.$1

带空格的scp
scp {usr-name}@{ip-address}:"~/xxx/remote\ cluster"

带端口的scp
scp -P 11022 -r {user-name}@{ip-adderss}:~/ceph-cluster .

删除pool命令
ceph osd pool delete data data --yes-i-really-really-mean-it

ntp时间同步
sudo service ntp stop
sudo ntpdate time.nist.gov

pool删除
ceph osd pool delete {poolname} {poolname} --yes-i-really-really-mean-it


删除cephfs
ceph stop mds
ceph mds rm 0
ceph fs ls
ceph fs rm {fs-name} --yes-i-really-mean-it
ceph fs rm arm_fs --yes-i-really-mean-it
ceph osd pool delete data data --yes-i-really-really-mean-it
ceph osd pool delete metadata metadata --yes-i-really-really-mean-it


添加ceph更新源
wget -q -O- 'https://download.ceph.com/keys/release.asc' | sudo apt-key add -
echo deb https://download.ceph.com/debian-jewel/ $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph.list
sudo apt-get update && sudo apt-get install ceph-deploy

创建mds
ceph-deploy mds create {hostname}

创建存储池
ceph osd pool create cephfs_data <pg_num>
ceph osd pool create cephfs_metadata <pg_num>
ceph fs new <fs_name> <metadata> <data>
ceph osd pool create data 128
ceph osd pool create metadata 128
ceph fs new arm_fs metadata data

挂载cephfs
sudo mount -t ceph {ip-address}:6789:/ /mnt/mycephfs -o name=admin,secretfile=admin.secret

pg数量调整
1.调整pg
  ceph osd pool set <poolname> pg_num <new_pgnum>
2.等待集群状态恢复到正常
3.调整pgp
  ceph osd pool set <poolname> pgp_num <new_pgnum>

fio测试
fio -filename=/dev/sda1 -direct=1 -iodepth 1 -thread -rw=write -ioengine=libaio -bs=4m -size=10G -numjobs=10 -runtime=100 -group_reporting -name=writetest
fio -filename=/mnt/mycephfs/test -direct=1 -iodepth 1 -thread -rw=randread -ioengine=libaio -bs=4k -size=10G -numjobs=10 -runtime=100 -group_reporting -name=randreadtest

fio -filename=/mnt/mycephfs/test -direct=1 -iodepth 1 -thread -rw=write -ioengine=libaio -bs=4m -size=10G -numjobs=10 -runtime=100 -group_reporting -name=writetest
fio -filename=/mnt/mycephfs/test -direct=1 -iodepth 1 -thread -rw=write -ioengine=libaio -bs=4m -size=10G -numjobs=48 -runtime=100 -group_reporting -name=writetest

开机修改硬盘分区权限
sudo vi /etc/profile
for i in a b;do sudo chown ceph.ceph /dev/sd"$i"*;done

ssh修改硬盘权限(参考:http://www.xue163.com/news/2408/24083960_3.html)
for i in a b;do sudo chown ceph.ceph /dev/sd*;done
ssh mnc01 "sudo echo 'for i in a b;do sudo chown ceph.ceph /dev/sd'$i'*;done' | sudo tee -a /etc/profile"

ceph查看配置
ceph daemon {daemon-type}.{id} config show | less
sudo ceph daemon osd.2 config show | less

ceph修改配置
ceph tell {daemon-type}.{id or *} injectargs --{name} {value} [--{name} {value}]
ceph tell osd.0 injectargs --debug-osd 20 --debug-ms 1

硬盘卸载
sudo start ceph-osd-all
sudo stop ceph-osd-all
sudo umount /dev/sda1
sudo umount /dev/sdb1

parted分区(参考:http://www.i5i6.net/post/37.html)
parted /dev/sda
mklabel gpt
mkpart
分区名称?  []?     //设置分区名
文件系统类型?  [ext2]?       //直接回车
起始点? 0   //分区开始
结束点? -1   //分区结束 -1为全部硬盘空间
(parted) p   //查看分区结果
mkfs.xfs -f /dev/sda1 //格式化分区

0 0