预检

New in version 0.60.

本篇预检会协助你准备运行 ceph-deploy 的节点、和服务器节点,以使用无密码 sshsudo

通过 ceph-deploy 部署 Ceph 前,先要在管理节点和运行 Ceph 守护进程的节点上确认一些事情。

选装一个操作系统

在各节点安装最新发布的 Debian 或 Ubuntu (如 12.04 LTS 、 14.04 LTS ),关于 Debian 或 Ubuntu 以外的操作系统详见操作系统推荐

安装 SSH 服务器

ceph-deploy 工具需要 ssh ,所以你的服务器节点需要 SSH 服务器。

  1. sudo apt-get install openssh-server

创建一用户

在运行 Ceph 守护进程的节点上创建一个普通用户。

Tip

我们建议选一个暴力攻击者不可能轻易猜到的用户名,如 rootceph 之外的名字。

  1. ssh user@ceph-server
  2. sudo useradd -d /home/ceph -m ceph
  3. sudo passwd ceph

ceph-deploy 会在节点安装软件包,所以你创建的用户需要无密码 sudo 权限。

Note

为安全起见,我们不推荐启用 root 密码。

为赋予用户所有权限,把下列加入 /etc/sudoers.d/ceph

  1. echo "ceph ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/ceph
  2. sudo chmod 0440 /etc/sudoers.d/ceph

配置 SSH

配置你的管理主机,使之可通过 SSH无密码访问各节点,口令留空。

  1. ssh-keygen
  2. Generating public/private key pair.
  3. Enter file in which to save the key (/ceph-client/.ssh/id_rsa):
  4. Enter passphrase (empty for no passphrase):
  5. Enter same passphrase again:
  6. Your identification has been saved in /ceph-client/.ssh/id_rsa.
  7. Your public key has been saved in /ceph-client/.ssh/id_rsa.pub.

把公钥拷贝到各节点::

ssh-copy-id ceph@ceph-server

修改你管理节点上的 ~/.ssh/config ,以使未指定用户名时默认用你刚刚创建的用户名。

  1. Host ceph-server
  2. Hostname ceph-server.fqdn-or-ip-address.com
  3. User ceph

安装 ceph-deploy

执行下列命令安装 ceph-deploy

  1. wget -q -O- 'https://download.ceph.com/keys/release.asc' | sudo apt-key add -
  2. echo deb http://ceph.com/debian-dumpling/ $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph.list
  3. sudo apt-get update
  4. sudo apt-get install ceph-deploy

确认连通性

确保你的管理节点网络连接正常、且能连接服务器节点(如确认 iptablesufw 或其它可阻断连接的工具、流量转发等等这些组件配置正常)。

完成预检后,你就可以开始用 ceph-deploy 部署了。