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を採用してどうなった/What happened when A...
Search
Tocyuki
December 11, 2023
Technology
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
イオンがKubernetesを採用してどうなった/What happened when AEON adopted Kubernetes
Cloud Native Days Tokyo 2023発表資料
https://cloudnativedays.jp/cndt2023/talks/2078
Tocyuki
December 11, 2023
More Decks by Tocyuki
See All by Tocyuki
HashiCorp製品導入の背景と今後の展望/Background of HashiCorp product introduction and future prospects
tocyuki
0
120
AEON TECH HUBで目指すもの/What we aim for with AEON TECH HUB
tocyuki
0
86
マイクロサービス導入により生まれた組織課題に対するソリューションとしてのTiDB/Developers Summit 2024 TiDB Sponsor Session
tocyuki
0
100
FutureStack_Tokyo_NRUG_2周年特別版
tocyuki
0
70
ecspresso愛を語る/I Love ecspresso
tocyuki
0
3.5k
DevOps実装初期フェーズの組織がTerraformとecspressoで求めるAmazon ECS CICDの最適解/AWS ECS CICD with Terraform and ecspresso
tocyuki
11
5.7k
さいつよのEC2オートスケーリング環境CICDパイプライン2022オータム/Strongest EC2 Autoscaling Environment CI/CD Pipeline 2022 Autumn
tocyuki
5
4.4k
Terraformで作る分析用Aurora Readerインスタンス/Aurora Reader instance for analysis made with Terraform
tocyuki
0
510
Devに力を授けたいSREのあゆみ / SRE that wants to empower developers
tocyuki
4
1.4k
Other Decks in Technology
See All in Technology
Making sense of Google’s agentic dev tools
glaforge
1
200
大量データに対しても、生成AIを用いてリーズナブルにデータ加工をしたい!Databricksのai_queryについて調べてみた
kamoshika
1
130
最適な自走を最小限の支援で — M&Aで拡大する組織で少人数SREが挑んだ1年 / SRE NEXT 2026
genda
0
1.1k
【Claude Code】鹿野さんに聞く 私の推しの並行開発環境 大公開 / claude-code-parallel-2026-07-15
tonkotsuboy_com
11
7.3k
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.4k
「最後に責任を取るのはチーム」— 人間のPRレビューを最小化してアップデートしたメンタルモデル
jnishime_dresscode
0
630
依頼文化をやめる日 EM視点で語るPlatform EngineeringとInclusive SRE / Discussing Platform Engineering and Inclusive SRE from an EM's Perspective
shin1988
4
5.4k
個人開発で育てる「大規模設計の苗床」 - AI時代の1人開発から始める業務への知識接続 / The Seedbed for Large-Scale Design - From AI-Era Solo Projects to Professional Knowledge
bitkey
PRO
1
220
はじめてのWDM
miyukichi_ospf
1
140
Databricks 生成AIガバナンス実践ワークショップ / LLMOps-workshop
databricksjapan
0
100
SRE本の知られざる名シーン / The Hidden Gems of Google SRE Book
nari_ex
1
380
SRE Next 2026 何でも屋からの脱却
bto
0
690
Featured
See All Featured
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
630
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
260
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
610
Facilitating Awesome Meetings
lara
57
7k
How to make the Groovebox
asonas
2
2.3k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.5k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
How to train your dragon (web standard)
notwaldorf
97
6.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.3k
Code Review Best Practice
trishagee
74
20k
Transcript
イオンがKubernetesを採⽤してどうなった? イオンスマートテクノロジー株式会社
This session is sponsored by
New Relic
2023 8 CTO SRE 2022 5 CTO SRE 様々な事業会社でインフラエンジニア‧SREとしてキャリアを重ねる。 CloudNative
Days Tokyoは2022年以来1年ぶりの登壇。昨年はAWSネタ で登壇し、今年はAzureネタ(?)で登壇するチャレンジャー。 Azure、Kubernetes(マジで)何もわからん。 SIer2社を経た後、事業会社でインフラ/運⽤部⾨責任者やプロダクトマ ネージャーを経験した後、現職でSREチームの⽴ち上げ業務に挑戦中。 CloudNative Days Tokyoは2019年以来4年ぶりの登壇。本業は猫の下僕。 @Tocyuki @hikkie13
• イオンのデジタルシフト戦略を担う会社の位置付けで2020年10⽉に設⽴ • お客様のお買い物体験向上と店舗DXを進める
iAEON 膨⼤なIDと購買データを集約したアプリ「iAEON」 iAEONはイオングループが提供する決済機能やポイントプログラムを1つにまとめたアプリです。 イオングループ内の多数の事業会社がもつ顧客IDを⼀つのアプリに統合しています。 提供開始から約3年で、iAEONは500万⼈以上の会員を抱え、独⾃のコード決済サービス「イオンペイ」は836万⼈(23年5⽉時点)が利⽤しています。
Agenda • イオンとKubernetesの歴史 • Kubernetes環境とオブザーバビリティの改善 • 今後の改善とチャレンジ
イオンとKubernetesの歴史
Kubernetes 今の時代、内製でマイクロサービスで開発が主流だ。 Kubernetesで開発だ! わかりました。 (Kubernetes...聞いたことはあるけどやったことないぞ...) 2020/10 設立 AKSを採用し開発開始 2021/8 iAEONアプリ
ローンチ 2022/5 齋藤入社 2023/8 香西入社 NOW 🔥🔥🔥🔥 🎉 🔥🔥🔥 🔥🔥 🔥
Kubernetes • 何やかんやで無事にローンチ • 様々なアンチパターンが内在するも、ユーザがまだ少ないので顕在化していない状況 2020/10 設立 AKSを採用し開発開始 2021/8 iAEONアプリ
ローンチ 2022/5 齋藤入社 2023/8 香西入社 NOW 🔥🔥🔥🔥 🎉 🔥🔥🔥 🔥🔥 🔥
⾃分の状況とか⼊社動機 • CKA/CKAD/CKSを持っていたが、商⽤経験はない • kubernetes/websiteの翻訳contributeを細々やっていた時期も • SREチーム⽴ち上げやKubernetesができることに惹かれて⼊社 • 改善やっていき開始🔥 2020/10
設立 AKSを採用し開発開始 2021/8 iAEONアプリ ローンチ 2022/5 齋藤入社 2023/8 香西入社 NOW 🔥🔥🔥🔥 🎉 🔥🔥🔥 🔥🔥 🔥 Kubernetes
Kubernetes 改善やっていき開始〜今まで • ユーザの増加に伴い、顕在化するトラブルと戦う⽇々 • 運⽤課題を⼀つ⼀つ解消していくことに注⼒し、改善を進めている(現在進⾏形) 2020/10 設立 AKSを採用し開発開始 2021/8
iAEONアプリ ローンチ 2022/5 齋藤入社 2023/8 香西入社 NOW 🔥🔥🔥🔥 🎉 🔥🔥🔥 🔥🔥 🔥
Kubernetes 4clusters 100+ deployments 500+ pods 5developer teams
Kubernetes • 学習コスト • 有識者の不⾜ • 運⽤で直⾯する課題 o 定期的なアップグレード o
リソースやスケール設定 o モニタリング/オブザーバビリティ 組織的課題 技術的課題 • 組織体制、プロセス、フローは利点を 活かせるようになっているのか? • 銀の弾丸だと思っている謎の勢⼒ o 瞬間⾵速に耐える o 無限のスケーラビリティ
• そもそもmanifest fileが構成管理されていないのだが? • kubectlによる温かみのあるリリース作業。もちろんExcel⼿順書もあった。 • latestタグ • requests/limits設定 •
OOM Killed多発 → 開発チーム「再起動するんで⼤丈夫っス」 ⼀⽅で... • 定期的アップグレードはちゃんとやっている(偉い) • マネージドサービスの選択により、運⽤負荷をある程度軽減できている
None
• 実機に⼊ってmanifest file化 • おかしい設定は開発チームに「なぜダメなのか?」を説明しながら⼀つ⼀つ改善 • 温かみのある⼿動作業はSREチームでパイプライン化して提供して撲滅 o Azure Pipelinesを利⽤
o CIにおいて、TrivyによるセキュリティチェックやLinterCheckなどを実装
Container Build Container Security Test Linter Check Diff k8s manifest
Diff k8s manifest deploy Check after deploy Developer 課題: • deployは内部的にはkubectl applyなので、リソース削除には対応できていない • クラスタ全体としては宣⾔型になっていない。 • 既存のものから引っ張り出したmanifest fileなのでtemplate化できていない
• 学習コスト • 有識者の不⾜ • 運⽤で直⾯する課題 o 定期的なアップグレード o リソースやスケール設定
o モニタリング/オブザーバビリティ 組織的課題 技術的課題 • 組織体制、プロセス、フローは利点 を活かせるようになっているのか? • 銀の弾丸だと思っている謎の勢⼒ o 瞬間⾵速に耐える o 無限のスケーラビリティ
Kubernetes
Kubernetes • 対象コンポーネント/リソースの多さ • 刻⼀刻と変わる状況 o Podのノード移動、スケールアウト/スケールイン • 障害発⽣時の調査の難しさ •
アプリケーション/インフラリソースの監視と組み合わせて観たい • クラスタの状況やPod全体の状況を俯瞰的に観たい
• 作るより買うことを選択 o コストはかかる(observabilityは⾼い)が、よりビジネスに寄与するところにリソースを 集中したい • ユーザに近いところから⼀気通貫で観測したい o 1つのプラットフォームで全てを⾒る o
"looking for a needle in a hay stack(⼲し草の⼭から針を⾒つける)"の実現
New Relic
New Relic オブザーバビリティの向上、組織⽂化変⾰の⼀端に寄与 • 分散トレーシングにより、mobile〜backend application〜infrastructureまで⼀気通貫 でトレース可能に。 o 障害調査の短縮化 o
アプリケーションの可視化 • 運⽤のオーナシップを開発チームに意識させるトリガーに o 定点観測会の実施やトレーニング開催など働きかけは必要
None
• 内部的にはkubectl applyを実⾏しているだけなのでリソース削除等に対応できていない • 肥⼤化するマニフェストファイルや管理⼿法と設計の共通化に課題 肥⼤化するマニフェストファイル ⼿続き的なデプロイ マニフェストの変更やレビューツライ
• GitOpsの思想に基づいたArgoCDなどを導⼊し、宣⾔的なデリバリー⼿法へ • HelmやKustomize導⼊によるマニフェスト管理の改善と設計の共通化 or GitOpsによる宣⾔的なデリバリー CI 効率的で柔軟なマニフェスト管理ができる!
Secret • 定期的なローテーション • ユーザー毎の細かな権限管理 • 監査や暗号化 • ハードコーディング
Secret • HCP Vault • Kubernetes Secret HCP Vault •
PoC
• DBのシャーディングによる開発、運⽤のツラミ • マイクロサービス導⼊による組織課題へのソリューションとしてのTiDB TiDB Microservice A Microservice B Microservice
C Microservice A Microservice B Microservice C
Platform Engineering • 弊社のSREチームはPlatformerとしての側⾯も持ち合わせている • Terraform as a Serviceのような形でセルフサービス化を推進 •
開発チームのTerraform習熟度などにもかなりの差があり課題がある • より開発者が使いやすいPlatformの提供が求められている • 開発チームへ貢献し、信頼を醸成しながらPlatform構築と活⽤を推進していきたい • 引き続き⾜元の⾃動化、効率化を推進しながらゴールデンパスの整理と拡充を実施 • Internal Developer Portalを作成し改善のサイクルを回す
Platform Engineering Internal Developer Portal Software catalog API catalog Dashboard
Knowledge Observerbillity Internal Developer Portal Other System Service Platform Developer Platform Operation Platform 要求 提供 開発者 Platform Platform Team 修正‧改善 要望 ※構想段階のため具体的なアーキテクチャや利⽤サービスは今後要検討
Kubernetes
改善の途中だが、後から振り返って正解だったと⾔えるように頑張ります。 • 現実的に、技術にbetしてから組織が追いつくしかない。 o betが失敗しないような努⼒は必要(経営‧現場両⾯で) o 失敗を経験しながら触っていかないとわからない。失敗の許容はDXの⽂脈でも技術の ⽂脈でも必要。 § リスクを下げるために、本来は⼩さいところから始めるべきだったかも。
• ツール/技術に合わせて組織を変えていくことが、組織⽂化の変⾰に繋がる
結局どうなった?② • 当たり前だが、Kubernetesは銀の弾丸ではない • 現状Kubernetes導⼊による恩恵よりも課題の⽅が多い状況 • しかしKubernetesをはじめとしたCloud Native技術の導⼊や取り組みはゆっくりだが 確実に組織へ変⾰をもたらしている •
素晴らしい技術を扱えるようになりたいというモチベーションは⼤事 • 弊社も道半ばだが、Cloud Nativeな技術スタックを中⼼に添え、よりレベルの⾼いSRE やPlatform Engineeringへのチャレンジをしていきたい
We are hiring !! 採⽤情報 AEONテックブログ