1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【GCP】GKEを作成してみた

Posted at

参照URL

みぎ側の利用方法を読みながら進めて
最小料金になる構成で作成。

エラー

https://www.topgate.co.jp/gcp07-how-to-start-docker-image-gke
ここにならって以下のコマンドを打ってみたが、正常にGKEのインスタンスが表示されなかった。
gcloud compute instances list

なので、
gcloud init
でPJをくりかえてから再度コマンドを打ったところ、表示された。

NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS
gke-my-first-cluster-1-default-pool-491cdabf-4f3v us-central1-c g1-small
gke-my-first-cluster-1-default-pool-491cdabf-qhsl us-central1-c g1-small
gke-my-first-cluster-1-default-pool-491cdabf-zz86 us-central1-c g1-small

kubectl を使う

まず、インストールする
gcloud components install kubectl

https://www.topgate.co.jp/gcp07-how-to-start-docker-image-gke
ここでgkeを動かしていく
コマンドインストール以降をやる

export PROJECT_ID="プロジェクトID"
「export」は、環境変数やシェル変数を設定するコマンドです。
export 変数名=値 (シェル変数を定義して同時にエクスポートする)
https://www.atmarkit.co.jp/ait/articles/1801/12/news015.html

gcloud config set compute/zone asia-northeast1-a
https://cloud.google.com/sdk/gcloud/reference/config/set?hl=ja

ここではデフォルトのゾーンとリージョンを指定している
https://blog.amedama.jp/entry/gcp-cli-default-zone-region

アップデートしなさいという指示がでたので、以下コマンドを入力
gcloud components update
https://www.na3.jp/entry/20160217/p1

kubectl が作成したクラスターにアクセスできるよう、認証情報を取得します。
gcloud auth コマンドを入力すると、 OAuth の認証画面がブラウザに表示されるので、アクセスを許可します。

クラスタを確認
gcloud container clusters list

gcloud auth application-default login
これを打つとブラウザがひらくので、対象のアカウントをクリック
アクセスを許可するとコマンドが完了する。

gcloud container clusters get-credentials my-first-cluster-1

ERROR: (gcloud.container.clusters.get-credentials) ResponseError:

以下がポイント
Could not find [my-first-cluster-1] in [asia-northeast1-a].
Did you mean [my-first-cluster-1] in [us-central1-c]?

gcloud config set compute/zone us-central1-c
これをうってからやってみたら、いけた。

gcloud auth application-default login
User Account を使って Server Application が使うためのアクセストークンを取得する
https://medium.com/google-cloud-jp/gcp-%E3%81%A8-oauth2-91476f2b3d7f

kubectl run wordpress --image=tutum/wordpress --port=80
これを打って成功
https://cstoku.dev/posts/2018/k8sdojo-23/
runはDeploymentやJobの実行を行うコマンドだ。
createとかなり近い感覚を感じるが、こちらは作成したDeploymentにアタッチすることができる

kubectl expose deployment wordpress --type=LoadBalancer
これを打って成功。外部からアクセス可能になる。

kubectl describe services wordpres
これを打ってコンテナの状況を確認するようだが、
Events:
Type Reason Age From Message


Normal EnsuringLoadBalancer 4m19s service-controller Ensuring load balancer
Normal EnsuredLoadBalancer 3m31s service-controller Ensured load balancer

Ensuredと表示されている。
本来ならcreateが表示されればいいみたいだが、これで正しいのかがわからない。

GCPのネットワークサービスをみたら、GKEに割り当てられているロードバランサはあった。
最初くるくるしてたが、くるくるしなくなったので、LoadBalancer Ingress: にあるIPにアクセスしたら、
wordpressも表示された。


このままだと勝手に使われかねないので、以下で削除してコンテナの情報も表示されなくなった。
kubectl delete services wordpress

見たい資料

このへんの資料を読み込みたい
https://qiita.com/toshihirooya/items/bbae6168462f3d8b809c
https://cloud.google.com/blog/ja/products/containers-kubernetes/run-windows-server-containers-on-gke

動画もみる
https://cloud.google.com/blog/ja/products/containers-kubernetes/your-guide-kubernetes-best-practices
https://www.coursera.org/specializations/gcp-architecture-jp
https://www.qwiklabs.com/?locale=ja
https://codelabs.developers.google.com/next17-tok/
https://codelabs.developers.google.com/

今後

使わなかった機能については引き続き確認する必要がある
試験の内容は以下
https://cloud.google.com/certification/guides/cloud-engineer
kubectlコマンドはGCPに限ったものではなく、kubernetesを操作するときに使えるものみたい。

1
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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?