Google Cloud Platformでgcloudをインストールする方法

Cloud

はじめに

Google Cloud Platform(GCP)というクラウド上のIaaSのお話です

GCPはAzure、AWSなど、ビッグネームが連ねるIaaSの一つです
IaaSというのは色んな機能をまとめて詰め込んだクラウドで動く統合開発環境のようなもの、
というイメージがあれば大丈夫です
(詳しく知りたい人はググってみてください)

GCP(Google Cloud Platform)

GCPはプロジェクトという単位で、
一つのアプリケーションに関連するリソースをまとめて管理できるという
独自のシステムを採用しています

これがなかなかスマートな考え方で、リソースという独自の概念を持つIaaSにおいては
非常に有効です
いらなくなったリソースはプロジェクトごと、ポイっと捨てられるので
ごちゃごちゃしやすいIaaSでの開発も非常に管理がしやすくなります

登録していない方はまずは登録をしましょう
90日間で約30,000円分のリソースを無料で利用できますし、
設定を切り替えない限り、勝手に有料になったりはしないのでサブスクリプションが怖い、という人でも気軽に触ることができます

Google Cloud Platform(GCP)に登録したら
まずはgcloudコマンドを構築しましょう

Windowsのインストール方法

こちらからgcloud SDKをインストールしてください
インストーラが起動したら、オプションを進めていってください

Pythonが既にインストールされている場合は、Bundled Pythonのチェックを外して
インストールを実行します

インストールが完了するとgcloudの初期化処理が起動します

Welcome to the Google Cloud SDK! Run "gcloud -h" to get the list of available commands.
---
Welcome! This command will take you through the configuration of gcloud.

Your current configuration has been set to: [default]

You can skip diagnostics next time by using the following flag:
  gcloud init --skip-diagnostics

Network diagnostic detects and fixes local network connection issues.
Checking network connection...done.
Reachability Check passed.
Network diagnostic passed (1/1 checks passed).

You must log in to continue. Would you like to log in (Y/n)?  y  -->ここでy

Your browser has been opened to visit:

    https://accounts.google.com/o/oauth2/authhogehoge&code_challenge_method=S256

You are logged in as: [hogehoge@fugafuga.com].

Pick cloud project to use:
 [1] powerappssample-302603
 [2] python-game0001
 [3] turing-booster-302603
 [4] Create a new project
Please enter numeric choice or text value (must exactly match list
item):  1      -->ここでproject番号を選択

続いてリージョンを選択します
ここで選択したいリージョンがあれば、その番号を選択すればよいですが、
お目当てのものが見つからない場合もあるでしょう

※74あるリージョンのうち50のリージョンしか表示されないようです(こちらを参照)

リージョンがない、、
と思った方はlistと入力するとOK
74のリージョンが全て選択可能になります

今回は東京リージョン(asia-northeast1-a)が選択肢にあるのでそのまま
[34] asia-northeast1-aを選択します

Your current project has been set to: [powerappssample-302603].

Do you want to configure a default Compute Region and Zone? (Y/n)?  y

Which Google Compute Engine zone would you like to use as project
default?
If you do not specify a zone via a command line flag while working
with Compute Engine resources, the default is assumed.
 [1] us-east1-b
 [2] us-east1-c
 [3] us-east1-d
 [4] us-east4-c
 [5] us-east4-b
 [6] us-east4-a
 [7] us-central1-c
 [8] us-central1-a
 [9] us-central1-f
 [10] us-central1-b
 [11] us-west1-b
 [12] us-west1-c
 [13] us-west1-a
 [14] europe-west4-a
 [15] europe-west4-b
 [16] europe-west4-c
 [17] europe-west1-b
 [18] europe-west1-d
 [19] europe-west1-c
 [20] europe-west3-c
 [21] europe-west3-a
 [22] europe-west3-b
 [23] europe-west2-c
 [24] europe-west2-b
 [25] europe-west2-a
 [26] asia-east1-b
 [27] asia-east1-a
 [28] asia-east1-c
 [29] asia-southeast1-b
 [30] asia-southeast1-a
 [31] asia-southeast1-c
 [32] asia-northeast1-b
 [33] asia-northeast1-c
 [34] asia-northeast1-a
 [35] asia-south1-c
 [36] asia-south1-b
 [37] asia-south1-a
 [38] australia-southeast1-b
 [39] australia-southeast1-c
 [40] australia-southeast1-a
 [41] southamerica-east1-b
 [42] southamerica-east1-c
 [43] southamerica-east1-a
 [44] asia-east2-a
 [45] asia-east2-b
 [46] asia-east2-c
 [47] asia-northeast2-a
 [48] asia-northeast2-b
 [49] asia-northeast2-c
 [50] asia-northeast3-a
