Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Kindに頼らない!おうちで構築するマルチマスターKubernetes Cluster
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
tessy
December 02, 2025
220
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Kindに頼らない!おうちで構築する マルチマスターKubernetes Cluster
tessy
December 02, 2025
More Decks by tessy
See All by tessy
ALBがついに対応したmTLS認証でトラストストア、パススルーを検証してみた
tessy
1
4.1k
Cloudflareで取得したドメインをRoute53+ACMで管理する
tessy
1
430
EC2 AutoScalingでスケーリングポリシー設定を失敗してうまく行かなった件とその対策
tessy
0
950
TerraformでEC2 Auto Scaling構築してみた
tessy
4
1.2k
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
A Soul's Torment
seathinner
8
3.7k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Unsuck your backbone
ammeep
672
58k
Why Our Code Smells
bkeepers
PRO
340
58k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
450
Building Adaptive Systems
keathley
44
3.2k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
350
Transcript
Kindに頼らない!おうちで構築する マルチマスターKubernetes Cluster 日本IBM 手嶋 達也 2025/12/02 Kubernetes Novice Tokyo
#39
自己紹介 名前 :手嶋 達也 所属 :日本IBM X :@tterima 出生地 :広島県
得意 :AWS, Terraform, Ansible Infrastructure Architectとして従事 Platform Engineering、SREなどに興味あり Kubernetesはプロダクション利用経験ありません。 自宅ラボにProxmox, Raspberry PIを導入しKubernetes載せて遊んでいます。
Kubernetes キャッチアップ したい
Kubernetesについ て調べよう
まずはクラスタの 構築から調査
Kubernetesクラスタ を構築する手段が複 数あるらしい
Kubernetesクラスタを構築する手段 マネージドサービス 自前で構築 Amazon Elastic Kubernetes Service Google Kubernetes Engine
Azure Kubernetes Service Kind minikube k3s 簡単 難しい 構築難易度 まずはKindから 触ってみる
Kindについて Kind = Kubernetes in Dockerの略 ✓Docker(Podman)を利用して、 Kubernetesクラスタを簡易に構築可能 ✓ホストマシンは1台構成のみサポート →Kubernetes自体のテスト用に開発
とりあえず触りたいならおすすめ ❯ cat kind-config.yaml kind: Cluster apiVersion: kind.x-k8s.io/v1alpha4 nodes: - role: control-plane extraPortMappings: - containerPort: 30080 # nginx hostPort: 8080 - containerPort: 30432 # postgresql hostPort: 5432 - role: control-plane …. - role: worker extraMounts: - containerPath: /postgres hostPath: ./postgresql/data WorkerNode kind create cluster MasterNode MasterNode https://kind.sigs.k8s.io/
簡単!だけど構築の 学習にならない。。 そうだ。kubeadmで 構築しよう
kubeadmについて ✓kubernetes クラスタを構築するためのファストパスを提供 ✓複数ホストでクラスタを構成可能 ✓ただし、ホストマシンに対して様々な設定が必要なため構築が大変 ✓Productionでも利用できるはず https://github.com/kubernetes/kubeadm https://www.raspberrypi.com/products/raspberry-pi-5/ https://www.minisforum.jp/products/minisforum-nab6 ✓
せっかくなので、物理ホスト使いたい! ✓ Raspeberry PI購入 ✓ 仮想ホスト(Proxmox)専用マシンも欲しい! ✓ MinisForum NAB9購入 これを 受けて よくある流れだと思います
Kubernetes Cluster Kubeadmを利用したクラスタ構築 以下の構成で構築します MasterNode WorkerNode WorkerNode MasterNode MasterNode Nginx
k8s bastion kubectl API通信、podへの通信
Kubeadmを利用したクラスタ構築 – 最初のMasterNode 最初のMasterNodeを構築し、追加のNodeを参加させる 以下の対応を行う。 • kubeadmのインストール • kubeletのインストール •
コンテナランタイムのインストール • IPv4フォワーディングの有効化等 MasterNode
Kubernetes Cluster Kubeadmを利用したクラスタ構築 – 追加のNode kubeadm token createコマンドで MasterNode, WorkerNodeをクラスタに
参加させる kubeadm token create --print-join-command MasterNode 必要なNodeの数だけ参加させる WorkerNode MasterNode
Kubernetes Cluster Kubeadmを利用したクラスタ構築 – 追加のNode kubeadm token createコマンドで MasterNode, WorkerNodeをクラスタに
参加させる kubeadm token create --print-join-command MasterNode 必要なNodeの数だけ参加させる WorkerNode MasterNode
Kubeadmを利用したクラスタ構築 – APIエンドポイントのマルチ対応 MasterNodeはマルチになりましたが、Kubernetes APIを発行するエンド ポイントが最初のMasterにのみ通信するようになっていますので、これを 修正します。 Kubernetes Cluster MasterNode
WorkerNode WorkerNode MasterNode MasterNode Nginx K8s bastion kubectl API通信 podへの通信
Kubeadmを利用したクラスタ構築 – APIエンドポイントのマルチ対応 /etc/kubernetes/kubelet.confにAPIエンドポイントの設定があるため、今 回はこれをNginx宛に修正します。 cat /etc/kubernetes/kubelet.conf apiVersion: v1 clusters:
- cluster: certificate-authority-data: ... server: https://最初のmaster:6443 name: default-cluster cat /etc/kubernetes/kubelet.conf apiVersion: v1 clusters: - cluster: certificate-authority-data: ... server: https://Nginx:6443 name: default-cluster
Kubeadmを利用したクラスタ構築 – APIエンドポイントのマルチ対応 これでAPIエンドポイントがマルチマスター対応になりました。 Kubernetes Cluster MasterNode WorkerNode WorkerNode MasterNode
MasterNode Nginx k8s bastion kubectl API通信、podへの通信
Kubeadmを利用したクラスタ構築 – 踏み台サーバの設定 あとは、マルチマスターなクラスタに対して、kubectlを発行するための踏 み台サーバ(k8s-bastion)を構築して完了です。 Kubernetes Cluster MasterNode WorkerNode WorkerNode
MasterNode MasterNode Nginx k8s bastion kubectl API通信、podへの通信
まとめ kubeadmを利用したマルチマスターClusterを構築することで、Kubernetes で構成されている内部コンポーネントを少し理解することが出来た。 構築中は色々と苦労したが、この苦労が糧になると信じています。 APIエンドポイント等はkubeadmで構築しないと意識出来ないポイントだな と思いました。 今後はこのクラスタに対して、監視/CICDなどを追加して遊びたいと思いま す。