diff options
Diffstat (limited to 'roles/openshift_logging/tasks')
25 files changed, 46 insertions, 1663 deletions
| diff --git a/roles/openshift_logging/tasks/delete_logging.yaml b/roles/openshift_logging/tasks/delete_logging.yaml index 46c035f22..1ad474887 100644 --- a/roles/openshift_logging/tasks/delete_logging.yaml +++ b/roles/openshift_logging/tasks/delete_logging.yaml @@ -1,7 +1,4 @@  --- -- name: stop logging -  include: stop_cluster.yaml -  # delete the deployment objects that we had created  - name: delete logging api objects    oc_obj: diff --git a/roles/openshift_logging/tasks/generate_certs.yaml b/roles/openshift_logging/tasks/generate_certs.yaml index 46a7e82c6..7169c4036 100644 --- a/roles/openshift_logging/tasks/generate_certs.yaml +++ b/roles/openshift_logging/tasks/generate_certs.yaml @@ -51,14 +51,14 @@    with_items:      - procure_component: mux        hostnames: "logging-mux, {{openshift_logging_mux_hostname}}" -  when: openshift_logging_use_mux +  when: openshift_logging_use_mux | bool  - include: procure_shared_key.yaml    loop_control:      loop_var: shared_key_info    with_items:      - procure_component: mux -  when: openshift_logging_use_mux +  when: openshift_logging_use_mux | bool  - include: procure_server_certs.yaml    loop_control: diff --git a/roles/openshift_logging/tasks/generate_clusterrolebindings.yaml b/roles/openshift_logging/tasks/generate_clusterrolebindings.yaml deleted file mode 100644 index 56f590717..000000000 --- a/roles/openshift_logging/tasks/generate_clusterrolebindings.yaml +++ /dev/null @@ -1,13 +0,0 @@ ---- -- name: Generate ClusterRoleBindings -  template: src=clusterrolebinding.j2 dest={{mktemp.stdout}}/templates/logging-15-{{obj_name}}-clusterrolebinding.yaml -  vars: -    acct_name: aggregated-logging-elasticsearch -    obj_name: rolebinding-reader -    crb_usernames: ["system:serviceaccount:{{openshift_logging_namespace}}:{{acct_name}}"] -    subjects: -      - kind: ServiceAccount -        name: "{{acct_name}}" -        namespace: "{{openshift_logging_namespace}}" -  check_mode: no -  changed_when: no diff --git a/roles/openshift_logging/tasks/generate_clusterroles.yaml b/roles/openshift_logging/tasks/generate_clusterroles.yaml deleted file mode 100644 index 0b8b1014c..000000000 --- a/roles/openshift_logging/tasks/generate_clusterroles.yaml +++ /dev/null @@ -1,11 +0,0 @@ ---- -- name: Generate ClusterRole for cluster-reader -  template: src=clusterrole.j2 dest={{mktemp.stdout}}/templates/logging-10-{{obj_name}}-clusterrole.yaml -  vars: -    obj_name: rolebinding-reader -    rules: -      - resources: [clusterrolebindings] -        verbs: -          - get -  check_mode: no -  changed_when: no diff --git a/roles/openshift_logging/tasks/generate_configmaps.yaml b/roles/openshift_logging/tasks/generate_configmaps.yaml deleted file mode 100644 index b047eb35a..000000000 --- a/roles/openshift_logging/tasks/generate_configmaps.yaml +++ /dev/null @@ -1,178 +0,0 @@ ---- -- block: -    - fail: -        msg: "The openshift_logging_es_log_appenders '{{openshift_logging_es_log_appenders}}' has an unrecognized option and only supports the following as a list: {{es_log_appenders | join(', ')}}" -      when: -        - es_logging_contents is undefined -        - "{{ openshift_logging_es_log_appenders | list | difference(es_log_appenders) | length != 0 }}" -      changed_when: no - -    - template: -        src: elasticsearch-logging.yml.j2 -        dest: "{{mktemp.stdout}}/elasticsearch-logging.yml" -      vars: -        root_logger: "{{openshift_logging_es_log_appenders | join(', ')}}" -      when: es_logging_contents is undefined -      changed_when: no -      check_mode: no - -    - local_action: > -        template src=elasticsearch.yml.j2 -        dest="{{local_tmp.stdout}}/elasticsearch-gen-template.yml" -      vars: -        - allow_cluster_reader: "{{openshift_logging_es_ops_allow_cluster_reader | lower | default('false')}}" -        - es_number_of_shards: "{{ openshift_logging_es_number_of_shards | default(1) }}" -        - es_number_of_replicas: "{{ openshift_logging_es_number_of_replicas | default(0) }}" -      when: es_config_contents is undefined -      changed_when: no - -    - copy: -        content: "{{ config_source | combine(override_config,recursive=True) | to_nice_yaml }}" -        dest: "{{mktemp.stdout}}/elasticsearch.yml" -      vars: -        config_source: "{{lookup('file','{{local_tmp.stdout}}/elasticsearch-gen-template.yml') | from_yaml }}" -        override_config: "{{openshift_logging_es_config | from_yaml}}" -      when: es_logging_contents is undefined -      changed_when: no - -    - copy: -        content: "{{es_logging_contents}}" -        dest: "{{mktemp.stdout}}/elasticsearch-logging.yml" -      when: es_logging_contents is defined -      changed_when: no - -    - copy: -        content: "{{es_config_contents}}" -        dest: "{{mktemp.stdout}}/elasticsearch.yml" -      when: es_config_contents is defined -      changed_when: no - -    - command: > -        {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig create configmap logging-elasticsearch -        --from-file=logging.yml={{mktemp.stdout}}/elasticsearch-logging.yml --from-file=elasticsearch.yml={{mktemp.stdout}}/elasticsearch.yml -o yaml --dry-run -      register: es_configmap -      changed_when: no - -    - copy: -        content: "{{es_configmap.stdout}}" -        dest: "{{mktemp.stdout}}/templates/logging-elasticsearch-configmap.yaml" -      when: es_configmap.stdout is defined -      changed_when: no -  check_mode: no - -- block: -    - copy: -        src: curator.yml -        dest: "{{mktemp.stdout}}/curator.yml" -      when: curator_config_contents is undefined -      changed_when: no - -    - copy: -        content: "{{curator_config_contents}}" -        dest: "{{mktemp.stdout}}/curator.yml" -      when: curator_config_contents is defined -      changed_when: no - -    - command: > -        {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig create configmap logging-curator -        --from-file=config.yaml={{mktemp.stdout}}/curator.yml -o yaml --dry-run -      register: curator_configmap -      changed_when: no - -    - copy: -        content: "{{curator_configmap.stdout}}" -        dest: "{{mktemp.stdout}}/templates/logging-curator-configmap.yaml" -      when: curator_configmap.stdout is defined -      changed_when: no -  check_mode: no - -- block: -    - copy: -        src: fluent.conf -        dest: "{{mktemp.stdout}}/fluent.conf" -      when: fluentd_config_contents is undefined -      changed_when: no - -    - copy: -        src: fluentd-throttle-config.yaml -        dest: "{{mktemp.stdout}}/fluentd-throttle-config.yaml" -      when: fluentd_throttle_contents is undefined -      changed_when: no - -    - copy: -        src: secure-forward.conf -        dest: "{{mktemp.stdout}}/secure-forward.conf" -      when: fluentd_securefoward_contents is undefined -      changed_when: no - -    - copy: -        content: "{{fluentd_config_contents}}" -        dest: "{{mktemp.stdout}}/fluent.conf" -      when: fluentd_config_contents is defined -      changed_when: no - -    - copy: -        content: "{{fluentd_throttle_contents}}" -        dest: "{{mktemp.stdout}}/fluentd-throttle-config.yaml" -      when: fluentd_throttle_contents is defined -      changed_when: no - -    - copy: -        content: "{{fluentd_secureforward_contents}}" -        dest: "{{mktemp.stdout}}/secure-forward.conf" -      when: fluentd_secureforward_contents is defined -      changed_when: no - -    - command: > -        {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig create configmap logging-fluentd -        --from-file=fluent.conf={{mktemp.stdout}}/fluent.conf --from-file=throttle-config.yaml={{mktemp.stdout}}/fluentd-throttle-config.yaml -        --from-file=secure-forward.conf={{mktemp.stdout}}/secure-forward.conf -o yaml --dry-run -      register: fluentd_configmap -      changed_when: no - -    - copy: -        content: "{{fluentd_configmap.stdout}}" -        dest: "{{mktemp.stdout}}/templates/logging-fluentd-configmap.yaml" -      when: fluentd_configmap.stdout is defined -      changed_when: no -  check_mode: no - -- block: -    - copy: -        src: fluent.conf -        dest: "{{mktemp.stdout}}/fluent-mux.conf" -      when: fluentd_mux_config_contents is undefined -      changed_when: no - -    - copy: -        src: secure-forward.conf -        dest: "{{mktemp.stdout}}/secure-forward-mux.conf" -      when: fluentd_mux_securefoward_contents is undefined -      changed_when: no - -    - copy: -        content: "{{fluentd_mux_config_contents}}" -        dest: "{{mktemp.stdout}}/fluent-mux.conf" -      when: fluentd_mux_config_contents is defined -      changed_when: no - -    - copy: -        content: "{{fluentd_mux_secureforward_contents}}" -        dest: "{{mktemp.stdout}}/secure-forward-mux.conf" -      when: fluentd_mux_secureforward_contents is defined -      changed_when: no - -    - command: > -        {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig create configmap logging-mux -        --from-file=fluent.conf={{mktemp.stdout}}/fluent-mux.conf -        --from-file=secure-forward.conf={{mktemp.stdout}}/secure-forward-mux.conf -o yaml --dry-run -      register: mux_configmap -      changed_when: no - -    - copy: -        content: "{{mux_configmap.stdout}}" -        dest: "{{mktemp.stdout}}/templates/logging-mux-configmap.yaml" -      when: mux_configmap.stdout is defined -      changed_when: no -  check_mode: no -  when: openshift_logging_use_mux diff --git a/roles/openshift_logging/tasks/generate_deploymentconfigs.yaml b/roles/openshift_logging/tasks/generate_deploymentconfigs.yaml deleted file mode 100644 index 8aea4e81f..000000000 --- a/roles/openshift_logging/tasks/generate_deploymentconfigs.yaml +++ /dev/null @@ -1,65 +0,0 @@ ---- -- name: Generate kibana deploymentconfig -  template: src=kibana.j2 dest={{mktemp.stdout}}/logging-kibana-dc.yaml -  vars: -    component: kibana -    deploy_name: "logging-{{component}}" -    image: "{{openshift_logging_image_prefix}}logging-kibana:{{openshift_logging_image_version}}" -    proxy_image: "{{openshift_logging_image_prefix}}logging-auth-proxy:{{openshift_logging_image_version}}" -    es_host: logging-es -    es_port: "{{openshift_logging_es_port}}" -  check_mode: no -  changed_when: no - -- name: Generate OPS kibana deploymentconfig -  template: src=kibana.j2 dest={{mktemp.stdout}}/logging-kibana-ops-dc.yaml -  vars: -    component: kibana-ops -    deploy_name: "logging-{{component}}" -    image: "{{openshift_logging_image_prefix}}logging-kibana:{{openshift_logging_image_version}}" -    proxy_image: "{{openshift_logging_image_prefix}}logging-auth-proxy:{{openshift_logging_image_version}}" -    es_host: logging-es-ops -    es_port: "{{openshift_logging_es_ops_port}}" -  check_mode: no -  changed_when: no - -- name: Generate elasticsearch deploymentconfig -  template: src=es.j2 dest={{mktemp.stdout}}/logging-es-dc.yaml -  vars: -    component: es -    deploy_name_prefix: "logging-{{component}}" -    deploy_name: "{{deploy_name_prefix}}-abc123" -    image: "{{openshift_logging_image_prefix}}logging-elasticsearch:{{openshift_logging_image_version}}" -    es_cluster_name: "{{component}}" -  check_mode: no -  changed_when: no - -- name: Generate OPS elasticsearch deploymentconfig -  template: src=es.j2 dest={{mktemp.stdout}}/logging-es-ops-dc.yaml -  vars: -    component: es-ops -    deploy_name_prefix: "logging-{{component}}" -    deploy_name: "{{deploy_name_prefix}}-abc123" -    image: "{{openshift_logging_image_prefix}}logging-elasticsearch:{{openshift_logging_image_version}}" -    es_cluster_name: "{{component}}" -  check_mode: no -  changed_when: no - -- name: Generate curator deploymentconfig -  template: src=curator.j2 dest={{mktemp.stdout}}/logging-curator-dc.yaml -  vars: -    component: curator -    deploy_name: "logging-{{component}}" -    image: "{{openshift_logging_image_prefix}}logging-curator:{{openshift_logging_image_version}}" -  check_mode: no -  changed_when: no - -- name: Generate OPS curator deploymentconfig -  template: src=curator.j2 dest={{mktemp.stdout}}/logging-curator-ops-dc.yaml -  vars: -    component: curator-ops -    deploy_name: "logging-{{component}}" -    image: "{{openshift_logging_image_prefix}}logging-curator:{{openshift_logging_image_version}}" -    openshift_logging_es_host: logging-es-ops -  check_mode: no -  changed_when: no diff --git a/roles/openshift_logging/tasks/generate_pvcs.yaml b/roles/openshift_logging/tasks/generate_pvcs.yaml deleted file mode 100644 index fa7a86c27..000000000 --- a/roles/openshift_logging/tasks/generate_pvcs.yaml +++ /dev/null @@ -1,47 +0,0 @@ ---- -- name: Init pool of PersistentVolumeClaim names -  set_fact: es_pvc_pool={{es_pvc_pool|default([]) + [pvc_name]}} -  vars: -    pvc_name: "{{es_pvc_prefix}}-{{item| int}}" -    start: "{{es_pvc_names | map('regex_search', es_pvc_prefix+'.*')|select('string')|list|length}}" -  with_sequence: start={{start}} end={{ (start|int > es_cluster_size|int - 1) | ternary(start, es_cluster_size|int - 1)}} -  when: -    - "{{ es_dc_names|default([]) | length <= es_cluster_size|int }}" -    - es_pvc_size | search('^\d.*') -  check_mode: no - -- name: Generating PersistentVolumeClaims -  template: src=pvc.j2 dest={{mktemp.stdout}}/templates/logging-{{obj_name}}-pvc.yaml -  vars: -    obj_name: "{{claim_name}}" -    size: "{{es_pvc_size}}" -    access_modes: "{{ es_access_modes | list }}" -    pv_selector: "{{es_pv_selector}}" -  with_items: -    - "{{es_pvc_pool | default([])}}" -  loop_control: -    loop_var: claim_name -  when: -    - not es_pvc_dynamic -    - es_pvc_pool is defined -  check_mode: no -  changed_when: no - -- name: Generating PersistentVolumeClaims - Dynamic -  template: src=pvc.j2 dest={{mktemp.stdout}}/templates/logging-{{obj_name}}-pvc.yaml -  vars: -    obj_name: "{{claim_name}}" -    annotations: -      volume.alpha.kubernetes.io/storage-class: "dynamic" -    size: "{{es_pvc_size}}" -    access_modes: "{{ es_access_modes | list }}" -    pv_selector: "{{es_pv_selector}}" -  with_items: -    - "{{es_pvc_pool|default([])}}" -  loop_control: -    loop_var: claim_name -  when: -    - es_pvc_dynamic -    - es_pvc_pool is defined -  check_mode: no -  changed_when: no diff --git a/roles/openshift_logging/tasks/generate_rolebindings.yaml b/roles/openshift_logging/tasks/generate_rolebindings.yaml deleted file mode 100644 index 7dc9530df..000000000 --- a/roles/openshift_logging/tasks/generate_rolebindings.yaml +++ /dev/null @@ -1,12 +0,0 @@ ---- -- name: Generate RoleBindings -  template: src=rolebinding.j2 dest={{mktemp.stdout}}/templates/logging-{{obj_name}}-rolebinding.yaml -  vars: -    obj_name: logging-elasticsearch-view-role -    roleRef: -      name: view -    subjects: -      - kind: ServiceAccount -        name: aggregated-logging-elasticsearch -  check_mode: no -  changed_when: no diff --git a/roles/openshift_logging/tasks/generate_routes.yaml b/roles/openshift_logging/tasks/generate_routes.yaml deleted file mode 100644 index ae9a8e023..000000000 --- a/roles/openshift_logging/tasks/generate_routes.yaml +++ /dev/null @@ -1,169 +0,0 @@ ---- -- set_fact: kibana_key={{ lookup('file', openshift_logging_kibana_key) | b64encode }} -  when: openshift_logging_kibana_key | trim | length > 0 -  changed_when: false - -- set_fact: kibana_cert={{ lookup('file', openshift_logging_kibana_cert)| b64encode  }} -  when: openshift_logging_kibana_cert | trim | length > 0 -  changed_when: false - -- set_fact: kibana_ca={{ lookup('file', openshift_logging_kibana_ca)| b64encode  }} -  when: openshift_logging_kibana_ca | trim | length > 0 -  changed_when: false - -- set_fact: kibana_ca={{key_pairs | entry_from_named_pair('ca_file') }} -  when: kibana_ca is not defined -  changed_when: false - -- name: Generating logging routes -  template: src=route_reencrypt.j2 dest={{mktemp.stdout}}/templates/logging-logging-kibana-route.yaml -  tags: routes -  vars: -    obj_name: "logging-kibana" -    route_host: "{{openshift_logging_kibana_hostname}}" -    service_name: "logging-kibana" -    tls_key: "{{kibana_key | default('') | b64decode}}" -    tls_cert: "{{kibana_cert | default('') | b64decode}}" -    tls_ca_cert: "{{kibana_ca | b64decode}}" -    tls_dest_ca_cert: "{{key_pairs | entry_from_named_pair('ca_file')| b64decode }}" -    edge_term_policy: "{{openshift_logging_kibana_edge_term_policy | default('') }}" -    labels: -      component: support -      logging-infra: support -      provider: openshift -  changed_when: no - -- set_fact: kibana_ops_key={{ lookup('file', openshift_logging_kibana_ops_key) | b64encode }} -  when: -  - openshift_logging_use_ops | bool -  - "{{ openshift_logging_kibana_ops_key | trim | length > 0 }}" -  changed_when: false - -- set_fact: kibana_ops_cert={{ lookup('file', openshift_logging_kibana_ops_cert)| b64encode  }} -  when: -  - openshift_logging_use_ops | bool -  - "{{openshift_logging_kibana_ops_cert | trim | length > 0}}" -  changed_when: false - -- set_fact: kibana_ops_ca={{ lookup('file', openshift_logging_kibana_ops_ca)| b64encode  }} -  when: -  - openshift_logging_use_ops | bool -  - "{{openshift_logging_kibana_ops_ca | trim | length > 0}}" -  changed_when: false - -- set_fact: kibana_ops_ca={{key_pairs | entry_from_named_pair('ca_file') }} -  when: -  - openshift_logging_use_ops | bool -  - kibana_ops_ca is not defined -  changed_when: false - -- name: Generating logging ops routes -  template: src=route_reencrypt.j2 dest={{mktemp.stdout}}/templates/logging-logging-kibana-ops-route.yaml -  tags: routes -  vars: -    obj_name: "logging-kibana-ops" -    route_host: "{{openshift_logging_kibana_ops_hostname}}" -    service_name: "logging-kibana-ops" -    tls_key: "{{kibana_ops_key | default('') | b64decode}}" -    tls_cert: "{{kibana_ops_cert | default('') | b64decode}}" -    tls_ca_cert: "{{kibana_ops_ca | b64decode}}" -    tls_dest_ca_cert: "{{key_pairs | entry_from_named_pair('ca_file')| b64decode }}" -    edge_term_policy: "{{openshift_logging_kibana_edge_term_policy | default('') }}" -    labels: -      component: support -      logging-infra: support -      provider: openshift -  when: openshift_logging_use_ops | bool -  changed_when: no - -- set_fact: es_key={{ lookup('file', openshift_logging_es_key) | b64encode }} -  when: -  - openshift_logging_es_key | trim | length > 0 -  - openshift_logging_es_allow_external | bool -  changed_when: false - -- set_fact: es_cert={{ lookup('file', openshift_logging_es_cert)| b64encode  }} -  when: -  - openshift_logging_es_cert | trim | length > 0 -  - openshift_logging_es_allow_external | bool -  changed_when: false - -- set_fact: es_ca={{ lookup('file', openshift_logging_es_ca_ext)| b64encode  }} -  when: -  - openshift_logging_es_ca_ext | trim | length > 0 -  - openshift_logging_es_allow_external | bool -  changed_when: false - -- set_fact: es_ca={{key_pairs | entry_from_named_pair('ca_file') }} -  when: -  - es_ca is not defined -  - openshift_logging_es_allow_external | bool -  changed_when: false - -- name: Generating Elasticsearch logging routes -  template: src=route_reencrypt.j2 dest={{mktemp.stdout}}/templates/logging-logging-es-route.yaml -  tags: routes -  vars: -    obj_name: "logging-es" -    route_host: "{{openshift_logging_es_hostname}}" -    service_name: "logging-es" -    tls_key: "{{es_key | default('') | b64decode}}" -    tls_cert: "{{es_cert | default('') | b64decode}}" -    tls_ca_cert: "{{es_ca | b64decode}}" -    tls_dest_ca_cert: "{{key_pairs | entry_from_named_pair('ca_file')| b64decode }}" -    edge_term_policy: "{{openshift_logging_es_edge_term_policy | default('') }}" -    labels: -      component: support -      logging-infra: support -      provider: openshift -  changed_when: no -  when: openshift_logging_es_allow_external | bool - -- set_fact: es_ops_key={{ lookup('file', openshift_logging_es_ops_key) | b64encode }} -  when: -  - openshift_logging_es_ops_allow_external | bool -  - openshift_logging_use_ops | bool -  - "{{ openshift_logging_es_ops_key | trim | length > 0 }}" -  changed_when: false - -- set_fact: es_ops_cert={{ lookup('file', openshift_logging_es_ops_cert)| b64encode  }} -  when: -  - openshift_logging_es_ops_allow_external | bool -  - openshift_logging_use_ops | bool -  - "{{openshift_logging_es_ops_cert | trim | length > 0}}" -  changed_when: false - -- set_fact: es_ops_ca={{ lookup('file', openshift_logging_es_ops_ca_ext)| b64encode  }} -  when: -  - openshift_logging_es_ops_allow_external | bool -  - openshift_logging_use_ops | bool -  - "{{openshift_logging_es_ops_ca_ext | trim | length > 0}}" -  changed_when: false - -- set_fact: es_ops_ca={{key_pairs | entry_from_named_pair('ca_file') }} -  when: -  - openshift_logging_es_ops_allow_external | bool -  - openshift_logging_use_ops | bool -  - es_ops_ca is not defined -  changed_when: false - -- name: Generating Elasticsearch logging ops routes -  template: src=route_reencrypt.j2 dest={{mktemp.stdout}}/templates/logging-logging-es-ops-route.yaml -  tags: routes -  vars: -    obj_name: "logging-es-ops" -    route_host: "{{openshift_logging_es_ops_hostname}}" -    service_name: "logging-es-ops" -    tls_key: "{{es_ops_key | default('') | b64decode}}" -    tls_cert: "{{es_ops_cert | default('') | b64decode}}" -    tls_ca_cert: "{{es_ops_ca | b64decode}}" -    tls_dest_ca_cert: "{{key_pairs | entry_from_named_pair('ca_file')| b64decode }}" -    edge_term_policy: "{{openshift_logging_es_ops_edge_term_policy | default('') }}" -    labels: -      component: support -      logging-infra: support -      provider: openshift -  when: -  - openshift_logging_es_ops_allow_external | bool -  - openshift_logging_use_ops | bool -  changed_when: no diff --git a/roles/openshift_logging/tasks/generate_secrets.yaml b/roles/openshift_logging/tasks/generate_secrets.yaml deleted file mode 100644 index b629bd995..000000000 --- a/roles/openshift_logging/tasks/generate_secrets.yaml +++ /dev/null @@ -1,129 +0,0 @@ ---- -- name: Retrieving the cert to use when generating secrets for the logging components -  slurp: src="{{generated_certs_dir}}/{{item.file}}" -  register: key_pairs -  with_items: -    - { name: "ca_file", file: "ca.crt" } -    - { name: "kibana_key", file: "system.logging.kibana.key"} -    - { name: "kibana_cert", file: "system.logging.kibana.crt"} -    - { name: "curator_key", file: "system.logging.curator.key"} -    - { name: "curator_cert", file: "system.logging.curator.crt"} -    - { name: "fluentd_key", file: "system.logging.fluentd.key"} -    - { name: "fluentd_cert", file: "system.logging.fluentd.crt"} -    - { name: "kibana_internal_key", file: "kibana-internal.key"} -    - { name: "kibana_internal_cert", file: "kibana-internal.crt"} -    - { name: "server_tls", file: "server-tls.json"} - -- name: Generating secrets for logging components -  template: src=secret.j2 dest={{mktemp.stdout}}/templates/{{secret_name}}-secret.yaml -  vars: -    secret_name: "logging-{{component}}" -    secret_key_file: "{{component}}_key" -    secret_cert_file: "{{component}}_cert" -    secrets: -      - {key: ca, value: "{{key_pairs | entry_from_named_pair('ca_file')| b64decode }}"} -      - {key: key, value: "{{key_pairs | entry_from_named_pair(secret_key_file)| b64decode }}"} -      - {key: cert, value: "{{key_pairs | entry_from_named_pair(secret_cert_file)| b64decode }}"} -    secret_keys: ["ca", "cert", "key"] -  with_items: -    - kibana -    - curator -    - fluentd -  loop_control: -    loop_var: component -  check_mode: no -  changed_when: no - -- name: Retrieving the cert to use when generating secrets for mux -  slurp: src="{{generated_certs_dir}}/{{item.file}}" -  register: mux_key_pairs -  with_items: -    - { name: "ca_file", file: "ca.crt" } -    - { name: "mux_key", file: "system.logging.mux.key"} -    - { name: "mux_cert", file: "system.logging.mux.crt"} -    - { name: "mux_shared_key", file: "mux_shared_key"} -  when: openshift_logging_use_mux - -- name: Generating secrets for mux -  template: src=secret.j2 dest={{mktemp.stdout}}/templates/{{secret_name}}-secret.yaml -  vars: -    secret_name: "logging-{{component}}" -    secret_key_file: "{{component}}_key" -    secret_cert_file: "{{component}}_cert" -    secrets: -      - {key: ca, value: "{{mux_key_pairs | entry_from_named_pair('ca_file')| b64decode }}"} -      - {key: key, value: "{{mux_key_pairs | entry_from_named_pair(secret_key_file)| b64decode }}"} -      - {key: cert, value: "{{mux_key_pairs | entry_from_named_pair(secret_cert_file)| b64decode }}"} -      - {key: shared_key, value: "{{mux_key_pairs | entry_from_named_pair('mux_shared_key')| b64decode }}"} -    secret_keys: ["ca", "cert", "key", "shared_key"] -  with_items: -    - mux -  loop_control: -    loop_var: component -  check_mode: no -  changed_when: no -  when: openshift_logging_use_mux - -- name: Generating secrets for kibana proxy -  template: src=secret.j2 dest={{mktemp.stdout}}/templates/{{secret_name}}-secret.yaml -  vars: -    secret_name: logging-kibana-proxy -    secrets: -      - {key: oauth-secret, value: "{{oauth_secret}}"} -      - {key: session-secret, value: "{{session_secret}}"} -      - {key: server-key, value: "{{kibana_key_file}}"} -      - {key: server-cert, value: "{{kibana_cert_file}}"} -      - {key: server-tls.json, value: "{{server_tls_file}}"} -    secret_keys: ["server-tls.json", "server-key", "session-secret", "oauth-secret", "server-cert"] -    kibana_key_file: "{{key_pairs | entry_from_named_pair('kibana_internal_key')| b64decode }}" -    kibana_cert_file: "{{key_pairs | entry_from_named_pair('kibana_internal_cert')| b64decode }}" -    server_tls_file: "{{key_pairs | entry_from_named_pair('server_tls')| b64decode }}" -  check_mode: no -  changed_when: no - -- name: Generating secrets for elasticsearch -  command: > -    {{openshift.common.client_binary}} --config={{ mktemp.stdout }}/admin.kubeconfig secrets new {{secret_name}} -    key={{generated_certs_dir}}/logging-es.jks truststore={{generated_certs_dir}}/truststore.jks -    searchguard.key={{generated_certs_dir}}/elasticsearch.jks searchguard.truststore={{generated_certs_dir}}/truststore.jks -    admin-key={{generated_certs_dir}}/system.admin.key admin-cert={{generated_certs_dir}}/system.admin.crt -    admin-ca={{generated_certs_dir}}/ca.crt admin.jks={{generated_certs_dir}}/system.admin.jks -o yaml -  vars: -    secret_name: logging-elasticsearch -    secret_keys: ["admin-cert", "searchguard.key", "admin-ca", "key", "truststore", "admin-key", "searchguard.truststore"] -  register: logging_es_secret -  check_mode: no -  changed_when: no - -- copy: content="{{logging_es_secret.stdout}}" dest={{mktemp.stdout}}/templates/logging-elasticsearch-secret.yaml -  when: logging_es_secret.stdout is defined -  check_mode: no -  changed_when: no - -- name: Retrieving the cert to use when generating secrets for Elasticsearch external route -  slurp: src="{{generated_certs_dir}}/{{item.file}}" -  register: es_key_pairs -  with_items: -    - { name: "ca_file", file: "ca.crt" } -    - { name: "es_key", file: "system.logging.es.key"} -    - { name: "es_cert", file: "system.logging.es.crt"} -  when: openshift_logging_es_allow_external | bool - -- name: Generating secrets for Elasticsearch external route -  template: src=secret.j2 dest={{mktemp.stdout}}/templates/{{secret_name}}-secret.yaml -  vars: -    secret_name: "logging-{{component}}" -    secret_key_file: "{{component}}_key" -    secret_cert_file: "{{component}}_cert" -    secrets: -      - {key: ca, value: "{{es_key_pairs | entry_from_named_pair('ca_file')| b64decode }}"} -      - {key: key, value: "{{es_key_pairs | entry_from_named_pair(secret_key_file)| b64decode }}"} -      - {key: cert, value: "{{es_key_pairs | entry_from_named_pair(secret_cert_file)| b64decode }}"} -    secret_keys: ["ca", "cert", "key"] -  with_items: -    - es -  loop_control: -    loop_var: component -  check_mode: no -  changed_when: no -  when: openshift_logging_es_allow_external | bool diff --git a/roles/openshift_logging/tasks/generate_serviceaccounts.yaml b/roles/openshift_logging/tasks/generate_serviceaccounts.yaml deleted file mode 100644 index 21bcdfecb..000000000 --- a/roles/openshift_logging/tasks/generate_serviceaccounts.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -- name: Generating serviceaccounts -  template: src=serviceaccount.j2 dest={{mktemp.stdout}}/templates/logging-{{component}}-sa.yaml -  vars: -    obj_name: aggregated-logging-{{component}} -  with_items: -    - elasticsearch -    - kibana -    - fluentd -    - curator -  loop_control: -    loop_var: component -  check_mode: no -  changed_when: no diff --git a/roles/openshift_logging/tasks/generate_services.yaml b/roles/openshift_logging/tasks/generate_services.yaml deleted file mode 100644 index e3a5c5eb3..000000000 --- a/roles/openshift_logging/tasks/generate_services.yaml +++ /dev/null @@ -1,119 +0,0 @@ ---- -- name: Generating logging-es service -  template: src=service.j2 dest={{mktemp.stdout}}/templates/logging-es-svc.yaml -  vars: -    obj_name: logging-es -    ports: -    - {port: 9200, targetPort: restapi} -    labels: -      logging-infra: support -    selector: -      provider: openshift -      component: es -  check_mode: no -  changed_when: no - -- name: Generating logging-es-cluster service -  template: src=service.j2 dest={{mktemp.stdout}}/templates/logging-es-cluster-svc.yaml -  vars: -    obj_name: logging-es-cluster -    ports: -    - {port: 9300} -    labels: -      logging-infra: support -    selector: -      provider: openshift -      component: es -  check_mode: no -  changed_when: no - -- name: Generating logging-kibana service -  template: src=service.j2 dest={{mktemp.stdout}}/templates/logging-kibana-svc.yaml -  vars: -    obj_name: logging-kibana -    ports: -    - {port: 443, targetPort: oaproxy} -    labels: -      logging-infra: support -    selector: -      provider: openshift -      component: kibana -  check_mode: no -  changed_when: no - -- name: Generating logging-es-ops service -  template: src=service.j2 dest={{mktemp.stdout}}/templates/logging-es-ops-svc.yaml -  vars: -    obj_name: logging-es-ops -    ports: -    - {port: 9200, targetPort: restapi} -    labels: -      logging-infra: support -    selector: -      provider: openshift -      component: es-ops -  when: openshift_logging_use_ops | bool -  check_mode: no -  changed_when: no - -- name: Generating logging-es-ops-cluster service -  template: src=service.j2 dest={{mktemp.stdout}}/templates/logging-es-ops-cluster-svc.yaml -  vars: -    obj_name: logging-es-ops-cluster -    ports: -    - {port: 9300} -    labels: -      logging-infra: support -    selector: -      provider: openshift -      component: es-ops -  when: openshift_logging_use_ops | bool -  check_mode: no -  changed_when: no - -- name: Generating logging-kibana-ops service -  template: src=service.j2 dest={{mktemp.stdout}}/templates/logging-kibana-ops-svc.yaml -  vars: -    obj_name: logging-kibana-ops -    ports: -    - {port: 443, targetPort: oaproxy} -    labels: -      logging-infra: support -    selector: -      provider: openshift -      component: kibana-ops -  when: openshift_logging_use_ops | bool -  check_mode: no -  changed_when: no - -- name: Generating logging-mux service for external connections -  template: src=service.j2 dest={{mktemp.stdout}}/templates/logging-mux-svc.yaml -  vars: -    obj_name: logging-mux -    ports: -    - {port: "{{openshift_logging_mux_port}}", targetPort: mux-forward, name: mux-forward} -    labels: -      logging-infra: support -    selector: -      provider: openshift -      component: mux -    externalIPs: -    - "{{ ansible_eth0.ipv4.address }}" -  check_mode: no -  changed_when: no -  when: openshift_logging_mux_allow_external - -- name: Generating logging-mux service for intra-cluster connections -  template: src=service.j2 dest={{mktemp.stdout}}/templates/logging-mux-svc.yaml -  vars: -    obj_name: logging-mux -    ports: -    - {port: "{{openshift_logging_mux_port}}", targetPort: mux-forward, name: mux-forward} -    labels: -      logging-infra: support -    selector: -      provider: openshift -      component: mux -  check_mode: no -  changed_when: no -  when: openshift_logging_use_mux and not openshift_logging_mux_allow_external diff --git a/roles/openshift_logging/tasks/install_curator.yaml b/roles/openshift_logging/tasks/install_curator.yaml deleted file mode 100644 index ab8e207f1..000000000 --- a/roles/openshift_logging/tasks/install_curator.yaml +++ /dev/null @@ -1,53 +0,0 @@ ---- -- name: Check Curator current replica count -  command: > -    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig get dc/logging-curator -    -o jsonpath='{.spec.replicas}' -n {{openshift_logging_namespace}} -  register: curator_replica_count -  when: not ansible_check_mode -  ignore_errors: yes -  changed_when: no - -- name: Check Curator ops current replica count -  command: > -    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig get dc/logging-curator-ops -    -o jsonpath='{.spec.replicas}' -n {{openshift_logging_namespace}} -  register: curator_ops_replica_count -  when: -    - not ansible_check_mode -    - openshift_logging_use_ops | bool -  ignore_errors: yes -  changed_when: no - -- name: Generate curator deploymentconfig -  template: src=curator.j2 dest={{mktemp.stdout}}/templates/logging-curator-dc.yaml -  vars: -    component: curator -    logging_component: curator -    deploy_name: "logging-{{component}}" -    image: "{{openshift_logging_image_prefix}}logging-curator:{{openshift_logging_image_version}}" -    es_host: logging-es -    es_port: "{{openshift_logging_es_port}}" -    curator_cpu_limit: "{{openshift_logging_curator_cpu_limit }}" -    curator_memory_limit: "{{openshift_logging_curator_memory_limit }}" -    replicas: "{{curator_replica_count.stdout | default (0)}}" -    curator_node_selector: "{{openshift_logging_curator_nodeselector | default({})}}" -  check_mode: no -  changed_when: no - -- name: Generate OPS curator deploymentconfig -  template: src=curator.j2 dest={{mktemp.stdout}}/templates/logging-curator-ops-dc.yaml -  vars: -    component: curator-ops -    logging_component: curator -    deploy_name: "logging-{{component}}" -    image: "{{openshift_logging_image_prefix}}logging-curator:{{openshift_logging_image_version}}" -    es_host: logging-es-ops -    es_port: "{{openshift_logging_es_ops_port}}" -    curator_cpu_limit: "{{openshift_logging_curator_ops_cpu_limit }}" -    curator_memory_limit: "{{openshift_logging_curator_ops_memory_limit }}" -    replicas: "{{curator_ops_replica_count.stdout | default (0)}}" -    curator_node_selector: "{{openshift_logging_curator_ops_nodeselector | default({}) }}" -  when: openshift_logging_use_ops | bool -  check_mode: no -  changed_when: no diff --git a/roles/openshift_logging/tasks/install_elasticsearch.yaml b/roles/openshift_logging/tasks/install_elasticsearch.yaml deleted file mode 100644 index a981e7f7f..000000000 --- a/roles/openshift_logging/tasks/install_elasticsearch.yaml +++ /dev/null @@ -1,118 +0,0 @@ ---- -- name: Getting current ES deployment size -  set_fact: openshift_logging_current_es_size={{ openshift_logging_facts.elasticsearch.deploymentconfigs.keys() | length }} - -- set_fact: openshift_logging_es_pvc_prefix="logging-es" -  when: not openshift_logging_es_pvc_prefix or openshift_logging_es_pvc_prefix == '' - -- set_fact: es_indices={{ es_indices | default([]) + [item | int - 1] }} -  with_sequence: count={{ openshift_logging_facts.elasticsearch.deploymentconfigs.keys() | count }} - -### evaluate if the PVC attached to the dc currently matches the provided vars -## if it does then we reuse that pvc in the DC -- include: set_es_storage.yaml -  vars: -    es_component: es -    es_name: "{{ deployment.0 }}" -    es_spec: "{{ deployment.1 }}" -    es_pvc_count: "{{ deployment.2 | int }}" -    es_node_selector: "{{ openshift_logging_es_nodeselector | default({}) }}" -    es_pvc_names_count: "{{ openshift_logging_facts.elasticsearch.pvcs.keys() | count }}" -    es_pvc_size: "{{ openshift_logging_es_pvc_size }}" -    es_pvc_prefix: "{{ openshift_logging_es_pvc_prefix }}" -    es_pvc_dynamic: "{{ openshift_logging_es_pvc_dynamic | bool }}" -    es_pv_selector: "{{ openshift_logging_es_pv_selector }}" -    es_cpu_limit: "{{ openshift_logging_es_cpu_limit }}" -    es_memory_limit: "{{ openshift_logging_es_memory_limit }}" -  with_together: -  - "{{ openshift_logging_facts.elasticsearch.deploymentconfigs.keys() }}" -  - "{{ openshift_logging_facts.elasticsearch.deploymentconfigs.values() }}" -  - "{{ es_indices | default([]) }}" -  loop_control: -    loop_var: deployment -## if it does not then we should create one that does and attach it - -## create new dc/pvc is needed -- include: set_es_storage.yaml -  vars: -    es_component: es -    es_name: "logging-es-{{'abcdefghijklmnopqrstuvwxyz0123456789'|random_word(8)}}" -    es_spec: "{}" -    es_pvc_count: "{{ item | int - 1 }}" -    es_node_selector: "{{ openshift_logging_es_nodeselector | default({}) }}" -    es_pvc_names_count: "{{ [openshift_logging_facts.elasticsearch.pvcs.keys() | count, openshift_logging_facts.elasticsearch.deploymentconfigs.keys() | count] | max }}" -    es_pvc_size: "{{ openshift_logging_es_pvc_size }}" -    es_pvc_prefix: "{{ openshift_logging_es_pvc_prefix }}" -    es_pvc_dynamic: "{{ openshift_logging_es_pvc_dynamic | bool }}" -    es_pv_selector: "{{ openshift_logging_es_pv_selector }}" -    es_cpu_limit: "{{ openshift_logging_es_cpu_limit }}" -    es_memory_limit: "{{ openshift_logging_es_memory_limit }}" -  with_sequence: count={{ openshift_logging_es_cluster_size | int - openshift_logging_facts.elasticsearch.deploymentconfigs | count }} - -# --------- Tasks for Operation clusters --------- - -- name: Getting current ES deployment size -  set_fact: openshift_logging_current_es_ops_size={{ openshift_logging_facts.elasticsearch_ops.deploymentconfigs.keys() | length }} - -- set_fact: openshift_logging_es_ops_pvc_prefix="{{ openshift_logging_es_ops_pvc_prefix | default('logging-es-ops') }}" - -- name: Validate Elasticsearch cluster size for Ops -  fail: msg="The openshift_logging_es_ops_cluster_size may not be scaled down more than 1 less (or 0) the number of Elasticsearch nodes already deployed" -  vars: -    es_dcs: "{{openshift_logging_facts.elasticsearch_ops.deploymentconfigs}}" -    cluster_size: "{{openshift_logging_es_ops_cluster_size|int}}" -  when: -  - openshift_logging_use_ops | bool -  - "{{es_dcs | length - openshift_logging_es_ops_cluster_size|int | abs > 1}}" -  check_mode: no - -- set_fact: openshift_logging_es_ops_pvc_prefix="logging-es-ops" -  when: not openshift_logging_es_ops_pvc_prefix or openshift_logging_es_ops_pvc_prefix == '' - -- set_fact: es_ops_indices={{ es_ops_indices | default([]) + [item | int - 1] }} -  with_sequence: count={{ openshift_logging_facts.elasticsearch_ops.deploymentconfigs.keys() | count }} -  when: -  - openshift_logging_use_ops | bool - -- include: set_es_storage.yaml -  vars: -    es_component: es-ops -    es_name: "{{ deployment.0 }}" -    es_spec: "{{ deployment.1 }}" -    es_pvc_count: "{{ deployment.2 | int }}" -    es_node_selector: "{{ openshift_logging_es_ops_nodeselector | default({}) }}" -    es_pvc_names_count: "{{ openshift_logging_facts.elasticsearch_ops.pvcs.keys() | count }}" -    es_pvc_size: "{{ openshift_logging_es_ops_pvc_size }}" -    es_pvc_prefix: "{{ openshift_logging_es_ops_pvc_prefix }}" -    es_pvc_dynamic: "{{ openshift_logging_es_ops_pvc_dynamic | bool }}" -    es_pv_selector: "{{ openshift_logging_es_ops_pv_selector }}" -    es_cpu_limit: "{{ openshift_logging_es_ops_cpu_limit }}" -    es_memory_limit: "{{ openshift_logging_es_ops_memory_limit }}" -  with_together: -  - "{{ openshift_logging_facts.elasticsearch_ops.deploymentconfigs.keys() }}" -  - "{{ openshift_logging_facts.elasticsearch_ops.deploymentconfigs.values() }}" -  - "{{ es_ops_indices | default([]) }}" -  loop_control: -    loop_var: deployment -  when: -  - openshift_logging_use_ops | bool -## if it does not then we should create one that does and attach it - -## create new dc/pvc is needed -- include: set_es_storage.yaml -  vars: -    es_component: es-ops -    es_name: "logging-es-ops-{{'abcdefghijklmnopqrstuvwxyz0123456789'|random_word(8)}}" -    es_spec: "{}" -    es_pvc_count: "{{ item | int - 1 }}" -    es_node_selector: "{{ openshift_logging_es_ops_nodeselector | default({}) }}" -    es_pvc_names_count: "{{ [openshift_logging_facts.elasticsearch_ops.pvcs.keys() | count, openshift_logging_facts.elasticsearch_ops.deploymentconfigs.keys() | count] | max }}" -    es_pvc_size: "{{ openshift_logging_es_ops_pvc_size }}" -    es_pvc_prefix: "{{ openshift_logging_es_ops_pvc_prefix }}" -    es_pvc_dynamic: "{{ openshift_logging_es_ops_pvc_dynamic | bool }}" -    es_pv_selector: "{{ openshift_logging_es_ops_pv_selector }}" -    es_cpu_limit: "{{ openshift_logging_es_ops_cpu_limit }}" -    es_memory_limit: "{{ openshift_logging_es_ops_memory_limit }}" -  with_sequence: count={{ openshift_logging_es_ops_cluster_size | int - openshift_logging_facts.elasticsearch_ops.deploymentconfigs | count }} -  when: -  - openshift_logging_use_ops | bool diff --git a/roles/openshift_logging/tasks/install_fluentd.yaml b/roles/openshift_logging/tasks/install_fluentd.yaml deleted file mode 100644 index 6bc405819..000000000 --- a/roles/openshift_logging/tasks/install_fluentd.yaml +++ /dev/null @@ -1,54 +0,0 @@ ---- -- set_fact: fluentd_ops_host={{ (openshift_logging_use_ops | bool) | ternary(openshift_logging_es_ops_host, openshift_logging_es_host) }} -  check_mode: no - -- set_fact: fluentd_ops_port={{ (openshift_logging_use_ops | bool) | ternary(openshift_logging_es_ops_port, openshift_logging_es_port) }} -  check_mode: no - -- name: Generating Fluentd daemonset -  template: src=fluentd.j2 dest={{mktemp.stdout}}/templates/logging-fluentd.yaml -  vars: -    daemonset_name: logging-fluentd -    daemonset_component: fluentd -    daemonset_container_name: fluentd-elasticsearch -    daemonset_serviceAccount: aggregated-logging-fluentd -    ops_host: "{{ fluentd_ops_host }}" -    ops_port: "{{ fluentd_ops_port }}" -    fluentd_nodeselector_key: "{{openshift_logging_fluentd_nodeselector.keys()[0]}}" -    fluentd_nodeselector_value: "{{openshift_logging_fluentd_nodeselector.values()[0]}}" -  check_mode: no -  changed_when: no - -- name: "Check fluentd privileged permissions" -  command: > -    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig -    get scc/privileged -o jsonpath='{.users}' -  register: fluentd_privileged -  check_mode: no -  changed_when: no - -- name: "Set privileged permissions for fluentd" -  command: > -    {{ openshift.common.admin_binary}} --config={{ mktemp.stdout }}/admin.kubeconfig policy -    add-scc-to-user privileged system:serviceaccount:{{openshift_logging_namespace}}:aggregated-logging-fluentd -  register: fluentd_output -  failed_when: fluentd_output.rc == 1 and 'exists' not in fluentd_output.stderr -  check_mode: no -  when: fluentd_privileged.stdout.find("system:serviceaccount:{{openshift_logging_namespace}}:aggregated-logging-fluentd") == -1 - -- name: "Check fluentd cluster-reader permissions" -  command: > -    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig -    get clusterrolebinding/cluster-readers -o jsonpath='{.userNames}' -  register: fluentd_cluster_reader -  check_mode: no -  changed_when: no - -- name: "Set cluster-reader permissions for fluentd" -  command: > -    {{ openshift.common.admin_binary}} --config={{ mktemp.stdout }}/admin.kubeconfig policy -    add-cluster-role-to-user cluster-reader system:serviceaccount:{{openshift_logging_namespace}}:aggregated-logging-fluentd -  register: fluentd2_output -  failed_when: fluentd2_output.rc == 1 and 'exists' not in fluentd2_output.stderr -  check_mode: no -  when: fluentd_cluster_reader.stdout.find("system:serviceaccount:{{openshift_logging_namespace}}:aggregated-logging-fluentd") == -1 diff --git a/roles/openshift_logging/tasks/install_kibana.yaml b/roles/openshift_logging/tasks/install_kibana.yaml deleted file mode 100644 index 52bdeb50d..000000000 --- a/roles/openshift_logging/tasks/install_kibana.yaml +++ /dev/null @@ -1,60 +0,0 @@ ---- -- name: Check Kibana current replica count -  command: > -    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig get dc/logging-kibana -    -o jsonpath='{.spec.replicas}' -n {{openshift_logging_namespace}} -  register: kibana_replica_count -  when: not ansible_check_mode -  ignore_errors: yes -  changed_when: no - -- name: Check Kibana ops current replica count -  command: > -    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig get dc/logging-kibana-ops -    -o jsonpath='{.spec.replicas}' -n {{openshift_logging_namespace}} -  register: kibana_ops_replica_count -  when: -    - not ansible_check_mode -    - openshift_logging_use_ops | bool -  ignore_errors: yes -  changed_when: no - - -- name: Generate kibana deploymentconfig -  template: src=kibana.j2 dest={{mktemp.stdout}}/templates/logging-kibana-dc.yaml -  vars: -    component: kibana -    logging_component: kibana -    deploy_name: "logging-{{component}}" -    image: "{{openshift_logging_image_prefix}}logging-kibana:{{openshift_logging_image_version}}" -    proxy_image: "{{openshift_logging_image_prefix}}logging-auth-proxy:{{openshift_logging_image_version}}" -    es_host: logging-es -    es_port: "{{openshift_logging_es_port}}" -    kibana_cpu_limit: "{{openshift_logging_kibana_cpu_limit }}" -    kibana_memory_limit: "{{openshift_logging_kibana_memory_limit }}" -    kibana_proxy_cpu_limit: "{{openshift_logging_kibana_proxy_cpu_limit }}" -    kibana_proxy_memory_limit: "{{openshift_logging_kibana_proxy_memory_limit }}" -    replicas: "{{kibana_replica_count.stdout | default (0)}}" -    kibana_node_selector: "{{openshift_logging_kibana_nodeselector | default({})}}" -  check_mode: no -  changed_when: no - -- name: Generate OPS kibana deploymentconfig -  template: src=kibana.j2 dest={{mktemp.stdout}}/templates/logging-kibana-ops-dc.yaml -  vars: -    component: kibana-ops -    logging_component: kibana -    deploy_name: "logging-{{component}}" -    image: "{{openshift_logging_image_prefix}}logging-kibana:{{openshift_logging_image_version}}" -    proxy_image: "{{openshift_logging_image_prefix}}logging-auth-proxy:{{openshift_logging_image_version}}" -    es_host: logging-es-ops -    es_port: "{{openshift_logging_es_ops_port}}" -    kibana_cpu_limit: "{{openshift_logging_kibana_ops_cpu_limit }}" -    kibana_memory_limit: "{{openshift_logging_kibana_ops_memory_limit }}" -    kibana_proxy_cpu_limit: "{{openshift_logging_kibana_ops_proxy_cpu_limit }}" -    kibana_proxy_memory_limit: "{{openshift_logging_kibana_ops_proxy_memory_limit }}" -    replicas: "{{kibana_ops_replica_count.stdout | default (0)}}" -    kibana_node_selector: "{{openshift_logging_kibana_ops_nodeselector | default({})}}" -  when: openshift_logging_use_ops | bool -  check_mode: no -  changed_when: no diff --git a/roles/openshift_logging/tasks/install_logging.yaml b/roles/openshift_logging/tasks/install_logging.yaml index b5b266f2d..6083cdd26 100644 --- a/roles/openshift_logging/tasks/install_logging.yaml +++ b/roles/openshift_logging/tasks/install_logging.yaml @@ -8,14 +8,33 @@    oc_project:      state: present      name: "{{ openshift_logging_namespace }}" +    node_selector: "{{ openshift_logging_nodeselector | default(null) }}" -- name: Install logging mux -  include: "{{ role_path }}/tasks/install_mux.yaml" -  when: openshift_logging_use_mux +- name: Labelling logging project +  oc_label: +    state: present +    kind: namespace +    name: "{{ openshift_logging_namespace }}" +    labels: +    - key: "{{ item.key }}" +      value: "{{ item.value }}" +  with_dict: "{{ openshift_logging_labels | default({}) }}" +  when: +  - openshift_logging_labels is defined +  - openshift_logging_labels is dict -- find: paths={{ mktemp.stdout }}/templates patterns=*.yaml -  register: object_def_files -  changed_when: no +- name: Labelling logging project +  oc_label: +    state: present +    kind: namespace +    name: "{{ openshift_logging_namespace }}" +    labels: +    - key: "{{ openshift_logging_label_key }}" +      value: "{{ openshift_logging_label_value }}" +  when: +  - openshift_logging_label_key is defined +  - openshift_logging_label_key != "" +  - openshift_logging_label_value is defined  - name: Create logging cert directory    file: @@ -166,6 +185,20 @@    when:    - openshift_logging_use_ops | bool +## Mux +- include_role: +    name: openshift_logging_mux +  vars: +    generated_certs_dir: "{{openshift.common.config_base}}/logging" +    openshift_logging_mux_ops_host: "{{ ( openshift_logging_use_ops | bool ) | ternary('logging-es-ops', 'logging-es') }}" +    openshift_logging_mux_namespace: "{{ openshift_logging_namespace }}" +    openshift_logging_mux_master_url: "{{ openshift_logging_master_url }}" +    openshift_logging_mux_image_prefix: "{{ openshift_logging_image_prefix }}" +    openshift_logging_mux_image_version: "{{ openshift_logging_image_version }}" +    openshift_logging_mux_image_pull_secret: "{{ openshift_logging_image_pull_secret }}" +  when: +  - openshift_logging_use_mux | bool +  ## Fluentd  - include_role: @@ -174,5 +207,10 @@      generated_certs_dir: "{{openshift.common.config_base}}/logging"      openshift_logging_fluentd_ops_host: "{{ ( openshift_logging_use_ops | bool ) | ternary('logging-es-ops', 'logging-es') }}"      openshift_logging_fluentd_use_journal: "{{ openshift.docker.options | search('journald') }}" +    openshift_logging_fluentd_image_prefix: "{{ openshift_logging_image_prefix }}" +    openshift_logging_fluentd_image_version: "{{ openshift_logging_image_version }}" +    openshift_logging_fluentd_image_pull_secret: "{{ openshift_logging_image_pull_secret }}" +    openshift_logging_fluentd_master_url: "{{ openshift_logging_master_url }}" +    openshift_logging_fluentd_namespace: "{{ openshift_logging_namespace }}"  - include: update_master_config.yaml diff --git a/roles/openshift_logging/tasks/install_mux.yaml b/roles/openshift_logging/tasks/install_mux.yaml deleted file mode 100644 index 91eeb95a1..000000000 --- a/roles/openshift_logging/tasks/install_mux.yaml +++ /dev/null @@ -1,67 +0,0 @@ ---- -- set_fact: mux_ops_host={{ (openshift_logging_use_ops | bool) | ternary(openshift_logging_es_ops_host, openshift_logging_es_host) }} -  check_mode: no - -- set_fact: mux_ops_port={{ (openshift_logging_use_ops | bool) | ternary(openshift_logging_es_ops_port, openshift_logging_es_port) }} -  check_mode: no - -- name: Check mux current replica count -  command: > -    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig get dc/logging-mux -    -o jsonpath='{.spec.replicas}' -n {{openshift_logging_namespace}} -  register: mux_replica_count -  when: not ansible_check_mode -  ignore_errors: yes -  changed_when: no - -- name: Generating mux deploymentconfig -  template: src=mux.j2 dest={{mktemp.stdout}}/templates/logging-mux-dc.yaml -  vars: -    component: mux -    logging_component: mux -    deploy_name: "logging-{{component}}" -    image: "{{openshift_logging_image_prefix}}logging-fluentd:{{openshift_logging_image_version}}" -    es_host: logging-es -    es_port: "{{openshift_logging_es_port}}" -    ops_host: "{{ mux_ops_host }}" -    ops_port: "{{ mux_ops_port }}" -    mux_cpu_limit: "{{openshift_logging_mux_cpu_limit}}" -    mux_memory_limit: "{{openshift_logging_mux_memory_limit}}" -    replicas: "{{mux_replica_count.stdout | default (0)}}" -    mux_node_selector: "{{openshift_logging_mux_nodeselector | default({})}}" -  check_mode: no -  changed_when: no - -- name: "Check mux hostmount-anyuid permissions" -  command: > -    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig -    get scc/hostmount-anyuid -o jsonpath='{.users}' -  register: mux_hostmount_anyuid -  check_mode: no -  changed_when: no - -- name: "Set hostmount-anyuid permissions for mux" -  command: > -    {{ openshift.common.admin_binary}} --config={{ mktemp.stdout }}/admin.kubeconfig policy -    add-scc-to-user hostmount-anyuid system:serviceaccount:{{openshift_logging_namespace}}:aggregated-logging-fluentd -  register: mux_output -  failed_when: mux_output.rc == 1 and 'exists' not in mux_output.stderr -  check_mode: no -  when: mux_hostmount_anyuid.stdout.find("system:serviceaccount:{{openshift_logging_namespace}}:aggregated-logging-fluentd") == -1 - -- name: "Check mux cluster-reader permissions" -  command: > -    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig -    get clusterrolebinding/cluster-readers -o jsonpath='{.userNames}' -  register: mux_cluster_reader -  check_mode: no -  changed_when: no - -- name: "Set cluster-reader permissions for mux" -  command: > -    {{ openshift.common.admin_binary}} --config={{ mktemp.stdout }}/admin.kubeconfig policy -    add-cluster-role-to-user cluster-reader system:serviceaccount:{{openshift_logging_namespace}}:aggregated-logging-fluentd -  register: mux2_output -  failed_when: mux2_output.rc == 1 and 'exists' not in mux2_output.stderr -  check_mode: no -  when: mux_cluster_reader.stdout.find("system:serviceaccount:{{openshift_logging_namespace}}:aggregated-logging-fluentd") == -1 diff --git a/roles/openshift_logging/tasks/install_support.yaml b/roles/openshift_logging/tasks/install_support.yaml deleted file mode 100644 index d26352e96..000000000 --- a/roles/openshift_logging/tasks/install_support.yaml +++ /dev/null @@ -1,47 +0,0 @@ ---- -# This is the base configuration for installing the other components -- name: Set logging project -  oc_project: -    state: present -    name: "{{ openshift_logging_namespace }}" -    node_selector: "{{ openshift_logging_nodeselector | default(null) }}" - -- name: Labelling logging project -  oc_label: -    state: present -    kind: namespace -    name: "{{ openshift_logging_namespace }}" -    labels: -    - key: "{{ item.key }}" -      value: "{{ item.value }}" -  with_dict: "{{ openshift_logging_labels | default({}) }}" -  when: -  - openshift_logging_labels is defined -  - openshift_logging_labels is dict - -- name: Labelling logging project -  oc_label: -    state: present -    kind: namespace -    name: "{{ openshift_logging_namespace }}" -    labels: -    - key: "{{ openshift_logging_label_key }}" -      value: "{{ openshift_logging_label_value }}" -  when: -  - openshift_logging_label_key is defined -  - openshift_logging_label_key != "" -  - openshift_logging_label_value is defined - -- name: Create logging cert directory -  file: path={{openshift.common.config_base}}/logging state=directory mode=0755 -  changed_when: False -  check_mode: no - -- include: generate_certs.yaml -  vars: -    generated_certs_dir: "{{openshift.common.config_base}}/logging" - -- name: Create temp directory for all our templates -  file: path={{mktemp.stdout}}/templates state=directory mode=0755 -  changed_when: False -  check_mode: no diff --git a/roles/openshift_logging/tasks/oc_apply.yaml b/roles/openshift_logging/tasks/oc_apply.yaml deleted file mode 100644 index a0ed56ebd..000000000 --- a/roles/openshift_logging/tasks/oc_apply.yaml +++ /dev/null @@ -1,52 +0,0 @@ ---- -- oc_obj: -    kind: "{{ file_content.kind }}" -    name: "{{ file_content.metadata.name }}" -    state: present -    namespace: "{{ namespace }}" -    files: -    - "{{ file_name }}" -  when: file_content.kind not in ["Service", "Route"] - -## still need to do this for services until the template logic is replaced by oc_* -- block: -  - name: Checking generation of {{file_content.kind}} {{file_content.metadata.name}} -    command: > -      {{ openshift.common.client_binary }} -      --config={{ kubeconfig }} -      get {{file_content.kind}} {{file_content.metadata.name}} -      -o jsonpath='{.metadata.resourceVersion}' -      -n {{namespace}} -    register: generation_init -    failed_when: "'not found' not in generation_init.stderr and generation_init.stdout == ''" -    changed_when: no - -  - name: Applying {{file_name}} -    command: > -      {{ openshift.common.client_binary }} --config={{ kubeconfig }} -      apply -f {{ file_name }} -      -n {{ namespace }} -    register: generation_apply -    failed_when: "'error' in generation_apply.stderr" -    changed_when: no - -  - name: Removing previous {{file_name}} -    command: > -      {{ openshift.common.client_binary }} --config={{ kubeconfig }} -      delete -f {{ file_name }} -      -n {{ namespace }} -    register: generation_delete -    failed_when: "'error' in generation_delete.stderr" -    changed_when: generation_delete.rc == 0 -    when: "'field is immutable' in generation_apply.stderr" - -  - name: Recreating {{file_name}} -    command: > -      {{ openshift.common.client_binary }} --config={{ kubeconfig }} -      apply -f {{ file_name }} -      -n {{ namespace }} -    register: generation_apply -    failed_when: "'error' in generation_apply.stderr" -    changed_when: generation_apply.rc == 0 -    when: "'field is immutable' in generation_apply.stderr" -  when: file_content.kind in ["Service", "Route"] diff --git a/roles/openshift_logging/tasks/oc_secret.yaml b/roles/openshift_logging/tasks/oc_secret.yaml deleted file mode 100644 index de37e4f6d..000000000 --- a/roles/openshift_logging/tasks/oc_secret.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- command: > -    {{ openshift.common.client_binary }} -    --config={{ kubeconfig }} -    secret {{subcommand}} {{service_account}} {{secret_name}} -    {{add_args}} -    -n {{openshift_logging_namespace}} diff --git a/roles/openshift_logging/tasks/set_es_storage.yaml b/roles/openshift_logging/tasks/set_es_storage.yaml deleted file mode 100644 index 4afe4e641..000000000 --- a/roles/openshift_logging/tasks/set_es_storage.yaml +++ /dev/null @@ -1,80 +0,0 @@ ---- -- set_fact: es_storage_type="{{ es_spec.volumes['elasticsearch-storage'] }}" -  when: es_spec.volumes is defined - -- set_fact: es_storage_claim="{{ es_spec.volumes['elasticsearch-storage'].persistentVolumeClaim.claimName }}" -  when: -  - es_spec.volumes is defined -  - es_storage_type.persistentVolumeClaim is defined - -- set_fact: es_storage_claim="" -  when: -  - not es_spec.volumes is defined or not es_storage_type.persistentVolumeClaim is defined - -## take an ES dc and evaluate its storage option -# if it is a hostmount or emptydir we don't do anything with it -# if its a pvc we see if the corresponding pvc matches the provided specs (if they exist) -- oc_obj: -    state: list -    kind: pvc -    name: "{{ es_storage_claim }}" -    namespace: "{{ openshift_logging_namespace }}" -  register: pvc_spec -  failed_when: pvc_spec.results.stderr is defined -  when: -  - es_spec.volumes is defined -  - es_storage_type.persistentVolumeClaim is defined - -- set_fact: pvc_size="{{ pvc_spec.results.results[0].spec.resources.requests.storage }}" -  when: -  - pvc_spec.results is defined -  - pvc_spec.results.results[0].spec is defined - -# if not create the pvc and use it -- block: - -  - name: Generating PersistentVolumeClaims -    template: src=pvc.j2 dest={{mktemp.stdout}}/templates/logging-{{obj_name}}-pvc.yaml -    vars: -      obj_name: "{{ es_pvc_prefix }}-{{ es_pvc_names_count | int + es_pvc_count | int }}" -      size: "{{ es_pvc_size }}" -      access_modes: "{{ openshift_logging_storage_access_modes }}" -      pv_selector: "{{ es_pv_selector }}" -    when: not es_pvc_dynamic | bool -    check_mode: no -    changed_when: no - -  - name: Generating PersistentVolumeClaims - Dynamic -    template: src=pvc.j2 dest={{mktemp.stdout}}/templates/logging-{{obj_name}}-pvc.yaml -    vars: -      obj_name: "{{ es_pvc_prefix }}-{{ es_pvc_names_count | int + es_pvc_count | int }}" -      annotations: -        volume.alpha.kubernetes.io/storage-class: "dynamic" -      size: "{{ es_pvc_size }}" -      access_modes: "{{ openshift_logging_storage_access_modes }}" -      pv_selector: "{{ es_pv_selector }}" -    when: es_pvc_dynamic | bool -    check_mode: no -    changed_when: no - -  - set_fact: es_storage_claim="{{ es_pvc_prefix }}-{{ es_pvc_names_count | int + es_pvc_count | int }}" - -  when: -  - es_pvc_size | search('^\d.*') -  - not es_spec.volumes is defined or not es_storage_claim | search( es_pvc_prefix ) or ( not pvc_size | search( es_pvc_size ) and not es_pvc_size | search( pvc_size ) ) - -- name: Generate Elasticsearch DeploymentConfig -  template: src=es.j2 dest={{mktemp.stdout}}/templates/logging-{{deploy_name}}-dc.yaml -  vars: -    component: "{{ es_component }}" -    deploy_name: "{{ es_name }}" -    logging_component: elasticsearch -    deploy_name_prefix: "logging-{{ es_component }}" -    image: "{{openshift_logging_image_prefix}}logging-elasticsearch:{{openshift_logging_image_version}}" -    es_cluster_name: "{{component}}" -    es_cpu_limit: "{{ es_cpu_limit }}" -    es_memory_limit: "{{ es_memory_limit }}" -    es_node_selector: "{{ es_node_selector }}" -    es_storage: "{{ openshift_logging_facts | es_storage( es_name, es_storage_claim ) }}" -  check_mode: no -  changed_when: no diff --git a/roles/openshift_logging/tasks/start_cluster.yaml b/roles/openshift_logging/tasks/start_cluster.yaml deleted file mode 100644 index c1592b830..000000000 --- a/roles/openshift_logging/tasks/start_cluster.yaml +++ /dev/null @@ -1,156 +0,0 @@ ---- -- name: Retrieve list of fluentd hosts -  oc_obj: -    state: list -    kind: node -  when: "'--all' in openshift_logging_fluentd_hosts" -  register: fluentd_hosts - -- name: Set fact openshift_logging_fluentd_hosts -  set_fact: -    openshift_logging_fluentd_hosts: "{{ fluentd_hosts.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  when: "'--all' in openshift_logging_fluentd_hosts" - -- name: start fluentd -  oc_label: -    name: "{{ fluentd_host }}" -    kind: node -    state: add -    labels: "{{ openshift_logging_fluentd_nodeselector | oo_dict_to_list_of_dict }}" -  with_items: "{{ openshift_logging_fluentd_hosts }}" -  loop_control: -    loop_var: fluentd_host - -- name: Retrieve mux -  oc_obj: -    state: list -    kind: dc -    selector: "component=mux" -    namespace: "{{openshift_logging_namespace}}" -  register: mux_dc -  when: openshift_logging_use_mux - -- name: start mux -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: "{{ openshift_logging_mux_replica_count | default (1) }}" -  with_items: "{{ mux_dc.results.results[0]['items'] | map(attribute='metadata.name') | list if 'results' in mux_dc else [] }}" -  loop_control: -    loop_var: object -  when: -  - mux_dc.results is defined -  - mux_dc.results.results is defined -  - openshift_logging_use_mux - -- name: Retrieve elasticsearch -  oc_obj: -    state: list -    kind: dc -    selector: "component=es" -    namespace: "{{openshift_logging_namespace}}" -  register: es_dc - -- name: start elasticsearch -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 1 -  with_items: "{{ es_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object - -- name: Retrieve kibana -  oc_obj: -    state: list -    kind: dc -    selector: "component=kibana" -    namespace: "{{openshift_logging_namespace}}" -  register: kibana_dc - -- name: start kibana -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: "{{ openshift_logging_kibana_replica_count | default (1) }}" -  with_items: "{{ kibana_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object - -- name: Retrieve curator -  oc_obj: -    state: list -    kind: dc -    selector: "component=curator" -    namespace: "{{openshift_logging_namespace}}" -  register: curator_dc - -- name: start curator -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 1 -  with_items: "{{ curator_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object - -- name: Retrieve elasticsearch-ops -  oc_obj: -    state: list -    kind: dc -    selector: "component=es-ops" -    namespace: "{{openshift_logging_namespace}}" -  register: es_dc - -- name: start elasticsearch-ops -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 1 -  with_items: "{{ es_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object -  when: openshift_logging_use_ops | bool - -- name: Retrieve kibana-ops -  oc_obj: -    state: list -    kind: dc -    selector: "component=kibana-ops" -    namespace: "{{openshift_logging_namespace}}" -  register: kibana_dc - -- name: start kibana-ops -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: "{{ openshift_logging_kibana_ops_replica_count | default (1) }}" -  with_items: "{{ kibana_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object -  when: openshift_logging_use_ops | bool - -- name: Retrieve curator -  oc_obj: -    state: list -    kind: dc -    selector: "component=curator-ops" -    namespace: "{{openshift_logging_namespace}}" -  register: curator_dc - -- name: start curator-ops -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 1 -  with_items: "{{ curator_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object -  when: openshift_logging_use_ops | bool diff --git a/roles/openshift_logging/tasks/stop_cluster.yaml b/roles/openshift_logging/tasks/stop_cluster.yaml deleted file mode 100644 index f4b419d84..000000000 --- a/roles/openshift_logging/tasks/stop_cluster.yaml +++ /dev/null @@ -1,153 +0,0 @@ ---- -- name: Retrieve list of fluentd hosts -  oc_obj: -    state: list -    kind: node -  when: "'--all' in openshift_logging_fluentd_hosts" -  register: fluentd_hosts - -- name: Set fact openshift_logging_fluentd_hosts -  set_fact: -    openshift_logging_fluentd_hosts: "{{ fluentd_hosts.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  when: "'--all' in openshift_logging_fluentd_hosts" - -- name: stop fluentd -  oc_label: -    name: "{{ fluentd_host }}" -    kind: node -    state: absent -    labels: "{{ openshift_logging_fluentd_nodeselector | oo_dict_to_list_of_dict }}" -  with_items: "{{ openshift_logging_fluentd_hosts }}" -  loop_control: -    loop_var: fluentd_host - -- name: Retrieve mux -  oc_obj: -    state: list -    kind: dc -    selector: "component=mux" -    namespace: "{{openshift_logging_namespace}}" -  register: mux_dc -  when: openshift_logging_use_mux - -- name: stop mux -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 0 -  with_items: "{{ mux_dc.results.results[0]['items'] | map(attribute='metadata.name') | list if 'results' in mux_dc else [] }}" -  loop_control: -    loop_var: object -  when: openshift_logging_use_mux - -- name: Retrieve elasticsearch -  oc_obj: -    state: list -    kind: dc -    selector: "component=es" -    namespace: "{{openshift_logging_namespace}}" -  register: es_dc - -- name: stop elasticsearch -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 0 -  with_items: "{{ es_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object - -- name: Retrieve kibana -  oc_obj: -    state: list -    kind: dc -    selector: "component=kibana" -    namespace: "{{openshift_logging_namespace}}" -  register: kibana_dc - -- name: stop kibana -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 0 -  with_items: "{{ kibana_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object - -- name: Retrieve curator -  oc_obj: -    state: list -    kind: dc -    selector: "component=curator" -    namespace: "{{openshift_logging_namespace}}" -  register: curator_dc - -- name: stop curator -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 0 -  with_items: "{{ curator_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object - -- name: Retrieve elasticsearch-ops -  oc_obj: -    state: list -    kind: dc -    selector: "component=es-ops" -    namespace: "{{openshift_logging_namespace}}" -  register: es_dc - -- name: stop elasticsearch-ops -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 0 -  with_items: "{{ es_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object -  when: openshift_logging_use_ops | bool - -- name: Retrieve kibana-ops -  oc_obj: -    state: list -    kind: dc -    selector: "component=kibana-ops" -    namespace: "{{openshift_logging_namespace}}" -  register: kibana_dc - -- name: stop kibana-ops -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 0 -  with_items: "{{ kibana_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object -  when: openshift_logging_use_ops | bool - -- name: Retrieve curator -  oc_obj: -    state: list -    kind: dc -    selector: "component=curator-ops" -    namespace: "{{openshift_logging_namespace}}" -  register: curator_dc - -- name: stop curator-ops -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 0 -  with_items: "{{ curator_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object -  when: openshift_logging_use_ops | bool diff --git a/roles/openshift_logging/tasks/upgrade_logging.yaml b/roles/openshift_logging/tasks/upgrade_logging.yaml deleted file mode 100644 index 30fdbd2af..000000000 --- a/roles/openshift_logging/tasks/upgrade_logging.yaml +++ /dev/null @@ -1,48 +0,0 @@ ---- -- name: Stop the Cluster -  include: stop_cluster.yaml - -- name: Upgrade logging -  include: install_logging.yaml -  vars: -    start_cluster: False - -# start ES so that we can run migrate script -- name: Retrieve elasticsearch -  oc_obj: -    state: list -    kind: dc -    selector: "component=es" -    namespace: "{{openshift_logging_namespace}}" -  register: es_dc - -- name: start elasticsearch -  oc_scale: -    kind: dc -    name: "{{ object }}" -    namespace: "{{openshift_logging_namespace}}" -    replicas: 1 -  with_items: "{{ es_dc.results.results[0]['items'] | map(attribute='metadata.name') | list }}" -  loop_control: -    loop_var: object - -- name: Wait for pods to start -  oc_obj: -    state: list -    kind: pods -    selector: "component=es" -    namespace: "{{openshift_logging_namespace}}" -  register: running_pod -  until: running_pod.results.results[0]['items'] | selectattr('status.phase', 'match', '^Running$') | map(attribute='metadata.name') | list | length != 0 -  retries: 30 -  delay: 10 - -- name: Run upgrade script -  script: es_migration.sh {{openshift.common.config_base}}/logging/ca.crt {{openshift.common.config_base}}/logging/system.admin.key {{openshift.common.config_base}}/logging/system.admin.crt {{openshift_logging_es_host}} {{openshift_logging_es_port}} {{openshift_logging_namespace}} -  register: script_output -  changed_when: -    - script_output.rc == 0 -    - script_output.stdout.find("skipping update_for_uuid") == -1 or script_output.stdout.find("skipping update_for_common_data_model") == -1 - -- name: Start up rest of cluster -  include: start_cluster.yaml | 
