1、编辑Service的配置文件
vim httpd-svc.yml
apiVersion: v1 #v1是Service的版本号;
kind: Service #指明当前资源类型;
metadata: #该资源的元数据;
name: httpd-svc #Service的名字;
spec: #规格说明;
ports: #端口映射;
- port: 8080 #监听端口:
targetPort: 80 #映射端口;
protocol: TCP #遵循协议TCP
selector: #指明挑选label
run: httpd #选择httpd作为后端;
#只能在集群中,不能跨集群;
查看: kubectl get service -o wide
2、实现外网访问:
vim httpd-svc.yml
apiVersion: v1 #v1是Service的版本号;
kind: Service #指明当前资源类型;
metadata: #该资源的元数据;
name: httpd-svc #Service的名字;
spec: #规格说明;
type: NodePort #跨集群;
ports: #端口映射;
- port: 8080 #监听端口:
targetPort: 80 #映射端口;
protocol: TCP #遵循协议TCP
nodePort: 26055 #监听端口;
selector: #指明挑选label
run: httpd #选择httpd作为后端;
NodePort 默认是的随机选择,不过我们可以用 nodePort 指定某个特定端口。
原理:外网访问Node的端口26055,通过映射到Service中的8080端口,在由此映射到Pod的80端口,实现外部,跨集群访问;