預設情況下,系統只為ECI Pod(即ECI執行個體)分配一個私網IP,如果您的ECI Pod有串連公網的需求,例如需要拉取公網鏡像等,您可以為其綁定EIP,或者在所屬VPC中建立公網NAT Gateway,以實現ECI Pod與公網互連。
背景資訊
為ECI執行個體配置公網串連時,支援以下兩種方式:
方式 | 說明 | 適用情境 |
綁定EIP | EIP是獨立購買的可單獨持有的公網IP地址,可以為綁定的ECI執行個體提供公網服務。更多資訊,請參見什麼是Elastic IP Address和EIP計費概述。 | 單個ECI執行個體。 例如:您有一個ECI執行個體用於部署Nginx服務,在建立執行個體時,您需要為該執行個體綁定EIP。當Nginx啟動時,將自動暴露80連接埠到EIP。您可以通過EIP地址加連接埠的方式訪問Nginx服務。 |
在所屬VPC中建立公網NAT Gateway | NAT Gateway是一種網路位址轉譯服務,提供NAT代理(SNAT和DNAT)能力。更多資訊,請參見什麼是NAT Gateway和公網NAT Gateway計費。 | 多個ECI執行個體。 例如:您有多個ECI執行個體需要從Docker Hub拉取鏡像,由於ECI預設不提供公網連結進行公網鏡像的拉取,您需要在執行個體所屬VPC中建立公網NAT Gateway並完成規則配置,否則無法拉取鏡像。 |
為ECI執行個體配置公網串連時,請確保ECI執行個體所屬的安全性群組已允許存取相關地址和連接埠。更多資訊,請參見添加安全性群組規則。
為ECI執行個體綁定EIP
建立ECI Pod時,您可以在Pod metadata中添加Annotation來綁定已有EIP,或者自動建立並綁定一個EIP。
EIP只支援為所綁定的ECI執行個體提供公網服務,一個EIP只能綁定一個ECI執行個體。如果您有多個ECI執行個體需要串連公網,您需要分別為其綁定EIP,或者在所屬VPC中建立公網NAT Gateway。
綁定已有EIP
Annotation
樣本值
說明
k8s.aliyun.com/eci-eip-instanceid
"eip-bp1q5n8cq4p7f6dzu****"
指定EIP,將其綁定到ECI Pod上。
自動建立並綁定EIP
Annotation
樣本值
說明
k8s.aliyun.com/eci-with-eip
"true"
配置為true表示自動建立一個EIP,並將其綁定到ECI Pod上。
k8s.aliyun.com/eip-bandwidth
"10"
設定EIP頻寬。單位為Mbps。預設為5 Mbps。
k8s.aliyun.com/eip-common-bandwidth-package-id
"cbwp-2zeukbj916scmj51m****"
綁定已有的共用頻寬。更多資訊,請參見共用頻寬。
k8s.aliyun.com/eip-isp
BGP
設定EIP線路類型,僅隨用隨付的EIP支援指定。取值範圍:
BGP(預設值):BGP(多線)線路
BGP_PRO:BGP(多線)精品線路
更多資訊,請參見EIP線路類型。
k8s.aliyun.com/eip-internet-charge-type
PayByTraffic
設定EIP的計量方式。取值範圍:
PayByBandwidth:按頻寬計費
PayByTraffic:按流量計費
更多資訊,請參見EIP計費方式。
k8s.aliyun.com/eip-public-ip-address-pool-id
pippool-bp187arfugi543y1s****
指定IP位址集區ID。 EIP將從該IP位址集區中分配。更多資訊,請參見建立和管理IP位址集區。
Annotation請添加在Pod的metadata下,例如:建立Deployment時,Annotation需添加在spec>template>metadata下。
僅支援在建立ECI Pod時添加ECI相關Annotation來生效ECI功能,更新ECI Pod時添加或者修改ECI相關Annotation均不會生效。
配置樣本如下:
在所屬VPC中建立公網NAT Gateway
在VPC中建立公網NAT Gateway後,公網NAT Gateway可以提供NAT代理(SNAT和DNAT)功能,使得該VPC中的ECI執行個體可以串連公網。
功能 | 說明 |
SNAT | 可以為VPC中沒有公網IP的ECI執行個體提供訪問公網的代理服務。 |
DNAT | 可以將公網NAT Gateway綁定的EIP映射給VPC中的ECI執行個體使用,使其能夠面向公網提供服務。 |
在專用網路控制台建立公網NAT Gateway。具體操作,請參見建立和管理公網NAT Gateway執行個體。
如果您的ECI執行個體需要訪問公網,您需要建立SNAT條目。具體操作,請參見建立和管理SNAT條目。
建立時需要注意的參數如下:
參數
描述
SNAT條目粒度
請結合業務組網和安全性等因素進行選擇:
VPC粒度:NAT Gateway所屬VPC內的所有ECI執行個體均可以通過SNAT功能訪問公網。
交換器粒度:所選交換器下的ECI執行個體均可以通過SNAT功能訪問公網。
自訂網段粒度:指定網段內的ECI執行個體均可以通過SNAT功能訪問公網。
選擇交換器
當SNAT條目粒度選擇交換器粒度時,選擇用於建立ECI執行個體的交換器,支援配置多個。
自訂網段
當SNAT條目粒度選擇自訂網段粒度時,設定要訪問公網的ECI執行個體的所屬網段。
選擇公網IP地址
選擇NAT Gateway綁定的EIP(單個或多個),用於訪問公網。
說明如果ECI執行個體已經綁定了EIP,則優先使用ECI執行個體綁定的EIP來訪問公網,而不會使用NAT Gateway的SNAT功能訪問公網。
如果您的ECI執行個體需要面向公網提供服務,您需要建立DNAT條目。具體操作,請參見建立和管理DNAT條目。
建立時需要注意的參數如下:
參數
描述
選擇公網IP地址
選擇NAT Gateway綁定的EIP,用於公網訪問。
選擇私網IP地址
選擇要通過DNAT規則進行公網通訊的ECI執行個體,支援指定ECI執行個體對應的彈性網卡,或者手動輸入ECI執行個體的私網IP。
連接埠設定
選擇DNAT映射的方式:
任意連接埠:該方式輸入IP映射。任何訪問NAT Gateway所綁定EIP的請求都將轉寄到目標ECI執行個體。
具體連接埠:該方式輸入連接埠映射。NAT Gateway會將以指定協議和連接埠訪問NAT Gateway所綁定EIP的請求轉寄到目標ECI執行個體的指定連接埠上。