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
EKS勉強会
Search
世良泰明
February 27, 2024
Technology
170
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
EKS勉強会
2024/2/27 JAWS-UG名古屋の勉強会資料
セッション発表資料
- EKS入門
- ハンズオン解説
世良泰明
February 27, 2024
More Decks by 世良泰明
See All by 世良泰明
ホームラボ紹介
y_sera15
0
100
Serendie Design Systemを使ってWebアプリケーションを開発してみた
y_sera15
0
150
Kubernetesの公式ドキュメントを翻訳してみた
y_sera15
0
70
ラズパイ奮闘記 その1
y_sera15
0
79
metrics-serverをセキュアなTLSでデプロイしてみた
y_sera15
0
680
自宅k8s構築日記 冬休み編
y_sera15
0
300
自宅k8sクラスター構築日記
y_sera15
0
260
EKSを動かしてみた話
y_sera15
0
130
ちょっと大きめのOSSにコントリビュートしかけた話
y_sera15
0
310
Other Decks in Technology
See All in Technology
20260801_スクフェス大阪
kgnkhkr
2
1.2k
JavaScript 研修 (2026)
recruitengineers
PRO
1
420
【CEDEC2026】ゲームシナリオライターを支援するAIツール開発の実践 ― 設計とプロンプトの工夫 ―
cygames
PRO
1
760
サイバー捜査員研修(後半)
nomizone
1
780
『三匹の子ぶた』から学ぶネットワークセキュリティの昔と今 / Network Security: Then and Now Through the Lens of The Three Little Pigs
nttcom
1
1.7k
社内の7割が使うデータ基盤を、 データチーム2人で回すためにやったこと
koh_yoshi
4
870
オートロックマンションなのに、各部屋は施錠なし!? 攻撃者が組織内ネットワークで大暴れする理由 / The Front Door Is Locked, but the Rooms Are Wide Open: Why Attackers Move Freely Inside Enterprise Networks
nttcom
1
1.6k
え?フロントエンドエンジニアの ワイがインフラも!?
puku0x
1
370
Redmine 7.0 新機能・機能強化解説(OSC2026京都ダイジェスト版)
vividtone
1
200
新しい SLO が良い感じにハマっている話
z63d
5
2.1k
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
モノリス Rails でも日中に rails db:migrate を走らせたい! / Daytime rails db:migrate on Monolithic Rails!
euglena1215
4
530
Featured
See All Featured
New Earth Scene 8
popppiees
3
2.5k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Ethics towards AI in product and experience design
skipperchong
2
340
Skip the Path - Find Your Career Trail
mkilby
1
180
Chasing Engaging Ingredients in Design
codingconduct
0
260
Technical Leadership for Architectural Decision Making
baasie
3
470
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.2k
Agile that works and the tools we love
rasmusluckow
331
22k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Transcript
EKS勉強会 2023/2/27 JAWS-UG 名古屋 世良泰明
タイムテーブル 時刻 内容 発表者 19:00 開始挨拶 19:05~19:35 ハンズオン環境構築1 ~EKS構築まで 19:15~19:35
EKS入門 世良泰明 19:35~19:50 ハンズオン環境構築2 ~ GitOps環境構築 19:40 ~ 19:50 ハンズオン概要説明 世良泰明 19:50~20:15 GitOpsハンズオン実施 20:15~20:35 後片付け1 GitOps環境削除 20:20:~20:35 (仮)AWSにおけるコンテナ AWS 川路さん 20:35~20:45 後片付け2 EKSクラスター削除 20:45~20:50 告知 20:50~20:55 撤収
まずは環境構築 クラスター構築に時間がかかるので、まずはこちらの手順0~3までを実施 https://github.com/y-sera/jaws-ug-nagoya-202402-handson
EKS入門 2023/2/27 JAWS-UG 名古屋 世良泰明
自己紹介 名前: 世良 泰明 (せら やすあき) 職業: ひよっこインフラエンジニア (3年目) 名古屋の某SIer所属
AWS上でインフラ構築・運用 趣味: 囲碁, 散歩, etc… twitter: @y_sera15 自宅K8sクラスター
目次 自己紹介 今日の話 Kubernetesとは(概要) Kubernetesの世界観 AWSとの世界のつなぎ目 EKSの嬉しいところ、つらいところ 乗り越えなければならない壁 まとめ 今日のゴール:
- Kubernetesの世界観を知ってもらう - AWSとのつなぎ目を理解してもらう - 乗り越えるべき壁を雰囲気だけ知ってもらう
EKS/Kubernetesとは Amazon Elastic Kubernetes Service (Amazon EKS) EKSとは? Amazon Elastic
Kubernetes Service (Amazon EKS) は、 Amazon Web Services (AWS) 上で、独自の Kubernetes コントロールプレーンをインストール、運用、保守 する必要がないマネージド型サービスです。 Kubernetesとは? コンテナ化されたアプリケーションの管理、スケーリング、 デプロイを自動化するオープンソースシステムです。 -> ECSと何が違うの?
Kubernetesの世界観 Kubernetesは、リソースを抽象化して扱う - AWSにあるような諸々リソースはKubernets上にも存在する - 標準で存在しないリソースも, カスタムリソースとして定義できる 要するに、Kubernetesは小さなクラウドみたいなもの 種類 Kubernetes
AWS コンテナ Pod ECSタスク コンテナ(上位概念) deployment ECSサービス ストレージ PersistentVolume EBS アカウント ServiceAccount IAMロール パラメータ Configmap パラメータストア
AWSとKubernetesの世界のつなぎ目 KubernetesがAWSリソースを活用する場合 -> AWSの認証認可を挟む必要がある 例: - パラメータストアから値を引っ張りたい - RDSのデータを参照したい ⇒
IAMロールが必要 一方, Kubernetesにもサービスアカウント(無人格ユーザー)が存在する. これらを紐づけてやる必要がある. AWS Cloud OIDCプロバイダーを作成し, CLI等でロールとサービスアカウントで関連付けることにより, EKS内のリソースでもAWSサービスが利用できる
EKSの嬉しいところ, つらいところ 嬉しいところ - 各種リソースが同じ形式のyamlファイル(マニフェスト)で扱える - IaCが簡単 - どんなアプリでも同じような形に落とし込める -
他クラウドへの移行が楽 - 抽象化されているので、ほぼそのままお引越し可能 - スケールメリットが大きい - ECSだとアプリ単位. EKSは基盤色が強い つらいところ - 学習コストが高い - AWS, EKSの両方の世界観を理解する必要がある - OSSのエコシステム(流行り廃りが激しい) - バージョンアップ対応 - 数か月に1度は上げる必要あり - 手動運用だと逆にしんどい
乗り越えなければならない壁 この2つができないと, 余計に苦しくなる - マニフェスト管理 Kubernetesの各種リソースが記載されたyamlをgit等で管理する - 自動化(GitOps) Git管理されたリソースのマニフェストが更新されたら, 自動でクラスターが追従する
逆に, - マニフェストを適用しておしまい - コマンド操作でリソース変更/編集 だと, 運用オペレーションが余計に煩雑になってしまう. (それならECSのマネコンぽちぽちの方がまだ楽でよい) 今日はこの後これ(自動化)を体感してもらいます!!!
まとめ 以下の概要を説明した - Kubernetesの世界観 - AWSとの世界のつなぎ目 - EKSの嬉しいところ、つらいところ - 乗り越えなければならない壁
EKSを選ぶなら, なるべく自動化しましょう!!
タイムテーブル 時刻 内容 発表者 19:00 開始挨拶 19:05~19:35 ハンズオン環境構築1 ~EKS構築まで 19:15~19:35
EKS入門 世良泰明 19:35~19:50 ハンズオン環境構築2 ~ GitOps環境構築 19:40 ~ 19:50 ハンズオン概要説明 世良泰明 19:50~20:15 GitOpsハンズオン実施 20:15~20:35 後片付け1 GitOps環境削除 20:20:~20:35 (仮)AWSにおけるコンテナ AWS 川路さん 20:35~20:45 後片付け2 EKSクラスター削除 20:45~20:50 告知 20:50~20:55 撤収
GitOps環境構築 install.shスクリプトを実行し, GitOps環境に必要なコンポーネントを諸々構築していく https://github.com/y-sera/jaws-ug-nagoya-202402-handson
ハンズオン解説 2023/2/27 JAWS-UG 名古屋 世良泰明
GitOpsとは Gitリポジトリを起点とし、DeployエージェントによってKubernetesへアプリケーションをデプロイする 手法 嬉しさ - 構成情報 = 実機情報 - デプロイにおける権限を絞れる
アプリソース用リポジトリ マニフェスト用リポジトリ Deploy Agent
使用する主なコンポーネント AWS CodeCommit - Gitリポジトリとして使用. - アプリソース用とマニフェスト用の2つ存在. - アプリソース用はlambdaでCIパイプラインへトリガー通知 Amazon
ECR - ビルドしたアプリ用コンテナを格納. アプリソース用 マニフェスト用 Tekton - Kubernetes上で動くCIツール. - lambdaのwebhookをトリガーに, CIパイプラインを実行する - アプリソースをビルドし, ECRへpushおよびマニフェストリポジトリの更新を行う. ArgoCD - Kubernetesで動くデプロイツール - マニフェスト用のリポジトリを監視し, 変更があればそれに従ってデプロイを行う
今回の構成
処理の流れ 1. コード変更 /push
処理の流れ 2.CIパイプラインへ webhook
処理の流れ 3. CIパイプライン起動
処理の流れ 3. CIパイプライン起動 アプリソースの クローン アプリのビルド コンテナのビルド ECRへpush マニフェストの更新 (Kubernetesが立てるコンテ
ナの情報を変更する)
処理の流れ 4.変更を検知し, アプリをデプロイする
タイムテーブル 時刻 内容 発表者 19:00 開始挨拶 19:05~19:35 ハンズオン環境構築1 ~EKS構築まで 19:15~19:35
EKS入門 世良泰明 19:35~19:50 ハンズオン環境構築2 ~ GitOps環境構築 19:40 ~ 19:50 ハンズオン概要説明 世良泰明 19:50~20:15 GitOpsハンズオン実施 20:15~20:35 後片付け1 GitOps環境削除 20:20:~20:35 (仮)AWSにおけるコンテナ AWS 川路さん 20:35~20:45 後片付け2 EKSクラスター削除 20:45~20:50 告知 20:50~20:55 撤収