Ceph

提供: ArchWiki
2021年8月1日 (日) 12:28時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (カテゴリーを変更(英語版準拠))
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

Ceph は分散型で信頼性があり、高い性能と信頼性を発揮することに焦点を絞ったストレージプラットフォームです。Ceph は仮想マシンのブロックストレージソリューションとして使ったり、FUSE を通して通常のファイルシステムとして利用することもできます。Ceph ではあらゆることが設定できるので、管理者はシステムのほとんど全てを制御することが可能になります。クラスタの監視と制御にはコマンドラインインターフェースを使います。プラットフォームとして認証機能も備えており、OpenStack SwiftAmazon S3 などのシステムに対応する様々なゲートウェイが存在します。

Wikipedia: Ceph (software) より:

Ceph は分散されたコンピュータクラスタからオブジェクト・ブロック・ファイルストレージを使えるように作られたフリーのソフトウェアストレージプラットフォームである。単一障害点が残らないように完全に分散され、エクサバイト級までスケールし、フリーに利用できるプラットフォームを Ceph の主な目標としている。データは複製され、耐障害性を持つ。

Ceph.com より:

Ceph は著しい性能・信頼性・スケーラビリティを発揮するように設計された分散型のオブジェクトストア・ファイルシステムです。
警告: Ceph ではインストール方法として 上流のツール を使うことが推奨されています。SSH を使用してマシンに接続し、自動的に Ceph のインストール・設定・管理が行われます。上流のツール (ceph-deploy) は Arch Linux をまだサポートしていません。ceph-deploy が Arch Linux に対応するまでは、ツールを活用する クイックインストール はできません。他に公式に記載されているインストール方法としては マニュアルデプロイガイド しかありません。この記事では Arch Linux でクイックインストールができるようになるまで、手動でインストールする方法を解説します。公式ドキュメントには「手動インストールは主として Chef や Juju、Puppet などを使ってデプロイスクリプトを作成する場合を想定しています」と記されています

用語

ノート: 完全な用語辞典は 公式ドキュメント にあります。
  • クライアント : Ceph クラスタに接続してデータにアクセスするコンピュータ。ただし Ceph クラスタ自体には含まれない。
  • MON : 別名モニター、クラスタの状態や実行しているサービスやデータの場所などクラスタの情報を保存する。
  • MDS : 別名メタデータサーバー。Ceph ファイルシステムのメタデータを保存してストレージクラスタの負担を減らす (例: ls などのコマンドの情報)。
  • ノード : OSD や MON などの Ceph サービスを実行するマシン。
  • OSD : 別名 OSD デーモン。クラスタにおけるデータのストレージを担当し、レプリケーション・リカバリ・リバランスなどの様々な操作も処理する。
  • ストレージクラスタ : データを保存するのに最低限必要なソフトウェアのコアセット (OSD+MON)。

インストール

パッケージ

公式リポジトリceph パッケージでインストールしてください。最新版を使いたい場合は ceph-gitAUR をインストールします。

ceph はクラスタ内の全てのノードにインストールしてください。

NTP クライアント

警告: 時刻が変動しないように監視ノードでは時刻を同期するようにしてください (詳しくは時刻#クロックスキューを参照)。時刻が同期されていないとクラスタの性能が落ちたり、あるいは完全に機能しなくなってしまう可能性もあります。公式ドキュメント でもノードで何らかの時刻同期を行うことを推奨しています。

ノードに時刻同期クライアントをインストール・実行してください。詳しくは時刻を参照。

ストレージクラスタのブートストラップ

ストレージクラスタを利用するには、クラスタのモニターを複数の識別子と鍵束でブートストラップされるようにする必要があります。

Ceph の本家ドキュメントに詳しい記載があり、最新リリースにそって更新されています。

ストレージクラスタをブートストラップするには、公式のマニュアルデプロイガイド に書かれている手順に従ってください。

モニターの起動

Arch Linux では基本的に systemd を使っているため、systemd ユニットとしてモニターを有効化できます。

例えば、モニターの名前が node1 ならば Systemd#ユニットを使うに説明されているように ceph-mon@node1.service を起動・有効化してください。

参照