单机安装
注意:如果有问题,请以《安装》篇为准
一、准备工作
1.1 主机规划
IP: 192.168.2.100
规格:2C4G
磁盘:两个未格式化与未挂载的空白磁盘或分区(一个的话需要些额外的操作)
1.2 系统配置
1.2.1 关闭selinux
编辑文件/etc/selinux/config
,修改SELINUX=enforcing
这一行为SELINUX=disabled
。然后执行如下命令
1.2.2 关闭防火墙
1.2.3 配置yum源
epel
执行以下命令,添加epel源,执行完后在/etc/yum.repos.d/
目录下会生成两个文件:epel.repo
与epel-test.repo
ceph
在/etc/yum.repos.d/
目录下创建文件ceph.repo
,内容如下(这里我们安装luminous
版本的ceph,使用阿里云的yum源)
1.2.4 配置终端权限
为了让ceph-deploy
节点能够SSH到各 节点执行安装命令,执行命令visudo
,如果文件中有Defaults requiretty
这一行,则改为Defaults !requiretty
,如果没有则无视
1.3 配置SSH无密登录
以下操作在ceph-deploy节点执行
1.3.1 设置主机名
在/etc/hosts
文件末尾添加如下内容
执行以下命令修改主机名为node0
1.3.2 生成ssh-key
执行如下命令,遇到交互直接按Enter
执行完后便会在~/.ssh/
目录下生成两个文件:id_rsa
与rd_rsa.pub
1.3.3 拷贝key到各节点
1.3.4 验证
验证从node0节点上可以直接SSH到其他节点,无需输入密码
二、安装过程
2.1 安装ceph-deploy
2.2 创建目录
在执行ceph-deploy命令的过程中会在生成一些配置文件,创建一个目录,存放生成的配置文件
2.3 安装monitor
此时,会在./ceph-cluster
目录下生成一个ceph.conf
文件,里面有monitor的初始节点信息,以及节点使用的网卡信息,可根据实际情况进行相应修改:
如果主机有多个网卡,则在[global]
下手动添加public network
的信息,比如:
2.4 安装ceph到各个节点
ceph-deploy install
会在节点上安装ceph
、rados
这两个rpm包。这里的--release=luminous
表示安装luminous
这个版本的ceph
2.5 生成密钥
该命令会在当前(./ceph-cluster
)目录下生成以下几个密钥文件
ceph.client.admin.keyring
ceph.bootstrap-mgr.keyring
ceph.bootstrap-osd.keyring
ceph.bootstrap-mds.keyring
ceph.bootstrap-rgw.keyring
ceph.bootstrap-rbd.keyring
2.6 分发配置文件与密钥
把配置文件和密钥拷贝到各节点上,这样从每个节点上都能执行ceph命令而不需要输入monitor的IP以及密钥
2.7 安装mgr
从liminous版本开始,一般都需要安装mgr
2.8 创建osd
/dev/sdb
与/dev/sdc
不管是空白磁盘还是空白分区,都执行
注意:官方文档这一步的命令是ceph-deploy osd create node0:sdb
,但在实践中发现这个命令执行失败,这个坑要注意
2.9 验证集群状态
FAQ
Q:执行ceph-deploy new node0
时报如下的错?
A:执行以下命令解决
Q:如果只有一个磁盘或分区,则在创建一个pool后执行rbd ls poolName
时会卡住?
A:这里因为pool的默认副本数为3,而只有一个osd,可以通过以下命令确认:
执行命令将pool的size设置为1
然后执行命令就不会卡住了,执行ceph -s
看到pool应该是active+clean
的状态
Last updated
Was this helpful?