要件とかとか
https://documentation.suse.com/ja-jp/ses/7/html/ses-all/storage-bp-hwreq.htmlが分かりいいかな
あと
https://access.redhat.com/documentation/ja-jp/red_hat_ceph_storage/5/html/hardware_guide/minimum-hardware-recommendations-for-containerized-ceph_hwとかも

構成品目としては「manager」「dashboard」「metadata」「monitor」「osd(data)」「osd(meta)」「clinet」がある
これら構成要素は1つの筐体に載ってもいい

osdについて

https://documentation.suse.com/ja-jp/ses/7/html/ses-all/storage-bp-hwreq.html#ses-bp-production-clusterから
「7つのオブジェクトストレージノード」

とある. 2PBほどのストレージを作るなら、2000TB/7台 --> 285.7TB/台. っでこれが全体量の15%(2000TB*0.15 -> 300TB)を超えない には適用できる.
そして、HDDの本数は56本以上なので1つのHDD当たりは 2000TB/56 --> 35.7TB となる. っが現実に 35.7TB の容量を持つHDDは存在しないでの
18TB HDDを装着するとして 2000TB/18TB --> 111.1本が必要になる. これを7つのノードに分けるので1ノード当たり 18TB HDD を 111.1/7 --> 15.8slot 必要となる.

纏めると 2PB の容量を持たせるには、16slotを保有するノードを7つ用意して、そのslotには 18TB を埋め尽くす.

現実には BlueStore 構成のための block.db 向けのSSDとかmetadata向けのSSDとかの配置とかで
12 slotの2Uマシンに 10個ほどのHDD を載せて1ノード当たり 10個x18TB --> 180TB、2000TB/180TB --> 11.1台 --> osdだけで 12台の構成になるのかなと.
24TB HDDなら、10個x24TB --> 240TB、2000TB/240TB --> 8.3 台. osdだけで9台で 10本x9 -> 90本のHDDが必要. 1PBでいいなら、1000TB/240TB -> 4.2台, ただし 1000TB*0.15 -> 150TB と15%を超えるので無理かなぁ
1つのHDD当たり 150MB/sec 出せるとして、それが10個なら 1500MB/sec --> 12,000bit/sec --> 12Gbps. なので25GbEはあった方がいいのかも
block.db 向けのSSDのサイズは

We recommend reserving 4 GB for the WAL device. While the minimal DB size is 64 GB for RBD-only workloads,
the recommended DB size for Object Gateway and CephFS workloads is 2% of the main device capacity (but at least 196 GB).

とあるので 18TB の 2% で 360GB, 10個の18TB HDD向けには 3.6TBが必要で 2TBのSSDを2つでカバーする

cpuについては https://documentation.suse.com/ses/7.1/html/ses-all/storage-bp-hwreq.html#deployment-osd-recommendationから

1x 2GHz CPU Thread per spinner.
2x 2GHz CPU Thread per SSD.
4x 2GHz CPU Thread per NVMe.

とあるので10個のHDD、2個のSSDなら 1x10 + 2x2 --> 10+4 --> 14 thread なCPUとなる. なら 8core/16threadなcpuでいいのかも.

メモリーについては「Total RAM required = number of OSDs x (1 GB + osd_memory_target) + 16 GB」とある. 既定でosd_memory_targetは4GBらしいので
10x(1+4)+16 -> 66GB となる. osd_memory_targetを 10GB にすると 10x(1+10)+16 --> 126、 16GBなら 10x(1+16)+16 --> 186 となる.

一方で古いマニュアルであると
https://documentation.suse.com/ja-jp/ses/5.5/html/ses-all/storage-bp-hwreq.htmlによれば

BlueStoreを「使用しない」OSDの場合、各OSDストレージノードに対して、最低でもOSDの未加工容量1テラバイトあたり1GBのRAMが必要です。
OSDの未加工容量1テラバイトあたり1.5GBのRAMを推奨します。回復時には、OSDの未加工容量1テラバイトあたり2GBのRAMが最適な場合があります。
 
BlueStoreを「使用する」OSDの場合は、まずBlueStoreを使用しないOSDの推奨RAMサイズを計算します。次に、各OSDプロセスに推奨される
BlueStore RAMキャッシュサイズに2GBを足した値を計算し、2つの結果のうち大きい方のRAMの値を選択します。デフォルトのBlueStoreキャッシュは、
HDDでは1GB、SSDでは3GBです。つまり、次のうちの大きい方を選択します。

と記載され. これだと未加工容量「18TB*10 --> 180」なので 180GB or 360GBが必要になると言えるが、、cephのversion upで効率が良くなったのかな?

