Multi Region Cluster
with MCI and GCLB
福田 潔 Kiyoshi Fukuda
Customer Engineer, Google Cloud Japan
そもそも GKE のクラ
スタ構成はどうなっ
ているか?
GKE クラスタ基本構成
Master
Nodepool
(default-pool)
Nodepool
(userdefined-pool)
Cluster
(asia-northeast1-a)
Node
(n1-standard-1)
Node
(Preemptible VM)
Node
(n1-standard-1)
Node
(n1-standard-1)
Node
(Preemptible VM)
Node
(Preemptible VM)
GKE クラスタのバリエーション
● ゾーンクラスタ:
Master, Node ともにシングルゾーン
● マルチゾーンクラスタ:
Masterはシングルゾーン、Nodeはマルチゾーン
● リージョナルクラスタ:
Master, Node ともにマルチゾーン
マルチリージョン
クラスタは?
Multi Cluster Ingress
複数のクラスタをまたがるIngress(外部エンドポイン
ト)を定義
GKE においては、その実体はグローバルロードバラ
ンサの機能を持つHTTP/S Load Balancer
Google Cloud Platform リージョン
既存のリージョン 15 / 開設予定のリージョン 4
フランクフルトベルギー
ロンドン
オランダ
サンパウロ
台湾
シンガポール
ムンバイ
シドニー
東京
香港
サウスカロライナ
北バージニア
オレゴン
モントリオール
ロサンゼルス 3
現在のリージョンとゾーン数
開設予定のリージョンとゾーン数
3
3
3
3
3
アイオワ
3
33
3
2
4
3
2
大阪
3
フィンランド3
3
3
3
FASTER (US, JP, TW)
2016
Unity (US, JP) 2010
SJC (JP, HK, SG)
2013
POP >100
Monet (US, BR)
2017海底ケーブル
PLCN Unity (HK, LA)
2018
Indigo (SG, ID,
AU) 2019
Tannat (BR, UY, AR)
2017
Junior (Rio, Santos)
2017Google グローバルキャッシュ(GCC)
エッジ ノード (>800)
光ファイバーネットワーク
Google のグローバルネットワーク
Maya in California
50.1.1.1
Bob in London
70.1.1.1
Kiyoko in Tokyo
80.1.1.1
Cloud
DNS
www.myapp.com
200.1.1.1
Region: US-West
Serving Instances
Compute Engine
Autoscaling
Region: Europe-West
Serving Instances
Compute Engine
Autoscaling
Region: Tokyo
Serving Instances
Compute Engine
Autoscaling
10.240.0.0/16 192.168.0.0/16 10.2.0.0/16
Google
Network
www.myapp.com
www.myapp.com www.myapp.com www.myapp.com
Google
Edge POP
Google
Edge POP
Google
datacenters
グローバル負荷分散 : クロスリージョン フェイルオーバー
マルチリージョンのインスタンスがフロ
ントエンドアドレスとして1 つの IPv4
VIP アドレスを持つ。クロスリージョン
オーバーフローおよびフェイルオー
バーをサポート―― Google Cloud
ならでは。
Google
Edge POP
Google Global Load Balancing
IPv4 VIP 200.1.1.1
MCIの構成
User=Alice
Location=California
Cluster #1 Cluster #2
zone = us-central1-a zone = europe-west3-a
service=foo
port=80
service=foo
port=80
MCI Tool
...
service: foo
port: 80
...
ingress.yaml
cluster #1:
...
cluster #2:
...
clusters.ctx
User=Bob
Location=Berlin
Google Cloud Load Balancer
kubemci create <lb-name>
--ingress=ingress.yaml
--clusters=clusters.ctx
MCIのユースケース
● グローバルユーザをサポート
○ 自分の地域に近いバックエンドにルーティングされることで低レイ
テンシを実現
● 可用性の向上
○ GCPにおいてはリージョン=物理的な拠点
○ 災害対策
● ハイブリッドクラウドの実現
○ GCPクラスタとOn-Premiseクラスタ
デモ
デモの手順
1. クラスタの作成
2. 接続情報設定ファイルを準備
3. アプリケーションのデプロイ(Deployment, Service (type:NodePort))
4. MCI の作成
5. テスト
クラスタの作成
asia-east1 (Taiwan) と asia-northeast1 (Tokyo) にそれぞれクラスタを構築
接続情報コンテキストを作成
クラスタの接続情報を clusters.yaml に保存する
KUBECONFIG=clusters.yaml gcloud container clusters 
get-credentials cluster-taiwan --zone=asia-east1-a
KUBECONFIG=clusters.yaml gcloud container clusters 
get-credentials cluster-tokyo --zone=asia-northeast1-a
アプリケーションをデプロイ
コンテキスト情報を利用して複数のクラスタにアプリケーションをデプロイする
for ctx in $(kubectl config get-contexts -o=name --kubeconfig clusters.yaml);
do
kubectl --kubeconfig clusters.yaml --context="${ctx}" create -f manifests/
done
MCI をデプロイ
kubemci create zone-printer 
--ingress=ingress/ingress.yaml 
--gcp-project=$PROJECT 
--kubeconfig=clusters.yaml
ingress 設定ファイル
# ingress.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: zoneprinter
annotations:
kubernetes.io/ingress.class: gce-multi-cluster
kubernetes.io/ingress.global-static-ip-name: $ZP_KUBEMCI_IP
spec:
backend:
serviceName: zoneprinter
servicePort: 80
一番近いクラスタにルーティングされる
障害時は最寄りのクラスタに切り替わる
HTTP/S LBのトラフィックマップ
Confidential & Proprietary
Thank you

