日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

通過ALB Ingress訪問服務

ALB Ingress支持HTTP、HTTPS和QUIC協議,滿足云原生應用在需要高度彈性和大規模七層流量管理時的各種需求,與Nginx Ingress兼容。同時,支持復雜的業務路由配置和TLS證書的自動管理,提供靈活的流量管理機制。您可以通過配置轉發規則,實現不同URL訪問集群內不同的Service。

前提條件

注意事項

  • 如果您使用的是Flannel網絡插件,則ALB Ingress后端Service服務僅支持NodePort和LoadBalancer類型。

  • AlbConfig、Namespace、Ingress和Service這些資源的名稱不能以aliyun開頭。

  • 低版本Nginx Ingress Controller無法識別Ingress資源中的spec:ingressClassName字段。如果集群中同時存在Nginx Ingress和ALB Ingress,會存在ALB Ingress被低版本Nginx Ingress Controller調諧的風險。因此,請及時升級Nginx Ingress Controller版本,或通過Annotation注解項指定ALB Ingress對應的ingressClass。具體操作,請參見升級Nginx Ingress Controller組件ALB Ingress服務高級用法

步驟一:創建AlbConfig

  1. 拷貝以下內容到alb-test.yaml文件中,用于創建AlbConfig。

    apiVersion: alibabacloud.com/v1
    kind: AlbConfig
    metadata:
      name: alb-demo
    spec:
      config:
        name: alb-test
        addressType: Internet
        zoneMappings:
        - vSwitchId: vsw-uf6ccg2a9g71hx8go****
        - vSwitchId: vsw-uf6nun9tql5t8nh15****
      listeners:
        - port: 80
          protocol: HTTP

    參數

    說明

    spec.config.name

    (可選)表示ALB實例的名稱。

    spec.config.addressType

    (必選)表示負載均衡的地址類型。取值如下:

    • Internet(默認值):負載均衡具有公網IP地址,DNS域名被解析到公網IP,因此可以在公網環境訪問。

    • Intranet:負載均衡只有私網IP地址,DNS域名被解析到私網IP,因此只能被負載均衡所在VPC的內網環境訪問。

    spec.config.zoneMappings

    (必選)用于設置ALB Ingress交換機ID,您需要至少指定兩個不同可用區交換機ID,指定的交換機必須在ALB當前所支持的可用區內,且與集群處于同一VPC。關于ALB Ingress支持的地域與可用區,請參見ALB支持的地域與可用區

  2. 執行以下命令,創建AlbConfig。

    kubectl apply -f alb-test.yaml

    預期輸出:

    albconfig.alibabacloud.com/alb-demo created
  3. 創建并拷貝以下內容到alb.yaml文件中,用于創建IngressClass。

    1.19及之后版本集群

    apiVersion: networking.k8s.io/v1
    kind: IngressClass
    metadata:
      name: alb
    spec:
      controller: ingress.k8s.alibabacloud/alb
      parameters:
        apiGroup: alibabacloud.com
        kind: AlbConfig
        name: alb-demo

    1.19版本之前集群

    apiVersion: networking.k8s.io/v1beta1
    kind: IngressClass
    metadata:
      name: alb
    spec:
      controller: ingress.k8s.alibabacloud/alb
      parameters:
        apiGroup: alibabacloud.com
        kind: AlbConfig
        name: alb-demo
  4. 執行以下命令,創建IngressClass。

      kubectl apply -f alb.yaml

    預期輸出:

    ingressclass.networking.k8s.io/alb created

步驟二:部署服務

  1. 創建并拷貝以下內容到cafe-service.yaml文件中,用于部署兩個名稱分別為coffeetea的Deployment,以及兩個名稱分別為coffeetea的Service。

    展開查看完整的YAML文件

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: coffee
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: coffee
      template:
        metadata:
          labels:
            app: coffee
        spec:
          containers:
          - name: coffee
            image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginxdemos:latest
            ports:
            - containerPort: 80
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: coffee-svc
    spec:
      ports:
      - port: 80
        targetPort: 80
        protocol: TCP
      selector:
        app: coffee
      clusterIP: None
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: tea
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: tea
      template:
        metadata:
          labels:
            app: tea
        spec:
          containers:
          - name: tea
            image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginxdemos:latest
            ports:
            - containerPort: 80
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: tea-svc
      labels:
    spec:
      ports:
      - port: 80
        targetPort: 80
        protocol: TCP
      selector:
        app: tea
      clusterIP: None
  2. 執行以下命令,部署兩個Deployment和兩個Service。

    kubectl apply -f cafe-service.yaml

    預期輸出:

    deployment "coffee" created
    service "coffee-svc" created
    deployment "tea" created
    service "tea-svc" created
  3. 查看創建的應用和服務的狀態。

    1. 執行以下命令,查看應用的狀態。

      kubectl get deploy

      預期輸出:

      NAME                             READY   UP-TO-DATE   AVAILABLE   AGE
      coffee                           1/2     2            1           2m26s
      tea                              1/1     1            1           2m26s
    2. 執行以下命令,查看服務的狀態。

      kubectl get svc

      預期輸出:

      NAME                          TYPE           CLUSTER-IP       EXTERNAL-IP           PORT(S)                 AGE
      coffee-svc                    NodePort       172.16.XX.XX     <none>                80:32056/TCP            9m38s
      tea-svc                       NodePort       172.16.XX.XX     <none>                80:31696/TCP            9m38s

步驟三:配置ALB Ingress

  1. 創建并拷貝以下內容到cafe-ingress.yaml文件中。

    1.19及之后版本集群

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: cafe-ingress 
    spec:
      ingressClassName: alb
      rules:
       - host: demo.domain.ingress.top
         http:
          paths:
          # 配置Context Path
          - path: /tea
            pathType: ImplementationSpecific
            backend:
              service:
                name: tea-svc
                port:
                  number: 80
          # 配置Context Path
          - path: /coffee
            pathType: ImplementationSpecific
            backend:
              service:
                name: coffee-svc
                port: 
                  number: 80

    1.19版本之前集群

    apiVersion: networking.k8s.io/v1beta1
    kind: Ingress
    metadata:
      name: cafe-ingress
    spec:
      ingressClassName: alb
      rules:
       - host: demo.domain.ingress.top
         http:
          paths:
          # 配置Context Path。
          - path: /tea
            backend:
              serviceName: tea-svc
              servicePort: 80
          # 配置Context Path。
          - path: /coffee
            backend:
              serviceName: coffee-svc
              servicePort: 80
  2. 執行以下命令,配置coffeetea服務對外暴露的域名和path路徑。

    kubectl apply -f cafe-ingress.yaml

    預期輸出:

    ingress.networking.k8s.io/cafe-ingress created
  3. 執行以下命令獲取ALB實例地址。

    kubectl get ing

    預期輸出:

    NAME           CLASS    HOSTS                         ADDRESS                                               PORTS   AGE
    cafe-ingress   alb      demo.domain.ingress.top       alb-m551oo2zn63yov****.cn-hangzhou.alb.aliyuncs.com   80      50s

步驟四:訪問服務

  • 利用獲取的ALB實例地址,通過命令行方式訪問coffee服務。

    curl -H Host:demo.domain.ingress.top http://alb-lhwdm5c9h8lrcm****.cn-hangzhou.alb.aliyuncs.com/coffee
  • 利用獲取的ALB實例地址,通過命令行方式訪問tea服務。

    curl -H Host:demo.domain.ingress.top http://alb-lhwdm5c9h8lrcm****.cn-hangzhou.alb.aliyuncs.com/tea

相關文檔