卸载
ceph-deploy purge ceph_master
ceph-deploy purgedata ceph_master
ceph-deploy forgetkeys
rm ceph.*
安装
创建一个集群
ceph-deploy new ceph_master
修改ceph.conf
因为我们是在单节点上工作,因此需要修改一下配置文件
echo "osd crush chooseleaf type = 0" >> ceph.conf
echo "osd pool default size = 1" >> ceph.conf
echo "osd journal size = 100" >> ceph.conf
echo "public_network = 自己的ip/24" >> ceph.conf
修改mon_host = [这里是ip] 为 ifconfig 里面的ip
安装Ceph包
ceph-deploy install ceph_master
部署初始监视器并收集密钥:
ceph-deploy mon create-initial
完成此过程后,您的本地目录应具有以下密钥环:
ceph.client.admin.keyring
ceph.bootstrap-mgr.keyring
ceph.bootstrap-osd.keyring
ceph.bootstrap-mds.keyring
ceph.bootstrap-rgw.keyring
ceph.bootstrap-rbd.keyring
ceph.bootstrap-rbd-mirror.keyring
ceph-deploy admin ceph_master
部署管理器守护程序
ceph-deploy mgr create ceph_master
创建 启动OSD
清空磁盘
ceph-deploy disk zap ceph_master /dev/vdb1
创建osd
ceph-deploy osd create --data ceph_master /dev/vdb1
验证
ceph osd tree
ceph -s
lsblk
存储/检索对象数据
练习:找到一个对象
作为练习,让我们创建一个对象。使用命令行上的命令指定对象名称,包含某些对象数据的测试文件的路径和池名称 。例如:rados put
echo {Test-data} > testfile.txt
ceph osd pool create test 128
rados put {object-name} {file-path} --pool=test
rados put test-object-1 testfile.txt --pool=mytest
要验证Ceph存储集群是否存储了该对象,请执行以下命令:
rados -p mytest ls
现在,确定对象位置:
ceph osd map {pool-name} {object-name}
ceph osd map mytest test-object-1
Ceph应该输出对象的位置。例如:
osdmap e537 pool 'mytest' (1) object 'test-object-1' -> pg 1.d1743484 (1.4) -> up [1,0] acting [1,0]
要删除测试对象,只需使用该 命令将其删除即可。rados rm
例如:
rados rm test-object-1 --pool=mytest
要删除mytest池:
ceph osd pool rm mytest
报错信息:failure: repodata/repomd.xml from docker-ce-stable: [Errno 256] No more mirrors to try.
https://download.docker.com/linux/centos/7/x86_64/stable/repodata/repomd.xml: [Errno 14] curl#35 - "Encountered end of file"
或
failure: repodata/repomd.xml from docker-ce-stable: [Errno 256] No more mirrors to try.
https://download.docker.com/linux/centos/7/x86_64/stable/repodata/repomd.xml: [Errno 14] curl#56 - "Callback aborted"
解决:把/etc/yum.repos.d/中docker相关的 docker.repo这些全删除了,应该是之前为了下载docker最新版下载了这些yum源,删除之后再安装就正常了
错误:/var/run/yum.pid已被锁定,PID为1610的另一个程序正在运行。
另外一个程序锁定了yum;等待它退出......
......
解决办法
rm -f /var/run/yum.pid
删除文件后再次运行yum可用。
出现的错误[2]。No data was received after 300 seconds, disconnecting...。原因是网络比较慢,达到5分钟超时。
解决办法是:
分别在每个节点上安装ceph,yum -y install ceph。
3、出现的错误[3]。[ceph_deploy][ERROR ] RuntimeError: Failed to execute command: ceph --version。这个错误和上面【2】的错误的解决办法一样。
错误:
[root@ceph1 ceph]# ceph-deploy mon create-initial
...
[ceph2][DEBUG ] remote hostname: ceph2
[ceph2][DEBUG ] write cluster configuration to /etc/ceph/{cluster}.conf
[ceph_deploy.mon][ERROR ] RuntimeError: config file /etc/ceph/ceph.conf exists with different content; use --overwrite-conf to overwrite
[ceph_deploy][ERROR ] GenericError: Failed to create 2 monitors
解决:[root@ceph1 ceph]# ceph-deploy --overwrite-conf mon create [hostname名称]
错误:无法找到/etc/ceph/ceph.client.admin.keyring”的消息,请确保ceph.conf中为监控节点列出的IP是公共IP,而不是私有IP 。
解决:设置/etc/ceph/ceph.conf 下的mon_host = [ifconfig下的ip地址]
3、之后运行yum makecache生成缓存
https://www.cnblogs.com/freedom314/p/9247602.html网友的错误总结大部风在这里就能找到
http://docs.ceph.com/docs/master/start/quick-ceph-deploy/#create-a-cluster 官网安装
https://www.cnblogs.com/jinyuanliu/p/10684321.html#_label3 网友安装
yum源错误
linux 更新yum源 改成阿里云源
1、备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2、下载新的CentOS-Base.repo 到/etc/yum.repos.d/
CentOS 5
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
CentOS 6
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
转发 https://www.cnblogs.com/bincoding/p/7892762.html