阅读量:0
在Ubuntu上使用kubeadm部署Kubernetes集群时,需要配置网络插件
- 安装Calico网络插件:
kubectl apply -f https://docs.projectcalico.org/manifests/tigera-operator.yaml kubectl apply -f https://docs.projectcalico.org/manifests/custom-resources.yaml
- 等待所有节点的状态变为
Ready
:
kubectl get nodes
- 创建一个测试Pod并暴露为服务:
kubectl create deployment hello-world --image=gcr.io/google-samples/node-hello:1.0 kubectl expose deployment hello-world --type=LoadBalancer --port=8080
- 获取分配给服务的IP地址:
kubectl get services
- 通过浏览器或者curl命令访问该IP地址,查看是否能正常访问。
如果你想使用其他网络插件,例如Flannel,Weave Net或者Cilium,可以参考官方文档进行安装和配置。这里提供一个Flannel的示例:
- 下载Flannel YAML文件:
wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
- 修改
kube-flannel.yml
文件中的net-conf.json
部分,将Network
字段设置为你的集群网络CIDR(例如:10.244.0.0/16):
net-conf.json: | { "Network": "10.244.0.0/16", "Backend": { "Type": "vxlan" } }
- 应用Flannel YAML文件:
kubectl apply -f kube-flannel.yml
- 确认所有节点的状态变为
Ready
:
kubectl get nodes
- 创建一个测试Pod并暴露为服务:
kubectl create deployment hello-world --image=gcr.io/google-samples/node-hello:1.0 kubectl expose deployment hello-world --type=LoadBalancer --port=8080
- 获取分配给服务的IP地址:
kubectl get services
- 通过浏览器或者curl命令访问该IP地址,查看是否能正常访问。
请注意,不同网络插件的配置方式可能会有所不同,请根据实际情况进行调整。