其他分享
首页 > 其他分享> > Kubernetes Label Selector Service

Kubernetes Label Selector Service

作者:互联网

资源的 Label 可以通过 kubectl lable --help 查阅相关的操作;

 标签筛选 Selector : 

   -l, --selector='': Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l key1=value1,key2=value2)

    支持 in 选项,例如,查询app的值为 details 或者 productpage 可使用:app in (details, productpage)

    kubectl get svc -l  version!=v1,'app in (details, productpage)' --show-labels

 

Service:

  将一组标签符合的pod,通过serverce对象进行负载;

  一般情况下,Service 创建的同时会创建 Endpoint,当pod发生变化的时候k8s集群会更新 Endpoint,Service 和 Endpoint是关联的,两者通过名称进行关联的;

  如果创建service时没有指定 选择算符 的话,则不会自动创建 Endpoint,但是可以手动创建 Endpoint 并保持和 service 名称一致,此时 service 和 Endpoint 就会自动关联,改场景通常用于集群内部访问集群外部资源;

参考:https://kubernetes.io/zh/docs/concepts/services-networking/service/#services-without-selectors

apiVersion: v1
kind: Service
metadata:
  name: my-service
spec:
  ports:
    - protocol: TCP
      port: 80
      targetPort: 9376

  

apiVersion: v1
kind: Endpoints
metadata:
  name: my-service
subsets:
  - addresses:
      - ip: 192.0.2.42
    ports:
      - port: 9376

  

  NodePort类型,可以指定NodePort的端口,指定的端口必须在指定的范围内;

 

  域名代理:

    类型为 ExternalName 的服务将服务映射到 DNS 名称; 

访问 my-service 会被代理到 my.database.example.com
apiVersion: v1
kind: Service
metadata:
  name: my-service
  namespace: prod
spec:
  type: ExternalName
  externalName: my.database.example.com

  

 

 

  

 

标签:Endpoint,Kubernetes,service,Service,Selector,v1,my,name
来源: https://www.cnblogs.com/buray/p/16267724.html