☁️

Google Cloud 勉強メモ

2023/03/09に公開

まだまだ編集中、個人の勉強メモとなります

Google Cloud(GCP)

  • 2021年10月にGoogle Cloud PlatformがGoogle Cloudに名称を変更しました。

イントロダクション

クラウドの定義

  • NIST によるクラウドコンピューティングは、共用の構成可能なコンピューティングリソース(ネットワーク、サーバー、ストレージ、アプリケーション、サービス)の集積に、どこからでも、簡便に、必要に応じて、ネットワーク経由でアクセスすることを可能とするモデルであり、最小限の利用手続きまたはサービスプロバイダとのやりとりで速やかに割当てられ提供されるものである。クラウドモデルは5つの基本的な特徴と3つのサービスモデル、および4つの実装モデルによって構成される。

5つの基本的な特徴:

オンデマンド- セルフサービス(On-demand self-service)
  • ユーザは、各サービスの提供者と直接やりとりすることなく、必要に応じ、自動的に、サーバーの稼働時間やネットワークストレージのようなコンピューティング能力を一方的に設定できる。
幅広いネットワークアクセス(Broad network access)
  • コンピューティング能力は、ネットワークを通じて利用可能で、標準的な仕組みで接続可能であり、そのことにより、様々なシンおよびシッククライアントプラットフォーム(例えばモバイルフォン、タブレット、ラップトップコンピュータ、ワークステーション)からの利用を可能とする。
リソースの共用(Resource pooling)
  • サービスの提供者のコンピューティングリソースは集積され、複数のユーザにマルチテナントモデルを利用して提供される。様々な物理的- 仮想的リソースは、ユーザの需要に応じてダイナミックに割り当てられたり再割り当てされたりする。物理的な所在場所に制約されないという考え方で、ユーザは一般的に、提供されるリソースの正確な所在地を知ったりコントロールしたりできないが、場合によってはより抽象的なレベル(例:国、州、データセンタ)で特定可能である。リソースの例としては、ストレージ、処理能力、メモリ、およびネットワーク帯域が挙げられる。
スピーディな拡張性(Rapid elasticity)
  • コンピューティング能力は、伸縮自在に、場合によっては自動で割当ておよび提供が可能で、需要に応じて即座にスケールアウト/スケールインできる。ユーザにとっては、多くの場合、割当てのために利用可能な能力は無尽蔵で、いつでもどんな量でも調達可能のように見える。
サービスが計測可能であること(Measured Service)
  • クラウドシステムは、計測能力 1を利用して、サービスの種類(ストレージ、処理能力、帯域、実利用中のユーザアカウント数)に適した管理レベルでリソースの利用をコントロールし最適化する。リソースの利用状況はモニタされ、コントロールされ、報告される。それにより、サービスの利用結果がユーザにもサービス提供者にも明示できる。

3つのサービスモデル:

ソフトウェア- アズ- ア- サービス(サービスの形で提供されるソフトウェア)SaaS (Software as a Service)
  • 利用者に提供される機能は、クラウドのインフラストラクチャ2上で稼動しているプロバイダ由来のアプリケーションである。アプリケーションには、クライアントの様々な装置から、ウェブブラウザのようなシンクライアント型インターフェイス(例えばウェブメール)、またはプログラムインターフェイスのいずれかを通じてアクセスする。ユーザは基盤にあるインフラストラクチャを、ネットワークであれ、サーバーであれ、オペレーティングシステムであれ、ストレージであれ、各アプリケーション機能ですら、管理したりコントロールしたりすることはない。ただし、ユーザに固有のアプリケーションの構成の設定はその例外となろう。
プラットフォーム- アズ- ア- サービス(サービスの形で提供されるプラットフォーム)PaaS(Platform as a Service)
  • 利用者に提供される機能は、クラウドのインフラストラクチャ上にユーザが開発したまたは購入したアプリケーションを実装することであり、そのアプリケーションはプロバイダがサポートするプログラミング言語、ライブラリ、サービス、およびツールを用いて生み出されたものである 3。ユーザは基盤にあるインフラストラクチャを、ネットワークであれ、サーバーであれ、オペレーティングシステムであれ、ストレージであれ、管理したりコントロールしたりすることはない。一方ユーザは自分が実装したアプリケーションと、場合によってはそのアプリケーションをホストする環境の設定についてコントロール権を持つ。
