ceph安装 博客分类: 技术扩展了解 ceph
文档地址:http://docs.ceph.org.cn/start/quick-ceph-deploy/
文档:http://blog.csdn.net/younger_china/article/details/51823571
安装 CEPH 部署工具
1 安装yum的一些插件:
sudo yum install -y yum-utils && sudo yum-config-manager --add-repo https://dl.fedoraproject.org/pub/epel/7/x86_64/ && sudo yum install --nogpgcheck -y epel-release && sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 && sudo rm /etc/yum.repos.d/dl.fedoraproject.org*
2 创建yum源,所有的机器都添加:sudo vim /etc/yum.repos.d/ceph.repo
[ceph-noarch]
name=Ceph noarch packages
baseurl=http://download.ceph.com/rpm-jewel/el7/noarch/
#http://download.ceph.com/rpm-{ceph-release}/{distro}/noarch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
3 安装 NTP(时间同步模块) ntpdate ntp1.aliyun.com或者sudo yum install ntp ntpdate ntp-doc
4 安装ssh,并确保设置了免密登录:sudo apt-get install openssh-server
5 建议创建单独的ceph部署用户: ceph-deploy --username {username}
6、各节点无密登录:ssh-keygen,ssh-copy-id {username}@node1
7、禁用防火墙和SELINUX
8、设置静态IP(否则IP会动态变化)
9、虚拟机镜像拷贝后没有ip
1)ifconfig查看网卡名称 (/etc/sysconfig/network-scripts/ip address 也可以查看网卡信息)
2)拷贝现有的网卡配置/etc/sysconfig/network-scripts/ifcfg-eno16777736,删除uuid,修改device和name
3)ifdown 网卡名称 ,ifup 网卡名称 来重启网卡
10、权限修改 :visudo修改suoders
1) 注释Defaults requiretty
Defaults requiretty修改为 #Defaults requiretty, 表示不需要控制终端。
否则会出现sudo: sorry, you must have a tty to run sudo
2)增加行 Defaults visiblepw
否则会出现 sudo: no tty present and no askpass program specified
3)添加安装用户使用sudo不需要密码:tony ALL=(ALL) NOPASSWD:ALL
4)修改hostname:hostnamectl set-hostname node4
11 创建集群的目录
mkdir my-cluster & cd my-cluster
12 如果重新安装需要执行:
ceph-deploy purgedata node1 node2 node3 && ceph-deploy forgetkeys && eph-deploy purge node1 node2 node3
13、配置文件ceph.conf中加入: osd pool default size = 2
14、安装 ceph-deploy install {ceph-node} [{ceph-node} ...]
15、异常sudo ceph --version /usr/lib/python2.7/site-packages/ceph_deploy/lib/vendor/remoto/process.py"
超时,需要在每个节点执行:sudo yum -y install ceph 和 sudo yum -y install ceph-radosgw
16、ceph-deploy osd activate异常:
Failedto execute command: /usr/sbin/ceph-disk -v activate --mark-init systemd --mount/var/local/osd0
在各个节点上给/var/local/osd1/和/var/local/osd1/添加权限
如下: chmod 777 /var/local/osd0/
chmod 777 /var/local/osd0/*
17、ceph的启动停止(某个服务,或者某个机器的某个服务的具体操作)
http://docs.ceph.com/docs/master/rados/operations/operating/#running-ceph-with-sysvinit
18、ceph 各种统计数据的展示
(ceph health 集群健康状况,ceph -w 集群内正发生的事件,ceph df集群的数据用量及其在存储池内的分布)
ceph osd tree|stat(osd的状态),
ceph mon stat(mon状态),
ceph quorum_status(监视器的详细)
ceph mds stat|dump(mds的状态 )
http://docs.ceph.org.cn/rados/operations/monitoring/
19、新添加osd节点:
1)节点上创建磁盘目录:mkdir /var/local/osd2
2)管理节点准备发布信息:ceph-deploy osd prepare node1:/var/local/osd2
3)激活osd节点,执行ceph status可以看到osd节点多了一个
20、元数据服务创建
1)ceph-deploy mds create node1
2)ceph mds stat
21、RGW服务
1)创建rgw网关:ceph-deploy rgw create node2
2) ceph mds stat
22、添加新的mon到集群中
异常: admin_socket: exception getting command descriptions: [Errno 2] No such file or directory
解决:当服务器有多个网卡的时候需要添加外网的ip到ceph到集群中
如:public network=192.168.145.140/24
分发配置文件到其他的服务器:ceph-deploy --overwrite-conf admin node2 node3 node4
集群中mds的信息:ceph quorum_status --format json-pretty
23、pools的查看(ceph df集群的数据用量及其在存储池内的分布)
文档:http://docs.ceph.org.cn/rados/operations/pools/
rados lspools,ceph osd lspools,ceph osd dump |grep pool
24、ceph对象存储:
http://docs.ceph.org.cn/start/quick-ceph-deploy/#id4
25、ceph中pg的操作
ceph pg dump(ceph的整体信息,第一列为pg-num,是由{poolnum}.{pg-id}组成的)|ceph pg map {pg-num}|ceph pg stat
26、存储文件到ceph中
1)列出所有的pool:ceph osd lspools
2)将创建的文件存储到池中:rados put test-object-2 testfile.txt --pool=default.rgw.data.root
3)列出池中的所有对象:rados -p default.rgw.data.root ls
4)列出池中对象的详细信息:ceph osd map default.rgw.data.root test-object-2
5)删除池中的某个对象:rados rm test-object-2 --pool=default.rgw.data.root