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

從SLB Ingress遷移到ALB Ingress

自2023年02月28日起,容器服務ACK Serverless將下線SLB Ingress,您將無法通過集群安裝和管理SLB Ingress Controller組件,并不再提供SLB Ingress技術支持。建議您盡快將SLB Ingress遷移到ALB Ingress。本文介紹如何從SLB Ingress遷移到ALB Ingress。

背景信息

由于SLB對7層支持能力較弱,例如,不支持HTTP標頭改寫、重定向、重寫、限速等,并且需要您自行運維實例規格,導致SLB Ingress使用受到了很多限制。因此我們推出了專門面向7層的ALB Ingress網關,該網關提供更為強大的Ingress流量管理方式。

ALB Ingress基于阿里云應用型負載均衡ALB(Application Load Balancer)。相比于SLB Ingress,ALB Ingress具備處理復雜業務路由(支持Header、Cookie)和證書自動發現的能力,支持HTTP、HTTPS和QUIC協議,更好地滿足在云原生應用場景下七層流量處理能力的需求。關于ALB與SLB功能對比,請參見負載均衡SLB產品家族介紹

遷移流程

image

遷移示例

本文使用以下Ingress,并將Ingress的端點解析到域名demo.ingress.vip,以此為例進行遷移介紹。

展開查看詳細YAML

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: demo-ingress
  namespace: default
spec:
  ingressClassName: slb
  rules:
    - host: demo.ingress.vip
      http:
        paths:
          - backend:
              service:
                name: nginx
                port:
                  number: 80
            path: /
            pathType: Prefix

在瀏覽器地址欄中輸入demo.ingress.vip,瀏覽器顯示Welcome to nginx!

步驟一:創建ALB Ingress

  1. 安裝ALB Ingress Controller組件。具體操作,請參見管理ALB Ingress Controller組件

  2. 獲取集群KubeConfig并通過kubectl工具連接集群

  3. 創建ALBConfig。

    1. 使用以下內容,創建albconfig.yaml

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

      zoneMappings:設置ALB Ingress交換機ID,您需要至少指定兩個不同可用區交換機ID,且交換機必須與集群屬于同一VPC。

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

      kubectl apply -f albconfig.yaml
    3. 執行以下命令,查看ALB實例是否創建成功。

      kubectl get albconfig <albconfig的名稱>

      預期輸出:

      NAME       ALBID                    DNSNAME                                               PORT&PROTOCOL   CERTID   AGE
      alb-demo   alb-eeee6gtqbmrm19****   alb-eeee6gtqbmrm19****.cn-shenzhen.alb.aliyuncs.com                            27s
  4. 創建IngressClass。

    1. 使用以下內容,創建ingressclass.yaml

      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

      parameters.name:ALBConfig名稱,用于綁定ALBConfig。

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

      kubectl apply -f ingressclass.yaml
  5. 創建ALB Ingress。

    1. 使用以下內容,創建albingress.yaml

      apiVersion: networking.k8s.io/v1
      kind: Ingress
      metadata:
        name: demo-ingress-alb
        namespace: default
      spec:
        ingressClassName: alb
        rules:
          - host: demo.ingress.vip
            http:
              paths:
                - backend:
                    service:
                      name: nginx
                      port:
                        number: 80
                  path: /
                  pathType: Prefix
      • name:Ingress名稱,與SLB Ingress的名稱不能相同。

      • ingressClassName:IngressClass的名稱。

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

      kubectl apply -f albingress.yaml
    3. 執行以下命令,獲取ALB Ingress的端點。

      kubectl get ing

      預期輸出:

      NAME                CLASS   HOSTS              ADDRESS                                               PORTS   AGE
      demo-ingress       slb     demo.ingress.vip   120.79.**.**                                           80      35m
      demo-ingress-alb   alb     demo.ingress.vip   alb-eeee6gtqbmrm1****.cn-shenzhen.alb.aliyuncs.com   80      10m     46s

      從返回結果中獲取ALB Ingress的端點,例如本文為alb-eeee6gtqbmrm1****.cn-shenzhen.alb.aliyuncs.com 。

    4. 執行以下命令,使用ALB Ingress訪問Nginx。

      curl -H "Host: demo.ingress.vip" http://alb-eeee6gtqbmrm1****.cn-shenzhen.alb.aliyuncs.com

      預期輸出:

      <!DOCTYPE html>
      <html>
      <head>
      <title>Welcome to nginx!</title>
      <style>
          body {
              width: 35em;
              margin: 0 auto;
              font-family: Tahoma, Verdana, Arial, sans-serif;
          }
      </style>
      .............

步驟二:切流到ALB Ingress

將demo.ingress.vip綁定的SLB端點修改為ALB的端點,實現使用ALB Ingress訪問Nginx服務。

  1. 登錄云解析控制臺

  2. 域名解析頁面,全部域名頁簽下,單擊域名名稱。

  3. 解析設置頁面,單擊目標解析記錄操作列下的修改

  4. 修改記錄對話框將記錄值修改為ALB Ingress的端點(本文為alb-eeee6gtqbmrm1****.cn-shenzhen.alb.aliyuncs.com),然后單擊確定

  5. 在瀏覽器地址欄中輸入demo.ingress.vip

    nginx

    瀏覽器顯示Welcome to nginx!,說明使用ALB Ingress訪問Nginx服務成功,從SLB Ingress切流到ALB Ingress成功。

步驟三:刪除SLB Ingress

  1. 刪除SLB Ingress。

    1. 在集群管理頁左側導航欄,選擇網絡 > 路由

    2. 路由頁面上方,選擇命名空間,在SLB Ingress右側操作列,選擇更多 > 刪除

    3. 在彈出的對話框,單擊確定

  2. 卸載SLB Ingress Controller。

    1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

    2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇運維管理 > 組件管理

    3. 組件管理頁面,單擊其他頁簽,在SLB Ingress Controller卡片,單擊卸載

    4. 在彈出的對話框,單擊確定

FAQ

SLB Ingress是否支持平滑遷移到ALB Ingress?

由于ALB與SLB屬于不同的負載均衡網關,不支持平滑遷移。