service资源清单文件
kind: Service #资源类型
apiVersion: v1 #资源版本
metadata:
name: service
namespace: dev
spec:
selector: #标签选择器,用于确定当前service代理哪些pod
app: nginx
type: #service类型,指定service的访问方式
clusterIp: #虚拟服务的ip地址
sessionAffinity: #session亲和性,支持ClusterIp,None两个选项
ports: #端口信息
- protocol: TCP
port: 3017 #service端口
targetPort: 5003 #pod端口
nodePort: 31122 #主机端口
Service类型
- ClusterIp:默认值,它是K8S系统自动分配的虚拟IP,只能在集群内部访问
- NodePort:将Service通过指定的Node上的端口暴露给外部,通过此方法,就可以在集群外部访问服务
- LoadBalancer:使用外接负载均衡器完成到服务的负载分发,注意此模式需要外部云环境支持
- ExternalName:把集群外部的服务引入到集群内部直接使用