インフラストラクチャ- アズ- ア- サービス(サービスの形で提供されるインフラストラクチャ)IaaS (Infrastructure as a Service))
  • 利用者に提供される機能は、演算機能、ストレージ、ネットワークその他の基礎的コンピューティングリソースを配置することであり、そこで、ユーザはオペレーティングシステムやアプリケーションを含む任意のソフトウェアを実装し走らせることができる。ユーザは基盤にあるインフラストラクチャを管理したりコントロールしたりすることはないが、オペレーティングシステム、ストレージ、実装されたアプリケーションに対するコントロール権を持ち、場合によっては特定のネットワークコンポーネント機器(例えばホストファイアウォール)についての限定的なコントロール権を持つ。

4つの実装モデル:

プライベートクラウド(Private cloud)
  • クラウドのインフラストラクチャは、複数の利用者(例:事業組織)から成る単一の組織の専用使用のために提供される。その所有、管理、および運用は、その組織、第三者、もしくはそれらの組み合わせにより行われ、存在場所としてはその組織の施設内または外部となる。
コミュニティクラウド(Community cloud)
  • クラウドのインフラストラクチャは共通の関心事(例えば任務、セキュリティの必要、ポリシー、法令順守に関わる考慮事項)を持つ、複数の組織からなる成る特定の利用者の共同体の専用使用のために提供される。その所有、管理、および運用は、共同体内の1つまたは複数の組織、第三者、もしくはそれらの組み合わせにより行われ、存在場所としてはその組織の施設内または外部となる。
パブリッククラウド(Public cloud)
  • クラウドのインフラストラクチャは広く一般の自由な利用に向けて提供され
    る。その所有、管理、および運用は、企業組織、学術機関、または政府機
    関、もしくはそれらの組み合わせにより行われ、存在場所としてはそのクラ
    ウドプロバイダの施設内となる。
ハイブリッドクラウド(Hybrid cloud)
  • クラウドのインフラストラクチャは二つ以上の異なるクラウドインフラストラクチャ(プライベート、コミュニティまたはパブリック)の組み合わせである。各クラウドは独立の存在であるが、標準化された、あるいは固有の技術で結合され、データとアプリケーションの移動可能性を実現している、例えばクラウド間のロードバランスのためのクラウドバースト。

GCPとは

GCPとは、Google Cloud Platform の略で、Googleが2008年から提供するクラウドコンピューティングサービスの総称です。

2016年東京リージョンが開設、2019年に大阪リージョンが開設

Google Cloudを無料で始める

必要なもの

  • Googleアカウント
  • 携帯電話
  • クレジットカード

初めてのプロジェクト

  • My First Project
    GCPの登録とログインが出来ましたら、「My First Project」が自動的作成されています。
    これでプロジェクトにある各種サービスが利用できるようになりました。(利用開始すると課金が入ります。)
  • IAMと管理
    プロジェクトのシャットダウン(削除)ができます。

リージョンとゾーン

リージョン

地域のことです。本ドキュメント作成時点、世界に34、日本に東日本と西日本2リージョンが存在します。
リージョンには複数のゾーンで構成されてます。

リージョンの選択

リージョンの選択によって、下記の変更があります。

  1. リソース料金
  2. レイテンシー(㎳単位で変わる)
  3. 障害の影響(可用性の設計)

ゾーン

  • ゾーンの中にデータセンターがあります。ゾーンはデータセンターのイメージで大丈夫です。

エッジ

  • ネットワークの入り口、146拠点

GCPのリソース階層

GCPリソース階層<img src="./images/リソース階層.png" alt="リソース階層">

組織

  1. リソース階層のルートノード
  2. リソースのグループ化管理
  3. 1組織、1会社

