創(chuàng)建入口網(wǎng)關(guān)
當(dāng)您的應(yīng)用程序需要為用戶提供統(tǒng)一的公網(wǎng)或內(nèi)網(wǎng)入口時,可以在Kubernetes集群中部署ASM入口網(wǎng)關(guān)(Ingress Gateway)。入口網(wǎng)關(guān)作為統(tǒng)一的訪問入口,可以簡化流量的管理和路由,并利用七層負(fù)載均衡能力根據(jù)HTTP請求的路徑、主機(jī)頭或其他屬性將流量智能分發(fā)至相應(yīng)的后端服務(wù)。
前提條件
操作步驟
登錄ASM控制臺,在左側(cè)導(dǎo)航欄,選擇 。
在網(wǎng)格管理頁面,單擊目標(biāo)實例名稱,然后在左側(cè)導(dǎo)航欄,選擇
。在入口網(wǎng)關(guān)頁面,單擊創(chuàng)建,配置網(wǎng)關(guān)的基本信息。
網(wǎng)關(guān)配置項說明如下。您也可以在入口網(wǎng)關(guān)頁面,單擊使用YAML創(chuàng)建定義入口網(wǎng)關(guān)。具體操作,請參見使用KubeAPI管理入口網(wǎng)關(guān)。
配置項
說明
名稱
自定義網(wǎng)關(guān)的名稱。
部署集群
選擇網(wǎng)關(guān)部署的集群。
網(wǎng)關(guān)服務(wù)類型
支持LoadBalancer、ClusterIP和NodePort。關(guān)于三種類型的說明,請參見Service。
說明如果您的數(shù)據(jù)面集群是注冊集群,且需要選擇LoadBalancer,請確保集群支持LoadBalancer類型的Service,避免入口網(wǎng)關(guān)創(chuàng)建失敗。
傳統(tǒng)型負(fù)載均衡CLB/網(wǎng)絡(luò)型負(fù)載均衡NLB
僅當(dāng)網(wǎng)關(guān)服務(wù)類型選擇LoadBalancer時,需要進(jìn)行此配置。
支持公網(wǎng)訪問和私網(wǎng)訪問。
新建負(fù)載均衡
僅當(dāng)網(wǎng)關(guān)服務(wù)類型選擇LoadBalancer時,需要進(jìn)行此配置。
新建負(fù)載均衡:
選擇傳統(tǒng)型負(fù)載均衡CLB時,您需要從選擇CLB規(guī)格下拉列表中選擇所需的負(fù)載均衡規(guī)格。
選擇網(wǎng)絡(luò)型負(fù)載均衡NLB時,您需要從選擇NLB可用區(qū)下拉列表中選擇至少兩個可用區(qū)對應(yīng)的虛擬交換機(jī)。
使用已有負(fù)載均衡:從已有負(fù)載均衡列表中選擇。
重要建議您為每個Kubernetes服務(wù)分配一個負(fù)載均衡。如果多個Kubernetes服務(wù)復(fù)用同一個負(fù)載均衡,存在以下風(fēng)險和限制:
使用已有的負(fù)載均衡會強(qiáng)制覆蓋已有監(jiān)聽,可能會導(dǎo)致您的應(yīng)用不可訪問。
Kubernetes通過Service創(chuàng)建的負(fù)載均衡不能復(fù)用,只能復(fù)用您手動在控制臺(或調(diào)用OpenAPI)創(chuàng)建的負(fù)載均衡。
復(fù)用同一個負(fù)載均衡的多個Service不能有相同的前端監(jiān)聽端口,否則會造成端口沖突。
復(fù)用負(fù)載均衡時,監(jiān)聽的名字以及虛擬服務(wù)器組的名字被Kubernetes作為唯一標(biāo)識符。請勿修改監(jiān)聽和虛擬服務(wù)器組的名字。
不支持跨集群、跨地域復(fù)用負(fù)載均衡。
端口映射
配置協(xié)議和服務(wù)端口。
說明控制臺默認(rèn)提供2個Istio常用的端口。您可以按需進(jìn)行修改。
資源規(guī)格
選擇網(wǎng)關(guān)Pod的CPU和內(nèi)存規(guī)格。
網(wǎng)關(guān)副本數(shù)
設(shè)置網(wǎng)關(guān)副本數(shù)。
可選:單擊高級選項,進(jìn)行相關(guān)配置。
配置項
說明
外部流量策略
設(shè)置外部流量策略。
Local:流量只發(fā)給本機(jī)的Pod。
Cluster:流量可以轉(zhuǎn)發(fā)到集群中其他節(jié)點上的Pod。
擴(kuò)縮容HPA
選中擴(kuò)縮容HPA,然后進(jìn)行如下配置:
指標(biāo):設(shè)置監(jiān)控項和閾值。超過該閾值,將增加網(wǎng)關(guān)副本數(shù);低于該閾值,將減少網(wǎng)關(guān)副本數(shù)。
如果您同時設(shè)置了CPU和內(nèi)存的閾值,則表示只要其中一個高于或低于該閾值,都會進(jìn)行擴(kuò)縮容。
最大副本數(shù):網(wǎng)關(guān)可擴(kuò)容的副本數(shù)量上限。
最小副本數(shù):網(wǎng)關(guān)可縮容的副本數(shù)量下限。
說明該功能僅適用于企業(yè)版或旗艦版。
滾動升級
選中滾動升級,然后進(jìn)行如下配置:
不可用最大副本數(shù):設(shè)置滾動升級時不可用最大的副本數(shù)量。
超過期望的副本數(shù):設(shè)置滾動升級時最多不能超過的副本數(shù)量。例如設(shè)置為25%,表示滾動升級時副本數(shù)量不能超過原來副本的125%。
啟用基于MultiBuffer的TLS加解密性能優(yōu)化
選中啟用基于MultiBuffer的TLS加解密性能優(yōu)化,將提升TLS加解密的速度。
支持的節(jié)點親和性標(biāo)簽選擇:根據(jù)節(jié)點標(biāo)簽匹配性能優(yōu)化的節(jié)點。
輪詢延時(毫秒):設(shè)置該參數(shù),可以減少加解密操作的等待時間。更多信息,請參見配置項說明。
說明該功能僅適用于企業(yè)版或旗艦版。
盡量分散部署網(wǎng)關(guān)副本
設(shè)置
podAntiAffinity
時,Pod優(yōu)先部署到不同的節(jié)點上。自定義部署策略
您可以自定義網(wǎng)關(guān)的
nodeSelector
、tolerations
和affinity
。關(guān)于字段的詳細(xì)說明,請參見ASM網(wǎng)關(guān)CRD說明。優(yōu)雅下線
選中優(yōu)雅下線后,當(dāng)負(fù)載均衡停用時,將不會對網(wǎng)關(guān)業(yè)務(wù)產(chǎn)生影響。
連接超時時間(秒):負(fù)載均衡移除網(wǎng)關(guān)Pod后,會等待配置的連接超時時間,然后再斷開與Pod的連接。配置該參數(shù),可以給網(wǎng)關(guān)Pod提供一個緩沖時間,來處理現(xiàn)有的連接。網(wǎng)關(guān)Pod默認(rèn)優(yōu)雅下線時間為30s,負(fù)載均衡側(cè)配置的超時時間通常不應(yīng)該超過30s。
說明該功能僅適用于企業(yè)版或旗艦版。
配置完成后,單擊創(chuàng)建。
網(wǎng)關(guān)狀態(tài)為運(yùn)行中,表示創(chuàng)建成功。服務(wù)地址即為入口網(wǎng)關(guān)的IP地址。
相關(guān)操作
入口網(wǎng)關(guān)創(chuàng)建成功后,您可以通過ASM控制臺管理入口網(wǎng)關(guān),也可以通過ACK控制臺查看入口網(wǎng)關(guān)。
通過ASM控制臺管理入口網(wǎng)關(guān)
登錄ASM控制臺,在左側(cè)導(dǎo)航欄,選擇 。
在網(wǎng)格管理頁面,單擊目標(biāo)實例名稱,然后在左側(cè)導(dǎo)航欄,選擇
。在入口網(wǎng)關(guān)頁面,對入口網(wǎng)關(guān)進(jìn)行管理。
操作
說明
查看或編輯入口網(wǎng)關(guān)
方式一:在目標(biāo)網(wǎng)關(guān)右側(cè),單擊查看詳情,按需修改相關(guān)配置。
方式二:在目標(biāo)網(wǎng)關(guān)右側(cè),單擊查看YAML,在編輯對話框,按需修改相關(guān)字段,然后單擊確定。關(guān)于字段的詳細(xì)說明,請參見ASM網(wǎng)關(guān)CRD說明。
刪除入口網(wǎng)關(guān)
在目標(biāo)網(wǎng)關(guān)右側(cè),單擊刪除,在確認(rèn)對話框,單擊確定。
重要入口網(wǎng)關(guān)刪除后,外部服務(wù)將無法通過該入口網(wǎng)關(guān)訪問ASM內(nèi)部服務(wù)。被刪除的入口網(wǎng)關(guān)無法恢復(fù),只能重建,請謹(jǐn)慎操作。
通過ACK控制臺查看入口網(wǎng)關(guān)
查看新添加的入口網(wǎng)關(guān)的基本信息。
登錄容器服務(wù)管理控制臺,在左側(cè)導(dǎo)航欄單擊集群。
在集群列表頁面,單擊目標(biāo)集群名稱,然后在左側(cè)導(dǎo)航欄,選擇
。在服務(wù)頁面上方,在命名空間下拉列表中選擇istio-system。
可以看到目標(biāo)網(wǎng)關(guān)的基本信息。External IP列的IP為入口網(wǎng)關(guān)的IP地址。
查看新添加入口網(wǎng)關(guān)的Pod信息。
登錄容器服務(wù)管理控制臺,在左側(cè)導(dǎo)航欄單擊集群。
在集群列表頁面,單擊目標(biāo)集群名稱,然后在左側(cè)導(dǎo)航欄,選擇
。在容器組頁面上方,在命名空間下拉列表中選擇istio-system。
單擊目標(biāo)Pod,查看入口網(wǎng)關(guān)的Pod詳細(xì)信息。
相關(guān)文檔
如果您需要通過API創(chuàng)建入口網(wǎng)關(guān),請參見CreateASMGateway - 創(chuàng)建ASM網(wǎng)關(guān)。
如果您需要為網(wǎng)格內(nèi)應(yīng)用提供統(tǒng)一的流量出口,請參見創(chuàng)建出口網(wǎng)關(guān)。
如果您需要按照比例將流量分發(fā)到服務(wù)的不同版本,例如灰度發(fā)布和A/B測試,請參見使用Istio資源實現(xiàn)版本流量路由。
如果您需要查看App、服務(wù)、應(yīng)用版本之間的調(diào)用關(guān)系、流量走向,可以使用ASM網(wǎng)格拓?fù)涔δ堋>唧w操作,請參見查看應(yīng)用的網(wǎng)格拓?fù)?/a>。
關(guān)于網(wǎng)關(guān)的更多功能介紹,請參見ASM網(wǎng)關(guān)概述。