Ansible
有关 IBM Cloud Schematics 操作的常见问题的答案分为以下部分。
支持将经典 VSI 用于操作吗?
操作不支持经典 VSI 环境。 仅 IBM Cloud VPC VSI 已经过测试并且受操作支持。
建议将哪些网络配置用于操作?
作为用户,您负责确保适当的网络策略和防御主机配置适用于云环境,以允许 Schematics 通过 SSH 连接到您的环境。 请参阅 Schematics 防火墙,允许的 IP,以获取 IP 地址 Schematics 使用的详细信息,并且必须允许访问。 使用防御主机时,将使用 SSH 转发来连接到目标 VSI。 要验证是否访问命令 ssh -J bastion-ip vsi-ip
。
示例 as-is 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 消息?
在操作设置页面中,需要将输入变量设置为 ansible_python_interpreter = auto
,如截屏中所示,以避免出现 DEPRECATION WARNING
消息。

如何解决在使用 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 运行手册与其中一个受支持的版本兼容,以便您可以在 Schematics中运行这些模板。 有关更多信息,请参阅 升级 Terraform 模板版本 和 Schematics 运行时工具。
能否使用 Schematics运行 Ansible 运行手册?
可以,可以使用 Schematics 操作或 Terraform 配置文件中的 Ansible 配置程序对 IBM Cloud 运行 Ansible 运行手册。 例如,使用 Ansible Provisioner在云资源上部署软件,或针对您的资源设置操作,例如关闭虚拟服务器实例。 更多信息,请参阅 Schematics 操作的 Ansible 样本操作手册模板。