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.

121 lines
2.9 KiB

6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
  1. ---
  2. - name: Create kubernetes directories
  3. file:
  4. path: "{{ item }}"
  5. state: directory
  6. owner: "{{ kube_owner }}"
  7. mode: "0755"
  8. when: ('k8s_cluster' in group_names)
  9. become: true
  10. tags:
  11. - kubelet
  12. - k8s-secrets
  13. - kube-controller-manager
  14. - kube-apiserver
  15. - bootstrap-os
  16. - apps
  17. - network
  18. - master # master tag is deprecated and replaced by control-plane
  19. - control-plane
  20. - node
  21. with_items:
  22. - "{{ kube_config_dir }}"
  23. - "{{ kube_manifest_dir }}"
  24. - "{{ kube_script_dir }}"
  25. - "{{ kubelet_flexvolumes_plugins_dir }}"
  26. - name: Create other directories of root owner
  27. file:
  28. path: "{{ item }}"
  29. state: directory
  30. owner: root
  31. mode: "0755"
  32. when: ('k8s_cluster' in group_names)
  33. become: true
  34. tags:
  35. - kubelet
  36. - k8s-secrets
  37. - kube-controller-manager
  38. - kube-apiserver
  39. - bootstrap-os
  40. - apps
  41. - network
  42. - master # master tag is deprecated and replaced by control-plane
  43. - control-plane
  44. - node
  45. with_items:
  46. - "{{ kube_cert_dir }}"
  47. - "{{ bin_dir }}"
  48. - name: Check if kubernetes kubeadm compat cert dir exists
  49. stat:
  50. path: "{{ kube_cert_compat_dir }}"
  51. get_attributes: false
  52. get_checksum: false
  53. get_mime: false
  54. register: kube_cert_compat_dir_check
  55. when:
  56. - ('k8s_cluster' in group_names)
  57. - kube_cert_dir != kube_cert_compat_dir
  58. - name: Create kubernetes kubeadm compat cert dir (kubernetes/kubeadm issue 1498)
  59. file:
  60. src: "{{ kube_cert_dir }}"
  61. dest: "{{ kube_cert_compat_dir }}"
  62. state: link
  63. mode: "0755"
  64. when:
  65. - ('k8s_cluster' in group_names)
  66. - kube_cert_dir != kube_cert_compat_dir
  67. - not kube_cert_compat_dir_check.stat.exists
  68. - name: Create cni directories
  69. file:
  70. path: "{{ item }}"
  71. state: directory
  72. owner: "{{ kube_owner }}"
  73. mode: "0755"
  74. with_items:
  75. - "/etc/cni/net.d"
  76. - "/opt/cni/bin"
  77. when:
  78. - kube_network_plugin in ["calico", "weave", "flannel", "cilium", "kube-ovn", "kube-router", "macvlan"]
  79. - ('k8s_cluster' in group_names)
  80. tags:
  81. - network
  82. - cilium
  83. - calico
  84. - weave
  85. - kube-ovn
  86. - kube-router
  87. - bootstrap-os
  88. - name: Create calico cni directories
  89. file:
  90. path: "{{ item }}"
  91. state: directory
  92. owner: "{{ kube_owner }}"
  93. mode: "0755"
  94. with_items:
  95. - "/var/lib/calico"
  96. when:
  97. - kube_network_plugin == "calico"
  98. - ('k8s_cluster' in group_names)
  99. tags:
  100. - network
  101. - calico
  102. - bootstrap-os
  103. - name: Create local volume provisioner directories
  104. file:
  105. path: "{{ local_volume_provisioner_storage_classes[item].host_dir }}"
  106. state: directory
  107. owner: root
  108. group: root
  109. mode: "{{ local_volume_provisioner_directory_mode }}"
  110. with_items: "{{ local_volume_provisioner_storage_classes.keys() | list }}"
  111. when:
  112. - ('k8s_cluster' in group_names)
  113. - local_volume_provisioner_enabled
  114. tags:
  115. - persistent_volumes