自称フルスタックエンジニアのぶろぐ。

pythonやreactや、gcpやawsなどなどについて書いていこうかと思います。

GKE(kubernetes) を超要約すると

GKEとは

まずは、これだけのイメージで触ってみると楽だと思う。

Dockerとかコンテナーの初学者や未経験者は、Dockerを1から学ぼうとする人がいるかもしれないが、 まずは触ってみた方がすごく早いと思う。

デプロイするまでの触りとしては、

  • Dockerイメージを作る or 適当に選ぶ
  • それを使ったPodを作るためのyamlファイル(manifesto)を作る。
  • kubectl でデプロイする。
デプロイ
kubectl create -f xxxx.yaml

削除
kubectl delete -f xxxx.yaml

ちょっと書いてある事複雑そうに見えるけど、下記を何も考えずにやってみると良いかも

Redis と PHP を使用したゲストブックの作成  |  Kubernetes Engine のチュートリアル  |  Google Cloud

Kind

Deploy

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: sample
spec:
  replicas: 1 # 生成するpodsの数
  template:
    metadata:
      labels:
        app: sample-app
    spec:
      containers:
      - name: sample-app
        image: xxx # podで動かしたいdocker image
        imagePullPolicy: Always
        env:
          # 環境変数はこのブロックに記載
        ports:
        - containerPort: 8080

Service

apiVersion: v1
kind: Service
metadata:
  name: sample-backend
spec:
  type: NodePort
  selector:
    app: sample-app # 管理下にするpod名
  ports:
  - port: 80 # このサービスで受けるport番号
    protocol: TCP
    targetPort: 8080 # 管理podに投げるport番号

Ingress

HTTP(S) LB用のManifest

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: sample-ingress
  annotations:
    kubernetes.io/ingress.global-static-ip-name: xxxx # 予約している静的IP名
spec:
  backend:
    serviceName: sample-backend # 待機するサービス
    servicePort: 80 # 待機するport

murabo.hatenablog.com

murabo.hatenablog.com