Help us understand the problem. What is going on with this article?

GCPの地域制限と、GAE 2nd genのデプロイで失敗した話

言いたいこと

  • 組織ポリシーで、GCPのリソースの地域を制限することが出来るよ
  • GAEの2nd gen(Python3.7とか)には、マルチリージョンなバケットが必要だよ
  • ので、地域制限するなら、マルチリージョンな単位(eu/us/asia)でした方がいいよ

組織ポリシーによる地域制限の話

組織ポリシー(organization policy)で、GCPのリソースが作られる場所を制限することが出来ます

GCPサービスに与える影響

組織ポリシーが、各GCPサービスごとに与える影響は、こちらのページに書いています
例えば:

  • Bigtableはクラスターが作られるゾーンを限定(既存のクラスターには影響しない)
  • GCSはバケットのリージョン・マルチリージョンを限定(既存のバケットには影響しない)
  • GCEの場合はちょっと複雑
    • インスタンスの作成はリージョンで制限される
    • CloudDNSなどは、地域制限の対象外

地域の指定

ゾーン(asia-northeast1-aとか)、リージョン(asia-northeast1とか)、マルチリージョン(asiaとか)で指定することも出来ますが、ValueGroup(asia-northeast1-locationsとか)で指定する方が良いです

なぜなら:

  • Googleが関連するゾーン・リージョンを加えてくれる
  • リージョンだけを許可すると、ゾーンで立つGCP サービス(GCEとかDataflow)は使えない
    • (私はasia-northeast1だけを許可して、Dataflowの起動に失敗しました)

ためです。

GAEの2nd genのデプロイで失敗した話

  • Python3.7
  • 組織ポリシーでasia-northeast1関連のみ許可(asia-northeast1-locations)
    • この設定では、マルチリージョンなバケット(usとかasia)は作られない

で試すと、GAEをデプロイするときに失敗しました(issue)

なんで失敗するかと言うと、

  1. GAEの2nd generationは、Standardでもデプロイ時にContainer Registryを使用
  2. Container Registryはマルチリージョンなバケットを使う
  3. そのため、組織ポリシーでマルチリージョンなバケットを制限しているとコケる

からです。
ちなみに、1st gen(Python2.7)では地域制限をしていても使うことが出来ました。
2nd genでgVisorベースになった影響?)

じゃあ地域制限って使えないの?

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away