事前準備:
這些步驟假設您已在先前步驟中建立環境變數。使用下列指令檢查:
echo $PROJECT_IDecho $ANALYTICS_REGIONecho $ORG_NAMEecho $ENV_NAME
本步驟說明如何設定 Shell 環境,並在 Google Cloud 專案中建立 GKE 叢集。
設定終端機殼層
gcloud 工具是 Google Cloud 的主要指令列介面,而 kubectl 是用於執行 Kubernetes 叢集相關指令的主要指令列介面。
請務必在本機殼層中安裝
gcloud和kubectl。gcloud工具是 Google Cloud 的主要指令列介面,而kubectl是用於執行 Kubernetes 叢集相關指令的主要指令列介面。gcloud -hkubectl -h- 如果沒有安裝這些公用程式,請立即安裝,方法如下:
- 安裝 Cloud SDK,其中包含
gcloud指令列工具。 - 安裝 Cloud SDK 後,執行下列指令以安裝
kubectl指令列工具:
gcloud components install kubectl
- 安裝 Cloud SDK,其中包含
-
使用
gcloud工具設定兩個預設設定:預設專案和運算區域。 設定這些設定之後,您就能更輕鬆地執行gcloud指令,因為gcloud會要求您指定要在其中工作的專案和運算區域。如要列出目前的設定,請執行下列指令:
gcloud config list
如果未列出專案和/或運算區域,請使用下方顯示的指令新增。如果從清單輸出內容中,您判斷需要切換目前的設定,以反映專案和運算區域,也可以使用下列指令:
gcloud config set project $PROJECT_ID
gcloud config set compute/region $ANALYTICS_REGION其中:
- PROJECT_ID 是您的 Google Cloud 專案名稱。
- ANALYTICS_REGION 是 Google Cloud Compute 區域的名稱
建立 GKE 叢集
在本步驟中,您將在 Google Cloud 專案中建立 Kubernetes 叢集 (您使用 gcloud config 指令設定的專案,以 PROJECT_ID 表示)。
建立叢集
- 使用下列指令建立 CLUSTER_NAME 環境變數 (選用):
export CLUSTER_NAME=cluster-name
其中 cluster-name 是您為叢集選擇的名稱。
- 執行下列指令來建立叢集。指令中指定的機器類型、節點數量和其他設定,會建立適合試用 Apigee Hybrid 安裝作業的最低設定叢集。
gcloud container clusters create $CLUSTER_NAME \ --machine-type "e2-standard-4" --num-nodes "4" --enable-autoscaling --min-nodes "3" --max-nodes "6"
建立叢集可能需要幾分鐘的時間。成功後,系統會顯示類似下列內容的輸出內容,狀態為
RUNNING:NAME LOCATION MASTER_VERSION MASTER_IP MACHINE_TYPE NODE_VERSION NUM_NODES STATUS apigee-hybrid us-central1 1.15.12-gke.2 35.222.54.89 e2-standard-4 1.15.12-gke.2 RUNNING
設定目前的情境
「背景資訊」是一組存取參數。每個背景資訊都包含一個 Kubernetes 叢集、一位使用者和一個命名空間。目前背景資訊是 kubectl 目前的預設叢集;也就是說,系統會針對該叢集執行所有的 kubectl 指令。
確認目前的 gcloud 內容已設為您剛才建立的叢集。
- 首先,列出所有內容,判斷哪個是目前內容。在以下範例中,目前情境為
gke_hybrid-project_us-central1_apigee-hybrid。名稱包含 Google Cloud 專案名稱 (hybrid-project)、區域 (us-central1) 和叢集名稱 (apigee-hybrid)。kubectl config get-contexts
結果應如下列範例所示:
CURRENT NAME CLUSTER AUTHINFO NAMESPACE * gke_hybrid-project_us-central1_apigee-hybrid gke_hybrid-project_us-central1_apigee-hybrid gke_hybrid-project_us-central1_apigee-hybrid gke_apigee-project_us-west1_apigee-cluster gke_apigee-project_us-west1_apigee-cluster gke_apigee-project_us-west1_apigee-cluster - 如有必要,請將目前的環境設為您剛才建立的叢集 (您打算在該叢集中安裝 Apigee Hybrid)。使用先前的
get-contexts輸出內容,即可切換至正確的環境,如下所示:kubectl config use-context context
其中 context 是叢集的完整環境名稱,由先前的
get-contexts指令輸出。例如:gke_apigee-project_us-west1_apigee-cluster。 - 使用下列指令檢查目前的內容,確認已設為預期叢集:
kubectl config current-context
例如:
gke_apigee-project_us-west1_apigee-cluster
授予叢集憑證
叢集憑證可讓您存取叢集中執行的容器。擷取憑證,並將 cluster-admin 角色授予自己:
- 輸入下列指令,擷取憑證:
gcloud container clusters get-credentials $CLUSTER_NAME
其中
CLUSTER_NAME是您建立的叢集名稱 (您打算在該叢集中安裝 Apigee Hybrid)。您應該會看到類似以下的結果:
Fetching cluster endpoint and auth data. kubeconfig entry generated for example-cluster.
- 設定叢集角色繫結。完全按照顯示方式執行下列指令:
kubectl create clusterrolebinding cluster-admin-binding \ --clusterrole cluster-admin --user $(gcloud config get-value account)
您應該會看到類似以下的結果:
clusterrolebinding.rbac.authorization.k8s.io/cluster-admin-binding created
摘要
現在,您的 Google Cloud 專案中已執行 Kubernetes 叢集。您的 Shell 環境已設定完成,現在可以開始在本機安裝 Apigee Hybrid 必要的 cert-manager 和 Istio 服務。
1 (NEXT) Step 2: Install cert-manager and ASM 3 4 5