Did not print [24] options.
Too many options [74]. Enter "list" at prompt to print choices fully.
Please enter numeric choice or text value (must exactly match list
item): 34  -->ここでリージョン番号を選択

Your project default Compute Engine zone has been set to [asia-northeast1-a].
You can change it by running [gcloud config set compute/zone NAME].

Your project default Compute Engine region has been set to [asia-northeast1].
You can change it by running [gcloud config set compute/region NAME].

Your Google Cloud SDK is configured and ready to use!

* Commands that require authentication will use hogehoge@fugafuga.com by default
* Commands will reference project `powerappssample-302603` by defafugault
* Compute Engine commands will use region `asia-northeast1` by default
* Compute Engine commands will use zone `asia-northeast1-a` by default

Run `gcloud help config` to learn how to change individual settings

This gcloud configuration is called [default]. You can create additional configurations if you work with multiple accounts and/or projects.
Run `gcloud topic configurations` to learn more.

Some things to try next:

* Run `gcloud --help` to see the Cloud Platform services you can interact with. And run `gcloud help COMMAND` to get help on any gcloud command.
* Run `gcloud topic --help` to learn about advanced features of the SDK like arg files and output formatting

これでgcloudのインストールは完了です

何らかのトラブルで初期処理が途中で途切れてしまったり、
選択を誤ってやり直したい、という場合は
以下のコマンドを実行して、初期化することが可能です

$ gcloud init

Macのインストール方法

Python3でのインストールが推奨されているので、この手順の前にPython3をインストールしてあげます
Python3をインストールしたら以下のコマンドを実行します
念の為、SDKのインストーラがPython3のインタプリタに向くようにします

$ export CLOUDSDK_PYTHON=python3

では、以下のcurlコマンドを実行してインストールを開始しましょう

$ curl https://sdk.cloud.google.com | bash

インストール中いくつか聞かれますが基本的にY、Returnで進めて大丈夫です

$ curl https://sdk.cloud.google.com | bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   443  100   443    0     0   1522      0 --:--:-- --:--:-- --:--:--  1527
Downloading Google Cloud SDK install script: https://dl.google.com/dl/cloudsdk/channels/rapid/install_google_cloud_sdk.bash
######################################################################## 100.0%
Running install script from: /var/folders/st/k0wsb28x2s96grj_vc4n14pc0000gp/T/tmp.XXXXXXXXXX.XxUvnh75/install_google_cloud_sdk.bash
which curl
curl -# -f https://dl.google.com/dl/cloudsdk/channels/rapid/google-cloud-sdk.tar.gz
######################################################################### 100.0%

Installation directory (this will create a google-cloud-sdk subdirectory) (/Users/User1): # <ーー★入力

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

★長いので割愛

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

Do you want to help improve the Google Cloud SDK (y/N)?  y  # <ーー★入力


This will install all the core command line tools necessary for working with
the Google Cloud Platform.

Beginning update. This process may take several minutes.


Your current Cloud SDK version is: 324.0.0
Installing components from version: 324.0.0

