添加Worker节点

kubeadm join 192.168.74.110:16443 --token xxxx \
    --discovery-token-ca-cert-hash  sha256:xxxx \
    --ignore-preflight-errors=SystemVerification
# 及时查看节点状态
kubectl get nodes
# 给工作节点添加label
kubectl label node node1 node-role.kubernetes.io/worker=worker
# 查看系统Pod的运行情况
kubectl get pods -n kube-system
# coredns是pending状态,这是因为还没有安装网络插件

kubectl get pods -n kube-system -o wide
# 系统安装的插件以及插件对应的IP
# 仔细研究一下NODE上插件数目和对应IP,且安装好网络插件后需再次观察

安装网络组件Calico

上传calico.yaml到master1上,使用yaml文件安装calico 网络插件

# 在master上执行
kubectl apply -f  calico.yaml

# 查看coredns是running
kubectl get pod -n kube-system
# 查看节点状态是Ready
kubectl get nodes

测试在k8s创建pod是否可以正常访问网络

# 需要在每一个worker节点都执行测试
# 把busybox-1-28.tar.gz上传到node1、node2节点,手动解压
docker load -i busybox-1-28.tar.gz
# 在master节点上执行
kubectl run busybox --image busybox:1.28 --restart=Never --rm -it busybox -- sh
# 进入容器,ping
ping www.baidu.com

测试部署tomcat服务

# 需要在每一个worker节点都执行测试
# 把tomcat.tar.gz上传到node1,手动解压
docker load -i tomcat.tar.gz
# 在master节点上执行
kubectl apply -f tomcat.yaml
# 查看默认命名空间下的Pod(可以看到IP,但是此IP为内部IP,不可作为外部访问)
kubectl get pods -o wide

内容如下:

NAME       READY   STATUS    RESTARTS   AGE
demo-pod   1/1     Running   0          10s
# 在master节点上执行(不知道干啥的)
kubectl apply -f tomcat-service.yaml
kubectl get svc

内容如下:

NAME         TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
kubernetes   ClusterIP   10.255.0.1       <none>        443/TCP          158m
tomcat       NodePort    10.255.227.179   <none>        8080:30080/TCP   19m

浏览器访问:master1节点:30080,即可访问Tomcat

测试coreDNS是否正常,此插件是做域名解析的

# busybox要用指定的1.28版本,不能用最新版本,最新版本,nslookup会解析不到dns和ip 
kubectl run busybox --image busybox:1.28 --restart=Never --rm -it busybox -- sh
#        service名.namespace.svc.cluster.local
nslookup kubernetes.default.svc.cluster.local
Server:    10.10.0.10
Address 1: 10.10.0.10 kube-dns.kube-system.svc.cluster.local

Name:      kubernetes.default.svc.cluster.local
Address 1: 10.10.0.1 kubernetes.default.svc.cluster.local
nslookup tomcat.default.svc.cluster.local
Server:    10.10.0.10
Address 1: 10.10.0.10 kube-dns.kube-system.svc.cluster.local

Name:      tomcat.default.svc.cluster.local
Address 1: 10.10.13.88 tomcat.default.svc.cluster.local

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