分布式存储系统之Ceph集群部署( 三 )

提示:我们通过查看ceph-deploy 的帮助可以知道 它的子命令new就是创建一个集群配置和生成一个keyring文件;
查看ceph-deploy new的用法
[cephadm@ceph-admin ceph-cluster]$ ceph-deploy new --helpusage: ceph-deploy new [-h] [--no-ssh-copykey] [--fsid FSID][--cluster-network CLUSTER_NETWORK][--public-network PUBLIC_NETWORK]MON [MON ...]Start deploying a new cluster, and write a CLUSTER.conf and keyring for it.positional arguments:MONinitial monitor hostname, fqdn, or hostname:fqdn pairoptional arguments:-h, --helpshow this help message and exit--no-ssh-copykeydo not attempt to copy SSH keys--fsid FSIDprovide an alternate FSID for ceph.conf generation--cluster-network CLUSTER_NETWORKspecify the (internal) cluster network--public-network PUBLIC_NETWORKspecify the public network for a cluster[cephadm@ceph-admin ceph-cluster]$提示:ceph-deploy new的命令格式 我们只需要对应节点的主机名即可;但是前提是对应主机名做了正确的解析;
[cephadm@ceph-admin ceph-cluster]$ ceph-deploy new ceph-mon01[ceph_deploy.conf][DEBUG ] found configuration file at: /home/cephadm/.cephdeploy.conf[ceph_deploy.cli][INFO] Invoked (2.0.1): /bin/ceph-deploy new ceph-mon01[ceph_deploy.cli][INFO] ceph-deploy options:[ceph_deploy.cli][INFO]username: None[ceph_deploy.cli][INFO]func: <function new at 0x7f0660799ed8>[ceph_deploy.cli][INFO]verbose: False[ceph_deploy.cli][INFO]overwrite_conf: False[ceph_deploy.cli][INFO]quiet: False[ceph_deploy.cli][INFO]cd_conf: <ceph_deploy.conf.cephdeploy.Conf instance at 0x7f065ff11b48>[ceph_deploy.cli][INFO]cluster: ceph[ceph_deploy.cli][INFO]ssh_copykey: True[ceph_deploy.cli][INFO]mon: ['ceph-mon01'][ceph_deploy.cli][INFO]public_network: None[ceph_deploy.cli][INFO]ceph_conf: None[ceph_deploy.cli][INFO]cluster_network: None[ceph_deploy.cli][INFO]default_release: False[ceph_deploy.cli][INFO]fsid: None[ceph_deploy.new][DEBUG ] Creating new cluster named ceph[ceph_deploy.new][INFO] making sure passwordless SSH succeeds[ceph-mon01][DEBUG ] connected to host: ceph-admin.ilinux.io[ceph-mon01][INFO] Running command: ssh -CT -o BatchMode=yes ceph-mon01[ceph-mon01][DEBUG ] connection detected need for sudo[ceph-mon01][DEBUG ] connected to host: ceph-mon01[ceph-mon01][DEBUG ] detect platform information from remote host[ceph-mon01][DEBUG ] detect machine type[ceph-mon01][DEBUG ] find the location of an executable[ceph-mon01][INFO] Running command: sudo /usr/sbin/ip link show[ceph-mon01][INFO] Running command: sudo /usr/sbin/ip addr show[ceph-mon01][DEBUG ] IP addresses found: [u'172.16.30.71', u'192.168.0.71'][ceph_deploy.new][DEBUG ] Resolving host ceph-mon01[ceph_deploy.new][DEBUG ] Monitor ceph-mon01 at 192.168.0.71[ceph_deploy.new][DEBUG ] Monitor initial members are ['ceph-mon01'][ceph_deploy.new][DEBUG ] Monitor addrs are ['192.168.0.71'][ceph_deploy.new][DEBUG ] Creating a random mon key...[ceph_deploy.new][DEBUG ] Writing monitor keyring to ceph.mon.keyring...[ceph_deploy.new][DEBUG ] Writing initial config to ceph.conf...[cephadm@ceph-admin ceph-cluster]$提示:我们可以在命令行使用--public-network 选项来指定集群公共网络和使用--cluster-network选项来指定对应集群网络;当然也可以生成好配置文件,然后在配置文件里修改也行;
3、修改配置文件指定集群的公共网络和集群网络

分布式存储系统之Ceph集群部署

文章插图
提示:编辑生成的ceph.conf配置文件,在【global】配置段中设置ceph集群面向客户端通信的网络ip地址所在公网网络地址和面向集群各节点通信的网络ip地址所在集群网络地址,如上所示;
4、安装ceph集群
[cephadm@ceph-admin ceph-cluster]$ ceph-deploy install ceph-mon01 ceph-mon02 ceph-mon03 ceph-mgr01 ceph-mgr02提示:ceph-deploy命令能够以远程的方式连入Ceph集群各节点完成程序包安装等操作,所以我们只需要告诉ceph-deploy 那些主机需要安装即可;
集群各主机如果需要独立安装ceph程序包,方法如下
yum install ceph ceph-radosgw提示:前提是该主机基础环境都配置好了 , 比如关闭iptables或firewalld,同步时间,ssh免密登录,关闭selinux等;重要的是对应ceph的yum仓库配置和epel仓库配置都已经正常配置;
分布式存储系统之Ceph集群部署

文章插图
提示:这里提示我们没有安装applydeltarpm;
查找applydeltarpm安装包
分布式存储系统之Ceph集群部署

文章插图
在集群各节点安装deltarpm包来解决上述报错
yum install -y deltarpm-3.6-3.el7.x86_64再次在admin host上用ceph-deploy安装ceph集群
分布式存储系统之Ceph集群部署

推荐阅读