Fix some bugs when testing opensds ansible
[stor4nfv.git] / src / ceph / doc / start / os-recommendations.rst
1 ====================
2  OS Recommendations
3 ====================
4
5 Ceph Dependencies
6 =================
7
8 As a general rule, we recommend deploying Ceph on newer releases of Linux. 
9 We also recommend deploying on releases with long-term support.
10
11 Linux Kernel
12 ------------
13
14 - **Ceph Kernel Client**
15
16   If you are using the kernel client to map RBD block devices or mount
17   CephFS, the general advice is to use a "stable" or "longterm
18   maintenance" kernel series provided by either http://kernel.org or
19   your Linux distribution on any client hosts.
20
21   For RBD, if you choose to *track* long-term kernels, we currently recommend
22   4.x-based "longterm maintenance" kernel series:
23
24   - 4.9.z
25   - 4.4.z
26
27   For CephFS, see `CephFS best practices`_ for kernel version guidance.
28
29   Older kernel client versions may not support your `CRUSH tunables`_ profile
30   or other newer features of the Ceph cluster, requiring the storage cluster
31   to be configured with those features disabled.
32
33
34 Platforms
35 =========
36
37 The charts below show how Ceph's requirements map onto various Linux
38 platforms.  Generally speaking, there is very little dependence on
39 specific distributions aside from the kernel and system initialization
40 package (i.e., sysvinit, upstart, systemd).
41
42 Luminous (12.2.z)
43 -----------------
44
45 +----------+----------+--------------------+--------------+---------+------------+
46 | Distro   | Release  | Code Name          | Kernel       | Notes   | Testing    |
47 +==========+==========+====================+==============+=========+============+
48 | CentOS   | 7        | N/A                | linux-3.10.0 | 3       | B, I, C    |
49 +----------+----------+--------------------+--------------+---------+------------+
50 | Debian   | 8.0      | Jessie             | linux-3.16.0 | 1, 2    | B, I       |
51 +----------+----------+--------------------+--------------+---------+------------+
52 | Debian   | 9.0      | Stretch            | linux-4.9    | 1, 2    | B, I       |
53 +----------+----------+--------------------+--------------+---------+------------+
54 | Fedora   | 22       | N/A                | linux-3.14.0 |         | B, I       |
55 +----------+----------+--------------------+--------------+---------+------------+
56 | RHEL     | 7        | Maipo              | linux-3.10.0 |         | B, I       |
57 +----------+----------+--------------------+--------------+---------+------------+
58 | Ubuntu   | 14.04    | Trusty Tahr        | linux-3.13.0 |         | B, I, C    |
59 +----------+----------+--------------------+--------------+---------+------------+
60 | Ubuntu   | 16.04    | Xenial Xerus       | linux-4.4.0  | 3       | B, I, C    |
61 +----------+----------+--------------------+--------------+---------+------------+
62
63
64 Jewel (10.2.z)
65 --------------
66
67 +----------+----------+--------------------+--------------+---------+------------+
68 | Distro   | Release  | Code Name          | Kernel       | Notes   | Testing    | 
69 +==========+==========+====================+==============+=========+============+
70 | CentOS   | 7        | N/A                | linux-3.10.0 | 3       | B, I, C    |
71 +----------+----------+--------------------+--------------+---------+------------+
72 | Debian   | 8.0      | Jessie             | linux-3.16.0 | 1, 2    | B, I       |
73 +----------+----------+--------------------+--------------+---------+------------+
74 | Fedora   | 22       | N/A                | linux-3.14.0 |         | B, I       |
75 +----------+----------+--------------------+--------------+---------+------------+
76 | RHEL     | 7        | Maipo              | linux-3.10.0 |         | B, I       |
77 +----------+----------+--------------------+--------------+---------+------------+
78 | Ubuntu   | 14.04    | Trusty Tahr        | linux-3.13.0 |         | B, I, C    |
79 +----------+----------+--------------------+--------------+---------+------------+
80
81 Hammer (0.94.z)
82 ---------------
83
84 +----------+----------+--------------------+--------------+---------+------------+
85 | Distro   | Release  | Code Name          | Kernel       | Notes   | Testing    | 
86 +==========+==========+====================+==============+=========+============+
87 | CentOS   | 6        | N/A                | linux-2.6.32 | 1, 2    |            |
88 +----------+----------+--------------------+--------------+---------+------------+
89 | CentOS   | 7        | N/A                | linux-3.10.0 |         | B, I, C    |
90 +----------+----------+--------------------+--------------+---------+------------+
91 | Debian   | 7.0      | Wheezy             | linux-3.2.0  | 1, 2    |            |
92 +----------+----------+--------------------+--------------+---------+------------+
93 | Ubuntu   | 12.04    | Precise Pangolin   | linux-3.2.0  | 1, 2    |            |
94 +----------+----------+--------------------+--------------+---------+------------+
95 | Ubuntu   | 14.04    | Trusty Tahr        | linux-3.13.0 |         | B, I, C    |
96 +----------+----------+--------------------+--------------+---------+------------+
97
98 Firefly (0.80.z)
99 ----------------
100
101 +----------+----------+--------------------+--------------+---------+------------+
102 | Distro   | Release  | Code Name          | Kernel       | Notes   | Testing    | 
103 +==========+==========+====================+==============+=========+============+
104 | CentOS   | 6        | N/A                | linux-2.6.32 | 1, 2    | B, I       |
105 +----------+----------+--------------------+--------------+---------+------------+
106 | CentOS   | 7        | N/A                | linux-3.10.0 |         | B          |
107 +----------+----------+--------------------+--------------+---------+------------+
108 | Debian   | 7.0      | Wheezy             | linux-3.2.0  | 1, 2    | B          |
109 +----------+----------+--------------------+--------------+---------+------------+
110 | Fedora   | 19       | Schrödinger's Cat  | linux-3.10.0 |         | B          |
111 +----------+----------+--------------------+--------------+---------+------------+
112 | Fedora   | 20       | Heisenbug          | linux-3.14.0 |         | B          |
113 +----------+----------+--------------------+--------------+---------+------------+
114 | RHEL     | 6        | Santiago           | linux-2.6.32 | 1, 2    | B, I, C    |
115 +----------+----------+--------------------+--------------+---------+------------+
116 | RHEL     | 7        | Maipo              | linux-3.10.0 |         | B, I, C    |
117 +----------+----------+--------------------+--------------+---------+------------+
118 | Ubuntu   | 12.04    | Precise Pangolin   | linux-3.2.0  | 1, 2    | B, I, C    |
119 +----------+----------+--------------------+--------------+---------+------------+
120 | Ubuntu   | 14.04    | Trusty Tahr        | linux-3.13.0 |         | B, I, C    |
121 +----------+----------+--------------------+--------------+---------+------------+
122
123 Notes
124 -----
125
126 - **1**: The default kernel has an older version of ``btrfs`` that we do not
127   recommend for ``ceph-osd`` storage nodes.  We recommend using ``XFS``.
128
129 - **2**: The default kernel has an old Ceph client that we do not recommend
130   for kernel client (kernel RBD or the Ceph file system).  Upgrade to a
131   recommended kernel.
132
133 - **3**: The default kernel regularly fails in QA when the ``btrfs``
134   file system is used.  We do not recommend using ``btrfs`` for
135   backing Ceph OSDs.
136
137
138 Testing
139 -------
140
141 - **B**: We build release packages for this platform. For some of these
142   platforms, we may also continuously build all ceph branches and exercise
143   basic unit tests.
144
145 - **I**: We do basic installation and functionality tests of releases on this
146   platform.
147
148 - **C**: We run a comprehensive functional, regression, and stress test suite
149   on this platform on a continuous basis. This includes development branches,
150   pre-release, and released code.
151
152 .. _CRUSH Tunables: ../../rados/operations/crush-map#tunables
153
154 .. _CephFS best practices: ../../cephfs/best-practices