皆さん、こんにちは
この記事では、私が最近読んだ、技術評論社の「Google Cloudのしくみと技術がこれ1冊でしっかりわかる教科書」の紹介をします。
私は現在、GCPでWebアプリを運営しようとトライしているのですが、その過程でクラウドサービスって結局何ができるんだ?と思い、せっかくならしっかり勉強したいと思い本書を手に取りました。
本書がオススメの人、読者対象
本書がオススメな人は、以下の通りです。
書籍の中身自体が、「具体的な操作方法」ではなく、クラウドサービスそのものの解説や、GCPとはどんなサービスかといった紹介が大半です。
そのため、Google Cloud を初めて触る人や、これからGoogle Cloud を使おうかな?と考えているクラウドビギナーの方にオススメです。
本書の中身
本書の目次
本書の目次は以下の通りです。
----------------------------------------------
- 第1章 Google Cloud の基礎知識
- 第2章 クラウドのしくみとGoogle の取り組み
- 05 クラウドとは ~クラウドはさまざまな価値を提供する
- 06 パブリッククラウドとプライベートクラウド ~クラウドの利用形態
- 07 IaaS、PaaS、SaaS ~クラウドのサービスが提供する範囲
- 08 The Datacenter as a Computer ~Googleのインフラ設計における考え方
- 09 グローバルなインフラ ~クラウドのサービスを支える技術
- 10 クラウドにおけるセキュリティ対策 ~クラウドでもセキュリティ対策は必要
- 11 ハイブリッドクラウドとマルチクラウド ~オンプレミスやほかクラウドを利用した構成
- 12 オープンクラウド ~クラウドの技術をオープンにする取り組み
- 第3章 Google Cloud を使うには
- 第4章 サーバーサービス「Compute Engine」
- 第5章 ネットワークサービス「VPC」
- 26 Google Cloudのネットワーク ~安全で高速なネットワーク
- 27 VPC ~仮想ネットワークサービス
- 28 デフォルトネットワーク ~自動で作成されるネットワーク
- 29 サブネット ~Google Cloudにおけるサブネットの扱い
- 30 VPCネットワークの2つのモード ~サブネットを作成する2つの方法
- 31 ファイアウォール ~通信制御を行うしくみ
- 32 VPCネットワークの拡張 ~VPCネットワークの相互接続や共有
- 33 ルーティングとNAT ~セキュアなネットワークを構築する
- 34 Cloud Load Balancing ~負荷分散サービス
- 35 Cloud CDN ~表示速度を向上させるしくみ
- 36 Cloud DNS ~DNSサービス
- 第6章 ストレージサービス「Cloud Storage」
- 37 Cloud Storage ~安全で信頼性が高いストレージサービス
- 38 Cloud Storageを使う流れ ~ストレージを使うまで
- 39 ストレージクラス ~用途に応じて選べるストレージ
- 40 オブジェクトとバケット ~ファイルと保存する入れ物
- 41 アクセス制限 ~データの機密性を守るしくみ
- 42 オブジェクトのアップロードとダウンロード ~さまざまなアップロード方法を提供
- 43 バージョニングとライフサイクル管理 ~オブジェクトの履歴を管理する方法
- 第7章 コンテナとサーバーレスのサービス
- 44 コンテナとは ~アプリケーション単位で仮想化する技術
- 45 Kubernetes(K8s) ~コンテナを管理するツール
- 46 Google Kubernetes Engine(GKE) ~Google Cloudで使えるKubernetes
- 47 GKEのアーキテクチャ ~コンテナを管理するしくみ
- 48 GKE/K8sを使うメリット ~GKEとCompute Engineの比較
- 49 GKEを使用する流れ ~GKEでコンテナを動かすまで
- 50 サーバーレスサービス ~サーバーを意識する必要がないしくみ
- 51 App Engine ~Webアプリケーション開発のサービス
- 52 Cloud Functions ~関数を実行できるサーバーレスサービス
- 53 Cloud Run ~コンテナを動かせるサーバーレスサービス
- 54 Cloud Build ~テストやビルドを自動化
- 第8章 データベースサービス
- 第9章 データ分析のサービス
- 第10章 そのほかに知っておきたいGoogle Cloudのサービス
引用:Google Cloudのしくみと技術がこれ1冊でしっかりわかる教科書 (図解即戦力)
----------------------------------------------
上記のように、2021年9月時点でのGoogle Cloud の主要なサービスが網羅されています。
本書の全体像
本書の冒頭では、「そもそもクラウドとは何ぞや?」という部分からスタートしています。
実際Google Cloud や AWS 、Azure 以外にもクラウドサービスは 沢山 あります。
その中で、なぜGoogle Cloud を選ぶのか、本書を読むことで理解できるはずです。(逆になぜ選ばないか。もわかるでしょう。)
私は、会社でGoogle Cloud を使うわけではないのですが、会社で使うなら、経済的にメリットがあるかの判断も必要になりますし、セキュリティの部分も見逃せません。(私は会社で使う未来はないので、軽めに読み飛ばしてしまいました。)
個人でサービスを運営する場合は、第7章や第8章の部分が非常に参考になると思います。
GAEでメインのアプリを稼働させ、クラウドストレージやCloud SQLなどと連携してデータをプールしつつ、BigQueryやBIツールで分析するというのが基本線になりそうです。(どれくらいお金がかかるかによりますが…)
気になったコンテンツ
次は本書を読んでいて気になって点を紹介していきます。
かなり個人的な思想が入っていますが、Google Cloud の特徴をとらえていると思いますので、引き続き読んでいってください。
webブラウザがあれば完結する
Google Cloud ではサービスをデプロイしたり、他のサービスを起動したり編集したりするコンソールのことをCloud Shell と言います。
私が以前クラウドにサービスを公開しようと思った際に、困っているのはいちいちデプロイに時間が掛かってしまったり、デプロイしたものを編集するのが難しい…と思っていました。
ローカルで書いたものを、アップするのはもちろんですが、ソースコードだけコピペしてもデプロイが出来てしまいます。

アプリデプロイが超簡単
先ほど書いたように、私がクラウドサービスに億劫になっていた理由の1つが「バージョン管理」です。
私のような個人の素人が何かアプリを公開したとしても、クオリティが高いわけではないので、動かしてもちょっと変わった動作が入れば頻繁に改修を行いたい気持ちがあります。
ローカルであれば、エラーに対してすぐ対処法をしたりすることもできますが、アップしてしまうと難しいだろうな…と思っていました。
Google Cloud では、そういった点で非常にやり易い機能が備わっています。
下記の画像のように、Google Cloud ではクリック1つでバージョン管理が実施できます。
バージョンアップして、間違えた!となった場合は、前のバージョンを選択してもとに戻すこともできますし、複数バージョンでトラフィックを分散させることもできます。
(AB分析のようなイメージ)

アプリケーションをデプロイするときも、Cloud Shell であれば コマンド1つで出来てしまいます。
構成ファイルが配置されている場所から、下記のコマンドを実行します。
gcloud app deploy
まとめ
以上、「Google Cloudのしくみと技術がこれ1冊でしっかりわかる教科書」を読んだのでその感想などを書いていきました。
私のようなクラウドのド素人が、入門するのにピッタリの内容となっているので、ぜひ購入してみてください。