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
スタートアップが挑むクラウドネイティブなマルチリージョン戦略
Search
izumiiii
November 28, 2023
Technology
0
160
スタートアップが挑むクラウドネイティブなマルチリージョン戦略
Google Cloud Next Tokyo 2023 - Innovators Hive Lightning Talk
izumiiii
November 28, 2023
Tweet
Share
More Decks by izumiiii
See All by izumiiii
CircleCIの実行時間を大幅に短縮した話
izumiiii
0
70
GKE Autopilotのコストを9000円/日から2000円/日へ!
izumiiii
0
670
Multi-cluster deployment using ArgoCD x Connect Gateway
izumiiii
0
240
Other Decks in Technology
See All in Technology
Microsoft Build 2025 技術/製品動向 for Microsoft Startup Tech Community
torumakabe
2
260
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
200
より良いプロダクトの開発を目指して - 情報を中心としたプロダクト開発 #phpcon #phpcon2025
bengo4com
1
3.1k
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
130
OpenHands🤲にContributeしてみた
kotauchisunsun
1
420
Understanding_Thread_Tuning_for_Inference_Servers_of_Deep_Models.pdf
lycorptech_jp
PRO
0
110
「Chatwork」の認証基盤の移行とログ活用によるプロダクト改善
kubell_hr
1
150
Fabric + Databricks 2025.6 の最新情報ピックアップ
ryomaru0825
1
130
あなたの声を届けよう! 女性エンジニア登壇の意義とアウトプット実践ガイド #wttjp / Call for Your Voice
kondoyuko
4
420
ひとり情シスなCTOがLLMと始めるオペレーション最適化 / CTO's LLM-Powered Ops
yamitzky
0
420
Yamla: Rustでつくるリアルタイム性を追求した機械学習基盤 / Yamla: A Rust-Based Machine Learning Platform Pursuing Real-Time Capabilities
lycorptech_jp
PRO
2
100
Agentic Workflowという選択肢を考える
tkikuchi1002
1
490
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.3k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
VelocityConf: Rendering Performance Case Studies
addyosmani
330
24k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
GitHub's CSS Performance
jonrohan
1031
460k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
33
5.9k
Building Adaptive Systems
keathley
43
2.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Automating Front-end Workflow
addyosmani
1370
200k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Transcript
スタートアップが挑むクラウドネイティブなマルチリージョン戦略 Google Cloud Next Tokyo 2023 - Innovators Hive Lightning
Talk
自己紹介 名前 Koizumi Fumiya Twitter izumiiii @izumiiii9 Blog https://izumiiii.com Zenn
https://zenn.dev/izumiiii 会社 株式会社Resilire 普段していること インフラ業務メインで、最近はよくKubernetesを触っています。
提供プロダクト Resilreの提供価値と機能 3 サプライチェーンリスク管理SaaS Resilire サプライチェーン全体(社内拠点や委託先、原料 調達先)をツリー上で構造的に管理。災害時、被 災影響の可能性がある拠点をマップ上で可視化・ リスト化。リストの拠点に自動でアンケート配信か ら回答結果のレポート生成を可能にするプロダク
トを提供しています。 3
インフラの重要性 • Resilireは災害時のリスク管理を行うプロダクトのため、平常時の予防よりも特に災害時にも 動作し続ける必要があります。 • 例えば、震災があったとしたら、納入先とサプライヤーの間で物流・生産に影響がないかをResilireのプ ロダクトを通して確認しあうような形で使われます。 • サプライヤーは海外にいることも多いため、グローバルに利用継続性を高める必要があり、 災害時にグローバルでも動作し続けられる基盤作りにチャレンジする必要があります。
急成長に伴う課題の発生 • 費用、人員、時間の制限 ◦ 少数の開発組織でありながら、決められた期間内にサービスをリリースする必要性があった。 • 既存システムの管理コストの増大 ◦ デプロイシステムのコード量が増加し、保守コストが増えた。 •
新アプリケーションとサービスの増加 ◦ リアーキテクチャのサービスの洗い出しによって、サービス数が増えた。また、グローバルに耐えうるシステム 構成が必要であった。
我々が挑むマルチリージョン戦略のシステム
GCPサービス
Google Kubernetes Engine Autopilot • アプリケーションに専念 ◦ Googleがインフラストラクチャを管理するため、エンジニアはアプリケーションに専念。 • 運用の複雑さの軽減
◦ Autopilot は、ノード、スケーリング、スケジューリングのオペレーションを継続的にモニ タリングする必要がないため、プラットフォームの管理オーバーヘッドを削減。 Resilire では、少数の開発組織のため運用の簡素化された Autopilot が適している。
マルチクラスタ Ingress • グローバル負荷分散 ◦ ユーザートラフィックを最も効率的で効果的なクラスタやリージョンに自動的にルーティン グ。 • リージョナルな冗長性と可用性の向上 ◦
複数のリージョンにクラスタを展開することで、リージョナルな冗長性と高可用性を実現。 Resilireではグローバル展開を想定しているため、有効な手段。
Managed Anthos Service Mesh • クラスター間をサービスメッシュを設けることで、クラスター間通信、可用性の向上、トラフィッ ク分散、サーキットブレイカーを行うことができる。 • Resilireでは、クラスタ間の負荷分散、BCP対策として活用。
東京クラスタ 大阪クラスタ ??クラスタ 海外
Spot Pod for Autopilot vCPU, Memory当たり1/3程度の料金で使える。 注意点: 標準の Pod の実行でコンピューティングリソースが必要になると、GKE
に よって強制削除される場合がある。
apiVersion: apps/v1 kind: Deployment metadata: name: argocd-repo-server spec: template: spec:
containers: - name: argocd-repo-server nodeSelector: cloud.google.com/gke-spot: 'true' terminationGracePeriodSeconds: 25 設定例
リソースリクエスト Autopilotでのノードのインスタンスタイプ/ノード数は実際にクラスタにデプロイ されているPodに設定されたRequest量をもとに決定されている。 明示的にリソース量をマニフェストで指定していない場合、1コンテナあたり 0.5 vCPU, 2GiB Memoryが割り当てられる。
注意点 Autopilotでは1Podあたり最低 CPU: 250m メモリ: 0.5 GiB を割り当てないといけない。 それより小さい値を指定していても、値が変わらないようになっている。
apiVersion: apps/v1 kind: Deployment metadata: name: argocd-repo-server spec: template: spec:
containers: - name: argocd-repo-server resources: requests: cpu: 250m memory: 512Mi 設定例
まとめ • GKE Autopilotを使うことによって、複雑な管理コストを減らして、アプリケーションに専念。 • マルチクラスタIngress, Anthos Service Meshを使うことで、BCP対策を意識したり、グローバルユー ザーを意識したレイテンシの改善を行うことができる。
• Spot Pod,リソースリクエストを使うことで、簡単な編集でコストを削減してGKEを運用することができる。
ご清聴ありがとうございました。