install_cassandra.yaml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. ---
  2. - shell: >
  3. {{ openshift.common.client_binary }} -n {{ openshift_metrics_project | quote }}
  4. --config={{ mktemp.stdout }}/admin.kubeconfig
  5. get rc hawkular-cassandra-{{node}} -o jsonpath='{.spec.replicas}' || echo 0
  6. vars:
  7. node: "{{ item }}"
  8. register: cassandra_replica_count
  9. with_sequence: count={{ openshift_metrics_cassandra_replicas }}
  10. changed_when: false
  11. failed_when: false
  12. - name: generate hawkular-cassandra replication controllers
  13. template:
  14. src: hawkular_cassandra_rc.j2
  15. dest: "{{ mktemp.stdout }}/templates/hawkular-cassandra-rc{{ item }}.yaml"
  16. vars:
  17. node: "{{ item }}"
  18. master: "{{ (item == '1')|string|lower }}"
  19. replica_count: "{{cassandra_replica_count.results[item|int - 1].stdout}}"
  20. node_selector: "{{openshift_metrics_cassandra_nodeselector | default('') }}"
  21. with_sequence: count={{ openshift_metrics_cassandra_replicas }}
  22. changed_when: false
  23. - name: generate hawkular-cassandra persistent volume claims
  24. template:
  25. src: pvc.j2
  26. dest: "{{ mktemp.stdout }}/templates/hawkular-cassandra-pvc{{ item }}.yaml"
  27. vars:
  28. obj_name: "{{ openshift_metrics_cassandra_pvc_prefix }}-{{ item }}"
  29. labels:
  30. metrics-infra: hawkular-cassandra
  31. access_modes:
  32. - "{{ openshift_metrics_cassandra_pvc_access }}"
  33. size: "{{ openshift_metrics_cassandra_pvc_size }}"
  34. with_sequence: count={{ openshift_metrics_cassandra_replicas }}
  35. when:
  36. - openshift_metrics_cassandra_storage_type != 'emptydir'
  37. - openshift_metrics_cassandra_storage_type != 'dynamic'
  38. changed_when: false
  39. - name: generate hawkular-cassandra persistent volume claims (dynamic)
  40. template:
  41. src: pvc.j2
  42. dest: "{{ mktemp.stdout }}/templates/hawkular-cassandra-pvc{{ item }}.yaml"
  43. vars:
  44. obj_name: "{{ openshift_metrics_cassandra_pvc_prefix }}-{{ item }}"
  45. labels:
  46. metrics-infra: hawkular-cassandra
  47. annotations:
  48. volume.alpha.kubernetes.io/storage-class: dynamic
  49. access_modes:
  50. - "{{ openshift_metrics_cassandra_pvc_access }}"
  51. size: "{{ openshift_metrics_cassandra_pvc_size }}"
  52. with_sequence: count={{ openshift_metrics_cassandra_replicas }}
  53. when: openshift_metrics_cassandra_storage_type == 'dynamic'
  54. changed_when: false