Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
コンテナって何?(Kubernetes入門)
Search
みのるん
January 30, 2022
Technology
17
12k
コンテナって何?(Kubernetes入門)
初心者むけK8sハンズオンの補助資料です
https://qiita.com/minorun365/items/0441e4878f0984a9fc0a
みのるん
January 30, 2022
Tweet
Share
More Decks by みのるん
See All by みのるん
AWSの新機能をフル活用した「re:Inventエージェント」開発秘話
minorun365
2
520
まだ間に合う! Agentic AI on AWSの現在地をやさしく一挙おさらい
minorun365
19
3.3k
【AWS re:Invent 2025速報】AIビルダー向けアップデートをまとめて解説!
minorun365
4
590
AIエージェントは「使う」だけじゃなくて「作る」時代! 〜最新フレームワークで楽しく開発入門しよう〜
minorun365
11
2.4k
Bedrock AgentCoreで解き放て! Strands Agentsで構築するマルチエージェントの実装Tips
minorun365
12
4.4k
まだ間に合う! StrandsとBedrock AgentCoreでAIエージェント構築に入門しよう
minorun365
13
3k
AWSの最新サービスでAIエージェント構築に楽しく入門しよう
minorun365
14
2.4k
Strands Agents & Bedrock AgentCoreを1分でおさらい
minorun365
10
1.6k
AIエージェント最前線! Amazon Bedrock、Amazon Q、そしてMCPを使いこなそう
minorun365
20
8k
Other Decks in Technology
See All in Technology
「アウトプット脳からユーザー価値脳へ」がそんなに簡単にできたら苦労しない #RSGT2026
aki_iinuma
3
150
小さく、早く、可能性を多産する。生成AIプロジェクト / prAIrie-dog
visional_engineering_and_design
0
240
通勤手当申請チェックエージェント開発のリアル
whisaiyo
3
630
AWSに革命を起こすかもしれない新サービス・アップデートについてのお話
yama3133
0
530
「もしもデータ基盤開発で『強くてニューゲーム』ができたなら今の僕はどんなデータ基盤を作っただろう」
aeonpeople
0
270
SES向け、生成AI時代におけるエンジニアリングとセキュリティ
longbowxxx
0
260
Knowledge Work の AI Backend
kworkdev
PRO
0
340
Building Serverless AI Memory with Mastra × AWS
vvatanabe
1
810
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
2
540
AWS re:Inventre:cap ~AmazonNova 2 Omniのワークショップを体験してきた~
nrinetcom
PRO
0
120
2025年 山梨の技術コミュニティを振り返る
yuukis
0
130
re:Invent2025 セッションレポ ~Spec-driven development with Kiro~
nrinetcom
PRO
2
160
Featured
See All Featured
Ethics towards AI in product and experience design
skipperchong
1
150
A better future with KSS
kneath
240
18k
Fireside Chat
paigeccino
41
3.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
200
Context Engineering - Making Every Token Count
addyosmani
9
570
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Building AI with AI
inesmontani
PRO
1
590
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
97
[SF Ruby Conf 2025] Rails X
palkan
0
660
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Transcript
コンテナって何? (Kubernetes⼊⾨) みのるん @minorun365
むかしむかし「サーバー」がいました 物理サーバー 業務アプリを 24h稼働できる つよいコンピューター。 データセンターに⽣息 スペック⾜りない 台数増やしたい 機材注⽂、搬⼊… くそメンドイし時間かかる。
気軽に構成変更できない。
物理は⾯倒なので「仮想化」されました 物理サーバー 業務アプリを 24h稼働できる つよいコンピューター。 データセンターに⽣息 物理機器そのままで サーバーをいくつも 動かせればいいのに 1台の物理マシン上で
複数の仮想マシンを動かせる。 (VMware社のvSphereなど) これが15年前ぐらいのトレンド 仮想サーバー on 物理 OS(Linuxなど) アプリ 仮想ホストOS(ESXなど) 仮想マシン1 ゲストOS1 アプリ1 仮想マシン2 ゲストOS2 アプリ2
クラウド化で根っこの物理も不要に 仮想マシン増えて 管理や増設⾯倒… 物理ホストすら もう持ちたくない 祝!⾃社データセンター卒業。 レイヤー低めなインフラエンジニアは ここで職を失うことに 仮想サーバー on
クラウド パブリッククラウド EC2 ゲストOS1 アプリ1 EC2 ゲストOS2 アプリ2 仮想サーバー on 物理 仮想ホストOS(ESXなど) 仮想マシン1 ゲストOS1 アプリ1 仮想マシン2 ゲストOS2 アプリ2
仮想マシンすら邪魔になってきた EC2増設するたび Linux構築⾯倒… アプリ+環境だけ 持ち運べないかな アプリ+ライブラリ+ミドルウェアを 包み込んでOSから分離(Dockerなど) 超軽量で開発しやすく、デプロイも⾼速! これが10年前ぐらいのトレンド コンテナ
on 仮想サーバー 仮想サーバー on クラウド パブリッククラウド EC2 ゲストOS1 アプリ1 EC2 ゲストOS2 アプリ2 パブリッククラウド EC2 ゲストOS1 コンテナ1 アプリ1 コンテナ2 アプリ2 EC2 ゲストOS2 コンテナ3 アプリ3
Kubernetes の世界 ちょっと待ってコンテナ増えすぎた コンテナ on Kubernetes パブリッククラウド EC2 ゲストOS1 コンテナ1
アプリ1 コンテナ2 アプリ2 EC2 ゲストOS2 コンテナ3 アプリ3 EC2 ゲストOS3 Kubernetes 管理ミドルウェア 管理 Googleのすごい⼈が 作った管理ツール
Kubernetes の世界 低レイヤーはどんどんマネージド化 コンテナ on EKS パブリッククラウド コンテナ1 アプリ1 コンテナ2
アプリ2 EC2 ゲストOS2 コンテナ3 アプリ3 管理 EKS Kubernetes 管理ミドルウェア Fargate
EKS K8s の世界 ようやくKubernetes(=K8s)の解説 パブリッククラウド コンテナ1 アプリ1 コンテナ2 アプリ2 EC2
ゲストOS2 コンテナ3 アプリ3 管理 Kubernetes 管理ミドルウェア Fargate コントロールプレーン (リーダー) データプレーン (メンバー)
EKS K8s の世界 ようやくKubernetes(K8s)の解説 パブリッククラウド コンテナ1 アプリ1 コンテナ2 アプリ2 EC2
ゲストOS2 コンテナ3 アプリ3 管理 Kubernetes 管理ミドルウェア Fargate コントロールプレーン (リーダー) データプレーン (メンバー) ワーカーノード マスターノード コマンド& 定義ファイル で操作 (GUIなし) AWSマネコン で操作 (GUIあり)
今回のハンズオン環境 あなた 会社PC AWSアカウント CloudShell ブラウザーで ログイン IAMユーザー コマンド 操作
クラスター作成指⽰ (eksctl) EKS
EKSが⾃動でクラスターを作ってくれる あなた 会社PC AWSアカウント CloudShell ブラウザーで ログイン IAMユーザー コマンド 操作
クラスター作成指⽰ (eksctl) EKS Kubernetesクラスター (リーダー+メンバーの1セット) リーダー (まだコンテナなし) EC2 EC2 メンバー 管理 派遣
K8s世界の操作は「リーダーに命令」 あなた 会社PC AWSアカウント CloudShell ブラウザーで ログイン IAMユーザー コマンド 操作
EKS Kubernetesクラスター (リーダー+メンバーの1セット) リーダー (まだコンテナなし) EC2 EC2 メンバー 管理 K8s操作コマンド (kubectl)
細かい注⽂はファミレス⽅式で あなた 会社PC AWSアカウント CloudShell ブラウザーで ログイン IAMユーザー コマンド 操作
EKS Kubernetesクラスター (リーダー+メンバーの1セット) リーダー EC2 EC2 メンバー 管理 K8s操作コマンド (kubectl) 定義ファイル (注⽂書) YAML コン テナ コン テナ コン テナ
クラスターができたら 実際にコンテナを操作してみる
コンテナ作成前の状態 あなた 会社PC AWSアカウント CloudShell IAMユーザー EKS Kubernetesクラスター コントロール プレーン
(まだコンテナはいない) EC2(ノード) EC2 (ノード) データプレーン どんなPodがいますか? (kubectl get pod) 確認
コンテナ(Pod)を作ってみる あなた 会社PC AWSアカウント CloudShell IAMユーザー Kubernetesクラスター コントロール プレーン EC2(ノード)
EC2 (ノード) データプレーン 注⽂書のとおりPodを作ってね (kubectl apply ‒f 注⽂書) 定義ファイル (注⽂書) YAML my- nginx 作成 Pod アップロード EKS K8sの世界では コンテナを包んだ 最⼩単位をPodという Pod コンテナ
Podにログインしてみる あなた 会社PC AWSアカウント CloudShell IAMユーザー Kubernetesクラスター EC2(ノード) EC2 (ノード)
あのPodでコマンド実⾏したい (kubectl exec) my- nginx いまここ 気分
もう1つPodを作ってみる あなた 会社PC AWSアカウント CloudShell IAMユーザー Kubernetesクラスター EC2(ノード) EC2 (ノード)
注⽂書のとおりPodを作ってね (kubectl apply ‒f 注⽂書) 定義ファイル (注⽂書) YAML my- nginx 作成 Pod アップロード fumi dai Pod
Podから別のPodへ通信してみる あなた 会社PC AWSアカウント CloudShell IAMユーザー Kubernetesクラスター EC2(ノード) EC2 (ノード)
あのPodでコマンド実⾏したい (kubectl exec) my- nginx いまここ 気分 fumi dai HTTPアクセス (curl)
Podを冗⻑化してみる(レプリカセット) あなた 会社PC AWSアカウント CloudShell IAMユーザー Kubernetesクラスター EC2(ノード) EC2 (ノード)
あのPodを常時3台ほしい (kubectl apply ‒f 注⽂書) triple- nginx fumi dai 定義ファイル (注⽂書) YAML アップロード triple- nginx triple- nginx 作成 レプリカセット
複数Podへロードバランスする(サービス) あなた 会社PC AWSアカウント CloudShell IAMユーザー Kubernetesクラスター EC2(ノード) EC2 (ノード)
my- nginx fumi dai my- nginx my- nginx my- nginx サービス いまここ 気分 HTTPアクセス (curl) この3 Podは 同サービスとする 定義ファイル (注⽂書) YAML アップロード
複数Podをローリング更新(デプロイメント) あなた 会社PC AWSアカウント CloudShell IAMユーザー Kubernetesクラスター EC2(ノード) EC2 (ノード)
現Ver fumi dai 現Ver 新Ver デプロイメント 新バージョンの コンテナイメージ を適⽤! 定義ファイル (注⽂書) YAML アップロード 新Ver 新Ver