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撤退、 その後のはてなの取り組み / kubernetes meetup ...
Search
Hayato Imai
August 17, 2022
Technology
9
7.3k
Kubernetes撤退、 その後のはてなの取り組み / kubernetes meetup tokyo number 52
Hayato Imai
August 17, 2022
Tweet
Share
More Decks by Hayato Imai
See All by Hayato Imai
Mackerelにおける Cloud Nativeへの取り組みと チームへ与えた変化 / CloudNative Days Tokyo 2020
hayajo
2
1.5k
MackerelにおけるKubernetes利用の取組みとこれから / Kubernetes Meetup Tokyo #22
hayajo
20
9.9k
Mackerelチームのコンテナ開発における戦略とこれから / 190722-cndt2019
hayajo
1
1.9k
AWSコンテナサービス入門 / nds60-jaws-ug
hayajo
0
3k
コンテナのメトリクスと モニタリングパターン / 190320-sakura-event
hayajo
6
1.7k
Mackerelコンテナエージェントによる コンテナ監視について / Mackerel Meetup #13 Tokyo
hayajo
1
9.6k
Docker for Mac/Windows ではじめる Kubernetes / NDS55 Docker with Kubernetes
hayajo
16
15k
Terrafromで構築するマルチクラウドプラットフォームインフラストラクチャ / NDS53 Terraform
hayajo
0
430
Ncatをつかおう / Use Ncat
hayajo
1
3.7k
Other Decks in Technology
See All in Technology
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
490
slog.Handlerのよくある実装ミス
sakiengineer
4
480
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
260
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
270
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
180
Rustから学ぶ 非同期処理の仕組み
skanehira
1
150
MagicPod導入から半年、オープンロジQAチームで実際にやったこと
tjoko
0
110
Generative AI Japan 第一回生成AI実践研究会「AI駆動開発の現在地──ブレイクスルーの鍵を握るのはデータ領域」
shisyu_gaku
0
330
LLMを搭載したプロダクトの品質保証の模索と学び
qa
1
1.1k
AIエージェント開発用SDKとローカルLLMをLINE Botと組み合わせてみた / LINEを使ったLT大会 #14
you
PRO
0
130
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
190
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
570
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
431
66k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
930
Six Lessons from altMBA
skipperchong
28
4k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Being A Developer After 40
akosma
90
590k
Typedesign – Prime Four
hannesfritz
42
2.8k
Visualization
eitanlees
148
16k
Designing for humans not robots
tammielis
253
25k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
Done Done
chrislema
185
16k
Transcript
Kubernetes撤退、 その後のはてなの取り組み id:hayajo_77 / @hayajo 2022/8/17 Kubernetes Meetup Tokyo #52
1
自己紹介 • 今井隼人 • id:hayajo_77, @hayajo • 株式会社はてな • Mackerelチーム
• SRE 2
3 Mackerel?
SaaS型サーバー監視サービス 4 https://mackerel.io/
5 Mackerelにおける Kubernetes導入・撤退の 振り返り
Kubernetes Meetup Tokyo #22 6 https://speakerdeck.com/hayajo/kubernetes-meetup-tokyo-number-22
Kubernetesの導入目的 • コンテナ運用のキャッチアップ • ドッグフーディング • インフラ管理コストの削減 7
Amazon EC2でKubernetesクラスタを構築 • レイテンシを考慮するとAWS以外での運用は 難しい • 当時は日本リージョンにAmazon EKSが提供 されていなかった 8
Kubernetesの撤退理由 • 高い学習コスト • 運用リソース不足 • クラスタアップデートへの対応の遅れ 9
10 Mackerelでは (一時的に)Kubernetesを撤退したが、 はてなとして Kubernetesを撤退したわけではない
11 現在の はてなにおける Kubernetesへの取り組み
12 導入・運用
サービスプラットフォームチームの事例 13 https://developer.hatenastaff.com/entry/2022/02/03/100525 https://speakerdeck.com/masayoshimaezawa/hatena-engineer-semi nar-number-20
Amazon EKS導入の背景 • 社内にKubernetesの知見を広める • 新旧多くのサービスを効率的に運用したい • エコシステムとGitOpsを利用し、自動的で統 一されたリリースを実現したい 14
ビジネスプラットフォームチームの事例 15 https://blog.pokutuna.com/entry/born-digital-summit-2022
Google Kubernetes Engine導入の背景 • マネージドサービスの利用で運用を省力化 • ElasticSearchからBigQueryへ移行してコス ト改善 • システムをクラウドネイティブ化
16
17 普及・学習
チームを横断した組織で取り組む 18 チームA チームB チームC SRE標準化委員会 CloudNative推進会
社内システム標準構成の提案 • チームごとにシステム構成はさまざま • 標準構成を採用することで運用知見や ツールを共有し、システム構築・運用の 効率化、省力化を目指す • 多くのチームではAmazon ECSを採用し
ているが、EKS/GKEも選択可能にする 19
EKS社内標準構成の検討 • 社内システム標準構成のEKS部分 • 周辺ツールやサービスの調査と検証 • EKS, Kuberenetesの学習 20
デプロイフローの共通化 • デプロイ効率の向上 • 知見やツールの共有 • 学習コストの低減 • 社内標準ツールとして ecspresso(ECS),
ArgoCD(EKS)を採用 • GitOpsを基本として設計 21
ツール、ライブラリの開発・提供 • Terraform module, AWS CDK library • GitHub ActionsのComposite
Actionや Reusable Workflow • Mackerelプラグインや周辺監視ツール 22
mackerel-container-agent-sidecar-injectorの開発 23 https://developer.hatenastaff.com/entry/2022/08/17/093000
mackerel-container-agent-sidecar-injectorの開発 24 • Kubernetesを使いこなせていないという課題意識 • 開発を通してCRD, CustomController, AdmissionWebhookなどを学ぶ
25 これからの はてなにおける Kubernetesへの取り組み
さらなるKubernetesの普及と学習 • 社内向けのシステムなど、リスクが少ないと ころからEKSを導入して多くのエンジニアが Kubernetesに触れる機会を増やす • 社内勉強会など、Kubernetesの学びの機会を 提供する 26
Mackerelでは... • はてなのKubernetesの運用知見をサービスへ反映 • クラスタ監視のさらなる知見を得るために、システ ムをECSからEKSへ移行 • OpenTelemetryやメトリックのラベル対応など、 Kubernetesを含めたクラウドネイティブなシステ ムへの親和性を高める
27
28 まとめ
まとめ 29 • はてなではいくつかのチームでKuberentesを 導入して運用している • チームを横断した組織でKubernetesの普及・ 学習に取り組んでいる • 今後も積極的にKubernetesを導入し、その運
用知見をサービスへ反映していく
30 curl -sIL mackerel.io | grep career