From b05e702219ee76f148e707441e2192330877cdec Mon Sep 17 00:00:00 2001 From: Timo Makinen Date: Tue, 12 Jul 2022 14:07:41 +0000 Subject: [PATCH] influxdb: First version of role --- roles/influxdb/files/influxdb.sysconfig | 6 +++ roles/influxdb/handlers/main.yml | 5 ++ roles/influxdb/meta/main.yml | 3 ++ roles/influxdb/tasks/main.yml | 64 +++++++++++++++++++++++++ 4 files changed, 78 insertions(+) create mode 100644 roles/influxdb/files/influxdb.sysconfig create mode 100644 roles/influxdb/handlers/main.yml create mode 100644 roles/influxdb/meta/main.yml create mode 100644 roles/influxdb/tasks/main.yml diff --git a/roles/influxdb/files/influxdb.sysconfig b/roles/influxdb/files/influxdb.sysconfig new file mode 100644 index 0000000..d3bd5e3 --- /dev/null +++ b/roles/influxdb/files/influxdb.sysconfig @@ -0,0 +1,6 @@ +INFLUXDB_META_DIR="/srv/influxdb/meta" +INFLUXDB_DATA_DIR="/srv/influxdb/data" +INFLUXDB_DATA_WAL_DIR="/srv/influxdb/wal" + +INFLUXDB_HTTP_BIND_ADDRESS="127.0.0.1:8086" +INFLUXDB_HTTP_AUTH_ENABLED=true diff --git a/roles/influxdb/handlers/main.yml b/roles/influxdb/handlers/main.yml new file mode 100644 index 0000000..547bd40 --- /dev/null +++ b/roles/influxdb/handlers/main.yml @@ -0,0 +1,5 @@ +--- +- name: restart influxdb + ansible.builtin.service: + name: influxdb + state: restarted diff --git a/roles/influxdb/meta/main.yml b/roles/influxdb/meta/main.yml new file mode 100644 index 0000000..b95ceec --- /dev/null +++ b/roles/influxdb/meta/main.yml @@ -0,0 +1,3 @@ +--- +dependencies: + - {role: nginx/server} diff --git a/roles/influxdb/tasks/main.yml b/roles/influxdb/tasks/main.yml new file mode 100644 index 0000000..7608871 --- /dev/null +++ b/roles/influxdb/tasks/main.yml @@ -0,0 +1,64 @@ +--- +- name: enable repository + ansible.builtin.yum_repository: + name: influxdb + baseurl: https://repos.influxdata.com/rhel/$releasever/$basearch/stable + description: InfluxDB + gpgcheck: true + gpgkey: https://repos.influxdata.com/influxdb.key + enabled: true + +- name: install packages + ansible.builtin.package: + name: influxdb2 + state: present + +- name: create data directory + ansible.builtin.file: + path: /export/influxdb + state: directory + mode: 0755 + owner: influxdb + group: influxdb + +- name: link data directory + ansible.builtin.file: + path: /srv/influxdb + src: /export/influxdb + state: link + owner: root + group: "{{ ansible_wheel }}" + follow: false + +- name: create config + ansible.builtin.copy: + dest: /etc/default/influxdb + src: influxdb.sysconfig + mode: 0644 + owner: root + group: "{{ ansible_wheel }}" + notify: restart influxdb + +- name: enable service + ansible.builtin.service: + name: influxdb + state: started + enabled: true + +- name: allow nginx to connect influxdb + seboolean: + name: httpd_can_network_connect + state: true + persistent: true + +- name: create nginx config + copy: + dest: "/etc/nginx/conf.d/{{ inventory_hostname }}/influxdb.conf" + content: | + location / { + proxy_pass http://127.0.0.1:8086/; + } + mode: 0644 + owner: root + group: "{{ ansible_wheel }}" + notify: restart nginx