diff options
author | Tommi Virtanen <tommi.virtanen@dreamhost.com> | 2011-09-02 12:31:37 -0700 |
---|---|---|
committer | Tommi Virtanen <tommi.virtanen@dreamhost.com> | 2011-09-02 12:34:05 -0700 |
commit | 39b0354a7dfee5bf43cd7c4feab4ec9bbdd9e223 (patch) | |
tree | 89349121848a4d1322d945c85812a2c5f2c49437 | |
parent | 6506d43cbc2fd30b9907a1d0efe5d78ebf9fd6d3 (diff) | |
download | ceph-39b0354a7dfee5bf43cd7c4feab4ec9bbdd9e223.tar.gz |
doc: Write about deb installation.
Signed-off-by: Tommi Virtanen <tommi.virtanen@dreamhost.com>
-rw-r--r-- | doc/dev/index.rst | 11 | ||||
-rw-r--r-- | doc/ops/autobuilt.rst | 64 | ||||
-rw-r--r-- | doc/ops/filesystem.rst | 17 | ||||
-rw-r--r-- | doc/ops/index.rst | 2 | ||||
-rw-r--r-- | doc/ops/install.rst | 122 | ||||
-rw-r--r-- | doc/ops/misc.rst | 14 | ||||
-rw-r--r-- | keys/autobuild.asc | 41 | ||||
-rw-r--r-- | keys/release.asc | 140 |
8 files changed, 394 insertions, 17 deletions
diff --git a/doc/dev/index.rst b/doc/dev/index.rst index 833545049a2..69fda91850c 100644 --- a/doc/dev/index.rst +++ b/doc/dev/index.rst @@ -5,6 +5,17 @@ .. note:: If you're looking for how to use Ceph as a library from your own software, please see :doc:`/api/index`. +You can start a development mode Ceph cluster, after compiling the source, with:: + + cd src + install -d -m0755 out dev/osd0 + ./vstart.sh -n -x -l + # check that it's there + ./ceph health + +.. todo:: vstart is woefully undocumented and full of sharp sticks to poke yourself with. + + .. toctree:: :glob: diff --git a/doc/ops/autobuilt.rst b/doc/ops/autobuilt.rst new file mode 100644 index 00000000000..add9b292a92 --- /dev/null +++ b/doc/ops/autobuilt.rst @@ -0,0 +1,64 @@ +============================= + Autobuilt unstable packages +============================= + +We automatically build Debian and Ubuntu packages for any branches or +tags that appear in the |ceph.git|_. We build packages for the `amd64` +and `i386` architectures (`arch list`_), for the following +distributions (`distro list`_): + +- ``natty`` (Ubuntu 11.04) +- ``squeeze`` (Debian 6.0) + +.. |ceph.git| replace:: + ``ceph.git`` repository +.. _`ceph.git`: https://github.com/NewDreamNetwork/ceph + +.. _`arch list`: http://ceph.newdream.net/debian-snapshot-amd64/master/dists/natty/main/ +.. _`distro list`: http://ceph.newdream.net/debian-snapshot-amd64/master/dists/ + +The current status of autobuilt packages can be found at +http://ceph.newdream.net/gitbuilder-deb-amd64/ . + +If you wish to use these packages, you need to modify the +:ref:`earlier instructions <install-debs>` as follows: + +.. warning:: The following commands make your computer trust any code + that makes it into ``ceph.git``, including work in progress + branches and versions of code with possible security issues (that + were fixed afterwards). Use at your own risk! + +Whenever we say *DISTRO* below, replace it with the codename of your +operating system. + +Whenever we say *BRANCH* below, replace it with the version of the +code you want to run, e.g. ``master``, ``stable`` or ``v0.34`` (`branch list`_ [#broken-links]_). + +.. _`branch list`: http://ceph.newdream.net/debian-snapshot-amd64/ + +Run these commands on all nodes:: + + wget -q -O- https://raw.github.com/NewDreamNetwork/ceph/master/keys/autobuild.asc \ + | sudo apt-key add - + + sudo tee /etc/apt/sources.list.d/ceph.list <<EOF + deb http://ceph.newdream.net/debian-snapshot-amd64/BRANCH/ DISTRO main + deb-src http://ceph.newdream.net/debian-snapshot-amd64/BRANCH/ DISTRO main + EOF + + sudo apt-get update + sudo apt-get install ceph + +From here on, you can follow the usual set up instructions in +:doc:`/ops/install`. + + + +.. rubric:: Footnotes + +.. [#broken-links] Technical issues with how that part of the URL + space is HTTP reverse proxied means that the links in the generated + directory listings are broken. Please don't click on the links, + instead edit the URL bar manually, for now. + + .. todo:: Fix the gitbuilder reverse proxy to not break relative URLs. diff --git a/doc/ops/filesystem.rst b/doc/ops/filesystem.rst index 6a9ddeca7a6..75b4d67a12c 100644 --- a/doc/ops/filesystem.rst +++ b/doc/ops/filesystem.rst @@ -3,3 +3,20 @@ ======================================= .. todo:: Benefits of each, limits on non-btrfs ones, performance data when we have them, etc + + +Btrfs +----- + +.. todo:: what does btrfs give you (the journaling thing) + + +ext4/ext3 +--------- + +.. _xattr: + +Enabling extended attributes +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. todo:: how to enable xattr on ext4/3 diff --git a/doc/ops/index.rst b/doc/ops/index.rst index 3221394d374..915a02dcfc5 100644 --- a/doc/ops/index.rst +++ b/doc/ops/index.rst @@ -14,3 +14,5 @@ monitor grow/index data-placement + autobuilt + misc diff --git a/doc/ops/install.rst b/doc/ops/install.rst index 1ffca6f4417..27194d8ef11 100644 --- a/doc/ops/install.rst +++ b/doc/ops/install.rst @@ -2,32 +2,120 @@ Installing a Ceph cluster =========================== +For development and really early stage testing, see :doc:`/dev/index`. + +For installing the latest development builds, see +:doc:`/ops/autobuilt`. + +Installing any complex distributed software can be a lot of work. We +support two automated ways of installing Ceph: using Chef_, or with +the ``mkcephfs`` shell script. + +.. _Chef: http://wiki.opscode.com/display/chef + +.. topic:: Status as of 2011-09 + + This section hides a lot of the tedious underlying details. If you + need to, or wish to, roll your own deployment automation, or are + doing it manually, you'll have to dig into a lot more intricate + details. We are working on simplifying the installation, as that + also simplifies our Chef cookbooks. + + +Installing Ceph using Chef +========================== + +(Try saying that fast 10 times.) + +.. topic:: Status as of 2011-09 + + While we have Chef cookbooks in use internally, they are not yet + ready to handle unsupervised installation of a full cluster. Stay + tuned for updates. + .. todo:: write me -Authentication is optional but very much recommended. -Basically, everything somebody needs to go through to build a new -cluster when not cheating via vstart or teuthology, but without -mentioning all the design tradeoffs and options like journaling -locations or filesystems +Installing Ceph using ``mkcephfs`` +================================== -At this point, either use 1 or 3 mons, point to :doc:`grow/mon` +Installing the packages +----------------------- + +.. topic:: Status as of 2011-09 + + The following commands don't work yet. Patience, my young padawan. + + +.. _install-debs: + +Debian/Ubuntu +~~~~~~~~~~~~~ + +We regularly build Debian and Ubuntu packages for the `amd64` and +`i386` architectures, for the following distributions: + +- ``sid`` (Debian unstable) +- ``squeeze`` (Debian 6.0) +- ``lenny`` (Debian 5.0) +- ``oneiric`` (Ubuntu 11.11) +- ``natty`` (Ubuntu 11.04) +- ``maverick`` (Ubuntu 10.10) -OSD installation -================ +.. todo:: http://ceph.newdream.net/debian/dists/ also has ``lucid`` + (Ubuntu 10.04), should that be removed? -btrfs ------ +Whenever we say *DISTRO* below, replace that with the codename of your +operating system. -what does btrfs give you (the journaling thing) +Run these commands on all nodes:: + wget -q -O- https://raw.github.com/NewDreamNetwork/ceph/master/keys/release.asc \ + | sudo apt-key add - -ext4/ext3 ---------- + sudo tee /etc/apt/sources.list.d/ceph.list <<EOF + deb http://ceph.newdream.net/debian/ DISTRO main + deb-src http://ceph.newdream.net/debian/ DISTRO main + EOF -.. _xattr: + sudo apt-get update + sudo apt-get install ceph -Enabling extended attributes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -how to enable xattr on ext4/3 + + + + + + + +.. todo:: For older distributions, you may need to make sure your apt-get may read .bz2 compressed files. This works for Debian Lenny 5.0.3: + + $ apt-get install bzip2 + +.. todo:: ponder packages + + Package: ceph + Recommends: ceph-client-tools, ceph-fuse, libceph1, librados2, librbd1, btrfs-tools, gceph + + Package: ceph-client-tools + Package: ceph-fuse + Package: libceph-dev + Package: librados-dev + Package: librbd-dev + Package: obsync + Package: python-ceph + Package: radosgw + + +.. todo:: Other operating system support. + + +.. todo:: write me + +Basically, everything somebody needs to go through to build a new +cluster when not cheating via vstart or teuthology, but without +mentioning all the design tradeoffs and options like journaling +locations or filesystems + +At this point, either use 1 or 3 mons, point to :doc:`grow/mon` diff --git a/doc/ops/misc.rst b/doc/ops/misc.rst new file mode 100644 index 00000000000..084debc80e7 --- /dev/null +++ b/doc/ops/misc.rst @@ -0,0 +1,14 @@ +=============== + Miscellaneous +=============== + +.. todo:: This section should not exist. Try to reorganize, when + document is otherwise more ready. + + +Disabling encryption +==================== + +Authentication is optional but very much recommended. + +.. todo:: write me diff --git a/keys/autobuild.asc b/keys/autobuild.asc new file mode 100644 index 00000000000..2a1d17dc9ef --- /dev/null +++ b/keys/autobuild.asc @@ -0,0 +1,41 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.9 (GNU/Linux) + +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 +=PYuQ +-----END PGP PUBLIC KEY BLOCK----- diff --git a/keys/release.asc b/keys/release.asc new file mode 100644 index 00000000000..a4e8441c01d --- /dev/null +++ b/keys/release.asc @@ -0,0 +1,140 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.9 (GNU/Linux) + +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 +=6gus +-----END PGP PUBLIC KEY BLOCK----- |