検索

13.9. ansible-playbook-command.sh スクリプトを使用した config-download の実行

download PDF

標準の方式または個別のプロビジョニングおよび設定プロセスを使用してオーバークラウドをデプロイすると、director は /var/lib/mistral/ に作業ディレクトリーを生成します。このディレクトリーには、設定プロセスを再度実行するのに必要な Playbook およびスクリプトが含まれています。

前提条件

  • 以下の方式のいずれかでデプロイされたオーバークラウド

    • プロビジョニングプロセスと設定プロセスをまとめて実施する標準の方式
    • プロビジョニングプロセスと設定プロセスを分離する方式

手順

  1. アンダークラウドホストに stack ユーザーとしてログインします。
  2. Ansible Playbook のディレクトリーに移動します。

    $ cd /var/lib/mistral/overcloud/
  3. /var/lib/mistral/.ssh ディレクトリーの所有者を stack ユーザーに変更します。

    $ sudo chown stack. -R /var/lib/mistral/.ssh/
  4. ansible-playbook-command.sh コマンドを実行して、オーバークラウドの設定を実行します。

    $ sudo ./ansible-playbook-command.sh
  5. /var/lib/mistral/.ssh ディレクトリーの所有者を mistral ユーザーに変更します。これは、mistral_executor コンテナー内で実行されている ansible-playbook コマンドが正常に実行されるようにするために必要です。

    $ sudo chown 42430:42430 -R /var/lib/mistral/.ssh/
  6. mistral ユーザーとしてスクリプトを再実行します。

    このスクリプトには追加の Ansible 引数を渡すことができ、それらの引数は、そのまま ansible-playbook コマンドに渡されます。つまり、チェックモード (--check)、ホストの限定 (--limit)、変数のオーバーライド (-e) など、他の Ansible 機能を使用することができます。以下に例を示します。

    $ ./ansible-playbook-command.sh --limit Controller
    警告

    --limit を使用して大規模にデプロイする場合、実行に含まれるホストのみがノード全体の SSH known_hosts ファイルに追加されます。したがって、ライブマイグレーションなどの一部の操作は、known_hosts ファイルにないノード間では機能しない場合があります。

    注記

    すべてのノードで /etc/hosts ファイルが最新であることを確認するには、root ユーザーとして次のコマンドを実行します。

    (undercloud)$ sudo -i
    (undercloud)$ cd /var/lib/mistral/overcloud
    (undercloud)$ ANSIBLE_REMOTE_USER="tripleo-admin" ansible allovercloud \
      -i tripleo-ansible-inventory.yaml \
      -m include_role \
      -a name=tripleo-hosts-entries \
      -e @global_vars.yaml
  7. 設定プロセスが完了するまで待ちます。

関連情報

  • 作業ディレクトリーには、オーバークラウドの設定タスクを管理する deploy_steps_playbook.yaml という名前の Playbook が含まれています。この Playbook を表示するには、以下のコマンドを実行します。

    $ less deploy_steps_playbook.yaml

    Playbook は、作業ディレクトリーに含まれているさまざまなタスクファイルを使用します。タスクファイルには、OpenStack Platform の全ロールに共通するものと、特定の OpenStack Platform ロールおよびサーバー固有のものがあります。

  • 作業ディレクトリーには、オーバークラウドの roles_data ファイルで定義する各ロールに対応するサブディレクトリーも含まれます。以下に例を示します。

    $ ls Controller/

    各 OpenStack Platform ロールにディレクトリーには、そのロール種別の個々のサーバー用のサブディレクトリーも含まれます。これらのディレクトリーには、コンポーザブルロールのホスト名の形式を使用します。

    $ ls Controller/overcloud-controller-0
  • deploy_steps_playbook.yaml の Ansible タスクはタグ付けされます。タグの全リストを確認するには、ansible-playbook で CLI オプション --list-tags を使用します。

    $ ansible-playbook -i tripleo-ansible-inventory.yaml --list-tags deploy_steps_playbook.yaml

    次に、ansible-playbook-command.sh スクリプトで --tags--skip-tags--start-at-task のいずれかを使用して、タグ付けした設定を適用します。

    $ ./ansible-playbook-command.sh --tags overcloud
    1. オーバークラウドに対して config-download Playbook を実行すると、それぞれのホストの SSH フィンガープリントに関するメッセージが表示される場合があります。これらのメッセージを回避するには、ansible-playbook-command.sh スクリプトの実行時に、--ssh-common-args="-o StrictHostKeyChecking=no" を追加します。

      $ ./ansible-playbook-command.sh --tags overcloud --ssh-common-args="-o StrictHostKeyChecking=no"
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.