Puede superar esto utilizando la entrada externa a un libro de jugadas Ansible utilizando variables adicionales.
Este artículo aprenderá cómo usar variables adicionales ansibles para proporcionar valores personalizados o dinámicos sin editar los libros de jugadas.
¿Qué es ansible extra vars??
Ansible Extra Vars es una característica que le permite incluir más flexibilidad en sus libros de jugadas Ansible al proporcionarle la capacidad de especificar valores dinámicos al ejecutar el libro de jugadas.
Ansible adicionales Vars son útiles cuando:
Cómo usar ansible extra vars
Ansible Extra Vars sobrescribirá el valor almacenado en un libro de jugadas o un archivo variable. También se llaman variables de línea de comandos.
Veamos ahora un ejemplo de cómo usar vars adicionales.
Un ejemplo típico de los VAR adicionales en Ansible es cuando codifica el valor de los hosts. Suponga que tiene un libro de jugadas que se ejecuta en los anfitriones con el grupo "Desarrollo" cuando necesite ejecutar el libro de jugadas sobre hosts de "producción", se verá obligado a editar el libro de jugadas.
Esto puede ser agotador y propenso a los errores, especialmente en una extensa colección de grupos anfitriones.
Para resolver este problema, podemos usar la función Vars adicional Ansible. Podemos definir una variable que represente el grupo de hosts y especificar su valor al ejecutar el libro de jugadas.
Considere el libro de jugadas de ejemplo a continuación:
---Ahora que tenemos un libro de jugadas de ejemplo como el anterior, podemos pasar el valor a la variable "grupo" utilizando la opción -extra -vars mientras se ejecuta el libro de jugadas.
Un comando de ejemplo es como se muestra:
ejemplo.yml -extra -vars "grupo = producción"Para cambiar el grupo a "desarrollo", no necesita editar el libro de jugadas; pasar la variable como se muestra:
ejemplo.YML --Extra-Vars "Group = Desarrollo"El siguiente ejemplo utiliza VAR adicionales para especificar el servicio para comenzar en función de la distribución de destino.
---Usando el libro de jugadas anterior, podemos especificar las variables adicionales como:
ejemplo.YML --extra-Vars “Group = Desarrollo PKG_NAME = APOCHE2"Si desea pasar variables con espacios, utiliza comillas únicas como se muestra en el ejemplo a continuación:
ejemplo.yml --extra -vars "protocol = 'all -sslv2'"Conclusión
Este tutorial ilustra cómo implementar y usar variables adicionales ansibles para agregar flexibilidad a los libros de jugadas. Consulte la documentación para obtener más información.