
abhsy/kubespray!Kubernetes Logo
Kubespray是一个用于部署生产就绪Kubernetes集群的工具,支持多种云平台和裸金属环境,提供高可用架构、可组合配置选项和广泛的Linux发行版兼容性,适用于需要快速、可靠部署Kubernetes集群的场景。
适用于需要在公有云、私有云或裸金属环境中部署生产级Kubernetes集群的场景,尤其适合对集群可用性、可定制性有较高要求的企业级应用部署。
bash# 从requirements.txt安装依赖 sudo pip install -r requirements.txt # 将inventory/sample复制为inventory/mycluster cp -rfp inventory/sample/* inventory/mycluster # 使用 inventory 构建器更新Ansible inventory文件 declare -a IPS=(10.10.1.3 10.10.1.4 10.10.1.5) CONFIG_FILE=inventory/mycluster/hosts.ini python3 contrib/inventory_builder/inventory.py ${IPS[@]} # 查看并修改inventory/mycluster/group_vars下的参数 cat inventory/mycluster/group_vars/all.yml cat inventory/mycluster/group_vars/k8s-cluster.yml # 使用Ansible Playbook部署Kubespray ansible-playbook -i inventory/mycluster/hosts.ini cluster.yml
Vagrant部署需先安装供应任务所需的Python依赖。检查Python和pip是否已安装:
bashpython -V && pip -V
若已显示版本信息,则继续;否则从Python官网下载安装。
安装必要依赖:
bashsudo pip install -r requirements.txt vagrant up
注意:不支持基于Upstart/SysV init的操作系统类型。
注:Kubernetes不支持较新的Docker版本("推荐使用17.03版本...17.06+版本可能工作,但尚未经过Kubernetes节点团队测试和验证",参见使用kubeadm引导集群)。此外,kubelet目前在Docker的非标准版本号(不再使用语义化版本)上存在问题。为确保自动更新不会破坏集群,建议使用yum versionlock插件或apt pin等工具。
注2:作为Docker替代方案的rkt支持仅限于控制平面(etcd和kubelet)。Kubernetes集群工作负载和网络插件相关的OS服务仍使用Docker。此外,单个集群只能部署一种受支持的网络插件。
ansible_become标志或命令参数--become/-b可选择6种网络插件(默认:calico,Vagrant默认使用flannel):
weave故障排除文档)网络插件通过变量kube_network_plugin定义,也可选择利用内置云提供商网络。另见网络检查器。
赞助,详情见测试矩阵。





manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务