┌─────────────────────────────────────────────────────────────────────────────┐
│                     These components will be installed.                     │
├─────────────────────────────────────────────────────┬────────────┬──────────┤
│                         Name                        │  Version   │   Size   │
├─────────────────────────────────────────────────────┼────────────┼──────────┤
│ BigQuery Command Line Tool                          │     2.0.64 │  < 1 MiB │
│ BigQuery Command Line Tool (Platform Specific)      │     2.0.58 │  < 1 MiB │
│ Cloud SDK Core Libraries (Platform Specific)        │ 2020.07.10 │  < 1 MiB │
│ Cloud Storage Command Line Tool                     │       4.57 │  3.5 MiB │
│ Cloud Storage Command Line Tool (Platform Specific) │       4.51 │  < 1 MiB │
│ anthoscli                                           │      0.2.7 │ 52.0 MiB │
│ gcloud cli dependencies                             │ 2020.06.12 │  < 1 MiB │
└─────────────────────────────────────────────────────┴────────────┴──────────┘

For the latest full release notes, please visit:
  https://cloud.google.com/sdk/release_notes

╔════════════════════════════════════════════════════════════╗
╠═ Creating update staging area                             ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: BigQuery Command Line Tool                   ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: BigQuery Command Line Tool (Platform Spec... ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: Cloud SDK Core Libraries (Platform Specific) ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: Cloud Storage Command Line Tool              ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: Cloud Storage Command Line Tool (Platform... ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: Default set of gcloud commands               ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: anthoscli                                    ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: anthoscli                                    ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: gcloud cli dependencies                      ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Creating backup and activating new installation          ═╣
╚════════════════════════════════════════════════════════════╝

Performing post processing steps...done.                                       

Update done!


Modify profile to update your $PATH and enable shell command 
completion?

Do you want to continue (Y/n)?  y # <ーー★入力

The Google Cloud SDK installer will now prompt you to update an rc 
file to bring the Google Cloud CLIs into your environment.

Enter a path to an rc file to update, or leave blank to use 
[/Users/User1/.zshrc]:  
Backing up [/Users/User1/.zshrc] to [/Users/User1/.zshrc.backup].
[/Users/User1/.zshrc] has been updated.

==> Start a new shell for the changes to take effect.


For more information on how to get started, please visit:
  https://cloud.google.com/sdk/docs/quickstarts

これでSDKのインストールが完了です

.zshrcに変数が設定されたはずなので、確認します
(.zshrcにない人は.bash_profile)

$ cat .zshrc 

以下が追記されていればOK

# The next line updates PATH for the Google Cloud SDK.
if [ -f '/Users/User1/google-cloud-sdk/path.zsh.inc' ]; then . '/Users/User1/google-cloud-sdk/path.zsh.inc'; fi
# .zshrcを再読み込み
$ source ~/.zshrc 

# gcloudが実行できることを確認
$ gcloud version

# 以下の内容が表示されればOK
Google Cloud SDK 324.0.0
bq 2.0.64
core 2021.01.19
gsutil 4.57
User1@MacBook-Air ~ % 

次は初期設定に行きましょう

$ gcloud init 
$ gcloud init 
Welcome! This command will take you through the configuration of gcloud.

Your current configuration has been set to: [default]

You can skip diagnostics next time by using the following flag:
  gcloud init --skip-diagnostics

Network diagnostic detects and fixes local network connection issues.
Checking network connection...done.                                                   
Reachability Check passed.
Network diagnostic passed (1/1 checks passed).

You must log in to continue. Would you like to log in (Y/n)?   y # <ーー★入力

上記の画面が表示されれば完了です

まとめ

今回はWindows、MacのOS別でgcloudのインストール手順をまとめてみました

GCPは初心者がサーバーサイドを勉強するのにも大変役立ちます
某Azure、AWSよりもシンプルで、サブスクリプション的な意味でも安心です

お支払い情報がこれでもか、目立つ場所にあるでしょう(笑)
普通こういう明細って巧妙に隠すものなんですがね。
どうしてGoogleさんてこうもお優しいのでしょうか

こんなのリアルにGCPくらいですよ
ちなみに、あえて見せたくない場合も、非表示にすることは可能です

どこまでもユーザ第一の懐の広さを感じさせてくれますね

コメント

タイトルとURLをコピーしました