【Kubernetes】Podを作成する

いよいよテックブログっぽくなってきました。笑
前回までの記事でKubernetesの環境準備まで終わったので、いろいろリソースを作っては壊して行こうと思います。



Podとは何か

Let's check 公式サイト

Podは、Kubernetes内で作成・管理できるコンピューティングの最小のデプロイ可能なユニットです。

Pod(Podという名前は、たとえばクジラの群れ(pod of whales)やえんどう豆のさや(pea pod)などの表現と同じような意味です)は、1つまたは複数のコンテナのグループであり、ストレージやネットワークの共有リソースを持ち、コンテナの実行方法に関する仕様を持っています。

Kubernetes公式サイト

個々のコンテナの管理はKubernetesに任せて、人間が直接管理しなくてよいと言うことですな。

早速実装

podの作り方はコマンドで作成したりyamlファイルで作ったりする方法があるみたいですが、ここでは公式サイトのやり方に則って「simple-pod.yaml」という名前のyamlファイルを作ってデプロイしてみます。(yamlも公式サイトに載ってます。ありがたや)

apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
  - name: nginx
    image: nginx:1.14.2
    ports:
    - containerPort: 80

以下のコマンドでデプロイします。

kubectl apply -f simple-pod.yaml
pod/nginx created

Podの一覧を取得してみます。

kubectl get pod
NAME    READY   STATUS    RESTARTS   AGE
nginx   1/1     Running   0          24m

nginxという名前のPodがRunningになっていることがわかります。

削除

何事もやりっぱなしはいけません。使い終わったリソースは消しましょう。

kubectl delete -f simple-pod.yaml
pod "nginx" deleted

再度一覧を取得し、Podが消えたことを確認します。

kubectl get pod                  
No resources found in default namespace.

最後に

今回はPodの基本的な操作を学ぶためにPod作成用のyamlを書いてデプロイしましたが、実際は(今後記事に書くであろう)DeploymentやJobなどのワークロードリソースからデプロイすることが多いようです。

ご覧いただきありがとうございました!