搜索k8s的教程时,一下就被这篇文章的标题吸引了:《k8s 集群搭建》不要让贫穷扼杀了你学 k8s 的兴趣! 是的,我就是那个只能用虚拟机来玩玩k8s的穷人😂
该文很细,有讲解,也基本都有具体的版本号,然而跟随操作下来还是发现了一些问题:说起来都是时代的眼泪:三年了,有些东西还是坏掉了,实践型技术文章的花期就是那么短。
相同点
下载的CentOS版本号是一样的:CentOS-7-x86_64-DVD-2009.iso
相异处
虚拟机软件用的 VMare Player 17,个人免费版,支持 CentOS 自动安装
补全
- systemctl stop iptables 【提示 iptables.service 不存在;可忽略】
- 三个虚拟机需要修改 hostname,文章虽然有提及,但是没有明确的命令:【在 kubeadm init 前执行】:
hostnamectl set-hostname master
hostnamectl set-hostname node1
hostnamectl set-hostname node2
- ipvsadmin 应该是 ipvsadm
- kubeadm init 后,设置环境变量
echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile
source ~/.bash_profile
- docker 的阿里云镜像源需要自己去申请:https://xxxxx.mirror.aliyuncs.com 里的 xxxxx 需要替换成自己的阿里云镜像地址【现在公共镜像基本都失效了】
- docker 配置 /etc/docker/daemon.json 里,加上 cgroup driver:
{
"registry-mirrors": ["https://xxxxx.mirror.aliyuncs.com"],
"exec-opts": ["native.cgroupdriver=systemd"]
}
- kubeadm init 里的 --apiserver-advertise-address 后面的地址为 master 的本机IP
- flannel docker 下载 0.13.0 版,对应的 kube-flannel.yml 也要下载 0.13.0 版本的:https://raw.githubusercontent.com/flannel-io/flannel/v0.13.0/...
- cni 中缺少 flannel 插件,导致 node 的状态为 NotReady。可以下载https://github.com/containernetworking/plugins/releases/tag/v0.8.6,将其中的 flannel 拷贝到 /opt/cni/bin 目录下
- 遇到问题可以用以下方法来调试
kubectl describe node
kubectl describe pod
- 实在不行,就推倒重来
kubeadm reset
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。