不同版本k8s的yaml写法不太一样,我的是1.22.0版本
1、创建 service
1.1、创建nginx-svc.yaml文件
apiVersion: v1 kind: Service metadata: namespace: default name: nginx-svc labels: name: nginx-svc spec: type: NodePort ports: - port: 80 protocol: TCP targetPort: 80 name: http nodePort: 30001 selector: name: nginx-pod
1.2、创建nginx的service服务
kubectl create -f nginx-svc.yaml
1.3、查看nginx的service实例
kubectl get svc -n default -owide
或
kubectl get service
2、创建nginx 副本控制器
2.1创建nginx-rc.yaml文件
apiVersion: v1 kind: ReplicationController metadata: namespace: default name: nginx-rc labels: name: nginx-rc spec: replicas: 1 selector: name: nginx-pod template: metadata: labels: name: nginx-pod spec: containers: - name: nginx image: nginx imagePullPolicy: IfNotPresent ports: - containerPort: 80
2.2创建nginx的ReplicationController
kubectl create -f nginx-rc.yaml
2.3查看nginx的pod
kubectl get pod -n default -owide
kubectl get pods
3、通过这里可以看到部署到节点1上了(请忽略my-nginx)
直接在浏览器里输入节点1的ip+30001,输出
上面主要参考:https://blog.csdn.net/Happy123568/article/details/109551695?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-5.control&spm=1001.2101.3001.4242
4、目前可以看到只能在一台Node节点上访问nginx,新增一个node节点,然后
kubectl delete -f nginx-rc.yaml kubectl create -f nginx-rc.yaml
依然只部署到了一个节点上,通过查资料,需要修改这个为2,代表预期运行副本个数,如果设置为2的化,就会在两个node上都部署
最终效果