フォルダ

  1. プロジェクトのグループ化管理
  2. ネスト可能
  3. 組織を持つユーザーのみ利用可能

プロジェクト

  1. リソースの親となる単位
  2. 単位で課金

リソース

  1. 最下位単位
  2. サービス構成の基本要素
    例:
    プロジェクト 仮想マシン(VM)
    プロジェクト Cloud Storage 
    プロジェクト App Engine

管理コンソール

ダッシュボード

ダッシュボードを使用すると、同じコンテキストでさまざまなソースのデータを表示、分析できます。たとえば、指標データ、アラート ポリシー、ログエントリを表示するカスタム ダッシュボードを作成できます。

Cloud Shell

  • Cloud Shell を使用すると、どのブラウザからもインフラストラクチャを管理してアプリケーションを開発できます。
  • Cloud Shell には Cloud SDK gcloud、Cloud Code、オンライン コードエディタなどのユーティリティがプリインストールされていて、最新かつ完全に認証済みの状態になっています。
  • Cloud Shell は、すべてのユーザーが無料でご利用いただけます。

Always Free

無料プロダクト

  • すべてのお客様が、Compute Engine や Cloud Storage などの人気のプロダクトを毎月の上限枠まで無料で実際に試せます。
永久無料枠一覧
  1. Compute Engine
  • 1ヶ月あたり一台のe2-microインスタンスの使用が無料
  • 無料枠ではWindows Serverイメージは利用不可
  • 30 GB/月の標準永続ディスク
  • 5 GB/月のスナップショットストレージ
  • 北米から全リージョン宛の下りネットワーク通信が1ヶ月あたり 1GB まで。(中国とオーストラリアへの通信は最初から有料)
  1. Cloud Storage
  • 5 GB/月のRegional Storage(ひとつのリージョンの標準ストレージ)
  • 50,000 回/月のクラス B オペレーション(Get リクエスト)
  • 5,000 回/月のクラス A オペレーション(Put、Copy、Post、List リクエスト)
  • 1 GB/月の北米から全リージョン宛ての下り(外向き)ネットワーク
  1. BigQuery
  • 1 か月あたり1 TB のクエリ
  • 1 か月あたり10 GB のストレージ
  1. Cloud Firestore
  • 1 GB のストレージ
  • 50,000 回の読み取りオペレーション、
  • 20,000 回の書き込みオペレーション、
  • 20,000 回の削除オペレーション(1 日あたり)
  1. Cloud Functions
  • 200 万回/月 の呼び出し
  • 400,000 GB 秒、200,000 GHz 秒のコンピューティング時間
  • 1 か月あたり 5 GB のデータ送信
  • 同じリージョン内の Google API へのデータ送信は無料
  • データ受信(上りトラフィック)は無料

「GB-秒のコンピューティング時間」
関数が実行される秒数に、消費されたRAMメモリの量を掛けた値です。
「GHz 秒のコンピューティング時間」
関数が実行される秒数に、使用されたCPUのクロック数をかけた値です。
「秒のコンピューティング時間」
関数が実行される秒数です。

  1. App Engine
  • 28 時間分の「F」インスタンス(1 日あたり)
  • 9 時間分の「B」インスタンス(1 日あたり)
  • 下り(外向き)1 GB(1 日あたり)

$300 の無料クレジット

  • 新規のお客様には、Google Cloud すべてを試し評価するための $300 分の無料クレジットを差し上げます。アップグレードするまで料金は発生しません。

企業向けの追加の無料クレジット

  • 新規のお客様でビジネス用メールアドレスをご確認いただいた方には、Google Cloud を試し評価する際に使用できる無料クレジットを追加で差し上げます。

料金計算ツール

Google Cloud Platform のアーキテクチャ図を構築するための公式のアイコンセット(更新中)

Cloud Billing

  • Google Cloud では、ニーズに合わせて請求をさまざまな方法で構成できます。Cloud Billingの仕組みを理解し、請求を管理する
    請求の計算はBigQueryで行います。

Cloud Billing概要

ドメイン

組織

フォルダ

プロジェクト

リソース

