こんにちは、本間です。
IDCFは、パワフルなIaaS型クラウドであるIDCFクラウドを中心にサービス展開していますが、実は Google Cloud Platform(以下、GCP ) と連携したサービスも提供していることをご存知でしょうか?
今回は GCP を基盤としたサービスである、 「クラウドストレージ」「データ分析 ( Powered by Google Cloud Platform ) 」(以下、データ分析)の裏側について、アカウントや権限の設計を中心にご紹介したいと思います。
はじめに
現在IDCFでは、 GCP を基盤としたサービスとしてクラウドストレージとデータ分析の2つを展開しています。
クラウドストレージは Google の Google Cloud Storage を基盤とした、IDCF独自のUIも合わせて提供しているストレージサービスです。
データ分析は、BigQuery を始めとした Google のデータ分析系のプロダクトを複数提供しているサービスです。
IDCFクラウド内のサービス間連携だけでなく、他社の様々なサービスとも連携することで、ユーザーが使いやすいクラウドを提供できるよう日々努力しています。
利用にあたって
IDCFクラウドのアカウントと Google アカウントがあれば使い始めることができます。G Suite アカウントでも可能です。
※ もし Google アカウントがなくても、IDCFクラウドから @gcp.idcfcloud.net の Google アカウントを作成することで使用可能です。(仕組みは「Google アカウント提供」を参照)
すでにIDCFクラウドアカウントを持っている場合は、IDCFクラウドから連携した Google アカウントで認証を行うだけで簡単に使い始めることができます。
クラウドストレージには無料枠もあるので、ぜひ利用してみてください。
ご利用の際には、次のご利用ガイドを見てみてください。
ここからは、サービスの裏側について少し説明していきます。
サービス構成
まず、どのような構成でサービス連携しているかをご紹介します。
クラウドストレージやデータ分析で提供している GCP のサービス以外にも、連携を実現するために各種 GCP のサービスを利用しています。 連携の表側は GCP のサービスの GCS や BigQuery といったサービスとなりますが、裏側のコア部分は組織となります。
組織の利用について
次の青枠の部分が組織です。
組織とは
その名の通り組織や会社を表し、GCP リソース階層のルートノードになります。
G Suite を契約することで1つの組織が提供されます。
組織の詳細は Google のドキュメントを参照ください。
目的
多数の GCP プロジェクトの管理と Google アカウントの提供をおこなうために組織を導入しています。
GCP プロジェクトは組織配下に作成され、ポリシーが継承されます。
IDCFでは、IDCFクラウドのアカウントごとにプロジェクトを割り当てているため、多数のプロジェクト管理が必要になります。(後述、「IDCFクラウドのアカウントと GCP の関係性」を参照)
Google アカウント提供
Cloud Identity という G Suite のオプションで Google アカウントの提供を実現しています。
無料で利用可能で、G Suite に付属されるサービス(メール機能など)がないアカウントサービスです。
Google アカウントを持っていないユーザー向けに新規 Google アカウントを発行するために利用しています。
BigQuery の利用について
GCP といえば、 BigQuery が思い浮かぶ方も多いかと思います。IDCFクラウドの GCP 連携の裏側でも利用しています。
例えば、IDCFクラウドコンソールのアカウント>ビリングに表示されている当月の利用状況は、 BigQuery を介して表示しています。
GCP の課金データの BigQuery へのエクスポート機能を利用して BigQuery にエクスポートし、そのデータをIDCFクラウドコンソールのビリング画面に表示することで、当月の利用状況を見ることができるようにしています。
ユーザーのアクセス経路について
ユーザーがIDCFを通じて GCP のサービスにアクセスする場合、3パターンの経路があります。
- ①-A
IDCFクラウドコンソールのクラウドストレージの画面からアクセスする場合、IDCF の連携アプリケーションを通して GCP へアクセスしています。
- ①-B
IDCFクラウドコンソールのクラウドストレージの画面操作でも1つ例外があり、オブジェクトのアップロード・ダウンロードは高速化のため、直接 GCP へアクセスしています。
- ②
APIやgsutil、bqコマンドを利用したアクセスはIDCFクラウドを経由せず、ユーザー環境から直接 GCP へのアクセスが可能です。
アカウント連携設計
次にIDCFクラウドのアカウントと Google アカウントとGCP プロジェクトの関係性について説明します。
IDCFアカウントと GCP プロジェクトは 1:1 の関係です。
IDCFのユーザーと Google アカウントも 1:1 の関係です。
連携した Google アカウント が GCP プロジェクトの Cloud IAM で権限設定されています。
IDCFクラウドのパワーユーザーとユーザーの権限設定
IDCFクラウドのパワーユーザーやユーザーへ、クラウドストレージやデータ分析の権限を設定する場合は、マスターユーザーが設定する必要があります。
パワーユーザーとユーザーがIDCFクラウドコンソールのアカウント>連携アカウント画面より連携後に、マスターユーザーが権限設定可能になります。
詳細は次のFAQを参照ください。
パワーユーザーやユーザーでクラウドストレージへアクセスする方法を教えてください。
クラウドストレージにおける権限設定
クラウドストレージの権限は複数箇所で設定が可能です。設定範囲によって設定する箇所が異なるためご注意ください。
すべてのバケットに同じ設定を行いたい場合、IDCFクラウドコンソールのアカウント>連携アカウントページの連携ユーザーで設定します。 バケットごとに権限を分けた設定を行いたい場合、クラウドストレージのバケット設定から行います。
対応表
IDCFクラウドコンソール | GCP | 用途 |
---|---|---|
アカウント>連携アカウントページ | IAM | すべてのバケットに一律で権限を設定 |
クラウドストレージ>バケット設定 | バケットACL | バケットごとの権限設定 |
おわりに
今回はIDCFクラウドの GCP 連携の裏側をご紹介しました。
普段サービスを利用する際はあまり意識しない部分かもしれませんが、こういった裏側の設計などにIDCF独自の工夫が詰まっています!
マルチクラウドをもっとシームレスに使えるように、今後も便利なサービスの開発や連携を進めていきますので、ぜひご期待ください!
リリースノートで、IDCFクラウドのアップデート情報もアップデートしていますので、合わせてチェックしてみてください。
Google、Google Cloud Storage、Google Cloud Platform、および、BigQuery は Google LLC の商標または登録商標です。