kubernetes-sigs / kubespray

Deploy a Production Ready Kubernetes Cluster
Apache License 2.0
16.05k stars 6.45k forks source link

templating string: expected token '=', got 'end of statement block'. String: KUBE_LOGTOSTDERR=\"--logtostderr=true #7135

Closed dhcn closed 3 years ago

dhcn commented 3 years ago

templating string: expected token '=', got 'end of statement block'. String: KUBE_LOGTOSTDERR=\"--logtostderr=true\"\nKUBE_LOG_LEVEL=\"--v={{ kube_log_level }}\"\nKUBELET_ADDRESS=\"--node-ip={{ kubelet_address }}\"\n{% if kube_override_hostname|default('') %}\nKUBELET_HOSTNAME=\"--hostname-override={{ kube_override_hostname }}\"\n{% endif %}\n\n{# Base kubelet args #}\n{% set kubelet_args_base -%}\n{# start kubeadm specific settings #}\n--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf \\n--config={{ kube_config_dir }}/kubelet-config.yaml \\n--kubeconfig={{ kube_config_dir }}/kubelet.conf \\n{# end kubeadm specific settings #}\n{% if container_manager == 'docker' %}\n--pod-infra-container-image={{ pod_infra_image_repo }}:{{ pod_infra_image_tag }} \\n{% else %}\n--container-runtime=remote \\n--container-runtime-endpoint=unix://{{ cri_socket }} \\n{% endif %}\n{% if dynamic_kubelet_configuration %}\n--dynamic-config-dir={{ dynamic_kubelet_configuration_dir }} \\n{% endif %}\n--runtime-cgroups={{ kubelet_runtime_cgroups }} \\n{% endset %}\n\n{# Kubelet node taints for gpu #}\n{% if nvidia_gpu_nodes is defined and nvidia_accelerator_enabled|bool %}\n{% if inventory_hostname in nvidia_gpu_nodes and node_taints is defined %}\n{% set dummy = node_taints.append('nvidia.com/gpu=:NoSchedule') %}\n{% elif inventory_hostname in nvidia_gpu_nodes and node_taints is not defined %}\n{% set node_taints = [] %}\n{% set dummy = node_taints.append('nvidia.com/gpu=:NoSchedule') %}\n{% endif %}\n{% endif %}\n\nKUBELET_ARGS=\"{{ kubelet_args_base }} {% if node_taints|default([]) %}--register-with-taints={{ node_taints | join(',') }} {% endif %} {% if kube_feature_gates %} --feature-gates={{ kube_feature_gates|join(',') }} {% endif %} {% if kubelet_custom_flags is string %} {{kubelet_custom_flags}} {% else %}{% for flag in kubelet_custom_flags %} {{flag}} {% endfor %}{% endif %}{% if inventory_hostname in groups['kube-node'] %}{% if kubelet_node_custom_flags is string %} {{kubelet_node_custom_flags}} {% else %}{% for flag in kubelet_node_custom_flags %} {{flag}} {% endfor %}{% endif %}{% endif %}\"\n{% if kubelet_flexvolumes_plugins_dir is defined %}\nKUBELET_VOLUME_PLUGIN=\"--volume-plugin-dir={{ kubelet_flexvolumes_plugins_dir }}\"\n{% endif %}\n{% if kube_network_plugin is defined and kube_network_plugin in [\"calico\", \"canal\", \"cni\", \"flannel\", \"weave\", \"cilium\", \"kube-ovn\", \"ovn4nfv\", \"kube-router\", \"macvlan\"] %}\nKUBELET_NETWORK_PLUGIN=\"--network-plugin=cni --cni-conf-dir=/etc/cni/net.d --cni-bin-dir=/opt/cni/bin\"\n{% elif kube_network_plugin is defined and kube_network_plugin == \"cloud\" %}\nKUBELET_NETWORK_PLUGIN=\"--hairpin-mode=promiscuous-bridge --network-plugin=kubenet\"\n{% endif %}\n{% if cloud_provider is defined and cloud_provider in [\"openstack\", \"azure\", \"vsphere\", \"aws\", \"external\"] %}\nKUBELET_CLOUDPROVIDER=\"--cloud-provider={{ cloud_provider }} --cloud-config={{ kube_config_dir }}/cloud_config\"\n{% else %}\nKUBELET_CLOUDPROVIDER=\"\"\n{% endif %}\n\nPATH={{ bin_dir }}:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\n"}

Environment:

Kubespray version (commit) (git rev-parse --short HEAD):

Network plugin used:

Full inventory with variables (ansible -i inventory/sample/inventory.ini all -m debug -a "var=hostvars[inventory_hostname]"):

Command used to invoke ansible:

Output of ansible run:

Anything else do we need to know:

floryut commented 3 years ago

Same as https://github.com/kubernetes-sigs/kubespray/issues/5958 ?

dhcn commented 3 years ago

Same as #5958 ?

it is like. I remove local yum ansible and reinstall pip ansbile to have a try, The solution is effective.