As the title suggests, this article aims to build __ceph (octopus) __, which is the latest at the moment (2021.01). Also, since it also serves as a memorandum of the procedure you built yourself, there may be mistakes in the details.
Basically, the official DOCUMENTATION covers everything you need, so it's a good idea to read it. Since some knowledge of Linux is required, it is advisable to grasp the basics in advance on other sites and books.
The hardware can be found in the previous article (https://qiita.com/iriya_v00v/items/651eff2955d5ad7eadf6).
Building Ceph (Octopus) (Preparation Hardware) Construction of Ceph (Octopus) (preparation software) This article Construction of Ceph (Octopus) (common to settings)
Check the version of ceph you are building. As the title says, this time I will build using octopus. Many of the blogs that explain how to build it are about luminous and nautilus, and not so much about octopus.
For reference, the description of the official website at the moment (2021.01) is as follows, so it is not necessary to use octopus forcibly, but I decided to try a new version because it is a big deal.
We adopted CentOS, which is almost the same as RHEL, which is often used for business purposes. Initially I was planning to use Release version 8, but it was announced that OS 8 will be abolished and will move to Stream around 2020.12, and it turned out that End-of-life will be faster than OS 7 so this time. I decided to use CentOS7. In the future, if ceph officially declares support for Centos Stream, it may move to that.
There is a lot of software needed to get a ceph cluster up and running. Unfortunately, it can't be run on OS and ceph packages alone. Details will be described in the construction section, so I will only briefly introduce it here. __ ・ cephadm __ Ceph-deploy cannot be used with octopus. Use this command instead.
__ · podman or docker __ (use docker this time) Needed from octopus? The role (function) of ceph runs as a docker process on each node.
__ ・ NTP__ (using chrony this time) It seems that strict synchronization is required to maintain the cluster. It seems that an unexpected error will occur if the time is off.
__ · samba__ It is used to publish the built ceph file system. Not required for block/object storage.
__ ・ ceph-common__ Used to mount the ceph file system. You can mount it with mount -t ceph.
__ · ssh__ I think it is essential when there are many nodes that make up the cluster.
__ ・ sshpass__ Required if you want to automate your work with a shell script.
That's all for the software I used this time. When using cephadm, there was not much information and there was a lot of trial and error. There are various things written in the official document, but I want Japanese.
I will post about the construction (common) of ceph in Next article.
Recommended Posts