6.6. 復元したセルフホストエンジン環境からの非稼働状態のホストの削除

管理ポータルでホストをフェンスした後には、REST API の要求で強制的に削除することができます。以下の手順では、HTTP サーバーに要求を送信するためのコマンドラインインターフェース、cURL を使用します。大半の Linux ディストリビューションには cURL が含まれています。本手順では Manager 仮想マシンに接続して、適切な要求を実行します。
  1. 非稼働状態のホストのフェンシング

    管理ポータルで、ホストの上で右クリックをして ホストがリブートされていることを確認 を選択します。
    バックアップ時にホストで実行中だった仮想マシンは、この時点でホストから削除され、Unknown から Down のステータスに切り替わります。フェンスされたホストは、REST API を使用して強制的に削除することができます。
  2. Manager の認証局の証明書取得

    Manager の仮想マシンに接続して、コマンドラインを使用して cURL で以下の要求を実行します。
    GET 要求で、今後の API 要求に使用できるようにManager の認証局 (CA) の証明書を取得します。以下の例では、--output オプションを使用して、Manager CA 証明書の出力先に hosted-engine.ca ファイルを指定します。また、--insecure オプションは、このような最初の要求は証明書なしで行うように指定します。
    # curl --output hosted-engine.ca --insecure https://[Manager.example.com]/ca.crt
  3. 削除するホストの GUID の取得

    一連のホストに対して GET 要求を使用して、削除するホストのグローバル一意識別子 (GUID) を取得します。以下の例では、Manager CA 証明書ファイルを含めます。認証には admin@internal ユーザーを使用し、このユーザーに対するパスワードは、コマンドの実行後に求められます。
    # curl --request GET --cacert hosted-engine.ca --user admin@internal https://[Manager.example.com]/api/hosts
    今回の要求では、環境内の全ホストの情報が返されます。ホストの GUID は、ホスト名が関連付けられた 16 進数の文字列です。Red Hat Enterprise Virtualization REST API についての詳しい情報は、『Red Hat Enterprise Virtualization REST API ガイド』を参照してください。
  4. フェンスされたホストの削除

    DELETE 要求を使用してフェンスされたホストの GUID を指定し、そのホストを環境から削除します。以前に使用したオプションに加え、以下の例では、拡張マークアップ言語 (XML: eXtensible Markup Language) を使用して要求を送受信するように指定するヘッダーと、force アクションを true に設定する XML 形式の本文を記述します。
    curl --request DELETE --cacert hosted-engine.ca --user admin@internal --header "Content-Type: application/xml" --header "Accept: application/xml" --data "<action><force>true</force></action>" https://[Manager.example.com]/api/hosts/ecde42b0-de2f-48fe-aa23-1ebd5196b4a5
    適切な GUID が指定されている場合には、この DELETE 要求を使用して、セルフホストエンジン環境にある、フェンスされたホストをすべて削除することができます。
ホストが削除されたら、セルフホストエンジン環境に再インストールすることができます。