diff options
-rw-r--r-- | doc/install/build-packages.rst | 2 | ||||
-rw-r--r-- | doc/install/build-prerequisites.rst | 8 | ||||
-rw-r--r-- | doc/install/building-ceph.rst | 22 | ||||
-rw-r--r-- | doc/rados/operations/pools.rst | 35 |
4 files changed, 49 insertions, 18 deletions
diff --git a/doc/install/build-packages.rst b/doc/install/build-packages.rst index c8f405a76b1..2e5662099d2 100644 --- a/doc/install/build-packages.rst +++ b/doc/install/build-packages.rst @@ -19,7 +19,7 @@ To create ``.deb`` packages for Debian/Ubuntu, ensure that you have cloned the sudo apt-get install debhelper -Once you have installed debhelper, you can build the packages: +Once you have installed debhelper, you can build the packages:: sudo dpkg-buildpackage diff --git a/doc/install/build-prerequisites.rst b/doc/install/build-prerequisites.rst index f68a68fc10b..143f6b4620d 100644 --- a/doc/install/build-prerequisites.rst +++ b/doc/install/build-prerequisites.rst @@ -38,8 +38,14 @@ installed on your host. :: On Debian/Squeeze, execute ``aptitude install`` for each dependency that isn't installed on your host. :: - aptitude install autotools-dev autoconf automake cdbs gcc g++ git libboost-dev libedit-dev libssl-dev libtool libfcgi libfcgi-dev libfuse-dev linux-kernel-headers libcrypto++-dev libcrypto++ libexpat1-dev + aptitude install autotools-dev autoconf automake cdbs gcc g++ git libboost-dev libedit-dev libssl-dev libtool libfcgi libfcgi-dev libfuse-dev linux-kernel-headers libcrypto++-dev libcrypto++ libexpat1-dev pkg-config libcurl4-gnutls-dev + +On Debian/Wheezy, you may also need:: + keyutils-dev libaio and libboost-thread-dev + +.. note:: Some distributions that support Google's memory profiler tool may use + a different package name (e.g., ``libgoogle-perftools4``). Ubuntu ====== diff --git a/doc/install/building-ceph.rst b/doc/install/building-ceph.rst index 6795c6f2591..c7e417194bb 100644 --- a/doc/install/building-ceph.rst +++ b/doc/install/building-ceph.rst @@ -11,16 +11,26 @@ following:: ./configure make -You can use ``make -j`` to execute multiple jobs depending upon your system. For -example:: +.. topic:: Memory Profiling + + If Google's memory profile tool isn't supported for your distribution, you may + use ``./configure`` with the ``--without-tcmalloc`` option. See + `Memory Profiling`_ for details on using memory profiling. + + +.. topic:: Hyperthreading + + You can use ``make -j`` to execute multiple jobs depending upon your system. For + example, ``make -j4`` for a dual core processor may build faster. - make -j4 To install Ceph locally, you may also use:: sudo make install -If you install Ceph locally, ``make`` will place the executables in -``usr/local/bin``. You may add the ``ceph.conf`` file to the ``usr/local/bin`` -directory to run an evaluation environment of Ceph from a single directory. +If you install Ceph locally, ``make`` will place the executables in +``usr/local/bin``. You may add the Ceph configuration file to the +``usr/local/bin`` directory to run an evaluation environment of Ceph from a +single directory. +.. _Memory Profiling: ../../rados/operations/memory-profiling
\ No newline at end of file diff --git a/doc/rados/operations/pools.rst b/doc/rados/operations/pools.rst index 7a6bc6fc61d..a13fa91bcd8 100644 --- a/doc/rados/operations/pools.rst +++ b/doc/rados/operations/pools.rst @@ -64,21 +64,36 @@ Where: ``{pg-num}`` -:Description: The total number of placement groups for the pool +:Description: The total number of placement groups for the pool. See `Placement + Groups`_ for details on calculating a suitable number. The + default value ``8`` is NOT suitable for most systems. + :Type: Integer -:Required: No +:Required: Yes +:Default: 8 ``{pgp-num}`` -:Description: The total number of placement groups for placement purposes. -:Type: Integer -:Required: No - -When you create a pool, you should consider setting the number of -placement groups. +:Description: The total number of placement groups for placement purposes. This + **should be equal to the total number of placement groups**, except + for placement group splitting scenarios. -.. important:: You cannot change the number of placement groups in a pool - after you create it. +:Type: Integer +:Required: Yes +:Default: 8 + +When you create a pool, set the number of placement groups to a reasonable value +(e.g., ``100``). Consider the total number of placement groups per OSD too. +Placement groups are computationally expensive, so performance will degrade when +you have many pools with many placement groups (e.g., 50 pools with 100 +placement groups each). The point of diminishing returns depends upon the power +of the OSD host. + +.. important:: Increasing the number of placement groups in a pool after you + create the pool is still an experimental feature in Bobtail (v 0.56). We + recommend defining a reasonable number of placement groups and maintaining + that number until Ceph's placement group splitting and merging + functionality matures. See `Placement Groups`_ for details on calculating an appropriate number of placement groups for your pool. |