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

通過云原生API網(wǎng)關(guān)管理多個(gè)ACK集群

更新時(shí)間:

為了保障業(yè)務(wù)穩(wěn)定性,通常采用多個(gè)ACK集群對(duì)等部署的方式來實(shí)現(xiàn)高可用。云原生API網(wǎng)關(guān)支持多ACK集群接入,通過一個(gè)網(wǎng)關(guān)實(shí)例同時(shí)關(guān)聯(lián)多個(gè)集群,將同名服務(wù)合并,在多個(gè)服務(wù)端點(diǎn)之間做負(fù)載均衡。搭配網(wǎng)關(guān)的健康檢測功能,自動(dòng)探測服務(wù)可用性,實(shí)現(xiàn)更高效的故障自動(dòng)切流。本文以兩個(gè)ACK集群為例,介紹如何通過云原生API網(wǎng)關(guān)管理多個(gè)ACK集群。

前提條件

  • 創(chuàng)建兩個(gè)ACK集群。具體操作,請(qǐng)參見創(chuàng)建ACK托管集群

  • 在兩個(gè)集群中配置同名的服務(wù)。以httpbin服務(wù)為例,示例配置如下所示。

    展開查看YAML文件

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: httpbin
      namespace: default
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: httpbin
      template:
        metadata:
          labels:
            app: httpbin
            version: v1
        spec:
          containers:
            - image: registry.cn-hangzhou.aliyuncs.com/mse-ingress/go-httpbin
              args:
                - "--version=v1"
              imagePullPolicy: Always
              name: httpbin
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: httpbin
      namespace: default
    spec:
      ports:
        - port: 8080
          protocol: TCP
      selector:
        app: httpbin

背景信息

在生產(chǎn)實(shí)踐中,若對(duì)業(yè)務(wù)穩(wěn)定性要求非常高,通常會(huì)采用多ACK集群對(duì)等部署的方式來保障高可用。例如,集群A部署在可用區(qū)A,集群B部署在可用區(qū)B,A與B兩個(gè)集群部署的服務(wù)一致,當(dāng)其中一個(gè)集群故障時(shí)可以快速切換流量。

云原生API網(wǎng)關(guān)為了支持業(yè)務(wù)的高可用部署訴求,提供了多ACK集群接入功能。即用一個(gè)云原生API網(wǎng)關(guān)實(shí)例同時(shí)關(guān)聯(lián)A、B兩個(gè)集群,網(wǎng)關(guān)會(huì)將兩個(gè)集群的同名服務(wù)進(jìn)行合并,合并后的服務(wù)名稱與原來保持一致,但是服務(wù)的IP地址列表會(huì)同時(shí)包含兩個(gè)服務(wù)的所有IP地址。如果A或者B集群故障,利用云原生API網(wǎng)關(guān)的路由能力會(huì)自動(dòng)將流量分發(fā)到正常集群。推薦搭配網(wǎng)關(guān)的主動(dòng)健康檢測功能一起使用,由網(wǎng)關(guān)主動(dòng)探測服務(wù)的IP地址可用性,從而帶來更高效的故障自動(dòng)切流。

如下圖所示,云原生API網(wǎng)關(guān)管理著來自兩個(gè)ACK集群的A、B兩個(gè)服務(wù)。當(dāng)ACK集群B發(fā)生crash時(shí),仍然能夠通過網(wǎng)關(guān)訪問到集群A的A、B兩個(gè)服務(wù),且該切流動(dòng)作自動(dòng)發(fā)生,無需人工干涉。

image

步驟一:在云原生API網(wǎng)關(guān)中添加容器服務(wù)來源

  1. 登錄云原生API網(wǎng)關(guān)控制臺(tái)

  2. 在左側(cè)導(dǎo)航欄,選擇實(shí)例,并在頂部菜單欄選擇地域。

  3. 實(shí)例頁面,單擊目標(biāo)網(wǎng)關(guān)實(shí)例名稱。

  4. 在左側(cè)導(dǎo)航欄,選擇服務(wù),并單擊來源頁簽。

  5. 單擊創(chuàng)建來源。在創(chuàng)建來源面板,選擇來源類型容器服務(wù),并配置相關(guān)參數(shù),然后單擊確定。具體操作,請(qǐng)參見創(chuàng)建服務(wù)來源

    image

步驟二:在云原生API網(wǎng)關(guān)中分別添加服務(wù)A與B

  1. 登錄云原生API網(wǎng)關(guān)控制臺(tái)

  2. 在左側(cè)導(dǎo)航欄,選擇實(shí)例,并在頂部菜單欄選擇地域。

  3. 實(shí)例頁面,單擊目標(biāo)網(wǎng)關(guān)實(shí)例名稱。

  4. 在左側(cè)導(dǎo)航欄,選擇服務(wù),并單擊服務(wù)頁簽。

  5. 單擊創(chuàng)建服務(wù)。在創(chuàng)建服務(wù)面板,選擇服務(wù)來源容器服務(wù),并選擇命名空間服務(wù)列表,然后單擊確定。具體操作,請(qǐng)參見創(chuàng)建服務(wù)

    image

步驟三:在云原生API網(wǎng)關(guān)中為目標(biāo)服務(wù)添加路由配置

  1. 創(chuàng)建HTTP API,具體操作,請(qǐng)參見創(chuàng)建HTTP API

  2. 單擊目標(biāo)API,在左上角單擊創(chuàng)建路由

  3. 創(chuàng)建路由頁面,配置相關(guān)參數(shù),然后單擊保存并發(fā)布。具體操作,請(qǐng)參見創(chuàng)建路由

    image

結(jié)果驗(yàn)證

當(dāng)集群A、B正常時(shí)

  1. 服務(wù)列表頁面查看服務(wù)地址。

    可觀察到服務(wù)地址中有兩條記錄。

    image

  2. 多次訪問網(wǎng)關(guān),具體代碼如下所示,可看到會(huì)返回兩個(gè)不同的hostname。

    curl <網(wǎng)關(guān)的環(huán)境二級(jí)域名地址>/version

    image

當(dāng)集群A異常時(shí)

  1. 在集群A中刪除httpbin服務(wù)。

    此時(shí),服務(wù)地址只有一條記錄。

    image

  2. 多次訪問網(wǎng)關(guān),具體代碼如下所示,可看到hostname只有一個(gè)。

    curl <網(wǎng)關(guān)的環(huán)境二級(jí)域名地址>/version

    image