nicは25GbEが2つ. 10GbEでもいいみたい. 2系統持たせて、片方はクライアントへのサービス向け(パブリック ネットワーク)、
もう片方はOSD間でのレプリケーション、再バランシング(データを別のOSDsに運ぶ)、リカバリを行う専用通信回線(クラスタ ネットワーク)となる
https://documentation.suse.com/ja-jp/ses/7/html/ses-all/storage-bp-hwreq.html#network-overview
osdが12台で他monitor,managerらとclientを合わせて、、、30台以上になるでしょうから HUB は高価になるのかも.

分散ファイルシステムCephFSを構築して、25Gbps のHub にクライアントを繋げてもクライアントは 25Gbps以上の速度は出ないよ. 25Gbpsは25Gbpsのまま.
分散ファイルシステムCephFS側の25Gbps なHUBに 100Gbps のportがあってそこから100GbpsHUBに繋げ、クライアントも100Gbpsでそこに繋げたら25Gbps以上の速度はでるかも(確証無し,願望)

manager(管理ノード)

すっごく軽量でいい. 1台.
4core CPU, OS向け8GBメモリー+管理ノード機能向けの6GBあればいいようで、16GB位で. nicは10Gbpsで可.
dashboard機能を入れて、ほぼほぼ日常の管理端末になるので、ストレージはSSDで動作を速めた方がいいのかも. だがこれも128GBあればいい感じかな.

monitor

最低3台必要(OSDノードに同居してもいいが、リソースはその分追加で考慮する)

4 GB of RAM.
Processor with four logical cores.

とあるので、OS向けメモリにプラス4GB. 論理コアと書いているので、4threadsあればいいみたい.
system diskとmonitor向けのssd/nvmeがあった方がいいみたい. 全体をssdのrai1で保全もあり.
osdと同居するなら、raid1 ssdにsystemとmonitorを置くのもいいのかも.
1つのノードで立ち上げられるmonitorは1つのみ.
「複数のスイッチにボンディングされた2つのネットワークインタフェース」とある

やけにmonitorに対しては冗長性に配慮しているみたい

metadata

各メタデータサーバドメインに対して4GBのRAM。
ボンディングされた2つのネットワークインタフェース。
2個以上のコアを持つ2.5GHzのCPU。

とある. OS向けメモリ+4GB、で2.5GHz以上のcoreを2つ以上持たせる.
こちらも冗長性に配慮されているみたい

結局

なので [8c/8t]*1[2.5GHz], 32 or 64GB mem, 128GB SSD[system]+128GB SSD[monitor], 10GbE, 1U

なので [12c/24t]*1[Hz指定なし], 196GB mem, 128GB SSD[system] + 10* 18TB HDD(data) + 2* 2TB SSD(block.db) + 1TB SSD(meta) , 25GbE *2 , 2U

なので [10c/20t]*1[Hz指定なし], 128GB or 196GB mem, 128GB SSD[system] + 10* 18TB HDD(data) + 2* 2TB SSD(block.db) + 1TB SSD(meta) , 25GbE *2 , 2U

なので [8c/16t]*1[Hz指定なし],196GB mem, 128GB SSD[system] + 12* 18TB HDD(data) + 2* 2TB SSD(block.db) , 25GbE *2 , 2U

全体で 360TB + 720TB + 1080TB -> 2,160TB
これは総量で実際にはコピー数の定義や「erasure-code」で実質の利用量は目減りします.
「erasure-code」でk=10,m=2なら データを10分割してリカバリ向けのコーディングチャンクを2つ作ります. この場合10/12で総容量から利用量が削られます. 83%の現象. でも2つまでならOSD(HDD)が見えなくなっても大丈夫らしい
上記ではosdノードは11台. なのでk=9,m=2がいいのかも. 筐体全体のクラッシュに備えて

osd機能を持つ筐体には
https://www.supermicro.com/en/products/chassis/2u/826/sc826be2c-r920lpb
とか
https://www.supermicro.com/en/products/chassis/2u/829/sc829he1c4-r1k62lpb
とかで.

最新の60件
2025-01-23 2025-01-22 2025-01-21 2025-01-20 2025-01-13 2025-01-12 2025-01-08 2024-12-30 2024-12-29 2024-12-22 2024-12-20 2024-12-17 2024-12-15 2024-12-14 2024-12-12 2024-12-11 2024-12-10 2024-12-09 2024-12-08 2024-12-04 2024-11-28 2024-11-22 2024-11-15 2024-11-14 2024-11-12 2024-11-06 2024-11-05 2024-11-04 2024-11-02 2024-11-01 2024-10-29 2024-10-28 2024-10-27 2024-10-23 2024-10-18 2024-10-17 2024-10-15 2024-10-14 2024-10-13 2024-10-11 2024-10-10 2024-10-09 2024-10-08 2024-10-05

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2024-11-28 (木) 19:12:06