You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
1.6 KiB

  1. ---
  2. - name: "Kubernetes Apps | Lay Down GlusterFS Daemonset"
  3. template:
  4. src: "glusterfs-daemonset.json.j2"
  5. dest: "{{ kube_config_dir }}/glusterfs-daemonset.json"
  6. mode: 0644
  7. become: true
  8. register: "rendering"
  9. - name: "Kubernetes Apps | Install and configure GlusterFS daemonset"
  10. kube:
  11. name: "GlusterFS"
  12. kubectl: "{{ bin_dir }}/kubectl"
  13. filename: "{{ kube_config_dir }}/glusterfs-daemonset.json"
  14. state: "{{ rendering.changed | ternary('latest', 'present') }}"
  15. - name: "Kubernetes Apps | Label GlusterFS nodes"
  16. include_tasks: "glusterfs/label.yml"
  17. with_items: "{{ groups['heketi-node'] }}"
  18. loop_control:
  19. loop_var: "node"
  20. - name: "Kubernetes Apps | Wait for daemonset to become available."
  21. register: "daemonset_state"
  22. command: "{{ bin_dir }}/kubectl get daemonset glusterfs --output=json --ignore-not-found=true"
  23. changed_when: false
  24. vars:
  25. daemonset_state: { stdout: "{}" }
  26. ready: "{{ daemonset_state.stdout|from_json|json_query(\"status.numberReady\") }}"
  27. desired: "{{ daemonset_state.stdout|from_json|json_query(\"status.desiredNumberScheduled\") }}"
  28. until: "ready | int >= 3"
  29. retries: 60
  30. delay: 5
  31. - name: "Kubernetes Apps | Lay Down Heketi Service Account"
  32. template:
  33. src: "heketi-service-account.json.j2"
  34. dest: "{{ kube_config_dir }}/heketi-service-account.json"
  35. mode: 0644
  36. become: true
  37. register: "rendering"
  38. - name: "Kubernetes Apps | Install and configure Heketi Service Account"
  39. kube:
  40. name: "GlusterFS"
  41. kubectl: "{{ bin_dir }}/kubectl"
  42. filename: "{{ kube_config_dir }}/heketi-service-account.json"
  43. state: "{{ rendering.changed | ternary('latest', 'present') }}"