アプリケーションの作成

アプリケーションは、スケーリング、マネージド・ストレージ、ネットワーキング、認証など、ホスト・デプロイメントの管理対象ランタイム設定を定義します。このタスクでは、OCI生成AIサービスのOracle Cloudコンソールを使用してアプリケーションを作成する方法について説明します。

「アプリケーション」リスト・ページで、「アプリケーションの作成」を選択します。リスト・ページの検索に関するヘルプが必要な場合は、アプリケーションのリストを参照してください。

基本的な情報

  1. アプリケーションの名前を入力します。
    名前は文字またはアンダースコアで開始し、その後に文字、数字、ハイフンまたはアンダースコアが続きます。長さは1 - 255文字です。
  2. (オプション)アプリケーションに関する説明を入力します。
  3. アプリケーションを作成するコンパートメントを選択します。デフォルト・コンパートメントはリスト・ページと同じですが、作業する権限がある任意のコンパートメントを選択できます。

タグ

  1. (オプション)「タグの追加」を選択し、このアプリケーションにタグを割り当てます。リソース・タグを参照してください。
  2. 「作成」を選択します。

スケーリング

重要

ステップ3で永続ファイル記憶域を有効にする場合は、「最小レプリカ」および「最大レプリカ」を1に設定します。永続ファイル・ストレージでは、このリリースで1つのレプリカがサポートされます。
  1. 自動スケーリングでは、ホストされたデプロイメントがロードを処理するためにどのようにスケーリングされるかを定義します。
    • 最小レプリカ

      常に実行する必要があるレプリカの最小数。この値は、最大レプリカ数以下にする必要があります。デフォルトは1です。

    • 最大レプリカ数

      実行可能なレプリカの最大数。負荷が増加すると、この制限まで新しいレプリカが追加されます。デフォルトは3で、最大値は30です。自動スケーリングを無効にするには、この値を「最小レプリカ」に設定します。

  2. スケーリング・メトリックを選択します。
    サービスは、選択したメトリックが構成済ターゲットを超えたときに、最大レプリカ値までレプリカを追加します。
    • CPU使用率(%)

      CPU使用率がこのパーセンテージを超えた場合に、設定した最大レプリカまでレプリカを追加します。範囲: 50–95%。

    • メモリー使用率(%)

      メモリー使用率がこのパーセンテージを超えた場合に、設定した最大レプリカまでレプリカを追加します。範囲: 50–95%。

    • コンカレント要求

      コンカレント要求がこの値を超えた場合に、設定した最大レプリカ数までレプリカを追加します。範囲: 1–500。

    • リクエスト数/秒(RPS)

      1秒当たりのリクエストが構成済ターゲットを超えた場合に、設定した最大レプリカまでレプリカを追加します。

ストレージ

ステップ3で、アプリケーション内のデプロイメントに必要なサービス管理ストレージ(File Storage、OCI PostgreSQL、OCI CacheまたはOracle Autonomous AI Database)を有効にします。各タイプのストレージ・リソースを1つアタッチできます。

File Storageは、コンテナ・マウント・パスで使用できます。データベースおよびキャッシュ接続の詳細は、環境変数を介して提供されます。サービスは、アプリケーションのストレージへのアクセスを管理します。

