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.

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