【連載】Kubernates入門・GKEデプロイと発展的利用 第6回 ~ Google Kubernetes Engineのセットアップとクラスタ作成 ~
はじめに
この連載ではコンテナオーケストレーションツールである、 Kubernatesの使い方を学びます。
今回はGoogle Kubernetes Engineのセットアップを行います。
サンプルコード
こちらに順次アップしていきますー。
連載記事一覧
Google Cloud SDKのセットアップ
SDKのインストール
$ brew cask install google-cloud-sdk
コンポーネントのバージョンアップ
$ gcloud components update
gcloudの認証を行います
$ gcloud auth login
gcloudで操作する対象のプロジェクトIDを設定します。
$ gcloud config set project kube-test-XXXXX
デフォルトリージョンを設定します。asia-northeast1-aはGCPの東京リージョンのゾーンのことです。
$ gcloud config set compute/zone asia-northeast1-a
Kubernetesクラスタの作成
gcloudを用いて「gihyo」という名前でKubernetesクラスタを新規に作成します。
$ gcloud container clusters create gihyo --cluster-version=1.13.11-gke.14 \ --machine-type=n1-standard-1 \ --num-nodes=3
上記コマンドでエラーが出た場合
ERROR: (gcloud.container.clusters.create) ResponseError: code=403, message=Kubernetes Engine API is not enabled for this project. Please ensure it is enabled in Google Cloud Console and try again: visit https://console.cloud.google.com/apis/api/container.googleapis.com/overview?project=kube-test-XXXXX to do so.
↑エラー出力されたURL 「https://console.cloud.google.com/apis/api/container.googleapis.com/overview?project=kube-test-XXXXX」にアクセスし、Kubernetes Engine APIを有効化しましょう。
作成されたクラスタは、以下のコマンドで確認できます。
$ gcloud container clusters describe gihyo
また、コンソールからも確認可能です。
Cloud ConsoleのKubernetes Engineのページをみてみましょう。
gcloudで作成したクラスタを制御できるようにするため、kubectlに認証情報を設定します。
$ gcloud container clusters get-credentials gihyo Fetching cluster endpoint and auth data. kubeconfig entry generated for gihyo.
kubectlでクラスタのノード一覧の取得を試し、GKEのノードが表示されればOK
$ kubectl get nodes NAME STATUS ROLES AGE VERSION gke-gihyo-default-pool-689ff9c3-22sl Ready <none> 12m v1.13.11-gke.14 gke-gihyo-default-pool-689ff9c3-3g5w Ready <none> 12m v1.13.11-gke.14 gke-gihyo-default-pool-689ff9c3-58bm Ready <none> 12m v1.13.11-gke.14
最後に、作成したクラスタを削除します。
$ gcloud container clusters delete gihyo
まとめ
今回はGoogle Kubernetes Engineのセットアップとクラスタ作成を行いました。 次回は実施にアプリケーションをGKE上に構築してみましょう。