Ubuntu搭建单机版k8s
ubuntu18搭建单机版k8s
环境配置 1、 添加kubernetes的源
echo "deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
或者直接vim /etc/apt/sources.list 在后面添加deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
2、 为源申请key
执行 apt-get update 这一步一般执行都会报错 因为不同版本的keys不同,执行之后会报如下错误
查看到这个错误之后 执行sudo gpg –keyserver keyserver.ubuntu.com –recv-keys 后面是错误提示的keys 再执行 sudo gpg –export –armor 上面相同的keys | sudo apt-key add -
注意 --在markdown 编译后会变成一条横杠,其实这里是两条横杠3、更新源
sudo apt-get update4、关闭虚拟内存
sudo swapoff -a #暂时关闭 nano /etc/fstab #永久关闭,注释掉swap那一行,推荐永久关闭5、执行安装 (sudo视操作者情况决定是否加)apt-get install kubelet kubeadm kubectl kubernetes-cni
其中kubeadm用于初始化环境,kubectl用于操作kubelet。
6、 启动
sudo systemctl enable kubelet && systemctl start kubelet7、 查看版本验证是否启动
kubectl version
8、初始化
kubeadm init –image-repository registry.aliyuncs.com/google_containers0.0.0/16
执行以上命令在kubernetes v1.21.2中会报如下错误
解决方法
- 通过分析bug的原因
图中主要报pull image registry.aliyuncs.com/google_containers/coredns:v1.8.0没有找到
- 解决方案
① 通过docker将coredns镜像拉取下来
docker pull coredns/coredns:1.8.0
通过docker images查看镜像拉取情况然后通过 docker tag 296a6d5035e2 registry.aliyuncs.com/google_containers/coredns:v1.8.0 将coredns/coredns:1.8.0镜像构建成符合条件的镜像
再次执行初始化
kubeadm init --apiserver-advertise-address=172.25.12.89 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.21.2 --service-cidr=10.1.0.0/16 --pod-network-cidr=10.244.0.0/16