🙄

[Google Cloud] Associate Cloud Engineer お勉強メモ①

2022/10/30に公開

cloud pub/sub

AWS でいう SNS
パブリッシャーからトピックでメッセージを受けてサーブスクライバーに送る(サブスクライブする)
例:
パブリッシャー: Cloud Scheduler/ Compute Engine / App Engine
サブスクライバー: Cloud Functions
参考:https://cloud.google.com/pubsub/docs/overview

Cloud Functions

AWS でいう Lambda

Cloud Scheduler

AWS でいう EventBridge
ターゲットは HTTP/S エンドポイント / Pub/Sub トピック / App Engine
参考:https://cloud.google.com/scheduler/docs/overview

Compute Engine

AWS でいう EC2
非マネージド インスタンス グループでは自動スケーリング、自動修復、マルチゾーン サポート、ローリング アップデート、インスタンス テンプレートを利用できない
自動スケーリング機能は全てのインスタンスの平均CPU使用率を指標として使用
管理アクティビティログ:Compute Engine リソースの構成やメタデータを変更するオペレーションのログエントリが含まれる
システムイベントログ:Compute Engineリソースに対するシステム メンテナンス オペレーションのログエントリが含まれる

App Engine

AWS でいう App Runner ?(ここはよくわかっていない)

Transfer Appliance

AWS でいう snow 系
データセンターからオフラインでデータを移行する際に使用
改ざん防止/高耐久性/TPMチップ/HW証明書/AES256暗号化など
10TB 以上だとおすすめ
参考:https://cloud.google.com/transfer-appliance/docs/4.0/overview

Filestore

AWS でいう EFS ?
マネージドファイルストレージサービスで共有ファイルシステムを提供

Transfer Service for On Premises Data

AWS でいうなに、、、?
Cloud Storage バケットに大量データの転送が可能
300 Mbps 以上のネットワーク接続が必要

Datastore

AWS でいう DynamoDB ?
NoSQL データベース

Cloud Spanner

AWS でいう Aurora(厳密には違いそうあくまでイメージ)
単調に増加する整数をキーとしてレコードを挿入すると、常にキースペースの最後に挿入されるからパフォーマンス低下の可能性が出てくる
→単一サーバの書き込みとなりホットスポットになってしまうため
※基本的にはキーがばらけるように順序を入れ替えたりハッシュ/UUID を使ったりして分散させる
参考:https://cloud.google.com/spanner?hl=ja

Kubernetes Engine

AWS でいう EKS
水平ポッド自動スケーリング(HPA)では以下の状態でスケーリング可能
・ワークロードのCPUやメモリの消費量
・Kubernetes から報告されるカスタム指標
・クラスタ外部のソースから取得した外部指標
※HPAはDaemonSets など、スケーリングできないワークロードには使用出来ない。
マスターアップグレードの際のダウンタイムを防ぐためにはリージョンクラスタが必要

参考:
https://cloud.google.com/kubernetes-engine/docs/concepts/horizontalpodautoscaler
https://cloud.google.com/kubernetes-engine/docs/how-to/cluster-autoscaler
https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md

CLoud Storage

AWS でいう S3
バケットACLはコンソールから操作できない
Standard ストレージ:頻繁にアクセスされるデータ(「ホット」データ)や、短時間だけ保存されるデータに最適
Nearline ストレージ:読み取りまたは変更を月に 1 回程度しか行わないデータに適している
Coldline ストレージ:四半期に 1 回程度しかアクセスしないデータの保存に最適
Archive ストレージ: データアクセスと操作に関する費用が高く、365 日間という最小保存期間もある、1 年間に 1 回未満しかアクセスしないデータの保存に最適
一般公開されたオブジェクトにアクセスできるURLは、https://storage.googleapis.com/[BUCKET_NAME]/[OBJECT_NAME]の形式で構成される
参考:
https://cloud.google.com/storage/docs/storage-classes#nearline
https://cloud.google.com/blog/ja/topics/developers-practitioners/all-you-need-know-about-cloud-storage

Cloud SQL

AWS でいう RDS?
Cloud SQL Proxyを使用すると、ローカルテスト環境から Cloud SQLに接続する事が可能
上限は最大30,720 GBであり、ペタバイト規模のデータには適していない

BigQuery

クエリによって指定されたテーブル全体のすべてのバイトの読み取りに対して課金
BigQueryへのCloud Billingエクスポート機能を使用することで、指定した BigQuery データセットに Google Cloudの詳細な課金データ(使用量、費用予測のデータなど)を自動的にエクスポートできる

BigQuery Data Transfer Service

MySQL は未サポート

CLoud Armor

AWS でいう WAF

Cloud CDN

HTTP(S)ロードバランサと組み合わせて使用

Cloud Interconnect

AWS でいう Direct Connect
Partner Interconnect:サービスプロバイダ経由での接続
Dedicated Interconnect:直接接続
参考:https://cloud.google.com/interconnect/docs/concepts/overview

Dataproc

Apache Spark クラスタと Apache Hadoop クラスタを簡単かつコスト効率よく実行
フルマネージドサービス

Dataflow

自動スケーリングとバッチ処理でレイテンシ、処理時間、コストを最小限に抑える、フルマネージド ストリーミング分析サービスで

Deployment Manager

AWS でいう CloudFormation

Cloud Bigtable

時系列データやIoTデータに最適なオプションであり、高速で、数ペタバイト規模にスケール可能なマネージドデータベースサービス
同一リージョンの異なるゾーンにクラスタのレプリケーションを実行する事により、高可用性とクロスリージョン レプリケーション コストを発生させることなくフェイルオーバーする機能が提供される

Cloud Build

AWS でいう CodeBuild

コマンドメモ

k8s クラスターの作成、ノードの上下を指定、オートスケーリング有効化

gcloud container clusters create {cluster name} --num-nodes {count} --enable-autoscaling --min-nodes {count} --max-nodes {count} --zone {zone}

SDK コンフィグ一覧表示

gcloud config configurations list

SDK コンフィグの有効化

gcloud config configurations activate
参考:https://cloud.google.com/sdk/gcloud/reference/config/configurations/

SQL インジェクション対策の WAF

gcloud compute security-policies rules create --expression "evaluatePreconfiguredExpr('sqli-canary')" --action deny-403
参考:https://cloud.google.com/sdk/gcloud/reference/compute/security-policies/rules/create

起動スクリプト実行付きインスタンス作成

gcloud comput instances create {instance name} --metadata-from-file startup-script={相対パス}

Discussion