Skip to content

Latest commit

 

History

History
108 lines (76 loc) · 4.01 KB

File metadata and controls

108 lines (76 loc) · 4.01 KB

K8s practice

まえがき

K8s practice はこれからKubernetes(以下、K8s)に入門する方を対象とした練習問題集です。 kubectlを使用した操作や基本的なリソースの使い方などの基本を押さえることを目的としています。 テーマごとに動作や使い方を学ぶ問題を用意しています。 問題の指示や公式ドキュメントを参考に自身で考えながら進めてください。

CKA/CKADの試験対策としても使えると思います。

本practiceの内容に誤記載や不明点があれば、GitHubのissueにてご指摘ください。また、追加して欲しい内容もissueにてご要望ください。

カテゴリについて

K8s practice は大きく以下の4つのカテゴリに分けています。 カテゴリ順に進んでいくことを想定していますが、気になる/学びたいリソースのところだけ問題を解くこともできます。

カテゴリ 内容
Beginner 初級カテゴリです。kubectlやPodなど基礎となるリソースについて扱います。
Intermediate 中級カテゴリです。K8s標準で使えるリソースを扱います。
Advanced 上級カテゴリです。アドオンを追加することで使用できるリソースを扱います。
Security セキュリティに特化したカテゴリです。CKSで問われる内容について扱います。

前提

以下に本問題集を実施するための前提条件を記載します。

実習環境

本問題集ではkubectlのインストールやK8sクラスタ作成などの実習環境の構築は取り扱いません。 実習環境は別途用意して、kubectlでクラスタに接続できる状態としてください。

これらを準備する手順としてはAmazon EKSの開始方法などを参考にしてください。

ℹ️
EKSクラスタで使用するノードはマネージド型ノードを選択してください。 AWS Fargateは機能制約があるため、Amazon EBSを使用した問題など、一部の練習問題が実施できません。

ℹ️
AWSのコンソール画面でEKSを作成する場合、学習のためオートモードをOFFにすることを推奨します。

環境構築に困ったら
環境構築に困った場合は以下を参考にしてみてください。
  • eksctlのダウンロードとインストール

    # eksctlのダウンロードとインストール
    curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp
    
    # 確認
    ls -l /tmp/eksctl
    
    # バイナリの移動
    sudo mv /tmp/eksctl /usr/local/bin
    
    # 実行権限の付与
    sudo chmod +x /usr/local/bin/eksctl
    
    # インストール確認
    eksctl version
  • eksctlコマンド

    # クラスタ作成
    eksctl create cluster \
      --name k8s-practice \
      --region <リージョン> \
      --nodes=2 \
      --node-type t3.medium \
      --version 1.34
    
    # クラスタ削除
    eksctl delete cluster \
      --name k8s-practice \
      --region <リージョン>
  • terraform

各コンポーネントのバージョン

本問題集のベース環境は以下の通りです。 その他のマネージド・サービスやベアメタルのK8sでも問題を解くことはできると思いますが、 その場合は環境差異にあたる部分を適宜読み替えてください。

環境 バージョン
kubectl 1.23
Amazon Elastic Kubernetes Service (EKS) 1.22