K8s 5分講座#11 Podのデプロイ 

Monta

今日はPodのデプロイ(≒Podを利用可能状態にする)具体的なオペレーションについて学んでいこう。

はかせ
はかせ
1

kubectl runコマンド

kubectl runコマンドは以前の講義で出てきましたね。

もんた
もんた

このコマンドが実際に行うのは、Podを作成し、コンテナをデプロイすることである。

はかせ
はかせ

コンテナイメージはどこから持ってくるのですか?

もんた
もんた

それは引数で指定する必要がある。今回はDocker Hub RepositoryからNginxのイメージをダウンロードする例を示す。

はかせ
はかせ
kubectl run nginx --image nginx

Docker Hubって、Dockerイメージが保存されているパブリックリポジトリでしたっけ?

もんた
もんた

そうだ。イメージは、パブリックなDockerハブの他、組織内のプライベートなリポジトリからでも引き出すことができ、それをベースにK8sを構成できる。

はかせ
はかせ
2

kubectl get podsコマンド

Podを作成後、Podのリストを見るにはkubectl get podsコマンドを使う。

はかせ
はかせ

kubectl runコマンドでデプロイした直後に打つと、下記のように表示されますね

もんた
もんた
kubectl get pods
NAME                 READY   STATUS             RESTARTS   AGE
nginx-12345678-abcde 1/1     ContainerCreating  0          3s

お、早速試しているな!感心感心。STATUSを見ると、ちょうどコンテナを作成中のようだ。もう一度打ってごらん。

はかせ
はかせ

お、数秒しか経ってないですが、Runningになりましたね!これが以前の講義でお話されていた起動が早い!ということですね。

もんた
もんた
kubectl get pods
NAME                 READY   STATUS   RESTARTS   AGE
nginx-12345678-abcde 1/1     Running  0          10s

実際に実行してみると、Podはコンテナ作成状態(ContainerCreating)から、すぐに実行状態(Running)に遷移することが分かる。

はかせ
はかせ

これでもうユーザがWebサーバにアクセスできる状態になるんですか?

もんた
もんた

いや、今はノードから内部的にアクセスすることはできるが、外部からアクセスするにはもうひと手間かかる。それは後の講義で触れよう。

はかせ
はかせ
今日のポイント
  • kubectl runコマンドで、Podの作成・コンテナのデプロイを行う
  • その時イメージの引き出し元(リポジトリ)を引数に指定する
  • kubectl get podsコマンドでPodのリストを確認できる

放課後

K8sのコマンドって、頭のkubectl長くないですか…?2文字くらいが良いんですけど。

もんた
もんた

実はエイリアス登録をすることで短くすることもできる。kubectlは”k”と1文字に短縮設定するのがエンジニアの嗜みだという者さえいる。

はかせ
はかせ

そうなんですね!ちょっとググってみます!

もんた
もんた
ABOUT ME
もんた
もんた
システムエンジニア歴15年、2児の父。
ITの世界に飛び込んで以来、仮想サーバ・ネットワーク・データベース・クラウド・コンテナ等、
様々な分野の業務に携わりながら、異動のたびに何度も”初心者”になり、学習を繰り返す。

会話形式でサラッと読み進められるIT技術講座を展開中。
読みやすいのに気づいたら基礎から応用まで身に付いている!そんな記事が目標です。
記事URLをコピーしました