3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Docker 入門者のアウトプットAdvent Calendar 2024

Day 17

KindでKind作ってKindで指定するんだって

Last updated at Posted at 2024-12-16

背景

GPTで小さいRESTサービスなんて作り放題な時代になりました
「無尽蔵に出来るREST管理といえば、難し気で避けてたkubernetesじゃないだろうか
kindならWSL2内のdocker-ceにするっと入るじゃないか」
この記事は、そんなkindとの出会い後、いきなり洗礼を受けた人の失敗の記録です
同じ勘違いをする少数派の同士に捧げます

環境

  • Windows 11 Pro for Workstations 23H2
  • WSL 2.3.26.0
  • ubuntu 24.04.1 LTS (Windowsストア版)
  • Docker version 27.3.1, build ce12230

kind 公式通りに進める

> kind create cluster
> kind get clusters   #名前省略時のデフォルト クラスター名はkind
kind              #kindという名前のクラスターが出来ている
> kind delete cluster 

kindコマンドでkindクラスターを操作するなんて、手順を残したときに、ややこしすぎるから違う名前にしたくなるのが人情ではないでしょうか

> kind create cluster --name kind-2
> kind get clusters 
kind2

なるほど。でも、コマンドで直接打っちゃ記録が残らない。設定ファイル(マニュフェストファイル)をgit管理があるべき姿だ くらいは思うのが自然な流れではないでしょうか
--configをつければ設定ファイル(マニュフェストファイル)が指定できるので

>kind create cluster --config=kind-cluster.yaml

と、打てばよくて
あとは、この↓サンプルkind-cluster.yaml に希望クラスタ名を書いておけば良いハズなので

kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
  - role: control-plane

サンプルのyamlも、クラスタ名が「Cluster」というヒネリのない名前になってる、、、
これを「kind-2」に書き換えて・・・・・・

はイケません
name: kind-2 を1行追加するのが正解です

KindでKind作ってマニュフェストファイルの種類もKindで指定

少し進むと、そこは DeplymentとかServiceとかマニュフェストファイルの種類を書く場所だと分かるのですが、先入観+謎エラーメッセーに捕らわれると、案外ハマりました
Kind: Cluster の 「kind」は、「kubernetes kindの kind」でなく「中学英語で出てくる 種類の意味の kind」とのことです。せてめて「kinds」にしておいてくれたら個人的には「親切」を感じだのですが、それは先人達の決められたことでございます

この記事が同士に届くことを祈っています

では、よいk8sライフを

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?