33
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

AWSユーザがGCPを使い始めてみた①

Last updated at Posted at 2017-04-09

GCPのアカウントを取得して早数ヶ月。
実は全然使ってませんでした。

だって、分かんないんだもん。

ということで、久々にGCPを触ることにしたので、AWS利用者がGCPを触るときの方法を触りながらまとめます。
とりあえず①にしましたが、②以降があるかは不明です。

ここを見ればいいという説もある
AWS プロフェッショナル向け Google Cloud Platform

開設

  • Googleアカウントを持っていればすぐに開設可能
    • もちろんG Suiteアカウントでも可能
  • 無料で利用するにもクレジットカードの登録→請求アカウントの作成が必要
    • 請求アカウントは自身のGoogleアカウントに紐づくGCP請求用のアカウント
  • プロジェクトと呼ばれる単位で権限分離などが可能
    • プロジェクトの単位=AWSのRootアカウント
    • 1つの請求アカウントにはいくつもプロジェクトを紐付け可能
    • 請求情報はプロジェクトと呼ばれる単位で決められる
    • G Suiteなどを使っていると、「組織」というのがあるが、これは必ず使う
      • 使うことで色々捗る
  • アカウント開設方法は以下(多分今でも変わってないはず)
  • プロジェクトを作成すると3つのIDが作られる
    • プロジェクト名:アカウント内で一意
    • プロジェクトID:GCP内で一意。ときたまプロジェクト名と一致することもあるが、大抵は適当な数字が追加される
    • プロジェクト番号:GCP内で一意。12桁の数字で表され、プロジェクト間の権限管理などで使用する。
AWS GCP
請求 AWSアカウント単位 プロジェクト単位
一括請求 Consolidated Billing 請求アカウントに一緒に紐付け

ユーザ管理

  • IAM(AWSと名前一緒)で管理
  • 個人で使う分にはあまり気にしなくていい
  • 複数人で使う場合は、各プロジェクトのIAMにユーザを追加していく
    • G Suiteだとこれがすごく楽
  • AWSと異なり、現状(2017/4現在)、権限設定が雑
    • アクションごとに設定できない
    • 大まかに「オーナー」「閲覧者」「編集者」の3つで構成される
    • まだ指定できないAPIもあるので、それについてはプロジェクトに対して権限付与しないといけない
AWS GCP
プロジェクトのユーザ管理 IAM IAMと管理
権限付与 ロール&ポリシー(アクション単位) 「オーナー」「編集者」「閲覧者」から選ぶ
エリア リージョン リージョン
エリア内 アベイラビリティゾーン ゾーン

ネットワーキング

  • プライベートのネットワークは「ネットワーキング」から設定可能
AWS GCP
プライベートネットワーク VPC ネットワーク
サブネット サブネット サブネットワーク
ファイヤーウォール セキュリティグループ ファイアウォールルール
ルーティング ルートテーブル ルート
  • だいたい対応するものが存在する
  • ただし、すべて考え方が異なるので、頭の切り替えが必要

ネットワーク

  • VPCとほぼ同じ
  • 使いたいCIDRを指定し、設定する

サブネットワーク

  • 複数のゾーンを跨いで構築することが可能
    • ちなみに、リージョン跨ぎの通信はGCP内の専用線を通って通信される(インターネットを経由しない)
  • 後述するが、FWやルートはサブネットワーク単位には紐付かない
    • AWSでよくやる、「Public Subnet」「Private Subnet」構成はそもそもしない
  • というか、サブネットワーク使わなくていい(と個人的には思っている)
    • 1ネットワーク1サブネットワークでいい(と個人的には思っている)
    • ドキュメントにはレガシーモードって書かれてるけど
  • 昔は存在しなかったので、古いネットワークではそもそも利用できない
  • IGWはサブネット単位で自動で作られる
    • AWSはわざわざ作成&ルーティングの設定が必要

ファイヤーウォールルール

  • AWSと異なり、基本的にはインスタンス単位で記述する
    • ただし、タグと呼ばれるグループにアタッチするので、該当インスタンスが複数にすることも可能
  • ポート、ソース、ターゲットの3つをセットで記述する
    • ポート:「tcp:80;」「tcp:22;」「udp:123;」のような感じ
    • ソース:どこからのアクセスか、IPアドレス(CIDR),タグなどが指定可能
    • ターゲット:どれに対してのルールか、基本的にはタグを指定する
  • (AWSと異なり)インスタンスからリンクが貼られてないので、どれが許可されてるかを追うのが大変かも
  • デフォルトのネットワークを使用すると、デフォルトでtcp:22;が全開けなので注意

ルート

  • ネットワークが作られると以下2つは自動で作成される
    • 同一ネットワーク内の通信
    • インターネットゲートウェイへの通信
  • 優先度とタグを利用することが可能
    • 優先度:どれくらい優先してネットワーク通信を許可するか
      • デフォルトでは1000が使われるので、だいたい1000でいいと思われる
      • 優先度を変える場面が現状不明
    • タグ:どのインスタンスにそのルートを適用するか
      • 自動で作られる2つはネットワーク内すべてのインスタンスに適用される

その他(追記済み)

  • AWSとGCPの通信はVPNを利用する
  • ネットワーク間の通信は2パターン
    • 同一プロジェクト内の別ネットワーク
      • Cloud VPNを設定
    • 別プロジェクトのネットワーク
      • クロスプロジェクトネットワーク(XPN)を使う
      • G Suiteと連携してないと使えない?(個人アカウントで出てこない・・・)
        • G SuiteのAdminアカウントからしか設定できない
        • 誰かを任命して権限委譲することは可能
      • 個人では複数プロジェクトの連携はできなさそう
        • まぁ使わないか
33
24
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
33
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?