##はじめに
この記事では、タイトルのとおり現時点(2021.01)で最新である__ceph(octopus)__の構築を目的としています。
また、自分で構築した手順の備忘録を兼ねているので、細かいところで間違いなどあるかもしれません。
基本的には公式のDOCUMENTATIONが必要なことを全て網羅しているので一読しておくことをお勧めします。
Linuxの知識もある程度必要になるので他サイトや書籍などで事前に基本は押さえておくとよいでしょう。
##関連記事
Ceph(Octopus)の構築(準備編 ハードウェア) この記事
Ceph(Octopus)の構築(準備編 ソフトウェア)
Ceph(Octopus)の構築(設定編 共通)
Ceph(Octopus)の構築(設定編 ブートストラップ)
Ceph(Octopus)の構築(設定編 mon/mgr/osd)
Ceph(Octopus)の構築(設定編 cephFS/mds)
Ceph(Octopus)の構築(設定編 Crush Map)
##ハードウェア(ノード)
まずは、cephクラスタを構成するためのパソコンを用意する必要があります。
組みたいcephクラスタの構成により様々になります。
今回は以下の構成で組みました。
No | ホスト | メモリ | ストレージ |
---|---|---|---|
1 | ceph-mon01 | 16GB | HDD1(250GB)/HDD2(250GB) |
2 | ceph-mds01 | 16GB | HDD1(250GB)/HDD2(250GB) |
3 | ceph-osd01 | 16GB | HDD1(250GB)/HDD2(250GB) |
4 | ceph-osd02 | 16GB | HDD1(250GB)/HDD2(250GB) |
5 | ceph-osd03 | 16GB | HDD1(250GB)/HDD2(250GB) |
6 | ceph-mon11 | 16GB | HDD1(250GB)/HDD2(250GB) |
7 | ceph-mds11 | 16GB | HDD1(250GB)/HDD2(250GB) |
8 | ceph-osd11 | 16GB | HDD1(250GB)/HDD2(250GB) |
9 | ceph-osd12 | 16GB | HDD1(250GB)/HDD2(250GB) |
10 | ceph-osd13 | 16GB | HDD1(250GB)/HDD2(250GB) |
11 | ceph-mon21 | 16GB | HDD1(250GB)/HDD2(250GB) |
12 | ceph-mds21 | 16GB | HDD1(250GB)/HDD2(250GB) |
13 | ceph-osd21 | 16GB | HDD1(250GB)/HDD2(250GB) |
14 | ceph-osd22 | 16GB | HDD1(250GB)/HDD2(250GB) |
15 | ceph-osd23 | 16GB | HDD1(250GB)/HDD2(250GB) |
合計15台の構成となっています。
ただ、(意味があるかないかは別として)物理的には最低1台あればdocker等で仮想化してしまえばcephの動作を確認することはできます。
また、原則osdは物理的に1つのデバイスであることが推奨されているので、OS用のデバイスとは別に構成しています。(HDD2が該当)
##ハードウェア(ネットワーク)
レプリケーションやcrush map、PG等の設定次第で必要なものは異なってきます。
今回はホストを5台ずつで3グループ作りたかったので以下の構成としています。
No | SW種別 | ポート速度 | 用途 |
---|---|---|---|
1 | L3 | 1Gbps | NW全体管理(デフォルトゲートウェイ) |
2 | L2 | 100Mbps | グループ0用 |
3 | L2 | 100Mbps | グループ1用 |
4 | L2 | 100Mbps | グループ2用 |
L3はルータでもよいでしょう。L2はSWHUBでもよいでしょう。
各ネットワークの構成に合った機器を選定してください。
クラスタのトラフィックを捌くことができるスペックのものを用意しましょう。
今回調達したパソコンはクライアント向け(サーバ用途ではない)であったためNICを1つしか備えていません。
そのため、表LANと裏LANの区別なく1つのセグメントで構築しました。NICが2枚以上備わっている場合はネットワークを分けることが推奨されています。
##おわりに
今回用意したハードウェアについては以上です。
私が準備したハードウェアと全く同じ数を揃える必要があるわけではありません。
最終的にクラスタの容量や冗長性が異なりはしますが、基本的にはどのようなハードウェアであってもcephを構築することはできます。
まずは手持ちのハードウェアで試してみてもいいと思います。
ソフトウェアについては次の記事に投稿しようと思います。