准备工作:
这些步骤假定您已在上述步骤中创建了环境变量。您可以使用以下命令进行检查:
echo $PROJECT_ID
echo $ANALYTICS_REGION
echo $ORG_NAME
echo $ENV_NAME
此步骤介绍了如何在 Google Cloud 项目中设置 Shell 环境和创建 GKE 集群。
设置终端 shell
gcloud
工具为 Google Cloud 提供了主要的命令行界面,kubectl
则为 Kubernetes 集群运行命令提供了主要命令行界面。
确保在本地 shell 中安装
gcloud
和kubectl
。gcloud
工具为 Google Cloud 提供了主要的命令行界面,kubectl
则为 Kubernetes 集群运行命令提供了主要命令行界面。gcloud -h
kubectl -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 计算地区的名称
创建 GKE 集群
在此步骤中,您将在 Google Cloud 项目(您使用 PROJECT_ID
表示的 gcloud config
命令设置的项目)中创建 Kubernetes 集群。
创建集群
- 使用以下命令创建 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
摘要
现在,您已经有一个 Kubernetes 集群在 Google Cloud 项目中运行。Shell 环境已设置完毕,您现在可以在本地机器上安装 Apigee Hybrid 所需的 cert-manager 和 Istio 服务了。
1 (下一步)第 2 步:安装 cert-manager 和 ASM 3 4 5