More Related Content

PPTX
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
PDF
KubeCon + CloudNativeCon Europe 2022 Recap - Batch/HPCの潮流とScheduler拡張事例 / Kub...
PDF
What's New in the Elastic 8.4 Release
PPTX
Amazon EKS によるスマホゲームのバックエンド運用事例
PPTX
[社内勉強会]ELBとALBと数万スパイク負荷テスト
PPTX
AKS と ACI を組み合わせて使ってみた
PDF
SolrとElasticsearchを比べてみよう
PDF
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語る
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
KubeCon + CloudNativeCon Europe 2022 Recap - Batch/HPCの潮流とScheduler拡張事例 / Kub...
What's New in the Elastic 8.4 Release
Amazon EKS によるスマホゲームのバックエンド運用事例
[社内勉強会]ELBとALBと数万スパイク負荷テスト
AKS と ACI を組み合わせて使ってみた
SolrとElasticsearchを比べてみよう
Kubernetes にこれから入るかもしれない注目機能!(2022年11月版) / TechFeed Experts Night #7 〜 コンテナ技術を語る

What's hot (20)

PDF
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
PPTX
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
PDF
NGINX Back to Basics: Ingress Controller (Japanese Webinar)
PDF
そんなトランザクションマネージャで大丈夫か?
PDF
KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...
PPTX
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
PDF
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
PPTX
Azure Api Management 俺的マニュアル 2020年3月版
PDF
AWSからのメール送信
PDF
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
PPTX
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
PDF
Kubernete Meetup Tokyo #18 - Kubebuilder/controller-runtime 入門
PDF
[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送
PDF
Ingress on Azure Kubernetes Service
PDF
KafkaとAWS Kinesisの比較
PDF
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
PPTX
SPAセキュリティ入門~PHP Conference Japan 2021
PDF
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
PPTX
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
PPTX
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
NGINX Back to Basics: Ingress Controller (Japanese Webinar)
そんなトランザクションマネージャで大丈夫か?
KubeCon + CloudNativeCon Europe 2022 Recap / Kubernetes Meetup Tokyo #51 / #k...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
Azure Api Management 俺的マニュアル 2020年3月版
AWSからのメール送信
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Kubernete Meetup Tokyo #18 - Kubebuilder/controller-runtime 入門
[Cloud OnAir] BigQuery の仕組みからベストプラクティスまでのご紹介 2018年9月6日 放送
Ingress on Azure Kubernetes Service
KafkaとAWS Kinesisの比較
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
SPAセキュリティ入門~PHP Conference Japan 2021
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
Ad

Similar to GKE multi-cluster Ingress (20)

PDF
No sql with mysql cluster (MyNA・JPUG合同DB勉強会)
PDF
オーバーレイネットワークで実現するプライベートクラウド -OpenStack/OpenContrailを用いたプライベートクラウドの構築及び評価計画のご紹介-
PDF
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
PDF
Wordpress案件にgkeを採用してみた(短縮版)
PDF
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
PDF
GKEで半年運用してみた
PDF
Isca13 study
PDF
CloudStackユーザ会 OSC.cloud
PDF
MySQL de NoSQL Fukuoka
PDF
attention_is_all_you_need_nips17_論文紹介
PDF
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
PDF
【DL輪読会】One-Shot Domain Adaptive and Generalizable Semantic Segmentation with ...
PDF
MySQL Cluster 新機能解説 7.5 and beyond
PDF
5分で作るMySQL Cluster環境
PDF
5分で作るMySQL Cluster環境
PDF
20130714 July Tech Festa 日本CloudStackユーザー会
PDF
[GKE & Spanner 勉強会] GKE 入門
PDF
Open stack reference architecture v1 2
KEY
NVIDIA Japan Seminar 2012
PDF
kube-system落としてみました
No sql with mysql cluster (MyNA・JPUG合同DB勉強会)
オーバーレイネットワークで実現するプライベートクラウド -OpenStack/OpenContrailを用いたプライベートクラウドの構築及び評価計画のご紹介-
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
Wordpress案件にgkeを採用してみた(短縮版)
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
GKEで半年運用してみた
Isca13 study
CloudStackユーザ会 OSC.cloud
MySQL de NoSQL Fukuoka
attention_is_all_you_need_nips17_論文紹介
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
【DL輪読会】One-Shot Domain Adaptive and Generalizable Semantic Segmentation with ...
MySQL Cluster 新機能解説 7.5 and beyond
5分で作るMySQL Cluster環境
5分で作るMySQL Cluster環境
20130714 July Tech Festa 日本CloudStackユーザー会
[GKE & Spanner 勉強会] GKE 入門
Open stack reference architecture v1 2
NVIDIA Japan Seminar 2012
kube-system落としてみました
Ad

More from Kiyoshi Fukuda (7)

PDF
(2022-08 API Meetup資料) 医療xAPI 医用画像とAPI
PDF
Google Cloud Platform は何がすごいのか?
PDF
GCPで実現するクラウドネイティブアプリケーション
PDF
Google Cloud Platform 概要
PDF
No-Ops で大量データ処理基盤を簡単に実現する
PDF
Google Cloud Platform 概要
PDF
Developer summit 2015 GCP
(2022-08 API Meetup資料) 医療xAPI 医用画像とAPI
Google Cloud Platform は何がすごいのか?
GCPで実現するクラウドネイティブアプリケーション
Google Cloud Platform 概要
No-Ops で大量データ処理基盤を簡単に実現する
Google Cloud Platform 概要
Developer summit 2015 GCP

GKE multi-cluster Ingress