「ストレージ」で、アプリケーションに必要なオプションをオンにします。
  • 永続ファイル・ストレージ

    コンテナの再起動および再デプロイメント後もファイルを保持します。各アプリケーションは、固定の50 GB割当て(50,000,000,000バイト)を持つ1つのファイル・ストレージ・アタッチメントを持つことができます。

    このオプションの場合:

    1. 永続ファイル・ストレージをオンにします。
    2. スケーリング設定の「最小レプリカ」と「最大レプリカ」の両方が1であることを確認します。永続ファイル・ストレージでは、このリリースで1つのレプリカがサポートされます。
    3. 「記憶域」で、次のいずれかを選択します。
      • 新規ストレージの作成: ストレージ名を入力します。このサービスは、アプリケーションのコンパートメントにストレージ構成を作成します。
      • 現在のコンパートメント内の既存のストレージの選択: 「ストレージ名」で、アクティブなファイル・ストレージ・リソースを1つ選択します。「検索およびフィルタ」を使用して、リソースを検索できます。使用可能なアクティブなファイル・ストレージがない場合は、「新規ストレージの作成」を選択します。
    4. 「マウント・パス」には、/mnt/persistent/dataを保持するか、別の有効な絶対コンテナ・パスを入力します。アプリケーションの作成後は、このパスを変更できません。

    同じストレージリソースを使用するアプリケーションは、個別のファイルシステムを受け取ります。既存のストレージを選択すると、その構成が再利用されます。他のアプリケーションのファイルは共有しません。

    マウント・パスで永続ファイルの読取りおよび書込みを行うようにアプリケーションを構成します。File Storageでは、接続情報に環境変数を使用しません。パス要件、API構成およびアタッチメント・ステータスについては、ホスト・アプリケーションの永続ファイル・ストレージを参照してください。

  • OCI PostgreSQL

    OCI PostgreSQLを有効にして、このアプリケーションのデプロイメントの管理対象データベースを提供します。

    このオプションでは、次のことが行われます。
    • OCI PostgreSQLの接続URIを受け取る環境変数名を入力します。サービスは、指定された環境変数に接続文字列を追加します。
    • ストレージ: ストレージを作成するか、既存のストレージを使用するかを選択します。既存のストレージを選択した場合、アプリケーションはOCI PostgreSQLストレージ・リソースをテナンシ内の他のアプリケーションと共有します。各アプリケーションには専用データベースが割り当てられ、このアプリケーションには専用データベースのみにアクセスする権限があります。
  • OCIキャッシュ
    OCIキャッシュを有効にして、このアプリケーションのデプロイメントにマネージド・キャッシュを提供します。このオプションでは、次のことが行われます。
    • OCIキャッシュの接続URIを受け取る環境変数名を入力します。
    • ストレージ: ストレージを作成するか、既存のストレージを使用するかを選択します。
  • Oracle Autonomous Database
    Oracle Autonomous AI Databaseを有効にして、このアプリケーションのデプロイメントに管理対象データベースを提供します。このオプションでは、次のことが行われます。
    • Autonomous AI Databaseの接続URIを受け取る環境変数名を入力します。
    このサービスは、接続文字列に加えて、データベース・ユーザー資格証明をコンテナ内の次のローカル・ファイルにマウントします。
    /mnt/secrets/adb/username
    /mnt/secrets/adb/password

環境

  1. (オプション)デプロイメントの1つ以上の環境変数をキーと値のペアとして入力します。変数ごとに、環境変数名とその値を入力します。アプリケーションに必要な数の変数を追加します。
  2. (オプション)「Vault環境変数」に、次を入力します:
    • 変数の名前
    • ボールトOCID
    • ボールト・キー
    • このサービスは、ボールト情報をJSONファイルとしてコンテナに追加します。JSONコードの例:

      {
          "vaultId":<vault-ocid>,
          "key":<the secret in the vault>
      }

ネットワーキング(オプション)

このアプリケーションのデプロイメントでアウトバウンド・トラフィックをルーティングする方法と、クライアントがデプロイメント・エンドポイントにアクセスする方法を選択します。

  1. 「ネットワーキング」で、次のオプションのいずれかを選択します。
    • デフォルト(サービス管理)

      サービス管理ネットワークを介したOCIサービスおよびパブリック・インターネットへのアウトバウンド・アクセスを許可します。

    • カスタム(顧客管理)
      プライベート・エンドポイント接続を使用して、テナンシのVCNおよびサブネットを介してアウトバウンド・トラフィックをルーティングします。このオプションは、プライベートなエンタープライズ統合デプロイメントに推奨されます。このオプションでは、次を選択します。
      • VCNコンパートメント
      • VCN
      • サブネット・コンパートメント
      • サブネット
      ノート

      カスタム・ネットワーキングを選択すると、すべてのエグレス・トラフィックがVCNサブネットにルーティングされます。アプリケーションでインターネット・アクセスも必要な場合は、パブリック・サブネットの使用とルート表の構成を検討してください。インターネット・ゲートウェイに関する項を参照してください。
  2. このアプリケーションのアクティブ・デプロイメントに、パブリック・エンドポイントとプライベート・エンドポイントのどちらからアクセスするかを選択します。
    • パブリック

      VCNの外部からアクセスできます。

    • Private

      VCN内からのみアクセス可能です。

      重要

      生成AIプライベート・エンドポイントを使用する必要があります。ない場合は、生成AIプライベート・エンドポイントを作成します。

      次の情報を選択します。

      • プライベート・エンドポイント・コンパートメント
      • プライベート・エンドポイント

    アプリケーションの作成後、そのFQDNまたはIPアドレスを使用して、このプライベート・エンドポイントを介してアプリケーションにアクセスできます。FQDNの例:

    https://<pe-name>.pe.inference.generativeai.<region>
    .oci.oraclecloud.com/20251112/hostedApplications/{your_application_ocid}

