Kubernetes インテグレーションの前提条件

<ph type="x-smartling-placeholder"></ph> 現在、Apigee Edge のドキュメントが表示されています。
Apigee X のドキュメント
詳細

このトピックでは、インストールの前に完了しておく必要のある手順について説明します。 Kubernetes クラスタ内のサービスとしての Edge Appliance。

このトピックでは、次のトピックについて説明します。

  • Kubernetes クラスタの最小要件。
  • Edge AppSheet をインストールして構成する方法。
  • Edge AppSheet の基本構成を Kubernetes にインストールする方法 作成します。
で確認できます。

Kubernetes クラスタの要件

Kubernetes クラスタには、次のものが必要です。

  • Kubernetes バージョン 1.9 以降。
  • Kubernetes CLI kubectl v1.9 以降。
  • それぞれに 2 つの vCPU を持つノードが 3 つ以上あるクラスタ。

例: Google Kubernetes Engine(GKE)で Kubernetes クラスタを作成する

Kubernetes 管理マシンを設定する

Kubernetes 管理マシンは、GKE クラスタを実行するために使用する コマンドを実行できます。このパソコンは通常デスクトップです アクセスできる VM を作成できます。

Kubernetes 管理サービス アカウントに次のユーティリティをインストールする必要があります。 マシン:

  • kubectl コマンドをインストールする ライン インターフェイス 1.9 以降が必要です。

  • (GKE のみ)GKE で Kubernetes を実行している場合は、gcloud をインストールします。

GKE で Kubernetes クラスタを作成する

  1. Google で Google Kubernetes Engine(GKE)ダッシュボードにログインする Cloud Platform(GCP)で利用できます。
  2. [クラスタを作成] をクリックします。
  3. [Standard クラスタ] を選択します。
  4. クラスタの名前を入力します。
  5. ゾーンを選択します。
  6. [Cluster Version 1.9.7-gke-*] を選択します。例: 1.9.7-gke.6
  7. 3 ノードのサイズを選択します。
  8. 7.5 GB のメモリを搭載した 2 個の vCPU を選択します。
  9. [作成] をクリックします。

    次のスクリーンショットは、 前のステップ:

    GKE ダッシュボード

クラスタ認証情報を取得する

  1. GKE プロジェクト名を設定します。

    gcloud config set project projectName
  2. GKE プロジェクト ゾーンを設定します。

    gcloud config set compute/zone zoneName
  3. 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
  4. 示されているとおりに次のコマンドを実行します。このコマンドを実行すると、 現在のユーザーに付与します。管理者権限が必要です。 Edge Verification サービスに必要な RBAC ルールを作成します。

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

Kubernetes 用の Edge Microgateway をインストールする

  1. Kubernetes 用の Edge AppSheet をダウンロードします。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 構成ファイル 説明します。
    • /samples - インストールをテストするためのサンプル アプリケーション。
    • /bin - edgemicroctl 実行可能ファイル。edgemicroctl コマンドで Edge Appliance を Kubernetes に挿入します。
  4. edgemicroctl クライアントを PATH に追加します。たとえば、次のコマンドを実行します。 コマンドを実行する方法は、以下のとおりです。

    export PATH=$PWD/bin:$PATH
  5. Edge Appliance の基本設定を Kubernetes クラスタに適用します。次の コマンドにより、edgemicro-system 名前空間とクラスタロールが作成されます。

    kubectl apply -f install/kubernetes/edgemicro.yaml
  6. NGINX Ingress コントローラをクラスタにインストールします。他の Pod に 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

    次のサンプル出力に示すように、IP アドレスが表示されるまでに 1 ~ 2 分かかります。 プロセスを開始します。エラーと再起動のサイクルが数回発生するのは正常なことです。 STATUSRunning に変わります。

    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 Service がデプロイされていることを確認します。すべきこと 次のような出力が表示されます。

    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 AppSheet をインストールする

  1. Edge Appliance 2.5.26 以降のバージョンがインストールされている必要があります。次のコマンドを入力して確認できます。

    edgemicro --version
  2. Edge AppSheet 2.5.26 以降がインストールされていない場合は、次のインストールを実行します。 スクリプト:

    npm install edgemicro -g
  3. Edge AppSheet を初めてインストールまたはアップグレードしたばかりの場合は、次のコマンドを実行します。

    edgemicro init

    さらにサポートが必要な場合は、Edge Appliance のインストールをご覧ください。

次のステップ

これで、Edge Apigee を Kubernetes にデプロイする準備が整いました。