LoginSignup
2
1

More than 5 years have passed since last update.

GCPのKubernetesでコンテナを作成してみた

Last updated at Posted at 2018-10-14

環境

macbook(gcloudインストール済み)

kubectlのインストール(すでに入っている方は飛ばしてください)

以下を実行

gcloud components install kubectl

また、computeEngineゾーンのデフォルト値を設定しておくことで、のちの作業を楽にしておきます。

gcloud config set project [PROJECT_ID]
gcloud config set compute/zone [ZONE_NAME]

KubernetesのAPIを有効化

GCPの管理コンソールから「APIとサービス」を開きます。
ライブラリで「Kubernetes」と検索し、「Kubernetes Engine API」を有効化します。スクリーンショット 2018-10-15 20.13.32.png

クラスターノードの作成

ここではtestという名前でノードを作成します。

gcloud container clusters create test --num-nodes=1

無事にノードが作成したことを以下のコマンドで確認します。
gke***みたいなのがいればOK。

gcloud compute instances list

WordpressをPodで起動

ノードの作成が完了したので、ノード内にPodを立ち上げ、Wordpressを起動します。

kubectl run wordpress --image=tutum/wordpress --port=80

デプロイされた情報は以下で確認できます。

kubectl describe deployments
Name:                   wordpress
Namespace:              default
CreationTimestamp:      Sun, 14 Oct 2018 22:29:34 +0900
Labels:                 run=wordpress
Annotations:            deployment.kubernetes.io/revision=1
Selector:               run=wordpress
Replicas:               1 desired | 1 updated | 1 total | 0 available | 1 unavailable
StrategyType:           RollingUpdate
MinReadySeconds:        0
・
・
・

ロードバランサの作成

Wordpressの起動したPodの作成は完了しましたが、このままではWordpressには同一コンテナ内のPodからしかアクセスすることができないので、ロードバランサを作成し、アクセス可能状態にします。

kubectl expose deployment wordpress --type=LoadBalancer

以下のコマンドで、ロードバランサが準備OKかどうかを確認します。
EventsのMessageに「Ensured load balancer」が表示されたら準備OKです。

kubectl describe services

「LoadBalancer Ingress」にあるIPアドレスにアクセスするとWordpressの画面が出てくるかと思います。

Wordpressの削除

残念ながらこのまま放置しておくと誰かに使われかねないので、以下のコマンドで
サービスとDeploymentsを削除しておきます。

kubectl delete services wordpress
kubectl delete deployment wordpress

本編は以上です。

補足

  • 複数のPodを作る場合

最後のxに任意の整数をいれてください

gcloud container clusters create test --num-nodes=x
  • Pod数の確認
kubectl get pods
  • ノードの削除
gcloud container clusters delete [NODE_NAME]

もっと勉強します.

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1