3.2. Ceph Orchestrator を使用したホストの追加

バックエンドで Cephadm で Ceph Orchestrator を使用して、ホストを既存の Red Hat Ceph Storage クラスターに追加できます。

前提条件

  • 稼働中の Red Hat Ceph Storage クラスターがある。
  • ストレージクラスター内のすべてのノードへの root レベルのアクセス。
  • ノードを CDN に登録して、サブスクリプションを割り当てます。
  • ストレージクラスター内のすべてのノードへの sudo アクセスおよびパスワードなしの ssh アクセスのある Ansible ユーザー。

手順

  1. Ceph 管理ノードから、Cephadm シェルにログインします。

    例:

    [root@host01 ~]# cephadm shell

  2. クラスターの SSH 公開鍵をフォルダーにデプロイメントします。

    構文

    ceph cephadm get-pub-key > ~/PATH

    [ceph: root@host01 /]# ceph cephadm get-pub-key > ~/ceph.pub

  3. Ceph クラスターの SSH 公開鍵を、新たなホストの root ユーザーの authorized_keys ファイルにコピーします。

    構文

    ssh-copy-id -f -i ~/PATH root@HOST_NAME_2

    例:

    [ceph: root@host01 /]# ssh-copy-id -f -i ~/ceph.pub root@host02

  4. Ansible 管理ノードから、新しいホストを Ansible インベントリーファイルに追加します。ファイルのデフォルトの場所は /usr/share/cephadm-ansible/hosts/ です。以下の例は、一般的なインベントリーファイルの構造を示しています。

    例:

    host01
    host02
    host03
    
    [admin]
    host00

    注記

    以前に新しいホストを Ansible インベントリーファイルに追加し、ホストでプリフライト Playbook を実行している場合は、ステップ 6 に進みます。

  5. --limit オプションを指定して、プリフライト Playbook を実行します。

    構文

    ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --extra-vars "ceph_origin=rhcs" --limit NEWHOST

    例:

    [ceph-admin@admin cephadm-ansible]$ ansible-playbook -i hosts cephadm-preflight.yml --extra-vars "ceph_origin=rhcs" --limit host02

    プリフライト Playbook は、新しいホストに podmanlvm2chronyd、および cephadm をインストールします。インストールが完了すると、cephadm/usr/sbin/ ディレクトリーに配置されます。

  6. Ceph 管理ノードから、Cephadm シェルにログインします。

    例:

    [root@host01 ~]# cephadm shell

  7. cephadm オーケストレーターを使用して、ストレージクラスターにホストを追加します。

    構文

    ceph orch host add HOST_NAME IP_ADDRESS_OF_HOST [--label=LABEL_NAME_1,LABEL_NAME_2]

    --label オプションは任意です。これを使用すると、ホストの追加時にラベルが追加されます。ホストには複数のラベルを追加できます。

    例:

    [ceph: root@host01 /]# ceph orch host add host02 10.10.128.70 --labels=mon,mgr

検証

  • ホストをリスト表示します。

    [ceph: root@host01 /]# ceph orch host ls

関連情報