コントロール プレーン Web アプリケーションを構成する

SAP 自動化フレームワーク コントロール プレーンの一部として、必要に応じて、必要な構成ファイルを作成し、Azure Pipelines を使用して SAP ワークロード ゾーンとシステムをデプロイする際に役立つ対話型 Web アプリケーションを作成できます。

Web アプリ フロント ページ

重要

コントロール プレーン Web アプリケーションは現在プレビュー段階であり、メイン ブランチではまだ使用できません。

アプリの登録を作成する

この Web アプリを使用する場合は、最初に認証のためにアプリ登録を作成する必要があります。 Azure Cloud Shell を開き、次のコマンドを実行します。

MGMT を必要に応じてお使いの環境に置き換えます。

echo '[{"resourceAppId":"00000003-0000-0000-c000-000000000000","resourceAccess":[{"id":"e1fe6dd8-ba31-4d61-89e7-88639da4683d","type":"Scope"}]}]' >> manifest.json 

TF_VAR_app_registration_app_id=$(az ad app create \
    --display-name MGMT-webapp-registration \
    --enable-id-token-issuance true \
    --sign-in-audience AzureADMyOrg \
    --required-resource-access @manifest.json \
    --query "appId" | tr -d '"')

TF_VAR_webapp_client_secret=$(az ad app credential reset \
    --id $TF_VAR_app_registration_app_id --append               \
    --query "password" | tr -d '"')

rm manifest.json

Azure Pipelines を使用してデプロイする

Azure DevOps を使用して Web アプリを設定する方法の詳細については、「Azure DevOps Servicesから SAP Deployment Automation Framework を使用する」を参照してください。

コントロール プレーンをデプロイする前に Web アプリを設定するために必要な手順の概要:

  1. Web アプリのデプロイ パイプライン (deploy/pipelines/21-deploy-web-app.yaml) を追加します。
  2. デプロイの前に、変数 TF_VAR_app_registration_app_id と TF_VAR_webapp_client_secret を環境固有の変数グループに追加します。
  3. 環境固有の変数グループの [セキュリティ] タブを使用して、ビルド サービスに管理者ロールを割り当てます。
  4. コントロール プレーンのデプロイ パイプラインを実行するときに、[deploy the web app infrastructure] (Web アプリ インフラストラクチャのデプロイ) の横にあるチェック ボックスをオンにします。

コントロール プレーンをデプロイした後に Web アプリにアクセスするために必要な手順の概要:

  1. アプリ登録の応答 URL を更新します。
  2. サブスクリプション スコープを持つ閲覧者ロールを、アプリ サービスのシステム割り当てマネージド ID に割り当てます。
  3. Web アプリのデプロイ パイプラインを実行します。
  4. (省略可能) アプリ サービスに追加のアクセス ポリシーを追加します。

Azure CLI を使用したデプロイ (Cloud Shell)

Azure CLI を使用して Web アプリを設定する方法の詳細については、「コントロール プレーンをデプロイする」を参照してください。

コントロール プレーンをデプロイする前に Web アプリを設定するために必要な手順の概要:

  1. 環境変数 TF_VAR_app_registration_app_id、TF_VAR_webapp_client_secret、TF_VAR_use_webapp="true" をエクスポートします。

コントロール プレーンをデプロイした後に Web アプリにアクセスするために必要な手順の概要:

  1. アプリ登録の応答 URL を更新します。
  2. サブスクリプション スコープを持つ閲覧者ロールを、アプリ サービスのシステム割り当てマネージド ID に割り当てます。
  3. Web アプリ コードの zip ファイルを生成します。
  4. ソフトウェアをアプリ サービスにデプロイします。
  5. アプリケーション設定をします。
  6. (省略可能) アプリ サービスに追加のアクセス ポリシーを追加します。

Web アプリの使用

Web アプリを使用すると、SAP ワークロードのゾーン オブジェクトとシステム インフラストラクチャ オブジェクトを作成できます。 これらのオブジェクトは、基本的に Terraform 構成ファイルのもう 1 つの表現です。 Azure Pipelines を使用してデプロイする場合は、これらのワークロード ゾーンとシステム インフラストラクチャを Web アプリから直接デプロイできます。 Azure CLI を使用してデプロイする場合は、作成する任意のランドスケープまたはシステム オブジェクトのパラメーター ファイルをダウンロードし、コマンド ライン デプロイで使用できます。

ランドスケープまたはシステム オブジェクトを最初から作成する

  1. Web サイトの上部にある [Workload zones] (ワークロード ゾーン) または [Systems] (システム) タブに移動します。
  2. 左下隅にある [Create New] (新規作成) をクリックします。
  3. [基本] タブと [詳細設定] タブで、必須パラメーターと、必要な追加パラメーターを入力します。
  4. 特定のパラメーターは、既存の Azure リソースが設定されたドロップダウンになります。
    • ドロップダウンに結果が表示されない場合は、先に別のドロップダウンを指定すると、オプションが表示される場合があります。 または、システム割り当てマネージド ID に関する上の手順 2 を参照してください。
      • 他のドロップダウン機能を有効にするために、サブスクリプション パラメーターを最初に指定する必要があります
      • サブネット ドロップダウン機能を有効にする前に、network_arm_id パラメーターを指定する必要があります
  5. 左下隅にある [submit] (送信) を選択します

ファイルからのワークロード ゾーンまたはシステム オブジェクトの作成

  1. Web サイトの上部にある [File] (ファイル) タブに移動します。
  2. 選択肢は次のとおりです
    • ブラウザーで新しいファイルを最初から作成する。
    • 既存の .tfvars ファイルをインポートし、(必要に応じて) 編集してから保存する。
    • 既存のテンプレートを使用し、(必要に応じて) 編集してから保存する。
  3. ファイルが正しい名前付け規則に準拠していることを確認してください。
  4. ワークロード ゾーンまたはシステム オブジェクトに変換するファイルの横にある [Convert] (変換) をクリックします。
  5. ワークロード ゾーンまたはシステム オブジェクトが該当のタブに表示されます。

ワークロード ゾーンまたはシステム オブジェクトのデプロイ (Azure DevOps Pipelines デプロイ)

  1. [Workload zones] (ワークロード ゾーン) または [Systems] (システム) タブに移動します。
  2. デプロイするワークロード ゾーンまたはシステムの横にある [Deploy] (デプロイ) をクリックします。
    • ファイルをデプロイする場合は、まずファイルをワークロード ゾーンまたはシステム オブジェクトに変換します。
  3. 必要なパラメーターを指定し、正しいオブジェクトであることを確認します。
  4. [deploy] (デプロイ) をクリックします。
  5. Web アプリは、オブジェクトから '.tfvars' ファイルを自動的に生成し、Azure DevOps リポジトリを更新して、ワークロード ゾーンまたはシステム (インフラストラクチャ) パイプラインを開始します。 Azure DevOps ポータルでデプロイを監視できます。