Cloud Onr
Cloud OnAir
Cloud OnAir
【Anthos 演習】
解説を聞きながら Anthos を体験しよう
2020 年 11月 5 日 放送
Cloud OnAir
本日の演習環境
本日の演習環境
http://goo.gle/OnAir-Anthos
Qwiklabs アカウント設定
http://goo.gle/ql-account
Speaker
Cloud OnAir
長谷部 光治
ソリューションズ アーキテクト
柳原 伸弥
アプリケーション
モダナイゼーション スペシャリスト
Agenda
Cloud OnAir
1
3
2
4
5
Anthos 概要
Qwiklabs における Anthos
Qwiklab 実演 の前に
Qwiklab 実演
まとめ
Cloud OnAir
Cloud OnAir
Anthos 概要
Cloud OnAir
Anthos
Anthos とは
Google が提供する
コンテナ アプリケーション プラットフォーム
Cloud OnAir
GKE (Google Kubernetes Engine) について
前回の Cloud OnAir (2020/10/29 放送) で紹介
コンテナ プラットフォームというと
コンテナ ワークロードのための
マネージド プラットフォーム
GKE をベースにした
アプリケーション プラットフォーム
Cloud OnAir
Anthos 全体像
Google マネージド Kubernetes
Cloud OnAir
Anthos 全体像
オンプレミス
ベアメタル
他社クラウド
その他
環境
オンプレミス
ハイパーバイザー
ハイブリッド クラウド /
マルチクラウド環境で
GKE (Kubernetes) を利用
Cloud OnAir
Anthos 全体像
オンプレミス
ベアメタル
他社クラウド
その他
環境
オンプレミス
ハイパーバイザー
マイクロサービスを実現する
マネージド サービスメッシュ
Cloud OnAir
Anthos 全体像
オンプレミス
ベアメタル
他社クラウド
その他
環境
オンプレミス
ハイパーバイザー
即時にコンテナの稼働可能な
マネージド サーバーレス
Cloud OnAir
Anthos 全体像
オンプレミス
ベアメタル
他社クラウド
その他
環境
オンプレミス
ハイパーバイザー
一貫性ある環境に保つ
コンフィグレーション管理
安全に運用するための
オブザーバビリティ
仮想マシンから
コンテナに変換
Cloud OnAir
Anthos 全体像
オンプレミス
ベアメタル
他社クラウド
その他
環境
オンプレミス
ハイパーバイザー
Cloud OnAir
Cloud OnAir
Qwiklabs における Anthos
Cloud OnAir
Qwiklabs とは?
Google Cloud Platform を実際に使って演習(ハンズオン)する環境を
提供するプラットフォームです。
ご自分のレベルに合わせた演習問題を選択し、 GCP をご自分のペースで
学習できます。
ハンズオンラボは一つ一つ独立した演習になりますが、
目的別にクエストをご用意しております。
クエストには学習目標に合わせて、いくつかのハンズオンラボがセットになってい
ます。
1 つのラボは、早いものだと 10 分程度から 30 分程度で完了できます。
ラボを楽しんでいただくためにユーザーを作成いただきますが、
Qwiklabs ユーザーは GCP アカウントとは異なります。
演習で利用する GCP アカウントは演習実行中、貸出しされます。
(演習終了後は利用不可となります。)
今回、無料でこちらのハンズオンラボを楽しんでいただけますので、
お楽しみください。
Cloud OnAir
各機能コンポーネントをサポートする学習内容
● VM の移行
● Service Observability in Anthos (英語)
● Google Kubernetes Engine に Anthos Service
Mesh をインストールする
● Anthos Config Management を使用して
Kubernetes Engine でポリシーを管理する
● Cloud Run for Anthos
● Build a BigQuery Processing Pipeline with Events
for Cloud Run for Anthos (英語)
● Confluent: Building a Cloud Run Streaming
Application with Apache Kafka on Anthos (英語)
基 礎 上 級
1
2
3
4
5
6
7
1
2
34
5,6,7
10/29 放送
Cloud OnAir
参照
Cloud OnAir
Cloud OnAir
Qwiklab 実演の前に
演習中に登場する技術要素の補足
Cloud OnAir
最初に
本演習で使用している環境では、 Anthos 1.3 を用いた内容になっています。
2020 / 11 / 5 時点の最新バージョンは、 Anthos 1.5 になります。
実環境で構成する場合は入力パラメータや、表示される内容が変わりますので製
品ドキュメントもあわせてご参照ください。
Anthos 製品ドキュメント:https://cloud.google.com/anthos/docs
- Anthos Service Mesh:https://cloud.google.com/service-mesh/docs
- Anthos Service Mesh インストールガイド:https://cloud.google.com/service-mesh/docs/install
Cloud OnAir
サービスメッシュとは
サービス
サービス
サービス
サービス
サービス
サービス
サービスメッシュは
多岐に関連するアプリケーション同士の通信を
● プログラム言語に依存せず
● アプリケーションに手を加えることなく
自動化し提供し、マイクロサービスの設計に
関する課題を解決するサービス
サービス
サービス
サービス
マイクロサービス
メッシュ (格子) になるサービス間の関係
Cloud OnAir
マイクロサービスの課題
サービス
サービス
サービス
サービス
サービス
サービス
サービス
サービス
サービス
サービス
マイクロサービス
マイクロサービスを設計する際に考慮するべき点
● トラフィック コントロール
● サービス ディスカバリ
● オブザーバビリティ
● 障害分離
● 認証・認可
サービスメッシュは設計の上記のような複雑性を
解決してくれる機能を提供
Cloud OnAir
サービスメッシュを実現する Istio
Istio とは
● オープンソース ソフトウェア
● Google, IBM, Lyft によりプロジェクト開始
● 2017 年 3 月に最初のリリース
サービスメッシュに含むアプリケーションの
プロキシとして動くコンポーネントとして
Envoy を利用
Cloud OnAir
Pod
コンテナ
サイドカーと Envoy
ビジネスロジック
セキュリティ
トラフィック管理
ポリシー
オブザーバビリティ
Pod
サイドカー コンテナ
セキュリティ
トラフィック管理
ポリシー
オブザーバビリティ
コンテナ
ビジネスロジック
Envoy
サイドカー構成を
とることにより、
アプリケーション
本体に手を加えず
(ビジネスロジックに
変更なく) 各種機能を追
加
Cloud OnAir
Istio アーキテクチャ
Pilot
サービス ディスカバリ、
トラフィック管理
Citadel
CA として証明書の発行、管理
Envoy(プロキシ)
プロキシとして Pilot から
配布された設定に従い
トラフィックの制御を行う
サービス A サービス B
プロキシから直接
テレメトリ情報を送信
Ingress
HTTP,
gRPC, TCP
mTLS
ディスカバリ,
設定, 証明書
istiod CitadelPilot
Jaegar
プロキシ プロキシ プロキシ
Cloud OnAir
Anthos Service Mesh
サービス A サービス B
Ingress
HTTP,
gRPC, TCP
mTLS
プロキシ プロキシ プロキシ
ディスカバリ,
設定
istiod
Sidecar
Injector
テレメトリ
管理基盤
Traffic Director Mesh CA
証明書
Google 管理の
コントロール プレーン
プロキシから直接
テレメトリ情報を送信
近日公開
Traffic Director
サービス ディスカバリ
トラフィック管理
Mesh CA
CA として証明書の発行、管理
テレメトリ管理基盤
Google 管理のテレメトリ管理
Google が提供する Istio ベースの
フルマネージドなサービス メッシュ
Cloud OnAir
Cloud OnAir
Qwiklab 実演
Google Kubernetes Engine に
Anthos Service Mesh を
インストールする
Cloud OnAir
1. クラスタを作成する
GKE Cluster
Cloud Shell で GKE Cluster を作成します
● 単一ゾーン
● 4 ノード
gcloud beta container clusters create
${CLUSTER_NAME} 
--machine-type=n1-standard-4 
--num-nodes=4 
--identity-namespace=${WORKLOAD_POOL} 
--enable-stackdriver-kubernetes 
--subnetwork=default 
--labels mesh_id=${MESH_ID}
gcloud beta container clusters create
${CLUSTER_NAME} 
--machine-type=n1-standard-4 
--num-nodes=4 
--workload-pool=${WORKLOAD_POOL} 
--enable-stackdriver-kubernetes 
--subnetwork=default 
--labels mesh_id=${MESH_ID}
修正
(約 3 分程度 で作成)
Cloud OnAir
2. クラスタを登録する
GKE Cluster
Connect Agent
Hub
GKE Cluster
登録
作成した GKE Cluster が Anthos を
利用できるように GKE Hub に登録します
1. GKE Connect が使用する
サービス アカウントを作成
2. サービス アカウントに gkehub.connect
ロールを割り当て
3. サービス アカウント キー ファイルを使用
してクラスタを登録
Cloud OnAir
3. Anthos Service Mesh をインストールする
GKE Cluster
Connect Agent
Hub
GKE Cluster
登録
Anthos Service Mesh
(コントロール プレーン)
Anthos Service Mesh を GKE Cluster 上に
インストールします
1. インストールファイルをダウンロード
2. istioctl を使用して
Anthos Service Mesh をインストール
3. asmctl を使用して
インストールを確認
istioctl
asmctl
Cloud OnAir
4. サイドカー インジェクションを有効にする
GKE Cluster
Connect Agent
Hub
GKE Cluster
登録
Anthos Service Mesh
(コントロール プレーン)
istio-injection=enabled
サイドカー コンテナを自動で導入するように イ
ンジェクションを有効化します
● kubectl を使用して
Istio-injection を enabled にする
Cloud OnAir
5. Bookinfo をデプロイする
GKE Cluster
Connect Agent
Hub
Anthos Service Mesh
(コントロール プレーン)
GKE Cluster
登録
product
page
reviews
v1
reviews
v2
reviews
v3
details
ratings
マイクロサービス アプリケーションの
サンプルを GKE Cluster にデプロイします
istio-injection=enabled
Cloud OnAir
6. Istio Ingress ゲートウェイを使用して外部アクセスを有効にす
る
GKE Cluster
Connect Agent
Hub
Anthos Service Mesh
(コントロール プレーン)
GKE Cluster
登録
product
page
reviews
v1
reviews
v2
reviews
v3
details
ratings
Istio
Ingress
外部 (インターネット) からアクセス
出来るように Istio Ingress ゲートウェイを構成
します
istio-injection=enabled
Cloud OnAir
7. Bookinfo のデプロイ状況を確認する
GKE Cluster
Connect Agent
Hub
Anthos Service Mesh
(コントロール プレーン)
istio-injection=enabled
GKE Cluster
登録
product
page
reviews
v1
reviews
v2
reviews
v3
details
ratings
Istio
Ingress
外部 IP
ClusterIP を使用して Pod 間のアクセスを
確認します
Istio Ingress ゲートウェイに割り当てられた外
部 IP アドレスを確認してアクセスします
istio-injection=enabled
クラスタ内部アクセス
Cloud OnAir
Anthos Service Mesh ダッシュボード
SLO の設定
Cloud OnAir
Service Level Objective ( SLO )
SLO
サービスレベル目標
● ユーザーがサービスを利用する上で
重要な観点を考慮した 数値目標
○ ユーザーがサービスを正常に
利用できている範囲
● 観点や目標値はユーザー目線を重要視
● メトリクスは分布として扱い、
平均値ではなくパーセンタイルを推奨
ユーザーに対する理解 を深めて
継続的に目標値を見直し
より良い SLO を模索することが大切
Cloud OnAir
SLO に対するサービスダウン時間
可用性
(%)
障害時間
年間 四半期 1 ヶ月
90% 36.5 days 9 days 3 days
95% 18.25 days 4.5 days 1.5 days
99% 3.65 days 21.6 hours 7.2 hours
99.5% 1.83 days 10.8 hours 3.6 hours
99.9% 8.76 hours 2.16 hours 43.2 minutes
99.95% 4.38 hours 1.08 hours 21.6 minutes
99.99% 52.6 minutes 12.96 minutes 4.32 minutes
99.999% 5.26 minutes 1.30 minutes 25.9 seconds
Cloud OnAir
Service Level Indicator ( SLI )
SLI
サービスレベル指標
● サービスの品質を決める 計測可能な指標
● ユーザー視点での指標の利用を推奨
● 良いイベント数 / 全体のイベント数の
形式で定義することを推奨
SLI の種類 計測内容
可用性 応答に成功したリクエスト比率
レイテンシ しきい値より高速なリクエスト比率
品質 過負荷時の正常レスポンス比率
新鮮さ しきい値より直近に更新されたデータ比率
正確性 正常結果を出力した入力値の比率
SLI 例
Cloud OnAir
SLO / SLI を学べる Qwiklabs
GSP 742
Service Observability
in Anthos
Cloud OnAir
Cloud OnAir
まとめ
Cloud OnAir
まとめ
今回は Anthos が提供する機能の中から
Anthos Service Mesh をテーマとしました
● マイクロサービス(サービスメッシュ)を実現するため
に役立つ機能を提供
● オープンソースの Istio をベースにした製品
● マイクロサービスを構成するだけではなく
動き始めた後の観測も可能
Cloud OnAir
まとめ
Anthos には、サービスメッシュの実現だけではなく、
他にもモダナイズされたアプリケーション構築に役立つ機能を提供しています
Qwiklabs を通して学んでみてください!
Google Cloud スキルバッジ獲得キャンペーンのご案内
Google Cloud スキルバッジは、
スキルの向上を証明するデジタルなバッジです。
本キャンペーンに登録してスキルバッジを獲得しましょう!
獲得した方には、さまざまな特典もございます。
詳細・お申込みはこちら
goo.gle/skillbadge
キャンペーンにお申し込みいただいた方全員
Qwiklabs 30 日間無料でご提供!
チャレンジコースにてスキルバッジを2 つ獲得された方
対象 Coursera コースを 1 か月間無料でご提供!
スキルバッジ獲得後、ハッシュタグ「#GoogleCloudスキルバッジ」をつけて
Twitter にツイートしてくださった方の中から、
抽選で 5 名様に、Google Nest Audio をプレゼント!

[Cloud OnAir] 【Anthos 演習】 解説を聞きながら Anthos を体験しよう 2020年11月5日 放送