Add playbook to deploy nginx for elk 01/23001/2
authorYujun Zhang <zhang.yujunz@zte.com.cn>
Wed, 12 Oct 2016 07:09:39 +0000 (15:09 +0800)
committerYujun Zhang <zhang.yujunz@zte.com.cn>
Wed, 12 Oct 2016 07:14:18 +0000 (15:14 +0800)
JIRA: QTIP-123

Change-Id: I6b98e3eab4c18e66b5455a073fccb68a3789f049
Signed-off-by: Yujun Zhang <zhang.yujunz@zte.com.cn>
supporting/servers/ansible.cfg [new file with mode: 0644]
supporting/servers/elk.yml [new file with mode: 0644]
supporting/servers/inventory [new file with mode: 0644]
supporting/servers/roles/elk/defaults/main.yml [new file with mode: 0644]
supporting/servers/roles/elk/handlers/main.yml [new file with mode: 0644]
supporting/servers/roles/elk/tasks/main.yml [new file with mode: 0644]
supporting/servers/roles/elk/templates/elk.conf.j2 [new file with mode: 0644]

diff --git a/supporting/servers/ansible.cfg b/supporting/servers/ansible.cfg
new file mode 100644 (file)
index 0000000..93022c4
--- /dev/null
@@ -0,0 +1,3 @@
+[defaults]
+hostfile = inventory
+host_key_checking = False
\ No newline at end of file
diff --git a/supporting/servers/elk.yml b/supporting/servers/elk.yml
new file mode 100644 (file)
index 0000000..406ba93
--- /dev/null
@@ -0,0 +1,4 @@
+---
+- hosts: elk-servers
+  roles:
+    - elk
diff --git a/supporting/servers/inventory b/supporting/servers/inventory
new file mode 100644 (file)
index 0000000..aa9388f
--- /dev/null
@@ -0,0 +1,4 @@
+qtip-dev        ansible_host=qtip
+
+[elk-servers]
+qtip-dev
\ No newline at end of file
diff --git a/supporting/servers/roles/elk/defaults/main.yml b/supporting/servers/roles/elk/defaults/main.yml
new file mode 100644 (file)
index 0000000..855fc7e
--- /dev/null
@@ -0,0 +1,4 @@
+---
+services:
+  - { name: kibana, upstream: 'http://127.0.0.1:5601' }
+  - { name: elastic, upstream: 'http://127.0.0.1:9200' }
diff --git a/supporting/servers/roles/elk/handlers/main.yml b/supporting/servers/roles/elk/handlers/main.yml
new file mode 100644 (file)
index 0000000..3558536
--- /dev/null
@@ -0,0 +1,4 @@
+---
+- name: restart nginx
+  become: true
+  service: name=nginx state=restarted
diff --git a/supporting/servers/roles/elk/tasks/main.yml b/supporting/servers/roles/elk/tasks/main.yml
new file mode 100644 (file)
index 0000000..8673b3d
--- /dev/null
@@ -0,0 +1,11 @@
+---
+- name: nginx is installed
+  become: true
+  package: name=nginx state=present
+- name: qtip server configuration is generated
+  become: true
+  template: src={{ item }}.conf.j2 dest=/etc/nginx/sites-enabled/{{ item }}.conf
+  with_items:
+    - elk
+  notify:
+    - restart nginx
diff --git a/supporting/servers/roles/elk/templates/elk.conf.j2 b/supporting/servers/roles/elk/templates/elk.conf.j2
new file mode 100644 (file)
index 0000000..271690e
--- /dev/null
@@ -0,0 +1,14 @@
+# {{ ansible_managed }}
+
+# servers
+#
+{% for service in services %}
+server {
+  listen 80;
+  listen 443 ssl;
+  server_name {{ service.name }}.qtip.openzero.net;
+  location / {
+    proxy_pass {{ service.upstream }};
+  }
+}
+{% endfor %}