diff options
Diffstat (limited to 'deployment/playbooks/get_ocp_info.yaml')
-rw-r--r-- | deployment/playbooks/get_ocp_info.yaml | 233 |
1 files changed, 0 insertions, 233 deletions
diff --git a/deployment/playbooks/get_ocp_info.yaml b/deployment/playbooks/get_ocp_info.yaml deleted file mode 100644 index 7046ccc6..00000000 --- a/deployment/playbooks/get_ocp_info.yaml +++ /dev/null @@ -1,233 +0,0 @@ ---- -# Run this playbook that way: -# $ ansible-playbook -i ocp-master-node-hostname-or-ip, get_ocp_info.yaml - -# Ansible runner machine info -- hosts: localhost - gather_facts: no - tasks: - - name: Generate name for data file - set_fact: - data_file_path: "{{ lookup('env', 'VIRTUAL_ENV') }}/../../ocp_{{ - (groups['all'][0]).replace('.', '_') - }}_info.yaml" - - name: Print data file name - debug: - msg: "Data file path is '{{ data_file_path }}'" - - name: "[Re]Create file where we are going to store gathered data" - copy: - content: "" - dest: "{{ data_file_path }}" - mode: 0644 - force: yes - - - name: Get Linux kernel version of ansible runner - shell: "uname -a" - register: ansible_runner_linux_kernel_version - - name: Get Red Hat release info for ansible runner - shell: "cat /etc/redhat-release" - register: ansible_runner_rh_release - ignore_errors: yes - - name: Get ansible-playbook version from ansible runner - shell: "{{ lookup('env', 'VIRTUAL_ENV') }}/bin/ansible-playbook --version | - grep '^ansible-playbook' | awk '{print $2}'" - register: ansible_runner_ansible_playbook_version - - name: Get 'openshift-ansible' lib version used by ansible runner - shell: "echo \"openshift-ansible-$(cat {{ - lookup('env', 'VIRTUAL_ENV') - }}/usr/share/ansible/openshift-ansible/.tito/packages/openshift-ansible | awk '{print $1}')\"" - register: ansible_runner_oc_lib_version - - name: Write ansible runner data to the data file - yedit: - src: "{{ data_file_path }}" - state: present - backup: false - edits: - - key: 01_ansible_runner - value: - Linux kernel version: "{{ ansible_runner_linux_kernel_version.stdout_lines }}" - Red Hat release info: "{{ - ansible_runner_rh_release.stdout_lines or - 'File /etc/redhat-release was not found. Not RHEL machine?' }}" - ansible-playbook version: "{{ ansible_runner_ansible_playbook_version.stdout_lines }}" - openshift-ansible lib version: "{{ ansible_runner_oc_lib_version.stdout_lines }}" - -# === Master node info === -- hosts: all[0] - gather_facts: no - vars: - master_package_list: - - docker - - heketi - master_service_list: - - docker - - multipathd - gluster_pod_package_list: - - gluster - - heketi - - targetcli - - gluster-block - - tcmu-runner - - python-configshell - - python-rtslib - gluster_pod_service_list: - - glusterd - - heketi - - gluster-blockd - - gluster-block-target - - tcmu-runner - - rpcbind - heketi_pod_package_list: - - gluster - - heketi - # NOTE(vponomar): we do not process list of Heketi POD services for 2 reasons: - # 1) No requirement to get status of any of services on Heketi POD. - # 2) 'systemctl' does not work on it. - tasks: - - name: Get distro version of ansible runner - shell: "uname -a" - register: master_linux_kernel_version - - name: Get Red Hat release info for ansible runner - shell: "cat /etc/redhat-release" - register: master_rh_release - - name: Create grep filter with all the packages we are interested in - set_fact: - package_filter: "{{ package_filter | default('grep') + ' -e ' + item }}" - with_items: "{{ master_package_list }}" - - name: Get list of installed packages we are interested in - shell: "rpm -qa | {{ package_filter }}" - register: master_packages - - name: Get status of services on OCP Master node - shell: "systemctl list-units {{ master_service_list | join('.service ') }}.service - --type=service --all --no-pager --no-legend" - register: master_services - - name: Get OpenShift client version - shell: "oc version | grep -e 'oc ' -e 'openshift' -e 'kube'" - register: master_oc_version - - name: Get list of OCP nodes - shell: "oc get nodes" - register: master_ocp_nodes - - name: Get info about all the docker images used in OCP cluster - shell: "oc get pods --all-namespaces - -o=custom-columns=:.status.containerStatuses[*].image | grep -v -e '^$' | uniq" - register: master_image_info - - name: Write master data to the data file - delegate_to: localhost - yedit: - src: "{{ hostvars['localhost']['data_file_path'] }}" - state: present - edits: - - key: 02_master - value: - Linux kernel version: "{{ master_linux_kernel_version.stdout_lines }}" - Red Hat release info: "{{ master_rh_release.stdout_lines }}" - List of Packages: "{{ master_packages.stdout_lines }}" - List of services: "{{ master_services.stdout_lines }}" - OC Version: "{{ master_oc_version.stdout_lines }}" - OCP nodes: "{{ master_ocp_nodes.stdout_lines }}" - Images info: "{{ master_image_info.stdout_lines }}" - - # Heketi POD - - name: Get heketi POD - shell: "oc get pods --all-namespaces -l heketi - -o=custom-columns=:.metadata.name,:.metadata.namespace" - register: heketi_pods - - name: DEBUG HEKETI - debug: - msg: "{{ heketi_pods }}" - - block: - - name: Get storage release version from Heketi POD - shell: "oc exec {{ (heketi_pods.stdout_lines[1].split(' ') | list)[0] }} - --namespace {{ (heketi_pods.stdout_lines[1].split(' ') | list)[-1] }} -- - cat /etc/redhat-storage-release" - register: heketi_pod_storage_release_version - - name: Get info about packages on Heketi POD - shell: "oc exec {{ (heketi_pods.stdout_lines[1].split(' ') | list)[0] }} - --namespace {{ (heketi_pods.stdout_lines[1].split(' ') | list)[-1] }} -- - rpm -qa | grep -e {{ heketi_pod_package_list | join(' -e ') }}" - register: heketi_pod_packages - - name: Write Heketi data to the data file - delegate_to: localhost - yedit: - src: "{{ hostvars['localhost']['data_file_path'] }}" - state: present - edits: - - key: 03_heketi_pod - value: - Storage release version: "{{ heketi_pod_storage_release_version.stdout_lines }}" - List of Packages: "{{ heketi_pod_packages.stdout_lines }}" - when: "{{ ((heketi_pods.stdout_lines | join('')).strip() | length) > 0 }}" - - # Gluster PODs - - name: Get list of Gluster PODs - shell: "oc get pods --all-namespaces -l glusterfs-node - -o=custom-columns=:.metadata.name,:.metadata.namespace" - register: gluster_pods - - name: DEBUG GLUSTER - debug: - msg: "{{ gluster_pods }}" - - block: - - name: Get storage release version from Gluster PODs - shell: "oc exec {{ (item.split(' ') | list)[0] }} - --namespace {{ (item.split(' ') | list)[-1] }} -- - cat /etc/redhat-storage-release" - with_items: "{{ gluster_pods.stdout_lines[1:] }}" - register: gluster_pod_storage_release_version_results - - name: Process gluster PODs storage release versions results - set_fact: - gluster_pod_storage_release_version_processed: "{{ - gluster_pod_storage_release_version_processed | default({}) | combine( - {(item.item.strip().split(' ')[0]): item.stdout_lines}, - recursive=True - ) }}" - with_items: "{{ gluster_pod_storage_release_version_results.results }}" - - name: Get info about packages on Gluster PODs - shell: "oc exec {{ (item.split(' ') | list)[0] }} - --namespace {{ (item.split(' ') | list)[-1] }} -- - rpm -qa | grep -e {{ gluster_pod_package_list | join(' -e ') }}" - with_items: "{{ gluster_pods.stdout_lines[1:] }}" - register: gluster_pod_package_list_results - - name: Process gluster PODs package lists results - set_fact: - gluster_pod_package_list_processed: "{{ - gluster_pod_package_list_processed | default({}) | combine( - {(item.item.strip().split(' ')[0]): item.stdout_lines}, - recursive=True - ) }}" - with_items: "{{ gluster_pod_package_list_results.results }}" - - name: Get info about services on Gluster PODs - shell: "oc exec {{ (item.split(' ') | list)[0] }} - --namespace {{ (item.split(' ') | list)[-1] }} -- - systemctl list-units {{ gluster_pod_service_list | join('.service ') }}.service - --type=service --all --no-pager --no-legend" - with_items: "{{ gluster_pods.stdout_lines[1:] }}" - register: gluster_pod_service_list_results - - name: Process gluster PODs service lists results - set_fact: - gluster_pod_service_list_processed: "{{ - gluster_pod_service_list_processed | default({}) | combine( - {(item.item.strip().split(' ')[0]): item.stdout_lines}, - recursive=True - ) }}" - with_items: "{{ gluster_pod_service_list_results.results }}" - - name: Write Gluster PODs data to the data file - delegate_to: localhost - yedit: - src: "{{ hostvars['localhost']['data_file_path'] }}" - state: present - edits: - - key: 04_gluster_pods - value: - Storage release version: "{{ gluster_pod_storage_release_version_processed }}" - List of Packages: "{{ gluster_pod_package_list_processed }}" - List of Services: "{{ gluster_pod_service_list_processed }}" - when: "{{ ((gluster_pods.stdout_lines | join('')).strip() | length) > 0 }}" - -- hosts: localhost - gather_facts: no - tasks: - - shell: "cat {{ data_file_path }}" - register: data_file_content - - name: Print gathered data - debug: - msg: "{{ data_file_content.stdout_lines }}" |