service幾種訪問類型(集群外負載均衡訪問LoadBalancer , 集群內訪問ClusterIP,VPC內網負載均衡LoadBalancer ,集群外訪問NodePort)


一、集群外訪問(負載均衡)

kind: Service
apiVersion: v1
spec:
  ports:
    - protocol: TCP
      port: 4341
      targetPort: 8080
      nodePort: 30875
  type: LoadBalancer
  externalIPs: #外部負載均衡
    - 172.30.10.4
    - 172.30.10.3
  sessionAffinity: None
  externalTrafficPolicy: Cluster
status:
  loadBalancer:
    ingress:
    - {}

 

二、k8s集群內訪問

kind: Service
apiVersion: v1
spec:
  ports:
    - protocol: TCP
      port: 4321
      targetPort: 8080
  type: ClusterIP
  externalIPs: #集群內互訪
    - 172.30.10.201
     - 172.30.10.42
  sessionAffinity: None
status:
loadBalancer: {}

 

三、vpc內網負載均衡

kind: Service
apiVersion: v1
metadata:
annotations:
  kubernetes.io/elb.class: elasticity #表示選擇的是經典負載均衡實例
  kubernetes.io/elb.vpc.id: 0e86e303-7a82-4e03-a435-9be0c4771c93 #負載均衡所在vpc的ID
spec:
  ports:
  - name: cce-service-0
       protocol: TCP
       port: 4321
       targetPort: 8080
       nodePort: 31118
  type: LoadBalancer
  loadBalancerIP: 172.30.12.33
  sessionAffinity: None
  externalTrafficPolicy: Cluster
status:
  loadBalancer:
    ingress:
     - ip: 172.30.12.33

 

四、集群外訪問,NodePort

apiVersion: v1
kind: Service
metadata:
  labels:
    app: prometheus-operator-operator
  name: my-release-prometheus-oper-operator
  namespace: default
spec:
  ports:
  - name: http
    port: 8080
    protocol: TCP
    targetPort: http
    nodePort: 30080
  selector:
    app: prometheus-operator-operator
  sessionAffinity: None
  type: NodePort

 #clusterIP: None 這里不能設置為空,因為nodeport需要映射到clusterip
status:
  loadBalancer: {}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM