apiVersion: v1 # 创建该对象所使用的 Kubernetes API 的版本
kind: Service # 想要创建的对象的类别
metadata: # 帮助唯一标识对象的一些数据
annotations: {} # 注解为对象附加任意的非标识的元数据
labels: # 添加标签,用于标识该对象
k8s.kuboard.cn/layer: monitor
k8s.kuboard.cn/name: skywalking-ui
name: skywalking-ui # 标识对象的名字
namespace: default # 该对象所属的名称空间
resourceVersion: '19582642' # 该对象的版本号,更新资源时候和etcd存储的版本号进行对比,不一样不让更新
spec: # 你所期望的该对象的状态
clusterIP: 10.10.68.159 # 集群作用域的虚拟IP, 客户端可以使用该虚拟 IP 地址进行连接
clusterIPs: # 指定多个作用域的虚拟IP
- 10.10.68.159
externalTrafficPolicy: Cluster # 流量可以转发到其他节点上的Pod, Local表示:流量只发给本机的Pod
ports:
- name: 3fjtqj # 在该Service中端口的名称,如果使用endpoints时候,并且endpoints有多个端口时候,需要注意名字要对应
nodePort: 8082 # 当类型为 NodePort 或 LoadBalancer 时,该Service 暴露在节点上的端口
port: 8080 # 该Servcice暴露的端口
protocol: TCP # 此端口的 IP 协议
targetPort: 8080 # 所关联的Pod的端口
selector: # 将 Service 流量路由到具有与此 selector 匹配的标签键值对的 Pod
k8s.kuboard.cn/layer: monitor
k8s.kuboard.cn/name: skywalking-ui
sessionAffinity: None # 用于维护会话亲和性
type: NodePort # 该 Service 的暴露方式
status: # 表示 Service 的当前状态
loadBalancer: {} # 包含负载均衡器的当前状态