阿里雲以DataCache CRD的方式將ECI的資料緩衝功能提供給Kubernetes使用者,以便Kubernetes使用者可以使用該功能來提前拉取大規模資料。本文介紹如何在Kubernetes叢集中部署DataCache CRD。
計費說明
如果是ACK叢集,部署DataCache CRD會預設部署在已有ECS節點上,無需額外付費。
如果是ACK Serverless叢集,部署DataCache CRD後會產生一個0.25 vCPU 、0.5 GiB的ECI Pod,收取ECI執行個體費用。費用=(0.25*vCPU單價+0.5*記憶體單價)*運行時間長度。關於ECI執行個體如何計費,以及vCPU和記憶體的具體單價,請參見ECI執行個體計費。
準備工作
操作前,請準備好以下資訊:
AccessKey ID和AccessKey Secret。擷取方式請參見建立AccessKey。
重要請確保AccessKey所屬阿里雲帳號或者RAM使用者具有資料緩衝相關API的許可權。
叢集所屬的地區ID。
(推薦)通過Helm部署
串連Kubernetes叢集。
確認Helm版本。
helm version
根據Helm版本選擇以下一種方式部署DataCache CRD。
Helm版本為3.7及以上版本
如果Helm版本為3.7,需開啟實驗功能。
Helm版本為3.8及以上版本可跳過該步驟。
export HELM_EXPERIMENTAL_OCI=1
設定環境變數。
說明設定REPO時,請直接使用
oci://eci-release-registry.cn-hangzhou.cr.aliyuncs.com/datacache/datacache-operator
,無需修改地區ID。export REPO="oci://eci-release-registry.cn-hangzhou.cr.aliyuncs.com/datacache/datacache-operator" export AK='<AccessKey ID>' export SK='<AccessKey Secret>' export REGION='<地區ID>'
部署DataCache CRD。
helm install datacache-operator $REPO --set accessKey=$AK --set secretKey=$SK --set regionId=$REGION
Helm版本低於3.7
安裝阿里雲ACR外掛程式。
helm plugin install https://github.com/AliyunContainerService/helm-acr
如果您訪問Github比較流暢,可以直接執行上述命令。如果網路不流暢,可以參考以下命令安裝。
git clone https://github.com/AliyunContainerService/helm-acr.git sed -i 's/github.com/helm-acr-releases.oss-cn-hangzhou.aliyuncs.com/g' helm-acr/scripts/install_plugin.sh helm plugin install helm-acr
添加Helm倉庫到本地Helm用戶端。
helm repo add datacache acr://eci-release-chart.cn-hangzhou.cr.aliyuncs.com/datacache/datacache-operator helm repo update
設定環境變數。
export REPO="datacache/datacache-operator" export AK='<AccessKey ID>' export SK='<AccessKey Secret>' export REGION='<地區ID>'
部署DataCache CRD。
helm install datacache-operator $REPO --set accessKey=$AK --set secretKey=$SK --set regionId=$REGION
通過YAML部署
串連Kubernetes叢集。
準備DataCache CRD的YAML設定檔,命名為aliyun-datacache-controller.yaml。
YAML設定檔內容如下,請根據實際修改代碼中的AccessKey ID(第13行)、AccessKey Secret(第14行)和地區ID(第211行)。
部署DataCache CRD。
kubectl apply -f aliyun-datacache-controller.yaml