Como solucionar el error hostname module cannot be used on platform Linux de Ansible

Solución al error "hostname module cannot be used on platform Linux (Rocky)" en un playbook de Ansible

Recientemente, al ejecutar uno de mis playbooks de Ansible que había creado hace 2 años, me encontré con el siguiente error:

FAILED! => {"changed": false, "msg": "hostname module cannot be used on platform Linux (Rocky)"}

Aunque era previsible que me encontraría con algún módulo obsoleto, no pensé que uno tan esencial me daría problemas. Anteriormente había utilizado este playbook en distribuciones Red Hat 8 y CentOS 7, pero nunca en Rocky Linux.

Ej.: Antes tenia un playbook llamado set-server.yml y una de las configuraciones en el servidor era ajustar el nombre a ebolges.com con el modulo hostname

set-server.yml

- name: Cambia el nombre del servidor a ebolges.com
  hostname:
    name: ebolges.com
  when: ansible_fqdn != 'ebolges.com'

Solución:

Para resolver este error, simplemente necesitas actualizar la tarea que cambia el nombre del servidor en tu playbook. Aquí tienes un ejemplo de cómo hacerlo:

- name: Cambia el nombre del servidor a ebolges.com
  hostname:
    name: ebolges.com
    use: systemd
  when: ansible_fqdn != 'ebolges.com'

Agrega use: systemd dentro del módulo hostname para solucionar el problema. No olvides mantener la indentación adecuada para que Ansible pueda interpretar correctamente el playbook. Con este cambio, deberías poder ejecutar tu playbook en Rocky Linux sin problemas. ansible-playbook set-server.yml

Espero que esta solución te haya sido útil. Si tienes más preguntas o problemas, no dudes en preguntar en los comentarios de esta entrada de blog.

¡Buena suerte!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *