diff --git a/elk_metrics_6x/tests/test-vars.yml b/elk_metrics_6x/tests/test-vars.yml index dcbc0bd6..b7f5a2cc 100644 --- a/elk_metrics_6x/tests/test-vars.yml +++ b/elk_metrics_6x/tests/test-vars.yml @@ -18,7 +18,7 @@ physical_host: localhost # NOTE(cloudnull): Test configs used to minimize the impact of a # multi-node install with limited resources. q_storage: 1 -q_mem: 128 +q_mem: 512 h_mem: 512 osa_test_repo: "openstack/openstack-ansible-ops" diff --git a/elk_metrics_6x/tests/test.yml b/elk_metrics_6x/tests/test.yml index d7cd3314..fba19e51 100644 --- a/elk_metrics_6x/tests/test.yml +++ b/elk_metrics_6x/tests/test.yml @@ -15,3 +15,4 @@ - import_playbook: functional.yml - import_playbook: testLayout.yml +- import_playbook: testAPI.yml diff --git a/elk_metrics_6x/tests/testAPI.yml b/elk_metrics_6x/tests/testAPI.yml new file mode 100644 index 00000000..383db8bb --- /dev/null +++ b/elk_metrics_6x/tests/testAPI.yml @@ -0,0 +1,123 @@ +--- +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +- name: Test apm api + hosts: apm-server + gather_facts: false + become: true + + environment: + ANSIBLE_LOG_PATH: "/tmp/elk-metrics-6x-logs/ansible-elk-test.log" + + tasks: + - name: Check for open TCP + wait_for: + port: "{{ item.port }}" + host: "{{ item.host }}" + timeout: 120 + with_items: + - port: 8200 + host: 127.0.0.1 + + +- name: Test elasticsearch api + hosts: elastic-logstash + gather_facts: false + become: true + + environment: + ANSIBLE_LOG_PATH: "/tmp/elk-metrics-6x-logs/ansible-elk-test.log" + + tasks: + - name: Check http + uri: + url: http://127.0.0.1:{{ item.port }}{{ item.path }} + method: "{{ item.method }}" + status_code: 200 + register: elk_test + until: elk_test is success + retries: 3 + delay: 10 + with_items: + - port: 9200 + path: "/_nodes/stats" + method: "GET" + + - name: Check for open TCP + wait_for: + port: "{{ item.port }}" + host: "{{ item.host }}" + timeout: 120 + with_items: + - port: 9300 + host: 127.0.0.1 + + +- name: Test kibana api + hosts: elastic-logstash + gather_facts: false + become: true + + environment: + ANSIBLE_LOG_PATH: "/tmp/elk-metrics-6x-logs/ansible-elk-test.log" + + tasks: + - name: Check http + uri: + url: http://127.0.0.1:{{ item.port }}{{ item.path }} + method: "{{ item.method }}" + status_code: 200 + register: elk_test + until: elk_test is success + retries: 3 + delay: 10 + with_items: + - port: 5601 + path: "/status" + method: "HEAD" + - port: 81 + path: "/status" + method: "HEAD" + + +- name: Test logstash api + hosts: elastic-logstash + gather_facts: false + become: true + + environment: + ANSIBLE_LOG_PATH: "/tmp/elk-metrics-6x-logs/ansible-elk-test.log" + + tasks: + - name: Check http + uri: + url: http://127.0.0.1:{{ item.port }}{{ item.path }} + method: "{{ item.method }}" + status_code: 200 + register: elk_test + until: elk_test is success + retries: 3 + delay: 10 + with_items: + - port: 9600 + path: "/_node" + method: "HEAD" + + - name: Check for open TCP + wait_for: + port: "{{ item.port }}" + host: "{{ item.host }}" + timeout: 120 + with_items: + - port: 5044 + host: 127.0.0.1