首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Ansible创建kubeadm标记

使用Ansible创建kubeadm标记
EN

Stack Overflow用户
提问于 2018-04-17 14:39:07
回答 2查看 1.7K关注 0票数 1

我正在裸机上运行Kubernetes集群,并且正在编写一个Ansible任务,以便从主节点获取join命令:

代码语言:javascript
复制
- name: Get join command from master
  shell: kubeadm token create --print-join-command
  when: role == "master"
  run_once: true
  register: join_command

当我运行攻略时,我得到了以下错误:"unable to create bootstrap token after 5 attempts []“。

如果我直接在主主机上或使用ssh kube-master kubeadm token create --print-join-command远程运行完全相同的命令(kubeadm token create --print-join-command),它会正确地输出join命令。

我别无选择了..。有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2018-04-17 16:47:58

如果您的"kubeadm“无法使用配置文件中的凭据连接到Kubernetes集群,则可能会收到该错误。您可以通过停止主节点上的docker服务来重现它。

在您的示例中,使用Ansible或shell运行该命令没有区别,因此它应该可以工作。

所以,我唯一能建议的是:

  1. 验证Ansible role master是否连接到正确的主机。
  2. 检查Ansible用户是否有权访问kubeadm配置,其默认路径为/etc/kubernetes/admin.conf,并确保配置正确。您可以尝试以超级用户身份使用become: true选项运行该命令。
票数 2
EN

Stack Overflow用户

发布于 2018-04-17 18:48:09

ansible攻略中有一个代理配置集:

代码语言:javascript
复制
---

- hosts: [vmsk8s]
  roles:
    - vmsk8s
  environment:
    http_proxy: http://10.0.0.1:3128
    https_proxy: http://10.0.0.1:3128

删除代理环境变量修复了该问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49871416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档