Open kwelch426 opened 3 weeks ago
Getting the below error on AmazonLinux 2 with debug on. I ran the same code on Ubuntu 22.04LTS and AmazonLinux 2023 without any issues. Ansible version is 2.9.27. Python version is 2.7.18
The playbook variables I am using are:
- name: install node exporter hosts: all vars: node_exporter_version: "1.8.2" node_exporter_web_listen_address: "0.0.0.0:9100" node_exporter_enabled_collectors: - "systemd" node_exporter_disabled_collectors: []
TASK [prometheus.prometheus._common : Create systemd service unit node_exporter] *************************************************************** fatal: [localhost]: FAILED! => { "changed": false } MSG: AnsibleError: template error while templating string: expected token '=', got '.'. String: {{ ansible_managed | comment }} [Unit] Description=Prometheus Node Exporter After=network-online.target [Service] Type=simple User={{ node_exporter_system_user }} Group={{ node_exporter_system_group }} ExecStart={{ node_exporter_binary_install_dir }}/node_exporter \ {% for collector in node_exporter_enabled_collectors -%} {% if not collector is mapping %} '--collector.{{ collector }}' \ {% else -%} {% set name, options = (collector.items()|list)[0] -%} '--collector.{{ name }}' \ {% for k,v in options|dictsort %} '--collector.{{ name }}.{{ k }}={{ v }}' \ {% endfor -%} {% endif -%} {% endfor -%} {% for collector in node_exporter_disabled_collectors %} '--no-collector.{{ collector }}' \ {% endfor %} {% if node_exporter_tls_server_config | length > 0 or node_exporter_http_server_config | length > 0 or node_exporter_basic_auth_users | length > 0 %} {% if node_exporter_version is version('1.5.0', '>=') %} '--web.config.file={{ node_exporter_config_dir }}/web_config.yml' \ {% else %} '--web.config={{ node_exporter_config_dir }}/web_config.yml' \ {% endif %} {% endif %} {% if node_exporter_web_disable_exporter_metrics %} '--web.disable-exporter-metrics' \ {% endif %} {% if node_exporter_version is version('1.5.0', '>=') and node_exporter_web_listen_address is iterable and node_exporter_web_listen_address is not mapping and node_exporter_web_listen_address is not string %} {% for address in node_exporter_web_listen_address %} '--web.listen-address={{ address }}' \ {% endfor %} {% else %} '--web.listen-address={{ node_exporter_web_listen_address }}' \ {% endif %} '--web.telemetry-path={{ node_exporter_web_telemetry_path }}' SyslogIdentifier=node_exporter Restart=always RestartSec=1 StartLimitInterval=0 {% set ns = namespace(protect_home = 'yes') %} {% for m in ansible_mounts if m.mount.startswith('/home') %} {% set ns.protect_home = 'read-only' %} {% endfor %} {% if node_exporter_textfile_dir.startswith('/home') %} {% set ns.protect_home = 'read-only' %} {% endif %} ProtectHome={{ ns.protect_home }} NoNewPrivileges=yes {% if (ansible_facts.packages.systemd | first).version is version('232', '>=') %} ProtectSystem=strict ProtectControlGroups=true ProtectKernelModules=true ProtectKernelTunables=yes {% else %} ProtectSystem=full {% endif %} [Install] WantedBy=multi-user.target RUNNING HANDLER [prometheus.prometheus.node_exporter : Restart node_exporter] ****************************************************************** PLAY RECAP ************************************************************************************************************************************* localhost : ok=23 changed=4 unreachable=0 failed=1 skipped=11 rescued=0 ignored=0 `
Getting the below error on AmazonLinux 2 with debug on. I ran the same code on Ubuntu 22.04LTS and AmazonLinux 2023 without any issues. Ansible version is 2.9.27. Python version is 2.7.18
The playbook variables I am using are: