安装测试kubernetes集群
今天需要搭建一个简单的测试k8s集群,简单记录下流程
安装环境
- CentOS 7.2
- Docker 18.06
- Kubernetes 1.17.3
0x01 安装组件
参考官网,源地址替换成清华的镜像源
1 | cat <<EOF > /etc/yum.repos.d/docker-ce.repo |
一些 RHEL/CentOS 7 的用户曾经遇到过问题:由于 iptables 被绕过而导致流量无法正确路由的问题
检查是否加载br_netfilter
内核模块
1 | lsmod | grep br_netfilter |
添加sysctl配置
1 | cat <<EOF > /etc/sysctl.d/k8s.conf |
0x02 初始化集群
由于国内原因,gcr无法直接连接,kubeadm新版本支持传递镜像地址,这里使用阿里云
1 | kubeadm init --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers |
然后按照提示将剩下节点加入集群
1 | kubeadm join <ip>:6443 --token <token> \ |
0x03 安装网络插件
初始化集群以后,我们可能发现node处于NotReady
状态,排查日志发现没有cni插件,也就是网络插件,需要自己根据需要安装,这里我们测试集群安装最简单的flannel插件
1 | kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml |
这个yml中包含除了x86以外的其他架构,虽然没有影响,处女座的可以手动删除,如果quay.io
连不上的话,可以考虑换成quay.azk8s.cn
0x04 最后
安装完成后,检查各个node是否readdy
1 | kubectl get nodes |
检查系统组件是否都运转正常
1 | kubectl get all -n kube-system |
一个基本的测试环境就搭建好了,不得不说kubeadm对于基础安装还是挺方便的
Ext
国内大环境不好,很多镜像没办法直接拉取,可以使用微软的镜像,中规中矩
global | proxy in China |
---|---|
dockerhub (docker.io) | dockerhub.azk8s.cn |
gcr.io | gcr.azk8s.cn |
quay.io | quay.azk8s.cn |
mcr.microsoft.com | mcr.azk8s.cn |
有网友也做了个小工具,方便你自动转换地址 azk8spull