未来は僕以外の手の中

SI屋がIT技術やビジネスのことなどを気ままに書き綴ってみるなど

GCP学習開始 - 「Google Cloud Platform エンタープライズ設計ガイド」で主要サービス把握から

GCP学習の機運

実務経験のあるAWSもまだまだ知らなくことは多く学習は継続せねばだが、ニーズの多様化に応えるべくマルチクラウドが当たり前になってくる(なっている)ので、よりよいアーキテクチャ提案のために他クラウドもどのようなものか把握しておかねばならない。
ということで2021年度はちょっくらGCP学習も始めてみることにする。

なぜGCP

cafe-dc.com

シェア的には急成長中でAWSとの2強になりうるAzureも学習候補ではあるが、

  • 現場でもGCP使い始めていて、今後すぐに活かせる機会がありそう
  • 単純にGCPのテクノロジーどんなものか興味あり

ということで、手をつけすぎても中途半端になるのでまずはGCPから。
ある程度GCPもわかるようになってからAzureにも手を出すとしよう。

GCP学習方針

実務経験のあるAWSと異なり、GCPは全くの未経験者
手を動かしながら学ぶのが一番なのでその方針で行く予定だが、先に全体象だけは書籍でさくっと把握しておくことにする。

AWS有識者向けに書かれており、
 AWSでいうところのXXXサービス
といった記述があるので、すんなりイメージしやすくありがたい。

書籍構成としては

  • 主要サービス解説
    • コンピューティング
    • ストレージ
    • ネットワーキング
    • ビッグデータ
    • 機械学習
    • アカウント管理・請求管理
    • 運用監視
  • エンタープライズ設計シナリオ
    • GCPを活用したWebシステムの設計/構築
    • GCPを活用したハイブリッドクラウド環境の構築
    • Webサイトと業務システムのデータ統合/分析を小さく始める

となっており、主要サービスの全体概要把握にはちょうどよかった。
(ただし2018年5月刊行なので最新サービスは未掲載なので注意)

エンタープライズ設計シナリオは

  • このパターンあるある。課題観点とか妙に親近感湧くなぁ

と思いつつ最後に著書プロフィールみたら納得。所縁がありましたわ。

エンタープライズ設計ガイドを読んで

AWSと比較しつつ、なるほどと思った箇所や気付きなどを記録しておこう

ライブマイグレーション

GCP仮想マシンについて Google 側がメンテナンスをする際、ライブマイグレーションという機能を用いてサービスを止めずに行われます。
GCPとは何か | クラウドサービス徹底比較・徹底解説 (2021年版)

神機能かっ!
AWSだとインスタンスのリタイア通知受けとると定期リブートしてないようなサーバ群は
リブート計画立てねばとドタバタするが、それがないということか。AWSにも欲しいなぁ

Cloud Storage CDN機能

最初からCDN機能あるのは便利やね。
とはいえ、最高のパフォーマンスを求めるならCloud CDNとの連携が推奨とのこと

公式ガイドにCloud Storageの組み込みキャッシュとCloud CDNのどちらにするかを選択するかの検討観点掲載あり
Caching  |  Cloud Storage  |  Google Cloud

Cloud SQL 高可用性

ゾーンの停止ではない理由でマスターが停止した場合、フェイルオーバーは発動されないので注意

との記述があり、「え、そうなん?」と思いググると同じ疑問持った人の記事が見つかる。

ゾーン障害以外の異常は自分で監視、フェイルオーバーしなくちゃならないのか、と思いつつ英語版ドキュメントを見ると、下記の通り。
(中略)
ゾーン障害以外だけでなく、 約 60 秒間プライマリが無応答の場合にフェイルオーバーするって書いてあるじゃん……。
【GCP】Cloud SQL for MySQL (高可用性構成) を構築 | ハックノート

どうやら当時(2018年)のGCP日本語ドキュメントの記述がいけてなかっただけなのかな。
今公式ドキュメント見ると日本語でもきちんとインスタンス障害のケースも明記してますな。

フェイルオーバーが発生するのは、プライマリ インスタンスが約 60 秒間応答しない場合、
またはプライマリ インスタンスが配置されているゾーンでサービスが停止している場合です。
高可用性構成の概要  |  Cloud SQL for MySQL  |  Google Cloud

Cloud Spanner

  • 高い整合性と大規模水平スケーリングの機能を備えた従来のRDBとNoSQLの"いいとこ取り"を実現
  • 従来型RDBに比べ設計上の制約が存在するので既存RDBからの移行は簡単ではない

現場でDB運用していると「水平スケーリングしてぇ」と思うこともあるので、
クラウドネイティブの選択肢としてはSpannerはとても魅力的だ。今後の動向も追っていくとしよう。

Spanner導入実績どんなもんかと見てみたら、ドラゴンクエストウォークにも使われてたのか。確かにドラクエは大規模アクセスコンテンツだよな〜
cloud.google.com

Stackdriver Debugger

【GCP入門編・第24回】 Stackdriver Debugger で本番環境のデバッグを行おう! | 株式会社トップゲート

本番稼働中のアプリに動作影響を与えることなくソースコードの特定行においてコールスタックやローカル変数をキャプチャできるデバッグツール

これも使いこなせれば障害切り分け時などの強力なツールになりそうだ

書籍刊行(2018年5月)以降のアップグレード

主要サービスに関して
 本書執筆時点ではXXXとYYYが選択可能である
という注釈がついている箇所がいくつかあったので、2021年現在はどうなっているかざっと確認

Cloud SQLのサポートするDBエンジン

書籍では

とあったが2021年現在は追加でSQL Serverも対応しているようだ。
Oracleのマネージドは今も対応してないのね。
Cloud SQL for PostgreSQL、Cloud SQL for MySQL、Cloud SQL for SQL Server

Cloud Functions

AWSのLambdaに該当。書籍時点ではベータ版であったが、今は立派に正式版。Lambdaが色々と活用の幅が広いので、きっとCloud Functionsも幅が広いのだろう。今後キャッチアップしていくことにしよう。

Cloud AutoMLのプロダクト
  • Google提唱「AIの民主化
    • 世の中のさらに広い分野にAI活用を広めるには機械学習に関する人材が不足している企業でも簡単に利用できるようにしていく必要がある
    • Cloud AutoMLはこれを目指したサービス

書籍ではAutoML(アルファ版)として「Cloud AutoML Vision」のみの紹介であったが、2021年現在だと当然のごとくサービス展開範囲が増えていますな

  • プラットフォーム
    • AutoML 統合型 AI Platform(プレビュー版)
  • 視覚認識
    • AutoML Vision
    • AutoML Video Intelligence(ベータ版)
  • 言語
    • AutoML Natural Language
    • AutoML Translation
  • 構造化データ
    • AutoML Tables(ベータ版)

cloud.google.com