]> git.proxmox.com Git - ceph.git/blame - ceph/doc/install/get-packages.rst
update sources to v12.1.1
[ceph.git] / ceph / doc / install / get-packages.rst
CommitLineData
7c673cae
FG
1==============
2 Get Packages
3==============
4
5To install Ceph and other enabling software, you need to retrieve packages from
6the Ceph repository. Follow this guide to get packages; then, proceed to the
7`Install Ceph Object Storage`_.
8
9
10Getting Packages
11================
12
13There are two ways to get packages:
14
15- **Add Repositories:** Adding repositories is the easiest way to get packages,
16 because package management tools will retrieve the packages and all enabling
17 software for you in most cases. However, to use this approach, each
18 :term:`Ceph Node` in your cluster must have internet access.
19
20- **Download Packages Manually:** Downloading packages manually is a convenient
21 way to install Ceph if your environment does not allow a :term:`Ceph Node` to
22 access the internet.
23
24
25Requirements
26============
27
28All Ceph deployments require Ceph packages (except for development). You should
29also add keys and recommended packages.
30
31- **Keys: (Recommended)** Whether you add repositories or download packages
32 manually, you should download keys to verify the packages. If you do not get
33 the keys, you may encounter security warnings. There are two keys: one for
34 releases (common) and one for development (programmers and QA only). Choose
35 the key that suits your needs. See `Add Keys`_ for details.
36
37- **Ceph: (Required)** All Ceph deployments require Ceph release packages,
38 except for deployments that use development packages (development, QA, and
39 bleeding edge deployments only). See `Add Ceph`_ for details.
40
41- **Ceph Development: (Optional)** If you are developing for Ceph, testing Ceph
42 development builds, or if you want features from the bleeding edge of Ceph
43 development, you may get Ceph development packages. See
44 `Add Ceph Development`_ for details.
45
46- **Apache/FastCGI: (Optional)** If you are deploying a
47 :term:`Ceph Object Storage` service, you must install Apache and FastCGI.
48 Ceph provides Apache and FastCGI builds that are identical to those available
49 from Apache, but with 100-continue support. If you want to enable
50 :term:`Ceph Object Gateway` daemons with 100-continue support, you must
51 retrieve Apache/FastCGI packages from the Ceph repository.
52 See `Add Apache/FastCGI`_ for details.
53
54
55If you intend to download packages manually, see Section `Download Packages`_.
56
57
58Add Keys
59========
60
61Add a key to your system's list of trusted keys to avoid a security warning. For
62major releases (e.g., ``hammer``, ``jewel``) and development releases
63(``release-name-rc1``, ``release-name-rc2``), use the ``release.asc`` key. For
64development testing packages, use the ``autobuild.asc`` key (developers and
65QA).
66
67
68APT
69---
70
71To install the ``release.asc`` key, execute the following::
72
73 wget -q -O- 'https://download.ceph.com/keys/release.asc' | sudo apt-key add -
74
75
76To install the ``autobuild.asc`` key, execute the following
77(QA and developers only)::
78
79 wget -q -O- 'https://download.ceph.com/keys/autobuild.asc' | sudo apt-key add -
80
81
82RPM
83---
84
85To install the ``release.asc`` key, execute the following::
86
87 sudo rpm --import 'https://download.ceph.com/keys/release.asc'
88
89To install the ``autobuild.asc`` key, execute the following
90(QA and developers only)::
91
92 sudo rpm --import 'https://download.ceph.com/keys/autobuild.asc'
93
94
95Add Ceph
96========
97
98Release repositories use the ``release.asc`` key to verify packages.
99To install Ceph packages with the Advanced Package Tool (APT) or
100Yellowdog Updater, Modified (YUM), you must add Ceph repositories.
101
102You may find releases for Debian/Ubuntu (installed with APT) at::
103
104 https://download.ceph.com/debian-{release-name}
105
106You may find releases for CentOS/RHEL and others (installed with YUM) at::
107
108 https://download.ceph.com/rpm-{release-name}
109
31f18b77 110The major releases of Ceph are summarized at: :doc:`/releases`.
7c673cae
FG
111
112Every second major release is considered Long Term Stable (LTS). Critical
113bugfixes are backported to LTS releases until their retirement. Since retired
114releases are no longer maintained, we recommend that users upgrade their
115clusters regularly - preferably to the latest LTS release.
116
117The most recent LTS release is Jewel (10.2.x).
118
119.. tip:: For international users: There might be a mirror close to you where download Ceph from. For more information see: `Ceph Mirrors`_.
120
121Debian Packages
122---------------
123
124Add a Ceph package repository to your system's list of APT sources. For newer
125versions of Debian/Ubuntu, call ``lsb_release -sc`` on the command line to
126get the short codename, and replace ``{codename}`` in the following command. ::
127
128 sudo apt-add-repository 'deb https://download.ceph.com/debian-jewel/ {codename} main'
129
130For early Linux distributions, you may execute the following command::
131
132 echo deb https://download.ceph.com/debian-jewel/ $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph.list
133
134For earlier Ceph releases, replace ``{release-name}`` with the name with the
135name of the Ceph release. You may call ``lsb_release -sc`` on the command line
136to get the short codename, and replace ``{codename}`` in the following command.
137::
138
139 sudo apt-add-repository 'deb https://download.ceph.com/debian-{release-name}/ {codename} main'
140
141For older Linux distributions, replace ``{release-name}`` with the name of the
142release::
143
144 echo deb https://download.ceph.com/debian-{release-name}/ $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph.list
145
146Ceph on ARM processors requires Google's memory profiling tools (``google-perftools``).
147The Ceph repository should have a copy at
148https://download.ceph.com/packages/google-perftools/debian. ::
149
150 echo deb https://download.ceph.com/packages/google-perftools/debian $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/google-perftools.list
151
152
153For development release packages, add our package repository to your system's
154list of APT sources. See `the testing Debian repository`_ for a complete list
155of Debian and Ubuntu releases supported. ::
156
157 echo deb https://download.ceph.com/debian-testing/ $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph.list
158
159.. tip:: For international users: There might be a mirror close to you where download Ceph from. For more information see: `Ceph Mirrors`_.
160
161RPM Packages
162------------
163
164For major releases, you may add a Ceph entry to the ``/etc/yum.repos.d``
165directory. Create a ``ceph.repo`` file. In the example below, replace
166``{ceph-release}`` with a major release of Ceph (e.g., ``hammer``, ``jewel``,
167etc.) and ``{distro}`` with your Linux distribution (e.g., ``el7``, etc.). You
168may view https://download.ceph.com/rpm-{ceph-release}/ directory to see which
169distributions Ceph supports. Some Ceph packages (e.g., EPEL) must take priority
170over standard packages, so you must ensure that you set
171``priority=2``. ::
172
173 [ceph]
174 name=Ceph packages for $basearch
175 baseurl=https://download.ceph.com/rpm-{ceph-release}/{distro}/$basearch
176 enabled=1
177 priority=2
178 gpgcheck=1
179 gpgkey=https://download.ceph.com/keys/release.asc
180
181 [ceph-noarch]
182 name=Ceph noarch packages
183 baseurl=https://download.ceph.com/rpm-{ceph-release}/{distro}/noarch
184 enabled=1
185 priority=2
186 gpgcheck=1
187 gpgkey=https://download.ceph.com/keys/release.asc
188
189 [ceph-source]
190 name=Ceph source packages
191 baseurl=https://download.ceph.com/rpm-{ceph-release}/{distro}/SRPMS
192 enabled=0
193 priority=2
194 gpgcheck=1
195 gpgkey=https://download.ceph.com/keys/release.asc
196
197
198For development release packages, you may specify the repository
199for development releases instead. ::
200
201 [ceph]
202 name=Ceph packages for $basearch/$releasever
203 baseurl=https://download.ceph.com/rpm-testing/{distro}/$basearch
204 enabled=1
205 priority=2
206 gpgcheck=1
207 gpgkey=https://download.ceph.com/keys/release.asc
208
209 [ceph-noarch]
210 name=Ceph noarch packages
211 baseurl=https://download.ceph.com/rpm-testing/{distro}/noarch
212 enabled=1
213 priority=2
214 gpgcheck=1
215 gpgkey=https://download.ceph.com/keys/release.asc
216
217 [ceph-source]
218 name=Ceph source packages
219 baseurl=https://download.ceph.com/rpm-testing/{distro}/SRPMS
220 enabled=0
221 priority=2
222 gpgcheck=1
223 gpgkey=https://download.ceph.com/keys/release.asc
224
225
226For specific packages, you may retrieve them by specifically downloading the
227release package by name. Our development process generates a new release of Ceph
228every 3-4 weeks. These packages are faster-moving than the major releases.
229Development packages have new features integrated quickly, while still
230undergoing several weeks of QA prior to release.
231
232The repository package installs the repository details on your local system for
233use with ``yum``. Replace ``{distro}`` with your Linux distribution, and
234``{release}`` with the specific release of Ceph::
235
236 su -c 'rpm -Uvh https://download.ceph.com/rpms/{distro}/x86_64/ceph-{release}.el7.noarch.rpm'
237
238You can download the RPMs directly from::
239
240 https://download.ceph.com/rpm-testing
241
242.. tip:: For international users: There might be a mirror close to you where download Ceph from. For more information see: `Ceph Mirrors`_.
243
244
245Add Ceph Development
246====================
247
248Development repositories use the ``autobuild.asc`` key to verify packages.
249If you are developing Ceph and need to deploy and test specific Ceph branches,
250ensure that you remove repository entries for major releases first.
251
252
253Debian Packages
254---------------
255
256We automatically build Debian and Ubuntu packages for current
257development branches in the Ceph source code repository. These
258packages are intended for developers and QA only.
259
260Add our package repository to your system's list of APT sources, but
261replace ``{BRANCH}`` with the branch you'd like to use (e.g., chef-3,
262wip-hack, master). See `the gitbuilder page`_ for a complete
263list of distributions we build. ::
264
265 echo deb http://gitbuilder.ceph.com/ceph-deb-$(lsb_release -sc)-x86_64-basic/ref/{BRANCH} $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph.list
266
267
268RPM Packages
269------------
270
271For current development branches, you may add a Ceph entry to the
272``/etc/yum.repos.d`` directory. Create a ``ceph.repo`` file. In the example
273below, replace ``{distro}`` with your Linux distribution (e.g., ``el7``), and
274``{branch}`` with the name of the branch you want to install. ::
275
276
277 [ceph-source]
278 name=Ceph source packages
279 baseurl=http://gitbuilder.ceph.com/ceph-rpm-{distro}-x86_64-basic/ref/{branch}/SRPMS
280 enabled=0
281 gpgcheck=1
282 gpgkey=https://download.ceph.com/keys/autobuild.asc
283
284
285You may view http://gitbuilder.ceph.com directory to see which distributions
286Ceph supports.
287
288
289Add Apache/FastCGI
290==================
291
292Ceph Object Gateway works with ordinary Apache and FastCGI libraries. However,
293Ceph builds Apache and FastCGI packages that support 100-continue. To use the
294Ceph Apache and FastCGI packages, add them to your repository.
295
296
297Debian Packages
298---------------
299
300Add our Apache and FastCGI packages to your system's list of APT sources if you intend to
301use 100-continue. ::
302
303 echo deb http://gitbuilder.ceph.com/apache2-deb-$(lsb_release -sc)-x86_64-basic/ref/master $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph-apache.list
304 echo deb http://gitbuilder.ceph.com/libapache-mod-fastcgi-deb-$(lsb_release -sc)-x86_64-basic/ref/master $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph-fastcgi.list
305
306
307RPM Packages
308------------
309
310You may add a Ceph entry to the ``/etc/yum.repos.d`` directory. Create a
311``ceph-apache.repo`` file. In the example below, replace ``{distro}`` with your
312Linux distribution (e.g., ``el7``). You may view http://gitbuilder.ceph.com
313directory to see which distributions Ceph supports.
314::
315
316
317 [apache2-ceph-noarch]
318 name=Apache noarch packages for Ceph
319 baseurl=http://gitbuilder.ceph.com/apache2-rpm-{distro}-x86_64-basic/ref/master
320 enabled=1
321 priority=2
322 gpgcheck=1
323 gpgkey=https://download.ceph.com/keys/autobuild.asc
324
325 [apache2-ceph-source]
326 name=Apache source packages for Ceph
327 baseurl=http://gitbuilder.ceph.com/apache2-rpm-{distro}-x86_64-basic/ref/master
328 enabled=0
329 priority=2
330 gpgcheck=1
331 gpgkey=https://download.ceph.com/keys/autobuild.asc
332
333
334Repeat the forgoing process by creating a ``ceph-fastcgi.repo`` file. ::
335
336 [fastcgi-ceph-basearch]
337 name=FastCGI basearch packages for Ceph
338 baseurl=http://gitbuilder.ceph.com/mod_fastcgi-rpm-{distro}-x86_64-basic/ref/master
339 enabled=1
340 priority=2
341 gpgcheck=1
342 gpgkey=https://download.ceph.com/keys/autobuild.asc
343
344 [fastcgi-ceph-noarch]
345 name=FastCGI noarch packages for Ceph
346 baseurl=http://gitbuilder.ceph.com/mod_fastcgi-rpm-{distro}-x86_64-basic/ref/master
347 enabled=1
348 priority=2
349 gpgcheck=1
350 gpgkey=https://download.ceph.com/keys/autobuild.asc
351
352 [fastcgi-ceph-source]
353 name=FastCGI source packages for Ceph
354 baseurl=http://gitbuilder.ceph.com/mod_fastcgi-rpm-{distro}-x86_64-basic/ref/master
355 enabled=0
356 priority=2
357 gpgcheck=1
358 gpgkey=https://download.ceph.com/keys/autobuild.asc
359
360
361Download Packages
362=================
363
364If you are attempting to install behind a firewall in an environment without internet
365access, you must retrieve the packages (mirrored with all the necessary dependencies)
366before attempting an install.
367
368Debian Packages
369---------------
370
371Ceph requires additional additional third party libraries.
372
373- libaio1
374- libsnappy1
375- libcurl3
376- curl
377- libgoogle-perftools4
378- google-perftools
379- libleveldb1
380
381
382The repository package installs the repository details on your local system for
383use with ``apt``. Replace ``{release}`` with the latest Ceph release. Replace
384``{version}`` with the latest Ceph version number. Replace ``{distro}`` with
385your Linux distribution codename. Replace ``{arch}`` with the CPU architecture.
386
387::
388
389 wget -q https://download.ceph.com/debian-{release}/pool/main/c/ceph/ceph_{version}{distro}_{arch}.deb
390
391
392RPM Packages
393------------
394
395Ceph requires additional additional third party libraries.
396To add the EPEL repository, execute the following::
397
398 sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
399
400Ceph requires the following packages:
401
402- snappy
403- leveldb
404- gdisk
405- python-argparse
406- gperftools-libs
407
408
409Packages are currently built for the RHEL/CentOS7 (``el7``) platforms. The
410repository package installs the repository details on your local system for use
411with ``yum``. Replace ``{distro}`` with your distribution. ::
412
413 su -c 'rpm -Uvh https://download.ceph.com/rpm-jewel/{distro}/noarch/ceph-{version}.{distro}.noarch.rpm'
414
415For example, for CentOS 7 (``el7``)::
416
417 su -c 'rpm -Uvh https://download.ceph.com/rpm-jewel/el7/noarch/ceph-release-1-0.el7.noarch.rpm'
418
419You can download the RPMs directly from::
420
421 https://download.ceph.com/rpm-jewel
422
423
424For earlier Ceph releases, replace ``{release-name}`` with the name
425with the name of the Ceph release. You may call ``lsb_release -sc`` on the command
426line to get the short codename. ::
427
428 su -c 'rpm -Uvh https://download.ceph.com/rpm-{release-name}/{distro}/noarch/ceph-{version}.{distro}.noarch.rpm'
429
430
431
432
433.. _Install Ceph Object Storage: ../install-storage-cluster
434.. _the testing Debian repository: https://download.ceph.com/debian-testing/dists
435.. _the gitbuilder page: http://gitbuilder.ceph.com
436.. _Ceph Mirrors: ../mirrors