このドキュメントでは、単一の Google Cloud プロジェクトを設定してアプリケーションを管理する方法について説明します。この構成は、単一プロジェクト境界とも呼ばれます。
この設定では、 Google Cloud プロジェクトは、独自のアプリケーションとコンポーネントを管理するように構成され、スタンドアロンの管理プロジェクトとして機能します。このアプローチは、すべてのアプリケーション コンポーネントがこの単一のプロジェクト内に存在する場合に、アプリケーションの管理を開始する最も迅速な方法です。App Hub は、プロジェクト内のサポートされているすべてのリソースを自動的に検出し、アプリケーションに整理できるようにします。
制限事項
単一プロジェクトの境界は、フォルダレベルの境界とは異なる機能がサポートされています。App Hub、Application Design Center、Application Monitoring は単一プロジェクトを完全にサポートしていますが、Cloud Hub や Gemini Cloud Assist などの他のアプリケーション中心の Google Cloud サービスでは、フォルダレベルの境界が必要です。
単一プロジェクト モデルとフォルダレベル モデルの機能サポートの比較については、境界タイプ別の機能サポートをご覧ください。
始める前に
アプリケーションの管理に使用する Google Cloud プロジェクトを選択します。このプロジェクトは、スタンドアロンの管理プロジェクトとして機能します。既存のプロジェクトを使用することも、新しいプロジェクトを作成することもできます。
必要なロール
アプリケーション管理用に単一のプロジェクトを構成するために必要な権限を取得するには、スタンドアロン管理プロジェクトとして構成するプロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。
-
プロジェクトのリソース、権限、請求を管理する: プロジェクト オーナー (
roles/owner) -
プロジェクトのすべてのアプリケーション コンポーネントを管理する: App Hub 管理者 (
roles/apphub.admin)
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
プロジェクトでアプリケーション管理を有効にする
このアクションにより、プロジェクトがスタンドアロンの管理プロジェクトとして構成され、アプリケーションのメタデータと構成に必要な API が有効になります。このプロジェクトは、アプリ対応プロジェクトと呼ばれます。
単一のプロジェクトでアプリケーション管理を有効にするには、次の操作を行います。
コンソール
Google Cloud コンソールで、プロジェクト選択ツールを使用してプロジェクトを選択します。
App Hub から [概要] ページに移動します。
[アプリハブを設定] をクリックします。
プロジェクトがすでにアプリ対応フォルダ内にある場合、ページに [App Hub を設定] オプションは表示されません。代わりに、アプリ管理用フォルダを選択するか、メニューから現在のプロジェクトを使用するよう求められます。現在のプロジェクトを選択して、単一プロジェクトの設定を続行します。アプリケーション管理のリソース階層の考慮事項については、アプリケーション管理のリソース階層を計画するをご覧ください。
[App Hub を有効にする] ページで、次のいずれかのオプションを選択します。
- Quick setup: このプロジェクトのリソースのデフォルト構成を管理し、初期導入用の最初のアプリケーションを定義します。
- 完全な設定: 事前アクセス制御の設定や、必要に応じて複数のプロジェクトの境界にプロジェクトを追加するなど、アプリケーションのカスタム構成を管理します。
プロジェクト名と ID をメモします。この情報は管理プロジェクトを識別します。これらの値を使用してアクセス権を付与します。
有効にする API のリストを確認します。一部の API には関連費用が発生します。API の費用について詳しくは、こちらをご覧ください。または、各 API をクリックして関連する費用を確認してください。
[続行] をクリックします。
選択内容に応じて、セットアップを完了します。
[クイック設定] を選択した場合は、[アプリケーションの定義] タブで、アプリケーションを今すぐ定義するか、アプリケーションを作成せずに設定を完了するかを選択できます。これで、アプリケーションを作成してリソースを登録する準備が整いました。アプリケーションのクイックスタート ガイドもご覧ください。
[Full setup] を選択した場合は、管理者にカスタム アプリケーション中心のアクセス権を付与します。
[境界を定義する] タブで、プロジェクト情報を確認します。[境界内のプロジェクト] テーブルには、単一プロジェクトの境界を定義するプロジェクトのみが表示されます。単一プロジェクト境界の設定では、追加のプロジェクトは追加しないでください。
[続行] をクリックします。
[アクセス権を付与] タブで、プロジェクトの管理者に適切な IAM ロールと権限を選択します。Google Cloud プロダクト全体で推奨されるアプリケーション中心のロールの一覧については、ユーザーにアプリケーション中心のロールを付与するをご覧ください。
[新しいプリンシパル] ボックスに、プロジェクト内のアプリケーション中心のタスクに対する管理者権限を持つユーザー、グループ、またはサービス アカウントを入力します。
[ロールを付与] をクリックし、[完了] をクリックします。
Application Design Center で、既存のリソースをアプリケーションに登録したり、アプリケーション テンプレートを作成したりできるようになりました。
後で、IAM ページからプリンシパルに追加の IAM ロールを付与できます。詳細については、 Google Cloud コンソールを使用して IAM ロールを付与するをご覧ください。
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Google Cloud CLI の最新バージョンがインストールされていることを確認します。
gcloud components updateコマンドのデフォルト プロジェクトとしてプロジェクトを設定します。
gcloud config set project PROJECT_IDPROJECT_IDは、プロジェクトの ID に置き換えます。App Hub API を有効にします。
gcloud services enable apphub.googleapis.com \ --project PROJECT_IDプロジェクトをそれ自体にアタッチして、アプリケーション管理境界を作成します。
gcloud apphub boundary update \ --crm-node=projects/PROJECT_ID \ --project=PROJECT_ID \ --location=globalこのコマンドは、プロジェクトを独自の管理プロジェクトとして構成し、App Hub がそのプロジェクト内のすべてのサポートされているリソースを自動的に検出できるようにします。
アタッチメントのステータスを確認します。
gcloud apphub boundary describe \ --project=PROJECT_ID \ --location=global次のような出力が得られます。
name: projects/PROJECT_ID/locations/LOCATION/boundary crmNode: projects/PROJECT_ID createTime: 2025-08-28T19:04:47Z updateTime: 2025-08-28T19:04:47Z type: AUTOMATIC
管理プロジェクトの構成が完了すると、アプリケーション管理に必要な API が有効になり、App Hub を使用してアプリケーション内のサービスとワークロードをグループ化できるようになります。必要に応じて、推奨 API を確認して、高度な機能にアクセスします。
App Hub のロールと権限を割り当てる
ユーザーが App Hub を使用してこのプロジェクト内のアプリケーション コンポーネントを検出、登録、管理できるようにするには、適切な App Hub のロールと権限を付与する必要があります。
手順は次のとおりです。
コンソール
Google Cloud コンソールで、プロジェクト選択ツールを使用して管理プロジェクトを選択します。
[IAM] ページに移動します。
[ アクセスを許可] をクリックします。アクセス権の付与ペインが開きます。
[新しいプリンシパル] フィールドに、App Hub へのアクセス権を付与するプリンシパルのメールアドレスを入力します。
[ロールを選択] をクリックし、[フィルタ] フィールドに「App Hub」と入力します。
プリンシパルに割り当てる App Hub IAM ロールを選択し、[保存] をクリックします。
gcloud
管理プロジェクトのプリンシパルにアクセス権を付与します。
gcloud projects add-iam-policy-binding PROJECT_ID \ --member='user:EMAIL_ADDRESS' \ --role='ROLE_NAME'次のように置き換えます。
PROJECT_ID: 管理プロジェクトの ID。EMAIL_ADDRESS: App Hub へのアクセス権を取得する必要があるプリンシパルのメールアドレス。この値は、username@yourdomainの形式(例:my.user@example.com)にする必要があります。ROLE_NAME: プリンシパルに割り当てる App Hub IAM ロール(例:roles/apphub.admin)。
アプリケーション管理の境界を変更する
単一プロジェクトの境界を定義するプロジェクトを変更する場合は、古いプロジェクトでアプリケーション管理を無効にして、新しいプロジェクトで有効にします。アプリケーション データは移行されません。新しいプロジェクトでアプリケーションを再作成する必要があります。
単一プロジェクトの境界からフォルダレベルの境界に移行するには、アプリ対応フォルダを設定します。この操作により、フォルダに新しい管理プロジェクトが構成されます。この新しい管理プロジェクトでアプリケーションを再作成する必要があります。
プロジェクトでアプリケーション管理を無効にする
App Hub アプリケーションでリソースを管理する必要がなくなった場合は、プロジェクトでアプリケーション管理を無効にできます。
プロジェクトでアプリケーション管理を無効にすると、プロジェクトはアプリケーション管理境界から切り離されます。アプリケーション内のサービスとワークロードは引き続き存在しますが、登録ステータスが「切り離し」に変更されます。プロジェクトでアプリケーション管理を再度有効にすると、基盤となるリソースがまだ存在する場合、App Hub はアプリケーション、サービス、ワークロードを再検出して登録ステータスを更新できます。
単一のプロジェクトでアプリケーション管理を無効にするには、次の操作を行います。
コンソール
Google Cloud コンソールで、プロジェクト選択ツールを使用して管理プロジェクトを選択します。
App Hub から [境界設定] ページに移動します。
プロジェクトのチェックボックスをオンにして、境界から切り離し、アプリケーション管理を無効にします。
[プロジェクトを接続解除] をクリックします。
[境界内のプロジェクト] テーブルが更新され、プロジェクト情報が表示されなくなります。
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Google Cloud CLI の最新バージョンがインストールされていることを確認します。
gcloud components updateコマンドのデフォルト プロジェクトとしてプロジェクトを設定します。
gcloud config set project PROJECT_IDPROJECT_IDは、プロジェクトの ID に置き換えます。プロジェクトを境界から切り離して、アプリケーション管理を無効にします。
gcloud apphub boundary update \ --project=PROJECT_ID \ --location=global \ --crm-node=""このコマンドは、境界リソースを更新してアタッチメントを削除し、プロジェクトのアプリケーション管理を無効にします。
境界を記述して、切り離しを確認します。
gcloud apphub boundary describe \ --project=PROJECT_ID \ --location=global出力に
crmNodeフィールドが含まれていないため、プロジェクトでアプリケーション管理が無効になっていることが確認できます。必要に応じて、プロジェクト内のすべてのアプリケーションを削除し、このプロジェクトでアプリケーション機能を使用しなくなる場合は、App Hub API を無効にします。
gcloud services disable apphub.googleapis.com \ --project=PROJECT_ID
次のステップ
- クイックスタート: 既存のリソースからアプリケーションを作成する
- リソースをアプリケーションに登録する
- アプリケーション モニタリングを設定する
- App Hub の IAM ロールと権限
- App Hub の概要