minikube 的 Kubernetes 集群中安装 Flannel
minikube 中安装 cni 是有版本依赖,老旧版本没有 --cni
选项,新版本可以支持
# minikube version
minikube version: v1.18.1
commit: 511aca80987826051cf1c6527c3da706925f7909
cni 插件安装
flannel 服务在安装运行过程中依赖二进制文件 /opt/cni/bin/portmap
,没有会报错
解决方法可以通过软件包来安装 portmap 命令
准备 repo 文件:
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
安装 cni 后会在对应目录生成二进制文件
yum install kubernetes-cni -y
--cni 启动 Kubernetes
minikube 在启动时需要使用 --cni=flannel
来指定 Flannel 网络方案
minikube start --kubernetes-version v1.17.5 --vm-driver=none --registry-mirror=https://registry.docker-cn.com --image-mirror-country=cn --cni=flannel
状态查看
# kubectl -n kube-system get pod |grep flannel
kube-flannel-ds-amd64-l6sgl 1/1 Running 0 81m
可以看到 Kubernetes 集群已经部署好,而且 flannel 也已经正常运行。