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
合格対策 GOOGLE CLOUD CERTIFIED Professional Cloud...
Search
tarosaiba
October 27, 2019
Programming
2
580
合格対策 GOOGLE CLOUD CERTIFIED Professional Cloud Architect 編
合格対策 GOOGLE CLOUD CERTIFIED Professional Cloud Architect 編
tarosaiba
October 27, 2019
Tweet
Share
More Decks by tarosaiba
See All by tarosaiba
kube-system落としてみました
tarosaiba
8
2.8k
コンテナ技術とコンテナオーケストレーション 入門_改訂版
tarosaiba
0
550
ElasticContainerServicesハンズオン
tarosaiba
0
110
コンテナ技術とコンテナオーケストレーション入門
tarosaiba
0
820
Other Decks in Programming
See All in Programming
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
140
17年周年のWebアプリケーションにTanStack Queryを導入する / Implementing TanStack Query in a 17th Anniversary Web Application
saitolume
0
250
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
0
100
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
180
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
790
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
return文におけるstd::moveについて
onihusube
1
1.1k
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
260
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
6
1.1k
Fibonacci Function Gallery - Part 1
philipschwarz
PRO
0
220
ブラウザ単体でmp4書き出すまで - muddy-web - 2024-12
yue4u
3
470
Symfony Mapper Component
soyuka
2
730
Featured
See All Featured
Optimizing for Happiness
mojombo
376
70k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
Why Our Code Smells
bkeepers
PRO
335
57k
A Tale of Four Properties
chriscoyier
157
23k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
Optimising Largest Contentful Paint
csswizardry
33
3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Transcript
Shuntaro Saiba 合格対策 GOOGLE CLOUD CERTIFIED Professional Cloud Architect 編
@tarosaiba • Future Architect, Inc • Technology Innovation Group所属
4年目 • Infra - MW - CI 周りやってきました • AWS/GCP • Infrastructure as Codeの導入が得意 http://www.atmarkit.co.jp/ait/articles/1806/05/news010_2.html Shuntaro Saiba
私のいままで エンプラ小売り & AWS エンプラ金融 & オンプレ エンプラ小売り
& GCP エンプラ小売り & AWS
私のいままで エンプラ小売り & AWS エンプラ金融 & オンプレ エンプラ小売り
& GCP エンプラ小売り & AWS GCP運用を経験
本資料の内容 • 認定資格 Professional Cloud Architect の試験対策です • 認定試験の質問で頻出する 架空の会社のケーススタディ
を中心に ポイントを絞って解説させてもらいます
JencoMart Mountkirk Games Dress4Win TerramEarth ケース スタディ 4社 16か国 10,000店以上
世界的な小売販売店 オンラインマルチプレイ ヤー型のゲーム会社 自分のワードローブ 整理、管理を行える Webサービス会社 鉱業、農業向け重機 製造会社
1. JencoMart
会社の概要 • 1931年に雑貨店として創業 • 16か国に1万店以上の店舗を展開 • 取扱商品は、食料品、タイヤ、あ宝 飾品など多岐に渡る • カスタマーサービスを会社の中心的
な価値の1つとして掲げる 1. JencoMart
背景 • 実店舗とオンラインを組み合わせたモデルへと少しずつ移行し、 今ではオンラインでの売り上げが 25% を占めるまでになりました。 • アジアは未開拓の市場ですが、将来の成長に欠かせない市場だと考えていま す。
1. JencoMart
ソリューションのコンセプト • 重要なアプリケーションをクラウドに移行したいと考えていますが、 移行に必要なエンジニアリングとクラウドの適合性に関する技術レビューがまだ 終わっていません • すでに生産もサポートも終了しているインフラストラクチャ上ですべてのアプリ ケーションをホストしている状態です
1. JencoMart
ビジネス 要件 1. JencoMart 要件 ピーク時の容量とオフピーク時のコストを最適化する サービスの可用性とサポートを保証する オンプレミスのデータセンターのフットプリントと、関連す
る財務と環境への影響を減らす アウトソーシング モデルに移行して、インフラストラクチャの 購入に伴う高額の初期費用を回避する。 アジア市場にサービスを展開する ソリューション (キーワード) Compute engine Container engine
技術的 要件 1. JencoMart 要件 重要なアプリケーションのクラウドへの適合性を評価す る アプリケーションをクラウド対応に変更し 新しいインフラストラクチャに移行する 可能な限りマネージド
サービスを活用する 既存のデータセンターの容量の 20% を廃止する ソリューション (キーワード) アジア地区からサービスにアクセスする際のレイテンシ を短縮する Cloud Spanner Cloud SQL
CEO の言葉 1. JencoMart 当社のウェブにアクセスされるお客様が増加する中、JencoMart で は引き続きお客様と個人的な関係を築けるよう努めてまいります。 今後はグローバル市場において、オンライン店舗と実店舗との連携 を強め、当社の小売ビジネスの成長へとつなげていく予定です。 また、大規模なグローバル企業として、「グリーン」イニシアチブとポ
リシーを通じて環境に配慮する責任もあります。
CTO の言葉 1. JencoMart 自社でのデータセンター運営にはさまざまな課題が伴い、 長期的な成功に欠かせない重要な技術開発に注力できずにいま す。データサービスをパブリック クラウド インフラストラクチャに移行 することで、ビッグデータと機械学習に注力し、さらなるカスタマー
サービスの向上を実現することができるようになるでしょう。
CFO の言葉 1. JencoMart JencoMart は創設以来、データサービス インフラストラクチャに多 額の投資を行ってきました。しかし、市場動向の変化に伴い、長期 的な成功を実現するために、インフラストラクチャをアウトソーシン グする必要性が生じています。新しいモデルに移行すれば、ピーク
時の増大し続けるユーザーの要求に対応し、オフピーク時にはコス トを削減することが可能になるでしょう。
On-Premises (米国 東海岸) 【LAMP アプリケーション】 ・ 30台 ・ ツイン、デュアルコア
CPU ・ 32GB の RAM ・ ツイン 250GB の HDD (RAID1) 既存の技術環境 1. JencoMart On-Premises (米国 西海岸) 【ユーザー プロフィールを保存】 ・ 20TB ・ 複雑なテーブル構造 ・ 管理の行き届いた、クリーンなデータ ・ 強力なバックアップ戦略 【ユーザー認証情報を保存】 ・ シングルホーム (米国西部) ・ 冗長化なし ・ 12時間ごとにバックアップ ・ 100%の稼働率保証 SLA ・ すべてのユーザを認証 【LAMP アプリケーション】 ・ 20台 ・ シングル、デュアルコア CPU ・ 24GB の RAM ・ ツイン 250GB の HDD (RAID1) 【ストレージ】 ・ 各ロケーションで、100TBの共有SANにア クセス ・ テーブ バックアップ (毎週)
新しいアーキテクチャ 1. JencoMart Static Content Cloud Storage User credential Cloud
SQL Cloud Load Balancing us-west1 us-east1 APP Instances Compute Engine Autoscaler APP Instances Compute Engine Autoscaler User profile Cloud Spanner asia-northeast1 APP Instances Compute Engine Autoscaler
新しいアーキテクチャ 1. JencoMart Static Content Cloud Storage User credential Cloud
SQL Cloud Load Balancing us-west1 us-east1 APP Instances Compute Engine Autoscaler APP Instances Compute Engine Autoscaler User profile Cloud Spanner asia-northeast1 APP Instances Compute Engine Autoscaler ポイント.1 【マルチリージョン】 ポイント.2 【データストア】
ポイント 1 - マルチリージョン • Cloud Load Balancing を使用 •
1つのグローバルIPアドレスで、世界のどの地 域からも、最も近いリージョンへアクセスが可 能 • 展開を見据えて、アジアリージョンへのデプロ イ • マネージド インスタンス グループ で自動ス ケーリングを実現 1. JencoMart Cloud Load Balancing us-west1 us-east1 APP Instances Compute Engine Autoscaler APP Instances Compute Engine Autoscaler asia-northeast1 APP Instances Compute Engine Autoscaler NEW
ポイント 2 - データストア • それぞれの要件に合わせて フルマネージドなデー タベースのサービスを選定 •
Oracle (User Profile) → Cloud Spanner ◦ 水平スケーリング可能な RDBMS • Postgres (User Credential) → Cloud SQL ◦ フルマネージドのPostgres 1. JencoMart User credential Cloud SQL User profile Cloud Spanner BEFORE AFTER
2. Mountkirk Games
会社の概要 • 一般的なモバイルプラットフォーム向 けにセッションベースの オンラインマルチプレーヤー型ゲー ムを開発 2. Mountkirk Games
背景 • いくつかのゲームが予想を上回る人気を博し、それにより各種サーバのスケー リングに関する問題が発生 • 現在、ゲームの統計情報は中央のMySQLサーバにレポート用に管理していま す 2.
Mountkirk Games
技術的 要件 ゲームのアクティビティに基づいて動的にスケールアッ プまたはスケールダウンする。 マネージド NoSQL データベース サービスに接続 カスタマイズした Linux
ディストリビューションを実行 ソリューション (キーワード) 2. Mountkirk Games ゲーム バックエンド プラットフォーム 要件 Container engine Compute engine Cloud Storage
技術的 要件 ゲームのアクティビティに基づいて動的にスケールアッ プまたはスケールダウンする 着信データをゲームサーバーからオンザフライで直接処 理する 低速なモバイル ネットワークが原因で遅延したデータを 処理する ソリューション
(キーワード) 2. Mountkirk Games 10 TB 以上の履歴データに対して SQL クエリを実行 ユーザーのモバイル端末から定期的にアップロードされ るファイルを処理する ゲーム分析プラットフォーム 要件 フルマネージドサービスのみを使用する Compute engine Container engine Cloud Storage Cloud Pub/Sub BigQuery Cloud Dataflow
CEO の言葉 前回成功したゲームの場合、当時利用していたクラウド プロバイダ でスケーリングがスムーズに行えなかったため、ユーザーの利用数 が伸びずゲームの評価にも悪影響がありました。当社の投資家が 必要としているのは、ゲームの速度と安定性を評価するための重 要な業績評価指数(KPI)や、対象ユーザーに合わせてゲームを改 良できるよう、ユーザーの使用パターンに関する詳細な分析情報を 提供してくれる指標です。
2. Mountkirk Games
CTO の言葉 当社の現在の技術スタックでは必要なスケーラビリティを実現でき ません。そのため現在の MySQL から、自動スケーリングと低レイ テンシの負荷分散が可能な環境へと移行し、物理サーバーの管理 作業を不要にしたいと考えています。 2. Mountkirk
Games
CFO の言葉 当社はユーザー属性データ、使用状況に関する指標、その他の KPI を十分に把握できていません。その結果、適切なユーザーを見 極めて、ユーザーを絞り込んだ確実なマーケティングができず、収 益に大きく影響するゲーム内のプレミアム Blast-Up も満足に販売 できないでいます。
2. Mountkirk Games
On-Premises (米国 東海岸) 【LAMP アプリケーション】 ・ 30台 ・ ツイン、デュアルコア
CPU ・ 32GB の RAM ・ ツイン 250GB の HDD (RAID1) 既存の技術環境 On-Premises (米国 西海岸) 【ユーザー プロフィールを保存】 ・ 20TB ・ 複雑なテーブル構造 ・ 管理の行き届いた、クリーンなデータ ・ 強力なバックアップ戦略 【ユーザー認証情報を保存】 ・ シングルホーム (米国西部) ・ 冗長化なし ・ 12時間ごとにバックアップ ・ 100%の稼働率保証 SLA ・ すべてのユーザを認証 【LAMP アプリケーション】 ・ 20台 ・ シングル、デュアルコア CPU ・ 24GB の RAM ・ ツイン 250GB の HDD (RAID1) 【ストレージ】 ・ 各ロケーションで、100TBの共有SANにア クセス ・ テーブ バックアップ (毎週) 2. Mountkirk Games
新しいアーキテクチャ Cloud Load Balancing 2. Mountkirk Games BigQuery Cloud Dataflow
Cloud Datalab Cloud Pub/Sub Cloud Storage Cloud Datastore APP Instances Compute Engine Autoscaler Monitoring Logging
新しいアーキテクチャ Cloud Load Balancing 2. Mountkirk Games BigQuery Cloud Dataflow
Cloud Datalab Cloud Pub/Sub Cloud Storage Cloud Datastore APP Instances Compute Engine Autoscaler Monitoring Logging ポイント.3 【データ分析フロー】 ポイント.2 【データストア】 ポイント.1 【オートスケーリング】
【参考】 - データ分析パイプライン 2. Mountkirk Games Ingest Cloud Pub/Sub Cloud
Datastore Stream Batch Cloud Storage Process Cloud Dataflow Analyze BigQuery Cloud Dataproc Cloud Machine Learning Cloud Bigtable Cloud Datalab Visualize
3. Dress4WinDress4Win
会社の概要 • ウェブサイト及び、モバイルアプリを 使って、自分のワードローブの整理や 管理を行うことができる • ユーザがデザイナーや販売店とつなが るソーシャル・ネットワーク • 収益源は、広告、
eコーマス、 紹介、フリーミアムアプリ 3. Dress4Win
背景 • コロケーション型データセンタ内の数百台ものサーバやアプライアンス • 既存のインフラの性能では、アプリケーションの急速な拡大に十分に対応でき ないのが現状 • ビジネスの拡大に対応し、イノベーションを加速したい
3. Dress4Win More Services ・・・
ソリューションのコンセプト • 移行の第1段階は、開発環境とテスト環境の移行を検討している • 現在は1つのコロケーションに集約されているため、災害復旧サイトの構築も検 討している • ただし、自社のシステムについて、現状のまま移行できるコンポーネントと、変更 が必要なコンポーネントの切り分けはまだできてません
3. Dress4Win
ビジネス 要件 本番環境を柔軟にスケールできる、信頼性と再現性の 高い環境を構築する クラウドに最適なセキュリティ ポリシーと Identity and Access Management(IAM)を定義し、それらを遵守す
ることでセキュリティを強化する 新しいリソースを迅速にプロビジョニングし、ビジネスの 俊敏性とイノベーションのスピードを向上させる ソリューション (キーワード) アーキテクチャを分析し、クラウドでのパフォーマンス向 上のために最適化する 以上の全要件が満たされ次第、クラウドに完全移行 要件 3. Dress4Win Compute engine Container engine Cloud IAM
技術的 要件 リソースをクラウドにプロビジョニングするための自動化 フレームワークを評価して選択する 緊急時にクラウドへの本番環境のフェイルオーバーをサ ポートする クラウドに移行することで容量を削減できる本番環境 サービスを特定する ソリューション (キーワード)
可能な限りマネージド サービスを使用する 転送時も保存時もデータを暗号化する 要件 データセンターの本番環境とクラウド環境の間を複数の VPN で接続する 3. Dress4Win Compute engine Container engine Cloud VPN Cloud Memorystore Cloud Datastore
CEO の言葉 当社の投資家は、現在のインフラストラクチャで、コストを抑えなが らスケールすることができるかどうかという点に懸念を抱いていま す。また、新たな競合他社がパブリック クラウドを使用することで先 行投資を回避し、その分を優れた機能の開発に注力する可能性が あることも懸念材料の 1 つです
3. Dress4Win
CTO の言葉 当社は現在のインフラストラクチャに多額の投資を行ってきました が、多くの機器が耐用年数に近づきつつあります。 新しい機器を設置するために、新しいプロジェクトの開始を数週間 遅らせることも日常化しています。 当社のトラフィック パターンは午前中と週末の夜に最も高くなり、そ れ以外の時間帯は容量の 80%
がアイドル状態です。 3. Dress4Win
CFO の言葉 現在、当社の資本支出は四半期予測を超えています。クラウドに移 行した場合、初期の支出は増加すると思われますが、次のハード ウェア買い替え時期前には移行が完了すると予測しています。 当社の今後 5 年間の総所有コスト(TCO)分析によると、クラウド戦 略を採用した場合、現行のモデルよりも 30~50%
コストを抑えるこ とができます。 3. Dress4Win
【アプリケーション】 ・ Tomcat - Java microservice ・ Nginx
- 静的コンテンツ ・ Apache Beam - バッチ処理 既存の技術環境 On-Premises 【データベース】 ・ MySQL - ユーザデータ,イベントリ,静的データ ・ Redis - メタデータ,ソーシャルグラフ,キャッシュ 【Apache Hadoop / Spark】 ・ データ分析 ・ リアルタイムのトレンド計算 【ストレージ アプライアンス】 ・ VMホスト用 iSCSI ・ Fiber SAN - MySQL ・ NAS - Image Storage, Log, Backup 3. Dress4Win 【MQサーバ】 ・ メッセージング ・ ソーシャル通知 ・ イベント 【汎用サーバ】 ・ Jenkins ・ モニタリング ・ 要塞ホスト、セキュリティスキャナ
新しいアーキテクチャ 3. Dress4Win Cloud Load Balancing Cloud Storage Cloud Datastore
Microservices Kubernetes Engine Cloud Memorystore Cloud Dataproc trending/analytics BigQuery Jenkins Compute Engine On-Premises Nginx Compute Engine Gateway Gateway Cloud VPN Cloud Pub/Sub Cloud Functions
4. TerramEarth
会社の概要 • 1946年 に設立 • 鉱業及び、農業向けの重機を製造 • 500を超えるディーラとサービスセンタを 100カ国に保有しています •
顧客の生産性を上げる製品を製造する ことを使命としています 4. TerramEarth Mining Agriculture
背景 • 顧客のニーズの変化に合わせて主力製品のイノベーションを図ったり、新しい 市場を創造したりできる会社です • ここ 20 年間、業界では生産性向上を目指す動きが顕著で、オペレータ 1 名で
運用する車両の大型化が進んでいます 4. TerramEarth
ソリューションのコンセプト • 2,000 万台の TerramEarth の車両が稼働しており、1 秒あたり 120 項目のデー タがそこで収集されます。
• 車両の点検時にアクセスして分析することができます。データはメンテナンス ポート経由でダウンロードされます。 この同じポートが運転パラメータの調整に も使用できるため、現場にいながらにして新しいコンピューティング モジュール で車両をアップグレードすることができます。 4. TerramEarth
ビジネス 要件 余剰在庫をかかえるというコスト増を招くことなく車両の 計画外停止時間を 1 週間未満に短縮する 自社製品の使われ方に関してさらに多くのデータを ディーラー網に提供し、新しい製品やサービスをより適 切に提案できるようにする 急成長を続ける農業ビジネスでの種子供給業者や肥料
供給業者との提携を中心にさまざまな企業と提携し、魅 力的な製品やサービスを共同で顧客に提供できるように なる ソリューション (キーワード) 要件 4. TerramEarth
CEO の言葉 当社は車両の大型化の波に乗り、顧客の生産性向上に役立てるこ とに成功しています。技術革新が急速に進んでいますが、当社はイ ンテリジェントな耕作機械を提供するなど、コネクテッド デバイス テ クノロジーを活用してより優れたサービスを顧客に提供しています。 このテクノロジーを活用し、過去の傾向に基づいて車両の動作を調 整することで、農家の収量
25% 増につなげることができました。こう した状況から、当社の農業部門の製品は急成長しており、2020 年 には収益の 50% を農業製品が生み出すようになると予測していま す 4. TerramEarth
CTO の言葉 当社は競合他社よりも低コストでより良い車両を作ることができるた め、これまでずっと製造のプロセスで競争力を維持してきました。し かし、さまざまな手法を取り入れた新しい製品が絶えず開発されて おり、当社には業界の次なる変革の波に乗るスキルが欠落してい ることが懸念されます。残念ながら当社の CEO はテクノロジーの陳 腐化を真剣に受け止めておらず、業界に新規参入する会社の多く
は特定分野のみを専門にしているニッチ企業だと考えています。私 の目標は、自社のスキルを磨くと同時に、徐々にイノベーションを進 めて目の前にある市場のニーズに対応することです 4. TerramEarth
既存の技術環境 Datacenter 4. TerramEarth FTP Servers ETL Data Warehouse
新しいアーキテクチャ 4. TerramEarth Data warehouse BigQuery Cloud IoT Core Cloud
Dataflow Cloud Pub/Sub US - Region Cloud Storage Cloud Dataproc EU - Region Asia - Region Cloud Storage Cloud Dataproc Cloud IoT Edge Cloud Machine Learning Streaming Batch US Asia EU Area