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-Meetup-Tokyo-53
Search
masayosu
October 06, 2022
Technology
1
1.3k
Kubernetes-Meetup-Tokyo-53
masayosu
October 06, 2022
Tweet
Share
More Decks by masayosu
See All by masayosu
Amazon EKS マルチテナントクラスターにおける ArgoCDを利用した デプロイフローの話
masayoshimaezawa
0
5k
CircleCI_meetup7.pdf
masayoshimaezawa
1
150
BitValleyInside_auポータルでの取り組み.pdf
masayoshimaezawa
0
430
re:Invent2018 report
masayoshimaezawa
0
50
某ポータルサイト リニューアルの話(インフラ)
masayoshimaezawa
0
110
$5からはじめるLightsail
masayoshimaezawa
3
380
Other Decks in Technology
See All in Technology
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
1
120
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
5.2k
データ民主化のための LLM 活用状況と課題紹介(IVRy の場合)
wxyzzz
2
700
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
370
Tebiki Engineering Team Deck
tebiki
0
24k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
AI駆動PjMの理想像 と現在地 -実践例を添えて-
masahiro_okamura
1
110
What happened to RubyGems and what can we learn?
mikemcquaid
0
250
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
230
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
380
Webhook best practices for rock solid and resilient deployments
glaforge
1
280
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
0
120
Featured
See All Featured
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
72
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Designing for Timeless Needs
cassininazir
0
130
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Everyday Curiosity
cassininazir
0
130
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
92
Rails Girls Zürich Keynote
gr2m
96
14k
Practical Orchestrator
shlominoach
191
11k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
210
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Scaling GitHub
holman
464
140k
Transcript
id:masayosu / @masayosu 2022/10/07 Kubernetes Meetup Tokyo #53 1 Kubernetesをより高度に
活用するための一歩目
自己紹介 • @masayosu • 株式会社はてな 組織・基盤開発本部 プラットフォーム部 サービスプラットフォームチーム SRE •
趣味 ◦ 登山、キャンプ、ゲーム 2
3 はてなにおける Kubernetesの取り組み
はてなにおけるKubernetesの取り組み • 一部のチームのプロダクション環境で Kubernetesを利用 • クラウドプロバイダーが提供するマネージド サービス(EKS, GKE)を利用 • AWS
ECS > AWS EKS 4
Hatena Developer Blog https://developer.hatenastaff.com/entry/2022/02/03/100525 5
Kubernetes Meetup Tokyo #52 https://speakerdeck.com/hayajo/kubernetes-meetup-tokyo-number-22-cfc51d31-6b4c-44f0-a715-5c3fe1f14650 6
2つの課題 • エンジニア組織の課題 ◦ Kubernetesの知見が利用しているチーム内に 閉じてしまっている • Kubernetes運用チームの課題 ◦ Kubernetesの運用はできているが使いこなせ
ていない 7
エンジニア組織の課題 • Kubernetesの知見が利用しているチーム内に 閉じてしまっている 8
チームを横断した組織で取り組む 9 チームA チームB チームC SRE標準化委員会 CloudNative推進会
これまでの取り組みの成果 • コンテナチェックリスト • CloudNativeな環境におけるプラクティスを 社内に共有 ◦ CI/CD ◦ Batch
Processing • EKSの社内標準構成の検討 • EKS構築ソンの実施(現在進行中) 10
Kubernetes運用チームの課題 • Kubernetesの運用はできているが使いこなせ ていない 11
Kubernetesを利用する理由 • より高度なDevOpsを実現するためにカスタ マイズができる ◦ Admission Webhook, CRD, CustomController を利用することで実現可能
◦ ただでさえ複雑なk8sのより難しい部分に触れて いく必要がある ▪ →学習が必要 12
13 学習アプローチ
知識をインプット • 2ヶ月間、週に1時間あつ まってもくもく会を実施 • Kubebuilderを利用した Admission Webhookや CustomControllerの開発方 法を学習
14 https://zoetrope.github.io/kubebuilder-training/
手を動かす • 実際に手を動かす場として社内開発合宿を利用 • 社内開発合宿 ◦ モノづくりを楽しむ経験を通じて他チーム間の交流を深める ◦ 合宿は半期に1度、平日2日間にわたって開催 ◦
まとまった時間を確保できる 15
16 成果物の紹介
mackerel-container-agent-sidecar-injector • Pod作成時にmackerel-container-agentをサイド カーコンテナとして注入してくれるツール • AdmissionWebhookのMutatingの機能を利用 17
mackerel-container-agent-sidecar-injectorの開発 18 https://developer.hatenastaff.com/entry/2022/08/17/093000
開発のモチベーション • Kubernetesでmackerel-container-agentの利用を 簡易にしたい ◦ Manifestに同じような記述を何度もしている 19
開発のモチベーション • 3年前にAdmissionWebhookを利用して開発されていた ◦ Kubebuilderを利用することで現代風に作り変える ◦ AdmissionWebhookの知見を実際に手を動かして得 ることができる 20
GitHubでリポジトリを公開 21 https://github.com/mackerelio-labs/mackerel-container-agent-sidecar-injector
特徴的な機能の紹介 • KubernetesのSecretからMackerelのAPI keyを取得可能 ◦ Pod毎にMackrelのOrgを変更することが可能 • KubernetesのConfigmapからconfigファイルを取得可能 ◦ Pod毎に個別のmackerel-configを指定することがか可能
• Helmチャートを公開 22
23 まとめ
• Kubebuilderを利用したAdmissionWebhook拡張は第一歩 目にオススメ ◦ チーム横断組織のタスクとして現実的な時間で学べる範 囲の課題だった ◦ 現場ですぐに役立つ機能拡張を作ることができる • 今後も学びを継続してより高度にk8sを活用したい
まとめ 24
25 ご静聴ありがとうございました