Kubernetes ハンズオン演習
ホーム
ホーム
  • 0. ラボの使い方
  • 1. kubectl コマンドを使ってみる
  • 2. マニフェストファイルによる Pod の操作
  • 3. Deployment
  • 4. Service によるアプリケーションの公開
  • 5. デプロイ戦略
  • 6. PersistentVolume と StatefulSet の使用

0. ラボの使い方

ここではラボの使い方を学習します。

ステップ 1: 説明

このコースのラボはチャレンジ型の演習です

  • 各設問ではタスクや質問が出題されます。
  • 与えられた手順に従って作業するのではなく、解決や回答のために必要な作業を自身で考えて実行してください。
  • テキストを参照しながら各問題にチャレンジしてください。
  • 必要があればウェブで調べても構いません (ときどきテキストの範囲を超えた応用的な問題が出題されます)。

ステップ 2: 例題 1/4

以下の設定で、test-1 という名前の Pod を作成してください。

  • コンテナ名:test-1
  • イメージ:nginx:latest
Hints

解決/回答のためのヒントが書かれています。

kubectl run コマンドを使用します。

Solution

解決/回答のために必要な手順が書かれています。ヒントだけではわからない場合はここを参照してください。

kubectl run test-1 --image nginx:latest コマンドを実行します。


ステップ 3: 例題 2/4

このホストには何個の Pod が存在しますか。

  1. 0
  2. 1
  3. 2
  4. 3
  5. 4

選択問題も出題されます。
選択問題の多くは知識を問うものではなく、回答のために作業が必要になります。
自身で必要な作業を考え実行して回答してください。

Hints

kubectl get コマンドを使用します。

Solution

kubectl get pods コマンドを実行します。

Answer

3

ステップ 4: 例題 3/4

(※ スクリプトの実行が完了してから開始してください)
lab-pod という名前の Pod を作成しました。
この Pod で使用されているコンテナイメージは以下のどれですか。

  1. nginx
  2. ubutu
  3. redis
  4. webapp

設問の中でスクリプトが実行されることがあります。
この場合は、スクリプトの実行が完了し Done が出力されてから作業を開始してください。

Hints

kubectl describe pod コマンドを使用します。

Solution

kubectl describe pod lab-pod | grep Image コマンドを実行し、Image セクションの値を確認します。

Answer

redis

ステップ 5: 例題 4/4

/root/manifests/deployment-definition.yaml を用意しました。
このマニフェスト ファイルに必要な項目を追加して、以下の設定で Deployment を作成してください。

  • Deployment 名:test-2
  • イメージ:nginx
  • レプリカ数:2

ラボの中で YAML ファイルを編集することがあります。
この時、Editor を使用することができます。vi や nano を使用しても構いません。

Solution

/root/manifests/deployment-definition.yaml を以下のように更新します。

apiVersion: apps/v1
kind: Deployment
metadata:
  creationTimestamp: null
  labels:
    app: test-2
  name: test-2
spec:
  replicas: 2
  selector:
    matchLabels:
      app: test-2
  strategy: {}
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: test-2
    spec:
      containers:
      - image: nginx
        name: nginx
        resources: {}
status: {}

kubectl apply -f /root/manifests/deployment-definition.yaml コマンドを実行します。


完了


チャレンジ完了!

お疲れ様でした!

時間に余裕があれば 2 週目、3 週目にチェレンジしても構いません。
Hint や Solution を見ずにできるようになるまで何度でもチャレンジしてください。

Next
1. kubectl コマンドを使ってみる