全部產品
Search
文件中心

Container Service for Kubernetes:在Knative中為ECI綁定EIP實現公網訪問

更新時間:Nov 02, 2024

預設情況下,系統只為ECI執行個體分配一個私網IP。如果您的Knative服務有串連公網的需求,例如拉取公網鏡像等,您可以通過添加Annotation為其使用的ECI執行個體綁定已有的EIP或建立一個新EIP。自動建立EIP時,您還可以同步設定EIP頻寬、綁定共用頻寬包等。

前提條件

已在叢集中部署Knative,請參見部署Knative

如何?公網訪問

為ECI執行個體配置公網服務時,通常有以下兩種方式:

  • 綁定EIP:EIP是獨立購買的可單獨持有的公網IP地址,可以為綁定的ECI執行個體提供公網服務。

  • 綁定NAT Gateway:NAT Gateway是可獨立購買的網關產品,綁定EIP後,可以為關聯VPC下的所有ECI執行個體提供公網服務。

Knative僅支援通過為ECI綁定EIP的方式實現公網訪問,關於ECI執行個體串連公網的更多資訊,請參見串連公網

通過Annotation為ECI執行個體綁定EIP

您可以在Knative的Service中添加Annotation來綁定已有的EIP,或者建立並綁定一個新的EIP,來實現公網訪問。

Annotation

描述

k8s.aliyun.com/eci-eip-instanceid

綁定已有的EIP。

k8s.aliyun.com/eci-with-eip

是否自動建立並綁定EIP。

k8s.aliyun.com/eip-bandwidth

設定EIP頻寬。預設為5 Mbps。

k8s.aliyun.com/eip-common-bandwidth-package-id

綁定已有的共用頻寬包。

k8s.aliyun.com/eip-isp

設定EIP的線路類型。

取值範圍:

  • BPG:BGP(多線)線路。

  • BGP_PRO:BGP(多線)精品線路。

樣本一:指定已有EIP

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
spec:
  template:
    metadata:
      labels:
        app: helloworld-go
      annotations:
        k8s.aliyun.com/eci-eip-instanceid: "eip-bp1q5n8cq4p7f6dzu****"    # 指定已有的EIP進行綁定。
    spec:
      containers:
        - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:73fbdd56

樣本二:自動建立EIP,並設定EIP頻寬

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
spec:
  template:
    metadata:
      labels:
        app: helloworld-go
      annotations:
        k8s.aliyun.com/eci-with-eip: "true"   # 自動建立並綁定EIP。
        k8s.aliyun.com/eip-bandwidth: "10"   # 設定EIP頻寬。
    spec:
      containers:
        - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:73fbdd56

樣本三:自動建立EIP,並綁定共用頻寬包

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
spec:
  template:
    metadata:
      labels:
        app: helloworld-go
      annotations:
        k8s.aliyun.com/eci-with-eip: "true"   # 自動建立並綁定EIP。
        k8s.aliyun.com/eip-common-bandwidth-package-id: "cbwp-2zeukbj916scmj51m****"  #綁定共用頻寬包。
    spec:
      containers:
        - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:73fbdd56

相關文檔

您可以為自訂網域名配置相應的HTTPS認證,請參見配置HTTPS認證訪問