diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c144cea..906e59e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -14,6 +14,7 @@ stages: - lint - ansible-builder - run-setup + - run-setup-digitalocean - run-kubernetes - run-management-update - run-patchday @@ -89,6 +90,25 @@ builder-job: after_script: - rm /tmp/vault-pass + +run-setup-digitalocean: + extends: .run-ansible + stage: run-setup + script: + - 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y )' + - eval $(ssh-agent -s) + - 'echo "$GITLAB_SSH_KEY" | tr -d "\r" | ssh-add -' + - mkdir -p ~/.ssh + - chmod 0700 ~/.ssh + - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" >> ~/.ssh/config' + - ssh-add -L + - ansible-playbook -i stage-digitalocean setup.yml --vault-password-file /tmp/vault-pass -t common -u gitlabci + after_script: + - rm /tmp/vault-pass + only: + - main + + run-setup-dev: extends: .run-setup resource_group: dev diff --git a/external_monitoring.yml b/external_monitoring.yml index ff29acc..779fcb9 100644 --- a/external_monitoring.yml +++ b/external_monitoring.yml @@ -46,10 +46,6 @@ tags: - ssh_hardening - - name: "Install node-exporter via include_role" - include_role: - name: cloudalchemy.node-exporter - - name: "Install blackbox-exporter via include_role" include_role: name: cloudalchemy.blackbox-exporter diff --git a/host_vars/dev-blackbox-01.yml b/host_vars/dev-blackbox-01.yml new file mode 100644 index 0000000..b996dfa --- /dev/null +++ b/host_vars/dev-blackbox-01.yml @@ -0,0 +1,7 @@ +--- +docker_enabled: false +traefik_enabled: false +filebeat_enabled: false +metricbeat_enabled: false + +monitor_port_system: 9100 diff --git a/roles/node_exporter/handlers/main.yml b/roles/node_exporter/handlers/main.yml new file mode 100644 index 0000000..5b1ac83 --- /dev/null +++ b/roles/node_exporter/handlers/main.yml @@ -0,0 +1,5 @@ +--- +- name: "restart node-exporter" + service: + name: prometheus-node-exporter.service + state: restarted diff --git a/roles/node_exporter/tasks/main.yml b/roles/node_exporter/tasks/main.yml index 4507c79..58c7871 100644 --- a/roles/node_exporter/tasks/main.yml +++ b/roles/node_exporter/tasks/main.yml @@ -13,9 +13,9 @@ path: /etc/default/prometheus-node-exporter regex: "^ARGS=" line: "ARGS=\"--web.listen-address='{{ stage_private_server_ip }}:{{ monitor_port_system }}'\"" - register: node_exporter + notify: restart node-exporter -- name: "Restart prometheus-node-exporter if needed" +- name: "Ensure prometheus-node-exporter is running" service: name: prometheus-node-exporter - state: restarted + state: started