Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントに移動。 情報
このトピックでは、Kubernetes クラスタに Edge Microgateway をサービスとしてインストールする前に完了する必要がある手順について説明します。
このトピックでは、次の項目について説明します。
- Kubernetes クラスタの最小要件。
- Edge Microgateway をインストールして構成する方法。
- Edge Microgateway の基本構成を Kubernetes クラスタにインストールする方法。
Kubernetes クラスタの要件
Kubernetes クラスタには、次のものが必要です。
- Kubernetes バージョン 1.9 以降。
- Kubernetes CLI kubectl v1.9 以降。
- それぞれに 2 つの vCPU を持つノードを少なくとも 3 つ含むクラスタ。
例: Google Kubernetes Engine(GKE)で Kubernetes クラスタを作成する
Kubernetes 管理マシンを設定する
Kubernetes 管理マシンは、Kubernetes クラスタに対してコマンドを実行するために使用するローカルマシンです。通常、このマシンは、Kubernetes VM にアクセス可能なデスクトップ マシンです。
Kubernetes 管理マシンに次のユーティリティをインストールする必要があります。
GKE に Kubernetes クラスタを作成する
- Google Cloud Platform(GCP)の Google Kubernetes Engine(GKE)ダッシュボードにログインします。
- [クラスタを作成] をクリックします。
- [Standard Cluster] を選択します。
- クラスタの名前を入力します。
- ゾーンを選択します。
- [
Cluster Version 1.9.7-gke-*
] を選択します。例:1.9.7-gke.6
- サイズを 3 ノードに選択します。
- 7.5 GB のメモリを備えた 2 つの vCPU を選択します。
[作成] をクリックします。
次のスクリーンショットは、前の手順で説明したように入力された 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 に挿入します。
PATH
にedgemicroctl
クライアントを追加します。たとえば、macOS または Linux システムで次のコマンドを実行します。export PATH=$PWD/bin:$PATH
基本的な Edge Microgateway 設定を Kubernetes クラスタに適用します。次のコマンドは、
edgemicro-system
Namespace とクラスタロールを作成します。kubectl apply -f install/kubernetes/edgemicro.yaml
NGINX Ingress Controller をクラスタにインストールします。他の Nginix コントローラが実行されていないことを確認します。
kubectl get pods
を実行して確認できます。kubectl apply -f install/kubernetes/edgemicro-nginx-gke.yaml
インストールを確認する
Ingress コントローラが起動されたかどうかを確認するには、次のコマンドを実行します。
kubectl get pods --all-namespaces -l app=edgemicro-ingress --watch
次の出力例に示すように、プロセスが開始されるまでに 1 ~ 2 分かかることがあります。
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 にデプロイする準備が整いました。
- Edge Microgateway をサービスとしてデプロイするをご覧ください。