見出し画像

GCP 入門 (12) - Cloud SDK

「GCP」(Google Cloud Platform)の「Cloud SDK」の使い方をまとめました。

・macOS 10.15.7

前回

1. Cloud SDK

Cloud SDK」は、「Google Cloud」のプロダクトとサービスを操作するためのツールとライブラリです。

主な機能は次のとおりです。

gcloud
「gcloud」は、GCPのリソースを作成、管理するためのコマンドラインツールです。作成、管理できるリソースは、次のとおりです。

・Google Compute Engine VMインスタンスと他のリソース
・Google Cloud SQLインスタンス
・Google Kubernetes Engineクラスタ
・Google Cloud Dataprocクラスタとジョブ
・Google Cloud DNSマネージドゾーンとレコードセット
・Google Cloud Deployment Managerのデプロイ

クライアントライブラリ
「クライアントライブラリ」は、クライアントからGCPにアクセスするためのライブラリです。対応言語は、次のとおりです。

・Go
・Java
・Node.js
・Python
・Ruby
・PHP
・C#
・C++

◎ プロダクト固有のコマンドラインツール
「gsutil」「bq」「kubectl」など、一連のコマンドラインツールが付属しています。主なツールは、次のとおりです。

gsutil : 「Cloud Storage」のバケット、オブジェクトを管理できます。
bq : 「BigQuery」のデータセット、テーブル、エンティティを操作できます。
kubectl : 「Kubernetes」のコンテナクラスタをデプロイおよび管理できます。

2. Cloud SDKのインストール

「Cloud SDK」のインストール方法は、次のとおりです。

(1) Pythonのバージョンを確認。
「Cloud SDK」には Pythonが必要です。

$ python -V
Python 3.7.1

サポートバージョンは、次のとおりです。

・Python 3(3.5~3.8 推奨)
・Python 2(2.7.9 以降)

(2) Cloud SDKのダウンロード。

macOS 64 ビット(x86_64)
macOS 32 ビット(x86)

(3) 解凍して、インストールスクリプトを実行。

./google-cloud-sdk/install.sh

(4) 「gcloud init」で「Cloud SDK」を初期化。

./google-cloud-sdk/bin/gcloud init

3. よく使うgcloudコマンド

3-1. 基本

◎ バージョンの確認

$ gcloud version

Google Cloud SDK 330.0.0
beta 2021.02.26
bq 2.0.65
core 2021.02.26
gsutil 4.59

◎ ヘルプの確認

$ gcloud help

◎ gcloud環境の初期化

$ gcloud init

◎ gcloud環境の確認

$ gcloud info

◎ コンポーネントの確認

$ gcloud components list

Your current Cloud SDK version is: 330.0.0
The latest available version is: 400.0.0

┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│                                                   Components                                                  │
├──────────────────┬──────────────────────────────────────────────────────┬──────────────────────────┬──────────┤
│      Status      │                         Name                         │            ID            │   Size   │
├──────────────────┼──────────────────────────────────────────────────────┼──────────────────────────┼──────────┤
│ Update Available │ BigQuery Command Line Tool                           │ bq                       │  1.6 MiB │
│ Update Available │ Cloud Storage Command Line Tool                      │ gsutil                   │ 15.5 MiB │
         :

コンポーネントの追加、更新、削除は次のとおり。

$ gcloud components install [COMPONENT_ID]
$ gcloud components update [COMPONENT_ID]
$ gcloud components remove [COMPONENT_ID]

3-2. パーソナライズ

◎ コンフィグの確認

$ gcloud config list

[compute]
region = us-central1
zone = us-central1-c
[core]
account = xxxxxx@gmail.com
disable_usage_reporting = False
project = test-123456

Your active configuration is: [test]

コンフィグのプロパティの指定と取得は次のとおり。

$ gcloud config set [PROPERTY] [VALUE]
$ gcloud config get-value [PROPERTY]

よくある設定例は、次のとおりです。

$ gcloud config set project [PROJECT_NAME]
$ gcloud config set compute/zone us-central1-a
$ gcloud config set compute/region us-central1

◎ コンフィギュレーションの確認

$ gcloud config configurations list

NAME     IS_ACTIVE  ACCOUNT           PROJECT      COMPUTE_DEFAULT_ZONE  COMPUTE_DEFAULT_REGION
default  False      xxxxxx@gmail.com  test-123456
test     True       xxxxxx@gmail.com  test-123456  us-central1-c         us-central1

コンフィギュレーションの追加、指定は次のとおり。

$ gcloud config configurations create [CONFIGURATION_NAME]
$ gcloud config configurations activate [CONFIGURATION_NAME]

3-3. プロジェクト

◎ プロジェクト一覧の確認

$ gcloud projects list

PROJECT_ID           NAME           PROJECT_NUMBER
test-123456          Test           123456789123
test-234567          Test           234567891234

プロジェクトの指定は、次のとおり。

$ gcloud config set project [PROJECT_ID]

3-4. アカウント

◎ アカウント一覧の確認

$ gcloud auth list
   Credentialed Accounts
ACTIVE  ACCOUNT
*       npaka3@gmail.com

アカウントのログイン、解除、指定は次のとおり。

$ gcloud auth login [ACCOUNT]
$ gcloud auth revoke [ACCOUNT]
$ gcloud config set account [ACCOUNT]

3-5. API (サービス)

◎ API (サービス) 一覧の確認
有効なAPI (サービス) の一覧は次のとおり。

NAME                                    TITLE
aiplatform.googleapis.com               Vertex AI API
appengine.googleapis.com                App Engine Admin API
    :

API (サービス)の有効・無効の切り替えは、次のとおり。

$ gcloud services enable [API_NAME]
$ gcloud services disable [API_NAME]

3-6. ネットワーク

◎ ネットワーク一覧の確認

$ gcloud compute networks list

NAME     SUBNET_MODE  BGP_ROUTING_MODE  IPV4_RANGE  GATEWAY_IPV4
default  AUTO         REGIONAL

ネットワークの生成と削除は次のとおりです。

$ gcloud compute networks create [NETWORK_NAME]
$ gcloud compute networks delete [NETWORK_NAME]

VPCピアリングを介したAPI (サービス) の接続は次のとおりです。

$ gcloud services vpc-peerings connect --service=servicenetworking.googleapis.com --network=[NETWORK_NAME] --ranges=[PEERING_RANGE_NAME]

4. APIリファレンス

【おまけ】Google Colabでの利用

「Google Colab」で「gcloud」を利用するには、以下のコマンドでユーザー認証を行ったあと、「!gcloud version」のように「!」を付加して使います。

# ユーザー認証
from google.colab import auth
auth.authenticate_user()

次回


この記事が気に入ったらサポートをしてみませんか?