部署Service(Flannel)
1.编写yaml文件
默认的type为clusterIp,只能在节点和pod内访问,外网无法访问
apiVersion: v1
kind: Service
metadata:
name: nginx-service
spec:
selector:
app: dev-nginx-deployment
ports:
- protocol: TCP
port: 8080
targetPort: 80
2.应用yaml文件
kubectl apply -f nginx-service.yml
3.更改type为 NodePort
所有节点的30000端口外网可以访问
apiVersion: v1
kind: Service
metadata:
name: nginx-service
spec:
type: NodePort
selector:
app: dev-nginx-deployment
ports:
- protocol: TCP
nodePort: 30000
port: 8080
targetPort: 80
注意事项
1.启动busybox测试pod内是否可以通信
kubectl run busybox --rm -it --image=busybox /bin/sh
2.在pod中测试服务发现(pod外无法访问)
wget nginx-service.default:8080
3.查看已有的Service
kubectl describe service