使用 Vagrant/Ansible 启动多节点 kubernetes 集群无法检测到 kubelet 文件

Using Vagrant/Ansible to spin up a multi-node kubernetes cluster fails detecting kubelet file

我正在按照 site 上的说明使用 vagrant/ansible 启动多节点 kubernetes 集群。不幸的是,我收到以下错误:

TASK [Configure node ip] *******************************************************
fatal: [k8s-master]: FAILED! => {"changed": false, "msg": "Destination /etc/default/kubelet does not exist !", "rc": 257}

Vagrantfile中的相关段落是:

- name: Install Kubernetes binaries
    apt:
      name: "{{ packages }}"
      state: present
      update_cache: yes
    vars:
      packages:
        - kubelet
        - kubeadm
        - kubectl

  - name: Configure node ip
    lineinfile:
      path: /etc/default/kubelet
      line: KUBELET_EXTRA_ARGS=--node-ip={{ node_ip }}

只是走错路了吗?那会是哪一个?

P.S.: 我也事先收到警告:

[WARNING]: Could not find aptitude. Using apt-get instead

它没有安装 kubelet 包,这可能是它找不到文件的原因吗?在这种情况下如何解决?

不需要更新配置文件中的节点 ip。如果您出于任何特定原因仍想更改,以下是解决方案。

您可以根据 change

将文件更改为 /etc/systemd/system/kubelet.service.d/10-kubeadm.conf

更改前,请检查节点中是否存在该文件。

/etc/default/kubelet 用于 yum 包。