GCP Cloud Storage メモ

GCP

はじめに

Cloud Storageで試験に出そうな部分のメモ

ストレージクラス

ストレージ クラス  |  Cloud Storage  |  Google Cloud
項目内容
Standard Storage頻繁にアクセスされるデータ、短時間だけ保存されるデータ向け
Nearline Storage最小保存期間30日。可用性が若干低い。
データ取得に追加料金がかかる。
ただし、保管に関しては若干コストが低い。
Coldline Storage最小保存期間90日。可用性が低い。
データ取得に追加料金がかかる。
ただし、保管に関してはかなりコストが低い。
Archive Storage最小保存期間365日。可用性SLAは無し。
データ取得にかなり割高な追加料金がかかる。
ただし、保管に関してはかなりコストが低い。
完全に塩漬け用のバックアップデータとかBCP用。

ファイルの更新頻度も考える必要がある。
ファイルの更新が入ると、最小保存期間が更新される。

ロケーションについて

バケットのロケーション  |  Cloud Storage  |  Google Cloud

選択できるロケーションの種類

項目内容
リージョン特定の単一リージョン
デュアルリージョン東京、大阪といった、Google側が定めている距離的に近いペア。
以下から選択可能。
・ASIA1 :ASIA-NORTHEAST1 東京と ASIA-NORTHEAST2大阪。
・EUR4 :EUROPE-NORTH1ハミナ と EUROPE-WEST4エームスハーヴェン。
・NAM4 :US-CENTRAL1と US-EAST1。
マルチリージョン2つ以上の地理的な場所を含む広い範囲のエリア。以下から選択可能。
・ASIA
・EU
・US

URLについて

公開用URLの形式が問われることがある。

項目内容
URIgs://testbucket-233/1.png
認証済み URLhttps://storage.cloud.google.com/testbucket-233/1.png
公開 URLhttps://storage.googleapis.com/testbucket-233/1.png

認証済みURLは権限がある人のみがアクセス可能。
公開URLはPublicに閲覧権限を与えた場合に発行される。インターネットに公開されるURL。

署名について

上位の権限を持っている人は、有効期限、認証情報を埋め込んだURLを発行することができる。
そのURLを知っている人は、有効期限が切れるまで、特に認証はなく権限の範囲内の操作が可能。

署名付きURLは非常に長く、推測は不可能なので、現実的に知っている人しかアクセスは不可。

署名付きURLの発行方法。

認証済みURLは権限を持ったGoogleアカウントからでないと閲覧ができない。
ログインせずに、URLにアクセスしようとするとログイン画面が表示される。

Googleアカウントにログインせずともダウンロードができるように署名付きURLを発行する。

まずは、署名するために、GCSの権限を持ったサービスアカウントを作成する。
その後、鍵を作成し、JSONファイルをダウンロードする。

gsutil signurl -d 10m gsutil_key.json gs://testbucket-233/test.sh

※ CloudShellにPythonの署名用パッケージのインストールでエラーが出るのでここまで。

コマンド

gsutilコマンド

バケットの作成

### Bucketの作成 mb - Make buckets
gsutil mb -c standard -l us-east1 -b on gs://my-awesome-bucket/
オプション内容
-cストレージクラスを指定. Default is “Standard”.
-lロケーション
-b均一なバケットレベルのアクセス設定を指定. Default is “off”
従来、「IAM」と「GCSのACL設定」の2つで管理しているところ、
「IAM」の管理のみに一本化するオプション

ファイルのアップロード、ダウンロード

### ローカルファイルのアップロード
gsutil cp *.txt gs://my-bucket

### ローカルへのダウンロード
gsutil cp gs://my-bucket/*.txt .

### フォルダを再帰的にアップロード
gsutil cp -r dir gs://my-bucket

ファイル一覧の表示

### デフォルトプロジェクトのバケットを表示
gsutil ls

### バケットの中のファイルを表示
gsutil ls gs://bucket

そのほか、Cloud Storage機能

バージョニング

バージョニングを有効にすることで、削除、置換されたオブジェクトが取得できるようになる。
その分容量を使うので、ライフサイクル管理を構成して、世代管理するのが大事。

バージョニングはバケットに対して設定する必要がある。
また、設定はgsutilコマンドを使ってAPIから実施する。

### バージョニング有効化
gsutil versioning set on gs://BUCKET_NAME

### バージョニング無効化
gsutil versioning set off gs://BUCKET_NAME

### バージョニング設定状況確認
gsutil versioning get gs://BUCKET_NAME

### ファイルの世代情報を確認するにはgsutil ls に -a オプションをつける
gsutil ls -a gs://BUCKET_NAME

コメント

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