認証

ステップ6で、次のいずれかの認証オプションを選択します。

  • アイデンティティ・ドメインベアラー・トークン: OCI IAMアイデンティティ・ドメインによって発行されたOAuthアクセス・トークンを使用します。トークンはベアラー・トークンとしてターゲット・サービスに送信され、サービスはリクエストを受け入れる前にトークンを検証します。前提条件として、アイデンティティ・ドメインBearerトークン認証の設定のタスクを実行します。
  • アイデンティティ・ドメイン・ブラウザ・セッション: OAuth 2.1 Authorization CodeフローとProof Key for Code Exchange (PKCE)を使用します。ブラウザ・ユーザーは、サインインするためにOCIアイデンティティ・ドメインにリダイレクトされます。ホストされたアプリケーション・サービスは、かわりにアクセス・トークンを取得し、セッションCookieを使用するブラウザ・セッションを確立します。
  • OCI IAM: OCI IAMリクエスト署名認証を使用します。各リクエストは、OCI APIリクエスト署名の要件に従って暗号化して署名されます。
  • 認証なし:プラットフォーム管理認証なしでリクエストを許可します。このオプションは、パブリック・コンテンツまたはアプリケーションが認証を管理する場合に使用します。
ノート

APIを使用する場合は、アイデンティティ・ドメインの認証にCreateHostedApplicationを使用するか、認証を行いません。inboundAuthConfigで、inboundAuthConfigTypeを次のいずれかの値に設定します。

  • IDCS_AUTH_CONFIG: アイデンティティ・ドメインベアラー・トークン認証。
  • IDCS_SESSION_AUTH_CONFIG: PKCEでのOAuth 2.1認可コード・フローを使用したアイデンティティ・ドメイン・ブラウザのセッション認証。
  • NO_AUTH_CONFIG: プラットフォーム管理のコール元認証を無効にします。idcsConfigを省略します。

どちらのアイデンティティ・ドメイン認証タイプでも、必要なdomainUrlおよびscope値を含むidcsConfigを含めます。APIスキーマは、audienceをオプションとしてマークします。また、clientIdおよびclientSecretVaultIdは、IDCS_SESSION_AUTH_CONFIGにのみ適用されるオプション・フィールドとして定義されます。clientSecretVaultId値は、OAuthクライアント・シークレットを含むOCI VaultシークレットのOCIDです。詳細は、InboundAuthConfigおよびIdcsAuthConfigを参照してください。

認証を構成しない場合は、次のオブジェクトを指定します。個別のテナンシ登録は必要ありません。

"inboundAuthConfig": {
  "inboundAuthConfigType": "NO_AUTH_CONFIG"
}

更新からinboundAuthConfigを省略すると、アプリケーションの現在の認証構成は変更されません。プラットフォーム管理のコール元認証を明示的に無効にするには、inboundAuthConfigTypeをNO_AUTH_CONFIGに設定し、idcsConfigを省略します。

OCI IAM認証を使用するアプリケーションを作成するには、CreateHostedApplicationIamをCreateHostedApplicationIamDetailsとともに使用します。OCI IAM APIには、OAuthまたはIDCS構成は必要ありません。

選択した認証タイプのステップに従います。

アイデンティティ・ドメインベアラー・トークン

  1. 「認証タイプ」で、「アイデンティティ・ドメインベアラー・トークン」を選択します。
  2. 次のオプションのいずれかを選択します。
    • 既存のアイデンティティ・ドメインを選択

      ステップ2で機密統合アプリケーションを作成したのと同じアイデンティティ・ドメインを使用します。アイデンティティ・ドメインにアプリケーションを作成します。次のフィールドの値を選択します。

      • アイデンティティ・ドメイン・コンパートメント
      • アイデンティティ・ドメイン
    • アイデンティティ・ドメインURLの貼付け

      例: https://idcs-xxx.identity.oraclecloud.com:443

  3. 「スコープ」に、アイデンティティ・ドメイン内のアプリケーションに対して構成されたスコープを入力します。

    スコープは、アクセス・トークンによって付与される権限を指定します。Step 3で構成したスコープを使用します。OAuth設定を構成します。

  4. (オプション)「オーディエンス」に、アイデンティティ・ドメイン内のアプリケーションに構成されているオーディエンスを入力します。

    オーディエンスは、アクセス・トークンが意図されているサービスまたはAPIを識別します。この値を見つけるには、アイデンティティ・ドメインで統合アプリケーションを開き、OAuth構成を選択して、プライマリ・オーディエンスをコピーします。

  5. 「次へ」を選択します。

