diff options
author | John Wilkins <john.wilkins@inktank.com> | 2013-04-26 14:01:46 -0700 |
---|---|---|
committer | John Wilkins <john.wilkins@inktank.com> | 2013-04-26 14:01:46 -0700 |
commit | 3ff7eef99d521d1ec6b7392f2a1d98bf0486416c (patch) | |
tree | 5d7d2ca97d74a7688923e092a43535ed76001c23 | |
parent | 9365674036be06e860e05474c27e2e53a2ce4af8 (diff) | |
download | ceph-3ff7eef99d521d1ec6b7392f2a1d98bf0486416c.tar.gz |
doc: Added ceph-deploy preflight.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
-rw-r--r-- | doc/start/quick-start-preflight.rst | 137 |
1 files changed, 137 insertions, 0 deletions
diff --git a/doc/start/quick-start-preflight.rst b/doc/start/quick-start-preflight.rst new file mode 100644 index 00000000000..4a39c49f273 --- /dev/null +++ b/doc/start/quick-start-preflight.rst @@ -0,0 +1,137 @@ +===================== + Preflight Checklist +===================== + +.. versionadded:: 0.60 + +Thank you for trying Ceph! Petabyte-scale data clusters are quite an +undertaking. Before delving deeper into Ceph, we recommend setting up a two-node +demo cluster to explore some of the functionality. This **Preflight Checklist** +will help you prepare an admin host and a server host for use with +``ceph-deploy``. + +.. ditaa:: + /----------------\ /----------------\ + | Admin Host |<------->| Server Host | + | cCCC | | cCCC | + \----------------/ \----------------/ + + +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``. + + +Summary +======= + +Once you have passwordless ``ssh`` connectivity, passwordless ``sudo``, and +a bootstrapped ``ceph-deploy``, proceed to the `Object Store Quick Start`_. + +.. tip:: The ``ceph-deploy`` utility can install Ceph packages on remote + machines from the admin host! + +.. _Object Store Quick Start: ../quick-ceph-deploy +.. _OS Recommendations: ../../install/os-recommendations
\ No newline at end of file |