Cp-ansible: Espacio de nombres de la variable {{broker.id}} en el archivo de propiedades del servidor de Kafka Broker

Creado en 2 abr. 2019  ·  5Comentarios  ·  Fuente: confluentinc/cp-ansible

En el archivo de plantilla para las propiedades del corredor de kafka, usamos la variable {{kafka.broker.id}} referencia al archivo de inventario hosts.yml . Pero la variable {{kafka}} se define en la función defaults .

Esto aún se ejecutará correctamente debido a la jerarquía de prioridad de variables de {{kafka.broker.id}} tomará primero del diccionario inventory_host , pero para mayor claridad sería mejor no mezclar espacios de nombres.

Creo que deberíamos usar {{ inventory_hostname.kafka.broker.id }} para aclarar esto.

enhancement

Comentario más útil

Ahora veo que esto es lo que está haciendo la propiedad de fusión de ansible.cfg . Sigo pensando que esto hace que el libro de jugadas sea menos legible y más difícil de aprender.

Todos 5 comentarios

Lo mismo sucede con listeners=PLAINTEXT://:{{broker.config.port}} . En ese caso, {{broker}} proviene de confluent.common/defaults/main.yml . Un mejor espacio de nombres aquí aclarará las cosas.

Ahora veo que esto es lo que está haciendo la propiedad de fusión de ansible.cfg . Sigo pensando que esto hace que el libro de jugadas sea menos legible y más difícil de aprender.

Sufro el mismo problema cuando ejecuto el rol 'confluent.kafka-broker' hoy y paso varias horas encontrándolo.

@ chuck-confluent - Me encontré con esta situación hoy. Cuando actualizo la plantilla Jinja base_server_properties para usar broker.id={{ inventory_hostname.kafka.broker.id }} y vuelvo a ejecutar Ansible, aparece el siguiente error. Todavía estoy tratando de depurar por qué.

TASK [confluent.kafka-broker: Broker sasl_ssl config] * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
fatal: [localhost]: ¡FALLÓ! => {"cambiado": falso, "msg": "AnsibleUndefinedVariable: 'ansible.parsing.yaml.objects.AnsibleUnicode object' no tiene atributo 'kafka'"}

@ chuck-confluent acabamos de fusionar el siguiente PR, lo que hace que la mayoría, si no todas, las propiedades sean reemplazables. Debería resolver los problemas que está viendo.

https://github.com/confluentinc/cp-ansible/pull/124

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

OneCricketeer picture OneCricketeer  ·  6Comentarios

luizm picture luizm  ·  18Comentarios

Fobhep picture Fobhep  ·  6Comentarios

Fobhep picture Fobhep  ·  7Comentarios

sandeeprapido picture sandeeprapido  ·  9Comentarios