diff --git a/prometheus/generic/setup-snmp-exporter/README.md b/prometheus/generic/setup-snmp-exporter/README.md new file mode 100644 index 0000000..e598242 --- /dev/null +++ b/prometheus/generic/setup-snmp-exporter/README.md @@ -0,0 +1,11 @@ +setup-snmp-exporter +================== + +This role will instantiate a snmp-exporter container on targeted hosts. + +Requirements +------------ + +Docker must be available and running on the targeted hosts. + +[Configuration instructions coming soon] diff --git a/prometheus/generic/setup-snmp-exporter/defaults/main.yml b/prometheus/generic/setup-snmp-exporter/defaults/main.yml new file mode 100644 index 0000000..8b54a6a --- /dev/null +++ b/prometheus/generic/setup-snmp-exporter/defaults/main.yml @@ -0,0 +1,6 @@ +--- +snmp_exporter_image: 'prom/snmp-exporter' +snmp_exporter_image_version: 'latest' +snmp_exporter_port: '9116' + +provision_state: "started" diff --git a/prometheus/generic/setup-snmp-exporter/tasks/docker.yml b/prometheus/generic/setup-snmp-exporter/tasks/docker.yml new file mode 100644 index 0000000..58995c2 --- /dev/null +++ b/prometheus/generic/setup-snmp-exporter/tasks/docker.yml @@ -0,0 +1,10 @@ +--- +- name: Run the snmp_exporter + docker_container: + name: snmp_exporter + image: "{{ snmp_exporter_image }}:{{ snmp_exporter_image_version }}" + restart_policy: unless-stopped + network_mode: "host" + state: "{{ provision_state }}" + published_ports: + - "{{ snmp_exporter_port }}:9116" diff --git a/prometheus/generic/setup-snmp-exporter/tasks/main.yml b/prometheus/generic/setup-snmp-exporter/tasks/main.yml new file mode 100644 index 0000000..5affcdf --- /dev/null +++ b/prometheus/generic/setup-snmp-exporter/tasks/main.yml @@ -0,0 +1,6 @@ +--- +- name: Run prereqs + import_tasks: prereqs.yml + +- name: Run the docker images + import_tasks: docker.yml diff --git a/prometheus/generic/setup-snmp-exporter/tasks/prereqs.yml b/prometheus/generic/setup-snmp-exporter/tasks/prereqs.yml new file mode 100644 index 0000000..d55a8ec --- /dev/null +++ b/prometheus/generic/setup-snmp-exporter/tasks/prereqs.yml @@ -0,0 +1,19 @@ +--- +- name: Ensure epel-release is installed + yum: + name: "{{ item }}" + state: present + with_items: + - epel-release + +- name: Ensure pip is installed + yum: + name: "{{ item }}" + state: present + with_items: + - python3-pip + +- name: Install required python libraries + pip: + name: "docker-py" + state: present \ No newline at end of file