Ceph 安装 :: 第 1 部分
Ceph 安装步骤
此快速启动设置可帮助使用 3 个监控器和 2 个 OSD 节点部署 Ceph,每个节点具有 4 个 OSD。 在这里,我们使用的是运行 CentOS 6.4 的通用硬件。
Ceph-mon1:第一个监控器 + Ceph-deploy 机器(将用于将 Ceph 部署到其他节点)
Ceph-mon2:第二个监控器(用于监控仲裁)
Ceph-mon3:第三个监控器(用于监控仲裁)
Ceph-node1:OSD 节点 1,配备 10G X 1 用于操作系统,440G X 4 用于 4 个 OSD
Ceph-node2:OSD 节点 2,配备 10G X 1 用于操作系统,440G X 4 用于 4 个 OSD
Ceph-Deploy 版本为 1.3.2,Ceph 版本 0.67.4(Dumpling)
预检清单
¶
在部署 Ceph 存储集群之前,所有 Ceph 节点可能需要进行一些基本的配置工作。
CEPH 节点设置
¶
- 在每个 Ceph 节点上创建一个用户。
sudo useradd -d /home/ceph -m ceph
sudo passwd ceph
- 在每个 Ceph 节点上为该用户添加 root 权限。
echo "ceph ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers
sudo chmod 0440 /etc/sudoers
- 配置您的 ceph-deploy 节点(ceph-mon1)以使用无密码 SSH 访问每个 Ceph 节点。 将密码短语留空,对 CEPH 和 ROOT 用户重复此步骤。
ceph@ceph-admin:~ [ceph@ceph-admin ~]$ ssh-keygen
正在生成 RSA 密钥对。
输入要保存密钥的文件(/home/ceph/.ssh/id_rsa):yes
已创建目录 '/home/ceph/.ssh'。
输入密码短语(留空表示无密码短语):
再次输入相同的密码短语
您的身份已保存到 /home/ceph/.ssh/id_rsa。
您的公钥已保存到 /home/ceph/.ssh/id_rsa.pub。
密钥指纹是
48:86:ff:4e:ab:c3:f6:cb:7f:ba:46:33:10:e6:22:52 ceph@ceph-admin.csc.fi
密钥的随机艺术图像是
+--[ RSA 2048]----+
| |
| E. o |
| .. oo . |
| . .+..o |
| . .o.S. |
| . + |
| . o. o |
| ++ .. . |
| ..+*+++ |
+-----------------+
- 将密钥复制到每个 Ceph 节点。 (对 ceph 和 root 用户重复此步骤)
[ceph@ceph-mon1 ~]$ ssh-copy-id ceph@ceph-node2
无法建立主机 'ceph-node2 (192.168.1.38)' 的真实性。
RSA 密钥指纹是 ac:31:6f:e7:bb:ed:f1:18:9e:6e:42:cc:48:74:8e:7b。
您确定要继续连接吗(yes/no)? y
请输入 'yes' 或 'no':yes
警告:永久将 'ceph-node2,192.168.1.38' (RSA) 添加到已知主机列表中。
ceph@ceph-node2 的密码
现在尝试登录到该机器,使用“ssh 'ceph@ceph-node2'”,并检查:.ssh/authorized_keys
以确保我们没有添加您不期望的额外密钥。
[ceph@ceph-mon1 ~]$
- 使用主机名进行连接性测试,为了方便起见,我们使用了本地主机文件,请使用其他节点的详细信息更新每个节点的本地主机文件。 PS:建议使用 DNS
- 软件包使用 release.asc 密钥进行加密签名。 将 release 密钥添加到您系统的受信任密钥列表中以避免安全警告
sudo rpm --import 'https://ceph.net.cn/git/?p=ceph.git;a=blob_plain;f=keys/release.asc'
- Ceph 可能需要额外的第三方库。 要添加 EPEL 存储库,请执行以下操作
su -c 'rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm'
sudo yum install snappy leveldb gdisk python-argparse gperftools-libs
- 安装 Release 包,Dumpling 是 Ceph 最新的稳定版本。(在我创建此 wiki 的时候)
su -c 'rpm -Uvh https://ceph.net.cn/rpm-dumpling/el6/noarch/ceph-release-1-0.el6.noarch.rpm'
- 将 ceph 添加到 YUM,创建 ceph 存储库文件 /etc/yum.repos.d/ceph.repo
[ceph]
name=Ceph packages for $basearch
baseurl=https://ceph.net.cn/rpm-dumpling/el6/$basearch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://ceph.net.cn/git/?p=ceph.git;a=blob_plain;f=keys/release.asc
[ceph-noarch]
name=Ceph noarch packages
baseurl=https://ceph.net.cn/rpm-dumpling/el6/noarch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://ceph.net.cn/git/?p=ceph.git;a=blob_plain;f=keys/release.asc
[ceph-source]
name=Ceph source packages
baseurl=https://ceph.net.cn/rpm-dumpling/el6/SRPMS
enabled=0
gpgcheck=1
type=rpm-md
gpgkey=https://ceph.net.cn/git/?p=ceph.git;a=blob_plain;f=keys/release.asc
- 为了获得最佳结果,请在您的节点上创建目录以维护 Ceph 生成的配置。 这些应该由 Ceph 自动创建,但是,在我的情况下,这给我带来了问题。 因此手动创建。
mkdir -p /etc/ceph /var/lib/ceph/{tmp,mon,mds,bootstrap-osd} /var/log/ceph
- 默认情况下,守护程序绑定到 6800:7100 范围内的端口。 您可以根据需要配置此范围。 在配置 IP 表之前,请检查默认的 iptables 配置。 ::6800:7100 范围内的端口。 您可以根据需要配置此范围。 由于我们正在执行测试部署,因此可以禁用 Ceph 节点上的 iptables。 对于过渡到生产环境,需要关注这一点。