Preflight Checklist

New in version 0.60.

This Preflight Checklist will help you prepare an admin node for use withceph-deploy, and server nodes for use with passwordless ssh andsudo.

Before you can deploy Ceph using ceph-deploy, you need to ensure that youhave a few things set up first on your admin node and on nodes running Cephdaemons.

Install an Operating System

Install a recent release of Debian or Ubuntu (e.g., 16.04 LTS) onyour nodes. For additional details on operating systems or to use otheroperating systems other than Debian or Ubuntu, see OS Recommendations.

Install an SSH Server

The ceph-deploy utility requires ssh, so your server node(s) require anSSH server.

  1. sudo apt-get install openssh-server

Create a User

Create a user on nodes running Ceph daemons.

Tip

We recommend a username that brute force attackers won’tguess easily (e.g., something other than root, ceph, etc).

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

ceph-deploy installs packages onto your nodes. This means thatthe user you create requires passwordless sudo privileges.

Note

We DO NOT recommend enabling the root passwordfor security reasons.

To provide full privileges to the user, add the following to/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

Configure SSH

Configure your admin machine with password-less SSH access to each noderunning Ceph daemons (leave the passphrase empty).

  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.

Copy the key to each node running Ceph daemons:

  1. ssh-copy-id ceph@ceph-server

Modify your ~/.ssh/config file of your admin node so that it defaultsto logging in as the user you created when no username is specified.

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

Install ceph-deploy

To install ceph-deploy, execute the following:

  1. wget -q -O- 'https://download.ceph.com/keys/release.asc' | sudo apt-key add -
  2. echo deb https://download.ceph.com/debian-nautilus/ $(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

Ensure Connectivity

Ensure that your Admin node has connectivity to the network and to your Servernode (e.g., ensure iptables, ufw or other tools that may preventconnections, traffic forwarding, etc. to allow what you need).

Once you have completed this pre-flight checklist, you are ready to begin usingceph-deploy.