IBM Cloud Docs
Ansible

Ansible

IBM Cloud Schematics アクションに関するよくある質問への回答は、以下のセクションに分類されています。

クラシック VSI はアクションでの使用がサポートされていますか?

クラシック VSI 環境は、アクションではサポートされません。 IBM Cloud VPC VSI のみがテスト済みであり、アクションでサポートされています。

どのようなネットワーク構成をアクションで使用することをお勧めしますか?

Schematics が SSH を介してご使用の環境に接続できるように、クラウド環境に適切なネットワーク・ポリシーと要塞ホスト構成が設定されていることを確認するのは、お客様の責任で行ってください。 Schematics が使用する IP アドレス、およびアクセスを許可する必要がある IP アドレスについて詳しくは、 Schematics ファイアウォールの許可された IP を参照してください。 要塞ホストを使用する場合は、SSH 転送を使用してターゲット VSI に接続します。 検証するには、コマンド ssh -J bastion-ip vsi-ip にアクセスします。

要塞ホストを使用する現状の IBM Cloud® VPC 構成は、 Cloud-Schematics リポジトリーで入手できます。 適切なネットワーク構成を作成するためのガイダンスについては、チュートリアル「 アプリケーション・デプロイメントのためのベスト・プラクティス VPC 構成のディスカバー 」に従ってください。

静的インベントリー・ファイルで SSH 接続が失敗するのはなぜですか?

短い形式のホスト名を使用してターゲット・ホストを定義することは、パブリック IP アドレスのないプライベート・ネットワーク上の VSI ではサポートされません。 接続が失敗し、メッセージ「 Could not resolve hostname」が表示されます。 サポートされる構成については、 アクションの資料 を参照してください。

ansible-playbook run | fatal: [worker-0]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host through ssh: ssh: Could not resolve hostname toraz3-worker-0001: Name or service not known", "unreachable": true}
2023/08/24 12:15:47 ansible-playbook run | fatal: [grid-man-0]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host through ssh: ssh: Could not resolve hostname toraz3-grid-man-01: Name or service not known", "unreachable": true}

アクション・ジョブで DEPRECATION WARNING メッセージが表示されるのはなぜですか?

アクション設定ページでは、 DEPRECATION WARNING というメッセージが表示されないように、スクリーンショットに示されているように、入力変数を ansible_python_interpreter = auto として設定する必要があります。

警告メッセージを無音にするための入力変数の構成
警告メッセージを無音にするための入力変数の構成

Schematics アクションを使用して WinRM をプロビジョニングする際に、実行できない可能性があるというエラーをどのように解決できますか?

Error: 2021/12/06 10:15:49 Terraform apply | Error: Error running command 'ANSIBLE_FORCE_COLOR=true ansible-playbook ansible.yml --inventory-file='inventory.yml' --extra-vars='{"ansible_connection":"winrm","ansible_password":"password","ansible_user":"administrator","ansible_winrm_server_cert_validation":"ignore"}' --forks=15 --user='root' --ssh-extra-args='-p 22 -o ConnectTimeout=120 -o ConnectionAttempts=3 -o StrictHostKeyChecking=no'': exit status 2. Output:
 2021/12/06 10:15:49 Terraform apply | PLAY [Please wait and have a coffee! The show is about to begin....] ***********
 2021/12/06 10:15:49 Terraform apply |
 2021/12/06 10:15:49 Terraform apply | TASK [Gathering Facts] *********************************************************
 2021/12/06 10:15:49 Terraform apply | fatal: [161.156.161.7]: FAILED! => {"msg": "winrm or requests is not installed: No module named 'winrm'"}
 2021/12/06 10:15:49 Terraform apply |
 2021/12/06 10:15:49 Terraform apply | PLAY RECAP *********************************************************************
 2021/12/06 10:15:49 Terraform apply | 161.156.161.7              : ok=0    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0
 2021/12/06 10:15:49 Terraform apply |
 2021/12/06 10:15:49 Terraform apply |
 2021/12/06 10:15:49 Terraform apply |
 2021/12/06 10:15:49 Terraform apply |   with null_resource.schematics_for_windows,
 2021/12/06 10:15:49 Terraform apply |   on schematics.tf line 2, in resource "null_resource" "schematics_for_windows":
 2021/12/06 10:15:49 Terraform apply |    2:   provisioner "ansible" {
 2021/12/06 10:15:49 Terraform apply |
 2021/12/06 10:15:50 Terraform APPLY error: Terraform APPLY errorexit status 1
 2021/12/06 10:15:50 Could not execute action

WinRM は Schematics Terraform Ansible プロビジョナーではサポート対象外です。 その代わりに、Schematics アクションを使用して、WinRM で Ansible プレイブックを実行することができます。 Schematics アクションは、 WinRM をサポートします。

Terraform および Ansible の新しいバージョンはいつ Schematics に追加されますか?

新しい Terraform と Ansible のバージョンをコミュニティーがリリースすると、IBM チームは Schematics のリリースの強化とテストを開始します。 新バージョンの入手可能性は、これらのテスト結果、コミュニティによるアップデート、セキュリティパッチ、バージョン間の技術的変更に依存します。 ご使用の Terraform テンプレートと Ansible Playbook が、サポート対象バージョンのいずれかと互換性があり、Schematics で実行できることを確認してください。 詳しくは、 Terraform テンプレート・バージョンのアップグレード および Schematics ランタイム・ツール を参照してください。

Schematics で Ansible Playbook を実行することはできますか?

はい。Terraform 構成ファイルで Schematics アクションまたは Ansible プロビジョナーを使用して、 IBM Cloud に対して Ansible プレイブックを実行できます。 例えば、 Ansible プロビジョナーを使用して、クラウドリソースにソフトウェアを展開したり、仮想サーバーインスタンスのシャットダウンなど、リソースに対するアクションを設定したりすることができます。 詳細については、 Schematics アクション用の Ansible プレイブックテンプレートのサンプル をご覧ください。