diff options
author | John Wilkins <john.wilkins@inktank.com> | 2013-04-26 14:06:26 -0700 |
---|---|---|
committer | John Wilkins <john.wilkins@inktank.com> | 2013-04-26 14:06:26 -0700 |
commit | fb8119ce44764aa7bee74be31b59bb010f4fc090 (patch) | |
tree | 3ac5e8d9d88eba5a38bf67ddcd5919e2a659286c | |
parent | 3433aa8f249e816ec783ea5d0be644107c945f4e (diff) | |
download | ceph-fb8119ce44764aa7bee74be31b59bb010f4fc090.tar.gz |
doc: Added general pre-flight checklist for ceph-deploy.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
-rw-r--r-- | doc/rados/deployment/ceph-deploy-preflight.txt | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/doc/rados/deployment/ceph-deploy-preflight.txt b/doc/rados/deployment/ceph-deploy-preflight.txt new file mode 100644 index 00000000000..73f3451d838 --- /dev/null +++ b/doc/rados/deployment/ceph-deploy-preflight.txt @@ -0,0 +1,108 @@ +Pre-flight Checklist +==================== + +Before you can deploy Ceph using ``ceph-deploy``, you need to ensure that you +have a few things set up first on your admin host and on hosts running Ceph +daemons. + +Install an Operating System +--------------------------- + +Install a recent release of Debian or Ubuntu (e.g., 12.04, 12.10) on your +hosts. For additional details on operating systems or to use other operating +systems other than Debian or Ubuntu, see `OS Recommendations`_. + +Create a User +------------- + +Create a user on hosts running Ceph daemons. + +.. tip:: We recommend a username that brute force attackers won't + guess easily (e.g., something other than ``root``, ``ceph``, etc). + +:: + + ssh user@ceph-server + sudo useradd -d /home/ceph -m ceph + sudo passwd ceph + + +``ceph-deploy`` installs packages onto your hosts. This means that +the user you create requires passwordless ``sudo`` priveleges. + +.. note:: We **DO NOT** recommmend enabling the ``root`` password + for security reasons. + +To provide full privileges to the user, add the following to +``/etc/sudoers.d/chef``. :: + + echo "chef ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/chef + sudo chmod 0440 /etc/sudoers.d/chef + + +Configure SSH +------------- + +Configure your admin machine with password-less SSH access to each host +running Ceph daemons (leave the passphrase empty). :: + + ssh-keygen + Generating public/private key pair. + Enter file in which to save the key (/ceph-client/.ssh/id_rsa): + Enter passphrase (empty for no passphrase): + Enter same passphrase again: + Your identification has been saved in /ceph-client/.ssh/id_rsa. + Your public key has been saved in /ceph-client/.ssh/id_rsa.pub. + +Copy the key to each host running Ceph daemons:: + + ssh-copy-id ceph@ceph-server + +Modify your ~/.ssh/config file of your admin host so that it defaults +to logging in as the user you created when no username is specified. :: + + Host ceph-server + Hostname ceph-server.fqdn-or-ip-address.com + User ceph + + +Install git +----------- + +To clone the ``ceph-deploy`` repository, you will need install ``git`` +on your admin host. :: + + sudo apt-get install git + + +Clone ceph-deploy +----------------- + +To begin working with ``ceph-deploy``, clone its repository. :: + + git clone https://github.com/ceph/ceph-deploy.git ceph-deploy + + +Install python-virualenv +------------------------ + +To bootstrap ``ceph-deploy`` and run it, you must install the +``python-virtualenv`` package. :: + + sudo apt-get install python-virtualenv + + +Bootstrap ceph-deploy +--------------------- + +After you clone the repository, bootstrap ``ceph-deploy``. :: + + cd ceph-deploy + ./bootstrap + +Add ``ceph-deploy`` to your path so that so that you can execute it without +remaining in ``ceph-deploy`` directory (e.g., ``/etc/environment``, +``~/.pam_environment``). Once you have completed this pre-flight checklist, you +are ready to begin using ``ceph-deploy``. + +.. _OS Recommendations: ../../../install/os-recommendations
\ No newline at end of file |