Browse Source

Merge pull request #11568 from VannTen/cleanup/dont_rely_on_kube_node_existing

Only require minimum structure in inventory, part II
pull/11583/head
Kubernetes Prow Robot 1 month ago
committed by GitHub
parent
commit
bbd90f7657
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
6 changed files with 14 additions and 23 deletions
  1. 6
      roles/kubernetes-apps/metrics_server/defaults/main.yml
  2. 5
      roles/kubernetes-apps/metrics_server/tasks/main.yml
  3. 20
      roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2
  4. 2
      roles/kubernetes/control-plane/templates/kubeadm-config.v1beta3.yaml.j2
  5. 2
      roles/kubernetes/control-plane/templates/kubeadm-controlplane.v1beta3.yaml.j2
  6. 2
      roles/kubernetes/node/defaults/main.yml

6
roles/kubernetes-apps/metrics_server/defaults/main.yml

@ -9,6 +9,6 @@ metrics_server_requests_cpu: 100m
metrics_server_requests_memory: 200Mi
metrics_server_host_network: false
metrics_server_replicas: 1
# metrics_server_extra_tolerations: []
# metrics_server_extra_affinity: {}
# metrics_server_nodeselector: {}
metrics_server_extra_tolerations: []
metrics_server_extra_affinity: {}
metrics_server_nodeselector: {}

5
roles/kubernetes-apps/metrics_server/tasks/main.yml

@ -1,9 +1,4 @@
---
# If all control plane nodes have the node role, there are no tainted control plane nodes and toleration should not be specified.
- name: Check all control plane nodes are node or not
set_fact:
control_plane_nodes_are_not_tainted: "{{ groups['kube_node'] | intersect(groups['kube_control_plane']) == groups['kube_control_plane'] }}"
- name: Metrics Server | Delete addon dir
file:
path: "{{ kube_config_dir }}/addons/metrics_server"

20
roles/kubernetes-apps/metrics_server/templates/metrics-server-deployment.yaml.j2

@ -85,16 +85,12 @@ spec:
volumes:
- name: tmp
emptyDir: {}
{% if not control_plane_nodes_are_not_tainted or metrics_server_extra_tolerations is defined %}
tolerations:
{% if not control_plane_nodes_are_not_tainted %}
- key: node-role.kubernetes.io/control-plane
effect: NoSchedule
{% endif %}
{% if metrics_server_extra_tolerations is defined %}
{% if metrics_server_extra_tolerations %}
{{ metrics_server_extra_tolerations | list | to_nice_yaml(indent=2) | indent(8) }}
{% endif %}
{% endif %}
{%- endif %}
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
@ -109,10 +105,10 @@ spec:
topologyKey: kubernetes.io/hostname
namespaces:
- kube-system
{% if metrics_server_extra_affinity is defined %}
{{ metrics_server_extra_affinity | to_nice_yaml | indent(width=8) }}
{% endif %}
{% if metrics_server_nodeselector is defined %}
{% if metrics_server_extra_affinity %}
{{ metrics_server_extra_affinity | to_nice_yaml(indent=2) | indent(8) }}
{%- endif %}
{% if metrics_server_nodeselector %}
nodeSelector:
{{ metrics_server_nodeselector | to_nice_yaml | indent(width=8) }}
{% endif %}
{{ metrics_server_nodeselector | to_nice_yaml(indent=2) | indent(8) }}
{%- endif %}

2
roles/kubernetes/control-plane/templates/kubeadm-config.v1beta3.yaml.j2

@ -16,7 +16,7 @@ nodeRegistration:
{% if kube_override_hostname | default('') %}
name: "{{ kube_override_hostname }}"
{% endif %}
{% if inventory_hostname in groups['kube_control_plane'] and inventory_hostname not in groups['kube_node'] %}
{% if 'kube_control_plane' in group_names and 'kube_node' not in group_names %}
taints:
- effect: NoSchedule
key: node-role.kubernetes.io/control-plane

2
roles/kubernetes/control-plane/templates/kubeadm-controlplane.v1beta3.yaml.j2

@ -24,7 +24,7 @@ controlPlane:
nodeRegistration:
name: {{ kube_override_hostname | default(inventory_hostname) }}
criSocket: {{ cri_socket }}
{% if inventory_hostname in groups['kube_control_plane'] and inventory_hostname not in groups['kube_node'] %}
{% if 'kube_control_plane' in group_names and 'kube_node' not in group_names %}
taints:
- effect: NoSchedule
key: node-role.kubernetes.io/control-plane

2
roles/kubernetes/node/defaults/main.yml

@ -28,7 +28,7 @@ kubelet_systemd_wants_dependencies: []
# List of secure IPs for kubelet
kube_node_addresses: >-
{%- for host in (groups['kube_control_plane'] + groups['kube_node'] + groups['etcd']) | unique -%}
{%- for host in (groups['k8s_cluster'] | union(groups['etcd'])) -%}
{{ hostvars[host]['ip'] | default(fallback_ips[host]) }}{{ ' ' if not loop.last else '' }}
{%- endfor -%}
kubelet_secure_addresses: "localhost link-local {{ kube_pods_subnet }} {{ kube_node_addresses }}"

Loading…
Cancel
Save