ラベル

アクセス制御

Cloud Billing ロール

所有権と支払いリンク

予算

概要

予算アラート

Cloud Billing Budget API

エクスポート

BigQueryエクスポート
  invoice.month,
  SUM(cost)
    + SUM(IFNULL((SELECT SUM(c.amount)
                  FROM UNNEST(credits) c), 0))
    AS total,
  (SUM(CAST(cost AS NUMERIC))
    + SUM(IFNULL((SELECT SUM(CAST(c.amount AS NUMERIC))
                  FROM UNNEST(credits) AS c), 0)))
    AS total_exact
FROM `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
GROUP BY 1
ORDER BY 1 ASC
;
Row month total total_exact
1 201901 $1005.004832999999984 $1005.00
2 201902 $992.3101739999999717 $992.31
3 201903 $1220.761089999999642 $1220.76
Cloud Storageエクスポート(ファイル形式)非推奨

Compute Engine

仮想マシン

  • Compute Engineを構成し管理する

Identity and Access Management(IAM)

プリンシパル(各種使用者)

  • Google アカウント
  • サービス アカウント
  • Google グループ
  • Google Workspace アカウント:組織管理為のGmail、カレンダーなどのビジネスサービス
  • Cloud Identity ドメイン
  • Webを一般公開したりなど

ロール(各種権限の集合)

  • 権限のコレクション、プリンシパルにロールを付与すると、そのロールに含まれるすべての権限が付与される。
    例:オーナーロールには4862種類の権限が与えられている。4993

基本ロール

  • オーナー、編集者、閲覧者などのロールがある
  • 基本ロールには何千もの権限が含まれるので、本番環境での利用は推奨されない(最小権限の原則)

事前定義ロール

  • 基本ロールよりも詳細なアクセス制御が可能
  • 本番環境では事前定義ロールの利用が推奨される

カスタムロール

  • 事前定義ロールでニーズが満たせない場合、カスタムでロール定義することが可能
  • 削除されたロールは 7~14 日後に完全に削除で、その間は削除を取り消すことが可能

リソース

プリンシパル(各種使用者)+ ロール(各種権限)

IAM APIの整合性モデル

  • IAM API では結果整合性が維持されます。つまり、IAM API を使用してデータを書き込んだ直後にそのデータを読み取ると、読み取りオペレーションで古いデータが返される場合があります。また、加えた変更がアクセス チェックに影響するまでには、時間がかかる場合があります。
  • この整合性モデルは IAM API の動作に影響します。たとえば、サービス アカウントを作成し、そのすぐ後に別のリクエストでそのサービス アカウントを参照した場合、サービス アカウントが見つからないという結果が返される場合があります。この動作は、オペレーションが結果整合性に基づいているためです。新しいサービス アカウントが読み取りリクエストで利用可能になるまで時間がかかることがあります。

Google Cloud CLI

Cloud SDK のインストール

インストーラ

[スクリーン リーダー モードをオンにする] :
  • このオプションで gcloud を構成すると、Unicode スピナーの代わりにステータス トラッカーが使用され、進行状況が割合で表示されます。また、テーブルがフラット化されます。詳しくは、ユーザー補助機能のガイドをご覧ください。

PowerShell コマンド

注意事項

  • Cloud SDK をアンインストールした場合は、Cloud SDK を再度インストールする前にシステムを再起動する必要があります。
  • 解凍できない場合は、管理者としてインストーラを実行します。

Google Cloud SDK Shell(gcloudコマンド操作)

主な操作

コマンド 説明

configuration関連操作

コマンド 説明
gcloud version バージョン情報
gcloud init 新規configuration
gcloud config configurations list configuration一覧
gcloud config list アクティブなconfiguration一覧
gcloud config set core/account [another account] アカウント変更
gcloud config set project [another project] プロジェクト変更
gcloud config set compute/region asia-northeast1 compute region変更
gcloud config set compute/zone asia-northeast1-a compute zone変更

リファレンス

gcloud 対話型シェルの使用

Deployment Manager

Google Cloud Deployment Manager は、Google Cloud リソースの作成と管理を自動化するインフラストラクチャ デプロイ サービスです。柔軟なテンプレート ファイルと構成ファイルを作成し、それらを使用してGoogle Cloud サービスを連携させるように構成されたデプロイを作成します。

構成説明

  • 構成とは、単一のデプロイに必要なすべてのリソースを記述したものです。 構成は、作成するリソースとそのプロパティをそれぞれ列挙する YAML 形式で記述されたファイルです。 構成には resources: セクションが必須で、ここに作成するリソースのリストを含めます。
    各リソースには、次の 3 つの構成要素を含める必要があります。

name

  • リソースを特定するためのユーザー定義の文字列(my-vm、project-data-disk、the-test-network など)。

type

  • デプロイされるリソースのタイプ(compute.v1.instance、compute.v1.disk など)。基本リソースタイプは、サポートされているリソースタイプにリストされ、説明されています。

properties

  • リソースタイプのパラメータ。値はリソースタイプのプロパティのいずれか(例: zone: asia-east1-a boot: true)に一致する必要があります。

SAMPLE:

- name: the-first-vm
  type: compute.v1.instance
  properties:
    zone: us-central1-a
    machineType: https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/machineTypes/f1-micro
    disks:
    - deviceName: boot
      type: PERSISTENT
      boot: true
      autoDelete: true
      initializeParams:
        sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-7-wheezy-v20150423
    networkInterfaces:
    - network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default
      accessConfigs:
      - name: External NAT
        type: ONE_TO_ONE_NAT

CLIによりYAMLファイルをデプロイ完成

リソース

プロパティ

YAMLテンプレート使用

Pythonテンプレート使用

Jinja2テンプレート使用

Terraform使用インストール先 AWSも使える

Google Cloud のオペレーション スイート

Cloud Monitoring

Cloud Monitoring

  • Google Cloud Platform と Amazon Web Services のためのフルスタック モニタリング。

Cloud Logging と Error Reporting

Cloud Logging

  • リアルタイムでのログの管理と分析を行います。

Error Reporting

  • アプリケーション エラーを特定して把握します。

アプリケーション パフォーマンス管理

Cloud デバッガ

  • 本番環境におけるコードの動作を調査します。

Cloud Trace

  • 本番環境におけるパフォーマンスの障害を検出します。

Cloud Profiler

  • 本番環境における CPU、時間、メモリ消費のパターンを識別します。

VPC(仮想ネットワーク)

  • VPCネットワークを理解し、構成する

Loadbalancing(負荷分散)

  • Cloud Loadbalancingによる負荷分散の仕組みを理解する

Firestore(GCP、Firebase両方対応)

  • 自動スケーリングと高パフォーマンスを実現し、アプリケーション開発を簡素化するように構築された NoSQL ドキュメント データベースです。

Firestore特徴

  • グローバルアプリ用に構築された NoSQL データベース
  • モバイルアプリやウェブアプリのデータ保存、同期、照会がグローバルスケールで利用可能
  • Datastoreの後継データベース
  • Firebaseのデータベース機能
  • GCPコンソールでは、プロジェクトでDatastoreとFirestoreのどちらを使うか最初に決める必要がある
  • サーバレス(DBサーバの管理はマネージドでお任せ)

Firestore のデータモデル

モデル 説明 イメージ
コレクション ※ドキュメントのコンテナ(入れ物) フォルダ
ドキュメント ※データストレージの基本単位 ファイル
データ ※具体的なデータ ファイル内容
階層データ ※コレクションの中にコレクションを作成 フォルダにフォルダ

Firestore でのデータの構造化

  • Firestore データベース内でデータを整理する方法の概要。

サポートされるデータタイプ

  • Firestore でサポートされているデータ型の一覧。
データ型 並べ替え順 備考
配列 要素の値 配列の要素として他の配列値を格納することはできません。配列内の各要素は、割り当てられた位置を保持します。複数の配列を並べ替える場合は、要素の値に基づいて順序が決定されます。2つの配列を比較する場合は、各配列の最初の要素が比較されます。最初の要素が等しい場合は、2 番目の要素が比較されます。以下同様にして、値の異なる要素が見つかるまで比較されます。比較する要素が配列内になくなり、その時点までの値が等しい場合は、短い配列の方が長い配列よりも順序が先になります。例: [1, 2, 3] < [1, 2, 3, 1] < [2]。この場合、最初の要素の値が最大であるのは配列 [2] です。配列 [1, 2, 3] は、配列 [1, 2, 3, 1] と最初の 3 つの要素の値が同じであるものの、長さが短くなっています。
ブール値 false < true -
バイト バイト順 最大 1,048,487 バイト(1 MiB - 89 バイト)。最初の 1,500 バイトのみがクエリによって考慮されます。
日時 時系列 Firestore に保存した場合、精度はマイクロ秒までになり、それより下の桁は切り捨てられます。
浮動小数点数 数値 64 ビット倍精度、IEEE 754。
地理的座標 緯度、経度の順 クエリの制限により、現時点ではこのデータ型の使用はおすすめしません。通常は、緯度と経度を個別の数値フィールドとして保存するほうが適切です。アプリで距離ベースのシンプルなジオクエリが必要な場合は、ジオクエリを参照してください。
整数 数値 64 ビット、符号付き
マップ キー、次に値 ドキュメント内に埋め込まれたオブジェクトを表します。インデックス付けされている場合は、サブフィールドに対してクエリを実行できます。この値をインデックス付けから除外した場合、すべてのサブフィールドもインデックス付けから除外されます。キーの順序は常に並べ替えられます。たとえば、{c: "foo", a: "bar", b: "qux"} と記述すると、マップはキーを基準に並べ替えられ、{a: "bar", b: "qux", c: "foo"} として保存されます。マップ フィールドはキーを基準に並べ替えられ、Key-Value ペアにより比較されます(まずキーを比較してから値を比較します)。最初の Key-Value ペアが等しい場合は次の Key-Value ペアが比較され、これが順に行われます。2 つのマップの先頭が同じ Key-Value ペアである場合は、マップの長さが考慮されます。たとえば、次のマップは昇順です。            {a: "aaa", b: "baz"}                                {a: "foo", b: "bar"}                                {a: "foo", b: "bar", c: "qux"}                                {a: "foo", b: "baz"}                                {b: "aaa", c: "baz"}                                {c: "aaa"}
Null なし -
参照 パス要素順(コレクション、ドキュメント ID、コレクション、ドキュメント ID...) 例: projects/[PROJECT_ID]/databases/[DATABASE_ID]/documents/[DOCUMENT_PATH]。
テキスト文字列 UTF-8 でエンコードされたバイト順 最大 1,048,487 バイト(1 MiB - 89 バイト)。UTF-8 表現の最初の 1,500 バイトのみがクエリによって考慮されます。

クライアント ライブラリの概要

  • Firestore で使用できるクライアント ライブラリの概要。

セキュリティの概要

  • Firestore データのセキュリティ対策の概要。

ロケーション

  • データベースのロケーションの概要とサポートされるロケーションの一覧。

インデックスの概要

  • Firestore のインデックスの概要。

ストレージ サイズの計算

  • Firestore でストレージ サイズがどのように計算されるかについての説明。

サーバー側での暗号化

  • Firestore による保存データの暗号化の仕組み。

Datastore モードの Firestore

  • Firestore は Datastore の新しいバージョンであり、Datastore のさまざまな機能強化が含まれています。
  • 既存の Datastore ユーザーは、Datastore モードの Firestore データベースのインスタンスを新しく作成することで、この機能強化を利用できます。
  • 将来的には、既存の Datastore データベースがすべて、Datastore モードの Firestore に自動的にアップグレードされる予定です。

gsutilコマンドで管理を実践する

GQL

BigQuery

サンドボックス

一般公開データセット

bq コマンドライン ツール

LIMIT

  • LIMIT は表示件数を制限しているだけで、SELECT為かかるデータ料金はLIMITによって変わらないことです。

Google App Engine

Google App Engineとは

  • ソフトウェア実行環境をサービスとして提供するPaaS(Platform as a Service)の一つで、契約者は同社から借り受けたサーバ上で自らの用意したプログラムを実行し、インターネット上でWebサービスとして運用することができる。
  • 各プログラミング言語の提供する標準的な機能が利用できる他、サーバ上のストレージ領域へのデータの保管や読み出し、Googleアカウントによるユーザー認証、電子メールの送信、特定の時刻や時間間隔によるタスクの自動起動などの機能も利用できる。同社の提供するAPIを通じてGCPの他のサービスの機能を利用することもできる。
  • 用途によって「スタンダード環境」「フレキシブル環境」の二つが用意されている。
  • Google App Engineは無料で登録し使用し始めることができるが、利用できる記憶装置の容量や、単位時間当たりの計算量、HTTPのリクエスト数、APIの呼び出し回数などに制限がある。有償版を利用すると上限を超えた分について従量制で、利用した分だけ料金が請求される。

環境構築

スタンダード環境

  • スタンダード環境は自由度が低い代わりに設定作業などがほとんど不要ですぐに使い始められる。
  • 対応するプログラミング言語はJava、Python、PHP、Go言語、Node.js(JavaScript)、Rubyである。
  • 対応するプログラミング言語は特定のバージョンのみサポートしています。

フレキシブル環境

  • フレキシブル環境は利用者にGCPインフラ上のDockerコンテナが割り当てられるサービス品目で、IaaSサービスに近い環境整備- 調整を行うことができ自由度が高い。
  • スタンダード環境の全言語に標準で対応する他、.NETや利用者が独自に言語環境を導入して使用することもできる。

デプロイ手順

  1. ローカルで開発とテスト

  2. デプロイコマンド

    1. cd ソースコードファイル
    1. gcloud app deploy

Cloud Functions

サーバーレスFunctions as a Service

  • Cloud Functionsを理解し、クラウド上の関数を構築してみる

Cloud Run

サーバーレスコンテナ実行環境

  • Cloud Runを理解し、コンテナサービスを構築してみる
  • コンテナは、コードやその依存関係をパッケージ化してデプロイする手法の標準となっています。
  • Cloud Run は、Cloud Build、Cloud Code、Artifact Registry、Docker などのコンテナ エコシステムと親和性のサービスです。

Docker Hub

CLI操作

Kubernetes Engine

フルマネージド

  • Kubernetes Engineを理解し、コンテナオーケストレーターを構築してみる

Cloud Identity(https://cloud.google.com/identity#section-2)

  • Cloud Identityを理解し、ディレクトリサービスを構築してみる
  • ドメイン購入

機能

機能名 説明
アカウントのセキュリティと MFA Google の脅威インテリジェンス シグナルと多要素認証(MFA)(プッシュ通知、Google 認証システム、フィッシング対策機能付き Titan セキュリティ キーなど)に加え、Android または iOS デバイスをセキュリティ キーとして使用して、フィッシング攻撃からユーザーを保護します。
エンドポイント管理によるデバイスのセキュリティ 統合コンソールを使用して、Android、iOS、Windows デバイスに対する会社のデバイス セキュリティを向上させます。エンドポイント管理を利用して分単位でデバイスを設定し、会社のデータの保護を強化できます。セキュリティ ポリシーの適用、会社データの消去、アプリのデプロイ、レポートの表示、詳細情報のエクスポートができます。
SSO を使用した簡単なアプリアクセス 従業員は、SalesForce、SAP SuccessFactors、Google Workspace をはじめとする何千もの SaaS アプリにシングル サインオン(SSO)して、事実上どこでも任意のデバイスから作業できるようになります。
お気に入りのアプリと連携 Cloud Identity は何百ものクラウドアプリとすぐに統合できます。対応アプリは増え続けており、将来にわたって信頼できる単一の ID プラットフォームとして機能します。現在のリストを見る
デジタル ワークスペース デジタル ワークスペースにより、従業員は設定を迅速に行えます。一度ログインすれば、事前に統合された SAML 2.0 と OpenID Connect(OIDC)アプリ、カスタムアプリ、オンプレミス アプリを含めて 5,000 以上のアプリにアクセスできます。
統合型管理コンソール ユーザー、アクセス、アプリ、デバイス ポリシーの管理、レポート機能と監査機能を使用したセキュリティとコンプライアンスのモニタリング、セキュリティ センターによる脅威の調査を単一の管理コンソールから行うことができます。
ユーザーの自動プロビジョニング ユーザーのプロビジョニングを自動化してユーザー プロフィール情報の作成、更新、削除を 1 か所から行い、それをクラウドアプリに反映させることで、個々のサードパーティ クラウドアプリのユーザーの管理に伴う管理オーバーヘッドを削減します。
ハイブリッドな ID 管理 Microsoft Active Directory(AD)ユーザー情報を Directory Sync を利用してクラウド環境に拡張し、安全な LDAP を利用して従来のアプリとインフラストラクチャへのシンプルなアクセスを実現することで、既存の投資の収益率が向上します。
コンテキストアウェア アクセス Google の BeyondCorp セキュリティ モデルの中核的な要素であるコンテキストアウェア アクセスにより、従来の VPN を必要とすることなく、ユーザー ID とアクセス リクエストのコンテキストに基づいて、きめ細かく動的なアクセス制御を実施できます。
アカウントの乗っ取り防止 Google による自動かつ多層の不正利用対策機能で、ユーザー セキュリティが強化されます。通常とは異なるログイン行動を検知すると、アカウントの乗っ取りを防ぐためユーザーに追加の本人確認を要請します。
テクニカル サポート 問題が発生した場合には、24 時間 365 日、スタッフが直接対応します。電話、メール、チャットによるサポートは 14 か国語に対応しています。これらのサポートは Cloud Identity のサブスクリプションに含まれています。
高度な保護機能プログラム 常に進化を続け、使いやすく、Google が提供する中で最も強固なアカウント セキュリティ設定により、特にリスクの高いユーザーに常に可能な限り最強の保護機能を提供します。
個人所有デバイス(BYOD)のサポート エンドポイント管理は BYOD に対応しているため、企業データのセキュリティを簡単に強化できるだけでなく、従業員は各自が所有しているデバイスで仕事を自由に行えます。
すばやく簡単にエンドポイント管理をデプロイ 従業員のデバイスのエンドポイント管理への登録が完了すると、サーバー側の証明書を含むすべての Wi-Fi 構成とメール構成がすぐにデバイスに適用されます。
エージェント不要 基本的な管理をエージェントなしで設定できるため、担当範囲のすべてのデバイスのワイプと在庫を制御できます。ユーザー設定は不要で、作業の中断も発生しません。
使いやすい MFA 手法 Cloud Identity はさまざまな MFA 手法(ハードウェア セキュリティ キー、スマートフォンを使用したセキュリティ キー、モバイル デバイス プッシュ通知、SMS、音声通話など)に対応しているので、自社の従業員に最適なオプションを選択できます。
MFA の高度な監査とレポート 詳細なレポートと監査ログを使って、従業員の使用状況のモニタリング、アラートの設定、潜在的リスクの検証を行います。
オンプレミス アプリへの簡単なアクセス セキュア LDAP を利用すると、ユーザーは自分の Cloud Identity 認証情報を使って従来の LDAP ベースのアプリやインフラストラクチャに安全にアクセスできます。
ライフサイクル管理の自動化 統合された管理コンソールから、リアルタイムでユーザーをプロビジョニングおよびプロビジョニング解除できます。

使用方法

  1. Gmailをイメージ
  2. Google Workspaceをイメージ

PubSub

  • PubSubを理解し、メッセージングサービスを構成してみる

Bigtable

  • Bigtableを理解し、カラム型NoSQLを構築してみる

Spanner

  • Cloud Spannerを理解し、水平スケールに強いリレーショナルDBを構成してみる

クラウド関連の用語集

  • クラウドの基本的な用語を理解する

Discussion