アイデンティティ・ドメインのブラウザ・セッション

PKCEを使用した認可コード・フロー用に構成されたOAuthアプリケーションのアイデンティティ・ドメインURL、スコープ、オーディエンスおよびクライアントIDを取得します。OAuthクライアント・シークレットをOCI Vaultに格納し、シークレットのOCIDを「クライアント・シークレット・ボールトID」フィールドに記録します。

  1. 「認証タイプ」で、「アイデンティティ・ドメイン・ブラウザ・セッション」を選択します。
  2. 「タイプ」で、次のいずれかのオプションを選択します。
    • 既存のアイデンティティ・ドメインの選択: OAuthアプリケーションのアイデンティティ・ドメイン・コンパートメントおよびアイデンティティ・ドメインを選択します。
    • アイデンティティ・ドメインURLの貼付け: アイデンティティ・ドメインURLを入力します。たとえば、https://idcs-xxx.identity.oraclecloud.com:443です。
  3. OAuthアプリケーションのコンソールに必要な次の値を入力します。
    • スコープ: アイデンティティ・ドメインで構成されたスコープ。
    • オーディエンス: アイデンティティ・ドメインで構成されたオーディエンス。
    • OAuthクライアントID: ブラウザのサインインに使用されるOAuthアプリケーションのクライアントID。
    • クライアント・シークレット・ボールトID: OAuthアプリケーションのクライアント・シークレットを含むOCI VaultシークレットのOCID。
  4. (オプション)「パブリック・アクセス・パス・パターン」で、「パブリック・パス・パターンの追加」を選択し、認証なしでアクセスできるパスを入力します。追加のパスごとに繰り返します。

    パスはスラッシュで始める必要があります。たとえば、/healthや/assets/*などです。パスを照合するリクエストは認証をバイパスします。サインインせずにアクセスを目的としたパスのみを追加します。

  5. 「次へ」を選択します。

OCI IAM

  1. 「認証タイプ」で、「OCI IAM」を選択します。

    このオプションは、OCI IAMリクエスト署名認証を使用し、アイデンティティ・ドメイン設定は必要ありません。

  2. 「次へ」を選択します。

認証を行いません。

このオプションを使用すると、エンドポイントに到達できるすべてのユーザーが、プラットフォーム管理認証なしでリクエストを送信できます。アクセスの制限が必要な場合は、アプリケーションで認証と認可を強制する必要があります。「認証なしの使用」を参照してください。

  1. 「認証タイプ」で、「認証なし」を選択します。
    追加の認証フィールドは必要ありません。
  2. 「次へ」を選択します。

アプリケーション・ログの有効化

リソース・ロギングを有効にして、アプリケーション・アクティビティの追跡、問題のトラブルシューティングを行い、ホストされたデプロイメントの操作インサイトを収集します。

  1. (オプション)「ログの有効化」を選択します。
  2. 「カテゴリ」で、genai-hosted-deployment-logを選択するか、新しいログ・グループを作成します。
  3. 「ログ・グループ」で、既存のログ・グループを選択するか、「新規ログ・グループの作成」を選択します。
  4. ログ・グループを含むコンパートメントを選択します。
  5. ログ名を入力します。
  6. (オプション)「拡張オプション」で、ログ保持期間を選択します。
    デフォルトの保持期間は1か月(30日)です。

確認および作成

アプリケーション設定を確認し、「アプリケーションの作成」を選択します。

ノート

アプリケーションの作成時間は、サービスがアプリケーションにプロビジョニングするリソースによって異なります。

  • 管理対象ストレージが有効な場合、サービスは選択したストレージをプロビジョニングまたはアタッチします(数分かかる場合があります)。

  • 「カスタム・ネットワーキング」を選択した場合、サービスは必要なネットワーク・ブリッジング・リソースをプロビジョニングします。これには数分かかる場合もあります。

設定を確認し、「アプリケーションの作成」を選択します。
「認証なし」を選択した場合は、「認証タイプ」にその値が表示されていることを確認します。

作成後、アプリケーションの「構成」タブの「認証」の下に「認証タイプ」を表示します。

ヒント

アプリケーションを作成した後、その詳細を表示して、別のコンパートメントへの移動、タグの管理、削除など、その他のタスクを実行できます。コンソールの「アクション」メニュー(3つのドット)を使用して、これらのタスクにアクセスします。詳細ページからアプリケーションのデプロイメントを作成することもできます。詳細は、アプリケーションのリストを参照してください。