Google Cloud
Anthos Day
Cloud Native 時代の
Platform 構築について
株式会社ジェーシービー
デジタルソリューション開発部
部長(担当)
片岡
亮介
Speakers
● 氏名
: 片岡 亮介
● 所属
: デジタルソリューション開発部
● 職責
: 部長(担当)
● 役割
: プロダクトオーナー / JDEP
● 趣味
: 海外旅行
● 連絡先
: [email protected]
What’s JCB
● Global Merchant Acceptance
●
国内外
約 3400 万の加盟店
● Number of Cardholders
●
約
1 億 4100 万人のカード会員(24 カ国・地域)
●
Security and Technology
Agenda
●
Current JCB
○
JCB が抱える現在の課題、そして新たな取組
●
Digital platform
○
Google Cloud Platform を全面採用したデジタルプラットフォーム
●
Architect Design
01
キャッシュレス(国内市場)
出典:経済産業省「キャッシュレスの現状と意義」
( 2020/01 公表 )
キャッシュレス(国内市場)
出典:一般社団法人
「キャッシュレスの現状と意義」( 2020/01 公表 )
(
https://www.meti.go.jp/policy/mono_info_service/cashless/image_pdf_movie/about_cashless.pdf)
2025年に
40%
( 令和元年6月21日 閣議決定 )
JCBの現状
多様化社会
デジタル化対応
セキュリティリスク
の悪化
新たな
コンペティタ
JCBの現状
多様化社会
デジタル化対応
セキュリティリスク
の悪化
新たな
コンペティタ
対応すべき内容が盛り沢山!
JCBの現状
複雑なプロセス
ビジネスサイド
システムサイド
着想
リリース
施策実行判断
品質
> スピード
ドキュメント主義
パートナー依存
ビジネス全体のスピード感の欠如
New Project
JCB
Project
New
● 出島戦略
● 既存の仕組みを
スクラッ
プ&ビルドしない
● ゼロベースでデザイン
● 母体と異なるルール・プ
ロセスを設計・実践
●
Agility あるビジネス開発を実現させるためのプロジェクト
● 価値あるサービスの開発(
Payment as a Service の実現
)
Process
Architecture
Risk Management
Platform
Team
Development Method
New Project
Teams
これまで
Teams
Agility ある開発を実現させるための開発体制
Service A
Team A
JCB Digital Enablement Platform
Service B
Team B
Service C
Team C
QA Team
SRE Team
Sec Team
Platform Team
Support : Professional Service
02
Digital platform
CloudNative時代に必要なPlatform
Customer
(Biz)
Operator
Developer
CloudNative時代に必要なPlatform
Customer
(Biz)
Operator
Developer
Customer
●
低コストでサービスを提供したい
●
スモールスタートでサービスを提供したい
●
スピード感あるサービスを提供したい
●
安全なサービスを提供したい
CloudNative時代に必要なPlatform
Customer
(Biz)
Operator
Developer
Customer
Developer
●
低コストでサービスを提供したい
●
スモールスタートでサービスを提供したい
●
スピード感あるサービスを提供したい
●
安全なサービスを提供したい
●
制約なく自由な開発を行いたい
●
ゼロベースで作るよりある物を使いたい
●
参考情報が欲しい
●
新しい技術に触れていたい
●
ロックインされたくない
CloudNative時代に必要なPlatform
Customer
(Biz)
Operator
Developer
Customer
Developer
Operator
●
低コストでサービスを提供したい
●
スモールスタートでサービスを提供したい
●
スピード感あるサービスを提供したい
●
安全なサービスを提供したい
●
制約なく自由な開発を行いたい
●
ゼロベースで作るよりある物を使いたい
●
参考情報が欲しい
●
新しい技術に触れていたい
●
ロックインされたくない
●
安定したシステム運用を実施したい
●
オペミス要望のため、自動化したい
●
UXに優れたツールを利用したい
CloudNative時代に必要なPlatform
Customer
Developer
Operator
●
低コストでサービスを提供したい
●
スモールスタートでサービスを提供したい
●
スピード感あるサービスを提供したい
●
安全なサービスを提供したい
●
制約なく自由な開発を行いたい
●
ゼロベースで作るよりある物を使いたい
●
参考情報が欲しい
●
新しい技術に触れていたい
●
ロックインされたくない
●
安定したシステム運用を実施したい
●
オペミス要望のため、自動化したい
●
UXに優れたツールを利用したい
CloudNative時代に必要なPlatform
Customer
Developer
Operator
●
低コストでサービスを提供したい
●
スモールスタートでサービスを提供したい
●
スピード感あるサービスを提供したい
●
安全なサービスを提供したい
●
制約なく自由な開発を行いたい
●
ゼロベースで作るよりある物を使いたい
●
参考情報が欲しい
●
新しい技術に触れていたい
●
ロックインされたくない
●
安定したシステム運用を実施したい
●
オペミス要望のため、自動化したい
●
UXに優れたツールを利用したい
1:Agility
2:High Availability
3:Scale
4:High Security
5:Managed Service
6:Automation (IAC)
7:CI / CD
8:Open Source
JCB Digital Enablement Platform ( JDEP )
●
Google Cloud Platform を採用したデジタル化プラットフォーム
●
GKE、Cloud Spanner をコアとしたマルチテナント構成
Requirement
1. Agility
2. High Availability
3. Scale
4. High Security
5. Managed Service
Conclusion
❏
Public Cloud : GCP
❏
Kubernetes : GKE
❏
Service Mesh : Istio
( Anthos )
❏
DB : Cloud Spanner
❏
IAC : Terraform
Why Google Cloud?
GKE : Kubernetes の version up が簡単に実現
Kubernetes
Why Google Cloud?
GKE : Kubernetes の version up が簡単に実現
Kubernetes
Engine
Cloud
Cloud Spanner : マルチリージョンで利用可能な RDB
Why Google Cloud?
GKE :
Kubernetes の version up が簡単に実現
Kubernetes
Engine
Cloud Spanner : マルチリージョンで利用可能な RDB
Cloud
Spanner
ASM :
Anthos
フルマネージド提供される
Istio
Service
Mesh
Why Anthos Service Mesh ?
● 変化に強くなりたい
Why Anthos Service Mesh ?
● 変化に強くなりたい
● 短いスパンでのシステムリリース
Why Anthos Service Mesh ?
● 変化に強くなりたい
● 短いスパンでのシステムリリース
● マイクロサービスアーキテクチャ
Why Anthos Service Mesh ?
● 変化に強くなりたい
● 短いスパンでのシステムリリース
● マイクロサービスアーキテクチャ
●
ABテスト、カナリアリリース
Why Anthos Service Mesh ?
● 変化に強くなりたい
● 短いスパンでのシステムリリース
● マイクロサービスアーキテクチャ
●
ABテスト、カナリアリリース
●
Istioが必要!
Why Anthos Service Mesh ?
● 変化に強くなりたい
● 短いスパンでのシステムリリース
● マイクロサービスアーキテクチャ
●
ABテスト、カナリアリリース
●
Istioが必要!
● フルマネージドな
Istioが欲しい
Why Anthos Service Mesh ?
● 変化に強くなりたい
● 短いスパンでのシステムリリース
● マイクロサービスアーキテクチャ
●
ABテスト、カナリアリリース
●
Istioが必要!
● フルマネージドな
Istioが欲しい
Why Anthos Service Mesh ?
●
K8s(GKE)との組合せもカバー
03
containers
Digital Platform
グランドデザイン
オンプレミス
パブリッククラウド
ログ管理
コンテナレジストリ
コードリポジトリ
(マルチ)K8sクラスタ管理ツール
K8s
K8s
K8s
K8s
K8s
K8s
K8s
ID管理
NW
storage
イメージスキャナ
Secret 管理
API GW
Service mesh
Service mesh
Managed
CaaS
Managed
PaaS
FaaS/PaaS(on k8s)
Managed
FaaS
CI Engine
CD tool
LB
LB
containers
Managed
Database
Managed
Cache
Managed
Queue
AD
フェデレーション
VM
Queue
DB
Cache
ドキュメント管理
チケット管理
チャット
VMs
セキュリティ管理
構成管理
CDN
専用線
メトリクス
アラート
インシデント管理
Microservice
Microservice
Hybrid共通
(パブクラ/SaaS)
Shared VPC でスター型に Project を構成し、Peering で環境間を接続
アーキテクチャ概要
Dev Host Project
Dev Shard VPC
Cloud
Router
Cloud
Firewall
Rules
Cloud
DNS
Routers
Cloud
Cloud Nat
Service Project
Service Project
Service Project
Cloud
Spanner
Kubernetes
Engine
Service Mesh
Anthos
Shared VPC
Connectivity
Common Host Project
Common Shared VPC
Cloud
Router
Cloud
Firewall
Rules
Cloud
DNS
Routes
Cloud
Common Shared
Service
Cloud
DNS
Shared VPC
Connectivity
vpc peering with
custom routes
exchange
Other
Environment
Cloud
Router
vpc peering with
custom routes
exchange
Interconnect
GKE をベースとしたマルチテナントシステム
Shared
GKE Cluster
Stack List
No. 製品名 製品概要 導入効果 1 Google Kubernetes Engine コンテナオーケストレーションツール(コンテナ(=APL)を管理するための根幹となるツール)。今回 はが提供するGoogle Cloudが提供するK8sを採用。 ・Reconciliation Loopに基づいた高可用性 ・Immutable Infraとしての運用性2 Anthos Service Mesh マイクロサービスツールであるIstioのマネジメントサービス。 アーキテクチャを正常に実行するために必要な機能を提供するオープンソースの ・マイクロサービス環境の管理を簡素化
3 Cloud Spanner Google社が開発した無制限のスケーリング、強整合性、最大ネージド リレーショナル データベース。 99.999% の可用性を備えたフルマ ・最大・マルチリージョン構成(東京 99.999% の可用性 -大阪)
4 Terraform Hashicorp社が開発しているインフラの構成管理ツール。インフラリソースをコードとして宣言的に定義し、定義の状態になるように自動でリソース作成・操作が可能。 ・ Infra As Code(IAC)の実現→インフラ作業の自動化
5 Prisma Cloud パロアルト社が提供するクラウドネイティブなアプリケーションやワークロードを保護し、クラウド環境に継続的な可視化、セキュリティ、コンプライアンス監視が可能。 ・・CSPM(Cloud Security Posture Management)の実現CWPP(Cloud Workload Protection Platform)の実現
6 Parger Duty パロアルト社が提供するコンテナ環境向けのセキュリティ製品群。クラウドネイティブなアプリケー ションやワークロードを保護し、クラウド環境の継続的な可視化、セキュリティ、コンプライアンス監視 が可能。 ・障害発生時の初動対応の早期化 ・保守体制の強化 7 Datadog クラウド時代の監視アプリケーションサービス。サーバー、データベース、ツール、およびサービスの監視を提供SaaSベースのデータ分析プラットフォームを介して ・障害発生時の初動対応の早期化・サービス監視の高度化 8 Argo CD GitOpsの継続的デリバリーツールを行うOSS。パイプライン全体を管理するのではなくパイプラインの中の1つの処理として動作するコンポーネントであり、軽量かつコンテナリリースに最適なツー ル。 ・継続的かつ迅速はシステムリリース ・カナリアリリース、Blue・Greenデブロイ