main.yml 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. ---
  2. - name: Ensure all the relevant projects are enabled for monitoring
  3. k8s:
  4. kubeconfig: tmp/kubeconfig-ocp4
  5. validate_certs: no
  6. api_version: v1
  7. kind: namespace
  8. name: "{{ item }}"
  9. definition:
  10. metadata:
  11. labels:
  12. openshift.io/cluster-monitoring: "true"
  13. loop:
  14. - openshift-operators-redhat
  15. - openshift-operators
  16. - openshift-logging
  17. - name: Create an ObjectBucketClaim if not yet there
  18. k8s:
  19. kubeconfig: tmp/kubeconfig-ocp4
  20. validate_certs: no
  21. definition: "{{ lookup('ansible.builtin.file', 'files/obj-bucket-claim.yml') }}"
  22. - name: Wait for the secret to appear
  23. k8s_info:
  24. kubeconfig: tmp/kubeconfig-ocp4
  25. validate_certs: no
  26. api_version: v1
  27. kind: secret
  28. namespace: openshift-logging
  29. name: loki-bucket-odf
  30. register: loki_secret
  31. until:
  32. - (loki_secret.resources | length) == 1
  33. retries: 6
  34. delay: 5
  35. - name: Wait for the configmap to appear
  36. k8s_info:
  37. kubeconfig: tmp/kubeconfig-ocp4
  38. validate_certs: no
  39. api_version: v1
  40. kind: configmap
  41. namespace: openshift-logging
  42. name: loki-bucket-odf
  43. register: loki_cmap
  44. until:
  45. - (loki_cmap.resources | length) == 1
  46. retries: 6
  47. delay: 5
  48. - name: Ensure the loki secret contains the relevant data
  49. k8s:
  50. kubeconfig: tmp/kubeconfig-ocp4
  51. validate_certs: no
  52. api_version: v1
  53. kind: secret
  54. name: logging-loki-storage
  55. namespace: openshift-logging
  56. definition:
  57. stringData:
  58. access_key_id: "{{ loki_secret.resources[0].data.AWS_ACCESS_KEY_ID | b64decode }}"
  59. access_key_secret: "{{ loki_secret.resources[0].data.AWS_SECRET_ACCESS_KEY | b64decode }}"
  60. bucketnames: "{{ loki_cmap.resources[0].data.BUCKET_NAME }}"
  61. endpoint: "https://{{ loki_cmap.resources[0].data.BUCKET_HOST }}:{{ loki_cmap.resources[0].data.BUCKET_PORT }}"
  62. - name: Create a LokiStack resource if not yet there
  63. k8s:
  64. kubeconfig: tmp/kubeconfig-ocp4
  65. validate_certs: no
  66. definition: "{{ lookup('ansible.builtin.file', 'files/loki-stack.yml') }}"
  67. - name: Wait for LokiStack to become ready
  68. k8s_info:
  69. kubeconfig: tmp/kubeconfig-ocp4
  70. validate_certs: no
  71. api_version: loki.grafana.com/v1
  72. kind: lokistack
  73. namespace: openshift-logging
  74. name: logging-loki
  75. register: loki_rdy
  76. until:
  77. - loki_rdy.resources | length == 1
  78. - loki_rdy.resources[0] | community.general.json_query("status.conditions[?(type=='Ready')].status") == "True"
  79. retries: 60
  80. delay: 10
  81. #- name: Create a ClusterLogging instance if not yet there.
  82. # k8s:
  83. # kubeconfig: tmp/kubeconfig-ocp4
  84. # validate_certs: no
  85. # definition: "{{ lookup('ansible.builtin.file', 'files/cluster-logging.yml') }}"
  86. # Verification???