Google Cloud Associate Cloud Enginerを受験するにあたって、模擬試験に出てきたコマンドをまとめておきます。
テストに限らず通常の業務でも使うようなコマンドなので、自分のための倉庫的な記事です。
※ACEのテストに合格したので、おすすめの勉強方法を以下にまとめました。
gcloudコマンド
全般
### gcloud config # アクティブなgcloud構成のプロパティを表示 $ gcloud config list # プロジェクトの設定に利用する gcloud config <section>/<property> value $ gcloud config set compute/region us-central1 # プロジェクトの設定を削除するコマンド gcloud config unset $ gcloud config unset compute/region # アカウントの切り替え $ gcloud config configurations activate <configuration name> ### gcloud projects # プロジェクト一覧を取得 $ gcloud projects list # IAMポリシーをプロジェクトにバインディングするコマンド $ gcloud projects add-iam-policy-binding ### その他 # 対象プロジェクトで有効になっているGCP APIの一覧を取得 $ gcloud services list --project <project_id> # 既存のロールから新しいロールを作成する $ gcloud iam roles copy # サービスアカウントのアクティベート $ gcloud auth activate-service-account <service@account.name> --key-file key.json --project <project name>
Compute Engine
# インスタンスの作成 $ gcloud compute instances create <instance name> # 起動スクリプトの指定 $ gcloud compute instances create --metadata-from-file startup-script=/path/to/file <instance name> # 5GBメモリ、4CPUの数を指定 $ gcloud compute instaces create <instance name> --custom-cpu 4 --customer-memory 5 # インスタンスをリスト表示 $ gcloud compute instances list --filter="zone;(asia-northeast1-a us-central1-b)" # imageのリスト表示 $ gcloud compute images list --filter=... # セキュリティの設定 $ gcloud compute security-policies rules create --expression ... --action ... # subnetのプレフィックス長の変更 $ gcloud compute networks subnetes expand-ip-range <subnet-name> --prefix-length=28 # マネージドインスタンスグループの作成 $ gcloud compute instance-groups managed set-autoscaling <group-name> --max-num-replicates 3 --target-cpu-utilization 0.7 # インスタンスへの接続 $ gcloud compute ssh --project=<project name> --zone=<zone> <instance-name> # vpcの作成 $ gcloud compute networks create
App Engine
# デプロイ $ gcloud app deploy # トラフィックを移行せずにバージョンを指定してデプロイ $ gcloud app deploy --no-promote --version=<version> # トラフィックの移行 $ gcloud app versions migrate <version> # ファイアウォールの設定 $ gcloud app firewall-rules create <priority> --action=<ALLOW ot DENY> gcloud app firewall-rules create
Cloud Function
# デプロイ $ gcloud functions deploy
Cloud Storage(gsutil)
# 特定オブジェクトへのACLの設定 $ gsutil acl set <life-or-canned_acl_name> url # バケットへのACLの設定 $ gsutil defcal set <file-or-canned_acl_name> gs://<bucket_name> # オブジェクトのダウンロード用署名付きURLの発行 $ gsutil signurl -d 10m /path/to/key.json gs://<bucket_name> # オブジェクトのアップロード用署名付きURLの発行 $ gsutil signurl -m PUT -d 1h -c CONTENT_TYPE -u gs://<bucket_name>/<object_name> # バケットにバージョニングを有効にする $ gsutil versioning set on gs://backet-name
Kubernetes系
# クラスタの作成 $ gcloud container clusters create sample-cluster --zone=us-central1-a # cluster poolのノードサイズを変更する $ gcloud container clusters resize <cluster-name> --node-pool <node-pool-name> --num-node 5 # deploymentやserviceのデプロイコマンド(kubectl apply) $ kubectl apply -f deployment.yaml $ kubectl apply -f service.yaml. # shellに侵入 $ kubectl exec -it <pod-name> --container <app-name> -- /bin/bash