Kubernetes 集成的前提条件

<ph type="x-smartling-placeholder"></ph> 您正在查看 Apigee Edge 文档。
转到 Apigee X 文档
信息

本主题介绍了在安装之前必须完成的步骤。 Edge Microgateway 作为 Kubernetes 集群中的服务

本主题讨论:

  • 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 管理上安装以下实用程序 机器:

  • 安装 kubectl 命令 Line 接口 1.9 或更高版本。

  • (仅限 GKE)如果要在 GKE 上运行 Kubernetes,请安装 gcloud

在 GKE 上创建 Kubernetes 集群

  1. 在 Google 上登录 Google Kubernetes Engine (GKE) 信息中心 Cloud Platform (GCP)。
  2. 点击创建集群
  3. 选择标准集群
  4. 输入集群的名称。
  5. 选择一个区域。
  6. 选择 Cluster Version 1.9.7-gke-*。例如 1.9.7-gke.6
  7. 选择 3 个节点的大小。
  8. 选择 2 个 vCPU,内存为 7.5 GB。
  9. 点击创建

    以下屏幕截图显示了 GKE 信息中心,如 之前的步骤:

    GKE 信息中心

获取集群凭据

  1. 设置您的 GKE 项目名称:

    gcloud config set project projectName
  2. 设置您的 GKE 项目可用区:

    gcloud config set compute/zone zoneName
  3. 获取您的 gcloud container credentials

    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
  4. 完全按照所示方式执行以下命令。命令授予集群 授予当前用户的管理员权限。必须具备管理员权限才能 为 Edge Microgateway 服务创建必要的 RBAC 规则:

    kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value core/account)
    

安装适用于 Kubernetes 的 Edge Microgateway

  1. 下载适用于 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
  2. 将目录更改为安装目录 microgateway_Version_OS_ARCH。例如:

    cd microgateway_2.5.26_Darwin_x86_64
  3. 检查安装目录:

    • /install/kubernetes - 用于部署的 .yaml 配置文件 Kubernetes
    • /samples - 用于测试安装的示例应用。
    • /bin - edgemicroctl 可执行文件。edgemicroctl 可将 Edge Microgateway 添加到 Kubernetes 中
  4. edgemicroctl 客户端添加到您的 PATH。例如,运行以下命令 命令:

    export PATH=$PWD/bin:$PATH
  5. 将基本 Edge Microgateway 设置应用于 Kubernetes 集群。以下 命令会创建 edgemicro-system 命名空间和集群角色。

    kubectl apply -f install/kubernetes/edgemicro.yaml
  6. 将 NGINX Ingress 控制器安装到集群中。请确保没有 Nginix 控制器正在运行。您可以通过运行 kubectl get pods 进行检查。

    kubectl apply -f install/kubernetes/edgemicro-nginx-gke.yaml

验证安装

  1. 如需检查 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
    
  2. Ingress 运行后,你可以输入 Ctrl+C

  3. 运行以下命令,检查 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
    
  4. 验证所有 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

  1. 您必须安装 Edge Microgateway 2.5.26 或更高版本。您可以通过输入以下内容进行检查:

    edgemicro --version
  2. 如果您尚未安装 Edge Microgateway 2.5.26 或更高版本,请执行安装 脚本:

    npm install edgemicro -g
  3. 如果您是首次安装或升级 Edge Microgateway,请运行以下命令:

    edgemicro init

    如果您需要其他帮助,请参阅安装 Edge Microgateway

下一步

现在,您可以将 Edge Microgateway 部署到 Kubernetes 了。