Ansible

Las respuestas a las preguntas más frecuentes sobre las acciones de IBM Cloud Schematics se clasifican en la siguiente sección.

¿Se da soporte a las VSI clásicas para su uso con acciones?

Los entornos VSI clásicos no están soportados con acciones. Solo se han probado las VSI de VPC de IBM Cloud y están soportadas con acciones.

¿Qué configuración de red se sugiere para utilizar con acciones?

Es su responsabilidad como usuario asegurarse de que las políticas de red adecuadas y una configuración de host bastión están en vigor para el entorno de nube para permitir que Schematics se conecte a través de SSH al entorno. Consulte cortafuegos deSchematics, IP permitidas para obtener detalles de las direcciones IP que Schematics utiliza y debe tener permiso de acceso. Cuando se utiliza un host bastión, se utiliza el reenvío SSH para conectarse a las VSI de destino. Para validar el acceso al mandato ssh -J bastion-ip vsi-ip.

Las configuraciones de VPC de ejemplo tal cual IBM Cloud® con hosts de bastión están disponibles en el repositorio de Cloud-Schematics. Siga la guía de aprendizaje Descubrir la configuración de VPC de prácticas recomendadas para el despliegue de aplicaciones para obtener ayuda sobre la creación de una configuración de red adecuada.

¿Por qué falla la conexión SSH con archivos de inventario estático?

La definición de hosts de destino utilizando nombres de host de formato corto no está soportada para las VSI en una red privada sin direcciones IP públicas. La conexión falla con el mensaje Could not resolve hostname. Consulte la documentación de acciones para ver las configuraciones soportadas.

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}

¿Por qué mi trabajo de acción muestra un mensaje DEPRECATION WARNING?

En la página de configuración de la acción, es necesario establecer la variable de entrada como ansible_python_interpreter = auto como se muestra en la captura de pantalla para evitar el mensaje DEPRECATION WARNING.

Configuración de la variable de entrada para silenciar el mensaje de aviso
Configuración de la variable de entrada para silenciar el mensaje de aviso

¿Cómo puedo resolver el error "might not run action" al aprovisionar WinRM mediante la acción Schematics?

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 no está soportado por el suministrador de Schematics Terraform Ansible. De forma alternativa, puede utilizar las acciones de Schematics para ejecutar los playbooks de Ansible con WinRM. Las acciones Schematics dan soporte a WinRM.

¿Cuándo se añaden las nuevas versiones Terraform y Ansible a Schematics?

Después de que la comunidad libere las nuevas versiones de Terraform y Ansible, el equipo de IBM empieza a reforzar y probar el release para Schematics. La disponibilidad de nuevas versiones depende de los resultados de estas pruebas, las actualizaciones de la comunidad, los parches de seguridad y los cambios tecnológicos entre versiones. Asegúrese de que las plantillas de Terraform y las playbooks de Ansible son compatibles con una de las versiones soportadas para poderlas ejecutar en Schematics. Para obtener más información, consulte Actualización de la versión de plantilla de Terraform y las herramientas de tiempo de ejecución de Schematics.

¿Puedo ejecutar playbooks Ansible con Schematics?

Sí, puede ejecutar los playbooks de Ansible en IBM Cloud utilizando las acciones Schematics o el suministrador Ansible en el archivo de configuración de Terraform. Por ejemplo, utilice el aprovisionador Ansible para desplegar software en los recursos de la nube o establecer acciones contra sus recursos, como apagar una instancia de servidor virtual. Para obtener más información, consulte las plantillas de manual de estrategias de e Ansible s de muestra para acciones de e Schematics.