您正在查看 Apigee Edge 文档。
前往 Apigee X 文档。 信息
本主题介绍了在 Kubernetes 集群中将 Edge Microgateway 安装为服务之前必须完成的步骤。
本主题将介绍:
- Kubernetes 集群的最低要求。
- 如何安装和配置 Edge Microgateway。
- 如何将 Edge Microgateway 的基本配置安装到 Kubernetes 集群中。
Kubernetes 集群的要求
您的 Kubernetes 集群需要满足以下条件:
- Kubernetes 1.9 或更高版本。
- Kubernetes CLI kubectl v1.9 或更高版本。
- 一个至少包含 3 个节点的集群,每个节点有 2 个 vCPU。
示例:在 Google Kubernetes Engine (GKE) 上创建 Kubernetes 集群
设置 Kubernetes 管理机器
Kubernetes 管理机器是用于针对 Kubernetes 集群运行命令的本地机器。此机器通常是有权访问您的 Kubernetes 虚拟机的桌面机器。
您必须在 Kubernetes 管理机器上安装以下实用程序:
在 GKE 上创建 Kubernetes 集群
- 登录 Google Cloud Platform (GCP) 上的 Google Kubernetes Engine (GKE) 信息中心。
- 点击创建集群。
- 选择标准集群。
- 输入集群的名称。
- 选择可用区。
- 选择
Cluster Version 1.9.7-gke-*
。例如1.9.7-gke.6
。 - 选择 3 个节点的大小。
- 选择 2 个 vCPU 和 7.5 GB 内存。
点击创建。
以下屏幕截图显示了按照前面步骤填充的 GKE 信息中心:
获取集群凭据
设置 GKE 项目名称:
gcloud config set project projectName
设置 GKE 项目可用区:
gcloud config set compute/zone zoneName
获取 gcloud 容器凭据:
gcloud container clusters get-credentials cluster-name --zone zone --project project-name
其中:
cluster-name
是您创建的 Kubernetes 集群的名称。zone
是集群所在的区域。project-name
是您的 GCP 项目名称。
例如:
gcloud container clusters get-credentials edgemicrogateway-cluster --zone us-central1-a --project edgemicro-project
严格按照如下所示执行以下命令。该命令会向当前用户授予集群管理员权限。您需要拥有管理员权限,才能为 Edge Microgateway 服务创建必要的 RBAC 规则:
kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value core/account)
安装适用于 Kubernetes 的 Edge Microgateway
下载适用于 Kubernetes 的 Edge Microgateway。如果您使用的是 MacOS 或 Linux 计算机,可以通过指定版本名称下载最新版本或特定版本。
如需获取最新版本,请执行以下操作:
curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -
按版本号获取特定版本。请注意,版本号必须带有字母“v”作为前缀。例如:v3.0.2
curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s version
例如:
curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s v3.0.2
将目录切换到安装目录
microgateway_Version_OS_ARCH
。例如:cd microgateway_2.5.26_Darwin_x86_64
检查安装目录:
/install/kubernetes
- 要部署到 Kubernetes 的配置.yaml
文件。/samples
- 用于测试安装情况的示例应用。/bin
-edgemicroctl
可执行文件。edgemicroctl
命令会将 Edge Microgateway 注入 Kubernetes
将
edgemicroctl
客户端添加到您的PATH
中。例如,在 MacOS 或 Linux 系统上运行以下命令:export PATH=$PWD/bin:$PATH
将基本 Edge Microgateway 设置应用于 Kubernetes 集群。以下命令会创建
edgemicro-system
命名空间和集群角色。kubectl apply -f install/kubernetes/edgemicro.yaml
将 NGINX Ingress 控制器安装到集群中。确保没有其他 Nginix 控制器正在运行。您可以通过运行
kubectl get pods
进行检查。kubectl apply -f install/kubernetes/edgemicro-nginx-gke.yaml
验证安装
如需检查 Ingress 控制器是否已启动,请运行以下命令:
kubectl get pods --all-namespaces -l app=edgemicro-ingress --watch
如以下示例输出所示,这些进程需要一两分钟才能启动。在
STATUS
更改为Running
之前,出现多次“错误”和“重启”循环是正常现象。NAMESPACE NAME READY STATUS RESTARTS AGE edgemicro-system edgemicro-ingress-controller-64444469bf-wjhrn 0/1 CrashLoopBackOff 1 33s edgemicro-system edgemicro-ingress-controller-64444469bf-wjhrn 0/1 Error 2 33s edgemicro-system edgemicro-ingress-controller-64444469bf-wjhrn 0/1 CrashLoopBackOff 2 40s edgemicro-system edgemicro-ingress-controller-64444469bf-wjhrn 0/1 Running 3 1m edgemicro-system edgemicro-ingress-controller-64444469bf-wjhrn 1/1 Running 3 1m
Ingress 运行后,您可以输入
Ctrl+C
来取消上述命令。运行以下命令以检查 Kubernetes 服务是否已部署。您应该会看到类似于以下示例输出的输出:
kubectl get svc -n edgemicro-system
输出示例:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE default-http-backend ClusterIP 10.19.255.106 <none> 80/TCP 2h edgemicro-ingress LoadBalancer 10.19.247.156 35.224.24.13 80:30176/TCP,443:32325/TCP 2h
验证所有 pod 是否正在运行:
kubectl get pods -n edgemicro-system
输出示例:
NAME READY STATUS RESTARTS AGE default-http-backend-55c6c69b88-2lvtw 1/1 Running 0 4m edgemicro-ingress-controller-64444469bf-wjhrn 1/1 Running 3 4m
安装 Edge Microgateway
您必须安装 Edge Microgateway 2.5.26 或更高版本。您可以通过输入以下命令进行检查:
edgemicro --version
如果您尚未安装 Edge Microgateway 2.5.26 或更高版本,请执行安装脚本:
npm install edgemicro -g
如果您刚刚首次安装或升级了 Edge Microgateway,请运行以下命令:
edgemicro init
如果您需要其他帮助,请参阅安装 Edge Microgateway。
下一步
现在,您可以将 Edge Microgateway 部署到 Kubernetes 了。