検索

3.3. コマンドラインインターフェースを使用した Ceph OSD の追加

download PDF

OSD を Red Hat Ceph Storage に手動で追加するハイレベルのワークフローを以下に示します。

  1. ceph-osd パッケージをインストールして、新規 OSD インスタンスを作成します。
  2. OSD データおよびジャーナルドライブを準備してマウントします。
  3. 新規 OSD ノードを CRUSH マップに追加します。
  4. 所有者およびグループパーミッションを更新します。
  5. ceph-osd デーモンを有効にして起動します。
重要

ceph-disk コマンドは非推奨となりました。ceph-volume コマンドは、コマンドラインインターフェースから OSD をデプロイするのに推奨される方法です。現在、ceph-volume コマンドは lvm プラグインのみをサポートしています。Red Hat は、本ガイドで両方のコマンドを参照として使用している例を提供します。これにより、ストレージ管理者は ceph-disk に依存するカスタムスクリプトを ceph-volume に変換できます。

ceph-volume コマンドの使用方法は、Red Hat Ceph Storage Administration Guideを参照してください。

注記

カスタムストレージクラスター名の場合は、ceph コマンドおよび ceph-osd コマンドで --cluster $CLUSTER_NAME オプションを使用します。

前提条件

  • Red Hat Ceph Storage クラスターが実行中である。
  • Installation Guide for Red Hat Enterprise Linux または UbuntuRequirements for Installing Red Hat Ceph Storage の章を参照してください。
  • 新規ノードへの root アクセスがあること。

手順

  1. Red Hat Ceph Storage 3 OSD ソフトウェアリポジトリーを有効にします。

    Red Hat Enterprise Linux

    [root@osd ~]# subscription-manager repos --enable=rhel-7-server-rhceph-3-osd- els-rpms

  2. /etc/ceph/ ディレクトリーを作成します。
  3. 新しい OSD ノードで、Ceph 管理キーリングと設定ファイルを Ceph Monitor ノードの 1 つからコピーします。
  4. ceph-osd パッケージを新しい Ceph OSD ノードにインストールします。

    Red Hat Enterprise Linux

    [root@osd ~]# yum install ceph-osd

  5. 新規 OSD について、ジャーナルを共存させるか、または専用のジャーナルを使用するかどうかを決定します。

    注記

    --filestore オプションが必要です。

    1. ジャーナルを共存させる OSD の場合:

      構文

      [root@osd ~]# docker exec $CONTAINER_ID ceph-disk --setuser ceph --setgroup ceph prepare  --filestore /dev/$DEVICE_NAME

      例:

      [root@osd ~]# docker exec ceph-osd-osd1 ceph-disk --setuser ceph --setgroup ceph prepare  --filestore /dev/sda

    2. 専用のジャーナルを持つ OSD の場合:

      構文

      [root@osd ~]# docker exec $CONTAINER_ID ceph-disk --setuser ceph --setgroup ceph prepare  --filestore /dev/$DEVICE_NAME /dev/$JOURNAL_DEVICE_NAME

      または

      [root@osd ~]# docker exec $CONTAINER_ID ceph-volume lvm prepare  --filestore --data /dev/$DEVICE_NAME --journal /dev/$JOURNAL_DEVICE_NAME

      [root@osd ~]# docker exec ceph-osd-osd1 ceph-disk --setuser ceph --setgroup ceph prepare  --filestore /dev/sda /dev/sdb

      [root@osd ~]# docker exec ceph-osd-osd1 ceph-volume lvm prepare  --filestore --data /dev/vg00/lvol1 --journal /dev/sdb
  6. noup オプションを設定します。

    [root@osd ~]# ceph osd set noup
  7. 新しい OSD をアクティベートします。

    構文

    [root@osd ~]# docker exec $CONTAINER_ID ceph-disk activate /dev/$DEVICE_NAME

    または

    [root@osd ~]# docker exec $CONTAINER_ID ceph-volume lvm activate --filestore $OSD_ID $OSD_FSID

    [root@osd ~]# docker exec ceph-osd-osd1 ceph-disk activate /dev/sda

    [root@osd ~]# docker exec ceph-osd-osd1 ceph-volume lvm activate --filestore 0 6cc43680-4f6e-4feb-92ff-9c7ba204120e
  8. OSD を CRUSH マップに追加します。

    構文

    ceph osd crush add $OSD_ID $WEIGHT [$BUCKET_TYPE=$BUCKET_NAME ...]

    [root@osd ~]# ceph osd crush add 4 1 host=node4

    注記

    複数のバケットを指定する場合、コマンドは OSD を指定したバケットから最も具体的なバケットに配置、および 指定した他のバケットに従ってバケットを移動します。

    注記

    CRUSH マップを手動で編集することもできます。Red Hat Ceph Storage 3 の Storage Strategies ガイドの Editing a CRUSH map セクションを参照してください。

    重要

    ルートバケットのみを指定する場合、OSD はルートに直接アタッチしますが、CRUSH ルールは OSD がホストバケット内に置かれることを想定します。

  9. noup オプションの設定を解除します。

    [root@osd ~]# ceph osd unset noup
  10. 新規作成されたディレクトリーの所有者とグループのパーミッションを更新します。

    構文

    chown -R $OWNER:$GROUP $PATH_TO_DIRECTORY

    [root@osd ~]# chown -R ceph:ceph /var/lib/ceph/osd
    [root@osd ~]# chown -R ceph:ceph /var/log/ceph
    [root@osd ~]# chown -R ceph:ceph /var/run/ceph
    [root@osd ~]# chown -R ceph:ceph /etc/ceph

  11. カスタム名のクラスターを使用する場合は、以下の行を適切なファイルに追加します。

    Red Hat Enterprise Linux

    [root@osd ~]# echo "CLUSTER=$CLUSTER_NAME" >> /etc/sysconfig/ceph

    $CLUSTER_NAME は、カスタムクラスター名に置き換えます。

  12. 新規 OSD が 起動 し、データを受信する準備ができていることを確認するには、OSD サービスを有効にして起動します。

    構文

    systemctl enable ceph-osd@$OSD_ID
    systemctl start ceph-osd@$OSD_ID

    [root@osd ~]# systemctl enable ceph-osd@4
    [root@osd ~]# systemctl start ceph-osd@4

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.