Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Ce guide vous montre comment déployer l’outil OSDU Admin UI sur votre instance Azure Data Manager for Energy (ADME).
L’interface utilisateur de l’administrateur OSDU permet aux administrateurs de plateforme de gérer la partition de données Data Manager for Energy Azure à laquelle il se connecte. Les tâches de gestion incluent les droits d’utilisation (gestion des utilisateurs et des groupes), les étiquettes légales, les schémas, les données de référence et l’affichage et la visualisation d’objets sur une carte.
Prérequis
Une instance d'« Azure Data Manager for Energy ».
Une Inscription d’application Microsoft Entra ID.
Cette inscription d’application peut être identique à celle utilisée pour l’instance Azure Data Manager for Energy. Les autorisations d’API suivantes sont requises sur l’inscription de l’application pour que l’interface utilisateur d’administration fonctionne correctement.Lors de la première connexion à l’interface utilisateur d’administration, l’application demande les autorisations nécessaires. Vous pouvez également octroyer les autorisations requises à l’avance. Pour plus d’informations, consultez Configurer l’accès aux applications aux API web.
Options de déploiement
Il existe deux options de déploiement pour l’interface utilisateur de l’administrateur OSDU :
- Déploiement rapide à l’aide de Azure Container Apps : déploiement en un clic à l’aide de Azure Container Apps. Cette option est le moyen le plus rapide de déployer l’interface utilisateur de l’administrateur OSDU et prend en charge les déploiements publics et privés.
- Déploiement personnalisé à l’aide du site web statique d’un compte stockage Azure : générez et déployez l’interface utilisateur d’administration OSDU à l’aide du site web statique d’un compte stockage Azure. Cette option est plus personnalisable et vous permet d’adapter le déploiement à vos besoins.
Déploiement rapide avec Azure Container Apps
Sélectionnez le bouton
Deploy to Azurepour déployer l’interface utilisateur de l’administrateur OSDU à l’aide d’Azure Container Apps.Renseignez les paramètres requis dans le portail Azure. Pour plus d’informations sur les paramètres, consultez la section paramètres.
Sélectionnez Réviser + créer puis Créer pour déployer l’interface utilisateur de l’administrateur OSDU.
Vérifiez la section
Outputspour connaître l’URL de l’interface utilisateur de l’administrateur OSDU déployée.Configurez la stratégie ADME CORS et l’URI de redirection SPA de l’inscription d’application avec l’URL du site Web.
Ouvrez l’URL dans un navigateur et vérifiez qu’elle fonctionne correctement et qu’elle est connectée à l’instance Azure Data Manager for Energy appropriée.
Paramètres
| Paramètre | Description | Obligatoire |
|---|---|---|
| Abonnement | Abonnement Azure pour le déploiement de l'interface utilisateur Admin OSDU. | Oui |
| groupe de ressources | Groupe de ressources dans lequel déployer l’interface utilisateur de l’administrateur OSDU. | Oui |
| Région | Région Azure dans laquelle déployer l’interface utilisateur de l’administrateur OSDU. | Oui |
| Nom | Nom de l’instance de l’interface utilisateur de l’administrateur OSDU. D’autres ressources utilisent ce nom comme nom de base et ajoutent une abréviation de service. | Oui |
| Image de conteneur | Image conteneur à utiliser pour l’interface utilisateur de l’administrateur OSDU. Consultez Registre des conteneurs de l’interface utilisateur de l’administrateur du forum OSDU pour obtenir les images disponibles. | Oui |
| Point de terminaison OSDU | Point de terminaison de l’instance Azure Data Manager for Energy ou OSDU à laquelle se connecter. Utilisez le point de terminaison ADME de base. Le déploiement le normalise pour le runtime de conteneur. | Oui |
| Identifiants de partition de données | Liste séparée par des virgules des ID de partition de données de l’instance Azure Data Manager for Energy ou OSDU à laquelle se connecter. | Oui |
| Droits du nom de domaine | Nom de domaine à utiliser pour le service de droits d’utilisation. Conservez .dataservices.energy pour tout déploiement ADME, mettez-le à jour uniquement si vous utilisez une autre implémentation OSDU. |
Oui |
| ID client | ID client de l’inscription d’application à utiliser pour l’interface utilisateur de l’administrateur OSDU. | Oui |
| Étendue | Étendue de l’inscription d’application utilisée par Azure Data Manager for Energy ou OSDU. Si l’ID client est l’inscription d’application ADME, vous pouvez conserver cette valeur par défaut. | Oui |
| Point de terminaison du connecteur | Facultatif : - Utiliser le point de terminaison de l'API du connecteur OSDU Admin UI pour l'interface utilisateur d'administration. | Non |
| Point de terminaison GCZ |
Optionnel : Point de terminaison GCZ de base se terminant par /gcz/. Exemple : https://contoso.energy.azure.com/api/gcz/. GCZ doit déjà être déployé séparément. |
Non |
| Activer un réseau privé | Facultatif : activez l’accès au réseau privé pour l’interface utilisateur de l’administrateur OSDU. | Non |
| Activer la journalisation | Facultatif : activez la journalisation pour l’interface utilisateur de l’administrateur OSDU. | Non |
Déploiement personnalisé à l’aide du site Web statique du compte de stockage Azure
Préparer votre ordinateur
- Installez Visual Studio Code avec des conteneurs de développement. Vous pouvez déployer l’interface utilisateur de l’administrateur OSDU à partir de votre ordinateur local à l’aide de Linux ou de Sous-système Windows pour Linux (WSL). Nous vous recommandons d’utiliser un conteneur de développement pour réduire les outils et les conflits d’environnement.
Configuration de l’environnement
Utilisez un conteneur de développement dans Visual Studio Code pour réduire les conflits avec les outils installés localement.
Sélectionnez
Remote - Containers | Openpour ouvrir un conteneur de développement et cloner le dépôt de l’interface utilisateur de l’administrateur OSDU.Acceptez l’invite de clonage.
Lorsque vous êtes invité à fournir un modèle de configuration de conteneur :
- sélectionnez Ubuntu.
- Acceptez la version par défaut.
- N’ajoutez aucune fonctionnalité supplémentaire.
Après quelques minutes, le conteneur de développement s’exécute.
Ouvrez le terminal.
Installez Angular CLI, Azure CLI, npm et Node Version Manager (NVM).
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash && \ export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" && \ [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" && \ nvm install 20.19.6 && \ export NG_CLI_ANALYTICS=false && \ npm install -g @angular/cli@13.3.9 && \ sudo apt-get update && \ sudo apt-get install -y jq && \ curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bashConnectez-vous à Azure CLI en exécutant la commande dans le terminal.
az loginEntrez vos informations d’identification et vérifiez que la connexion réussit.
Validez que vous utilisez l’abonnement approprié.
az account showSi nécessaire, modifiez l’abonnement.
az account set --subscription <subscription-id>
Configuration des variables d’environnement
Entrez les variables d’environnement requises dans le terminal.
export WEBSITE_NAME="" ## Unique name of the static website storage account. The storage account name must be between 3 and 24 characters in length and contain only numbers and lower-case letters. export RESOURCE_GROUP="" ## Name of the resource group export LOCATION="" ## Azure region to deploy to, for example "westeurope"
Déployer un compte de stockage
Créez le groupe de ressources. Ignorez cette étape si le groupe de ressources existe déjà.
az group create \ --name $RESOURCE_GROUP \ --location $LOCATIONCréez le compte de stockage.
az storage account create \ --resource-group $RESOURCE_GROUP \ --location $LOCATION \ --name $WEBSITE_NAME \ --sku Standard_LRS \ --public-network-access Enabled \ --allow-blob-public-access trueConfigurez le site web statique.
az storage blob service-properties update \ --account-name $WEBSITE_NAME \ --static-website \ --404-document index.html \ --index-document index.htmlDéfinissez
$webles autorisations de conteneur pour autoriser l’accès anonyme.az storage container set-permission \ --name '$web' \ --account-name $WEBSITE_NAME \ --public-access blob
Configurer le site web
Accédez au dossier
OSDUApp.cd OSDUApp/Copiez le fichier Azure
routing.ts.cp providers/azure/routing.ts src/app/routing.tsInstallez les dépendances.
npm installModifiez les paramètres dans le fichier de configuration situé dans
/src/config/config.json.
Remplacez les valeurs de variable d’environnement par des valeurs pour votre déploiement.
export OSDU_ENDPOINT="" # Endpoint of the Azure Data Manager for Energy or OSDU instance to connect to, ending with /api/ . Example: https://contoso.energy.azure.com/api/
export DATA_PARTITION_ID="" # ADME Data Partition ID, or comma-separated list if using multiple partitions
export DOMAIN_NAME=".dataservices.energy" # Domain name to use for the entitlements service. Use .dataservices.energy for any ADME deployment.
export TENANT_ID="" # Entra ID tenant ID
export CLIENT_ID="" # App Registration ID to use for the Admin UI, usually the same as the ADME App Registration ID
export SCOPE="" # Scope of the ADME instance, for example "6ee7e0d6-0641-4b29-a283-541c5d00655a/.default"
export GRAPH_ENDPOINT="https://graph.microsoft.com/v1.0/" # Microsoft Graph API endpoint
export APPINSIGHTS_INSTRUMENTATIONKEY="" # Optional. Application Insights instrumentation key
export OSDU_CONNECTOR_API_ENDPOINT="" # Optional. API endpoint of the OSDU Connector API
export REDIRECT_URI="" # This is your static website URL, for example https://<storage-account-name>.z21.web.core.windows.net/
export GCZ_ENDPOINT="" # Optional. Base GCZ service endpoint ending with /gcz/ . Example: https://contoso.energy.azure.com/api/gcz/
jq \
--arg data "$DATA_PARTITION_ID" \
--arg domain "$DOMAIN_NAME" \
--arg tenant "$TENANT_ID" \
--arg client "$CLIENT_ID" \
--arg redirect "$REDIRECT_URI" \
--arg scope "$SCOPE" \
--arg endpoint "$OSDU_ENDPOINT" \
--arg graph "$GRAPH_ENDPOINT" \
--arg appinsights "$APPINSIGHTS_INSTRUMENTATIONKEY" \
--arg connectorapi "$OSDU_CONNECTOR_API_ENDPOINT" \
--arg gcz "$GCZ_ENDPOINT" \
'
.settings.appInsights.instrumentationKey = $appinsights |
.settings.data_partition = ($data | split(",")) |
.settings.domain_name = $domain |
.settings.idp.tenant_id = $tenant |
.settings.idp.client_id = $client |
.settings.idp.redirect_uri = $redirect |
.settings.idp.scope = $scope |
.settings.api_endpoints.entitlement_endpoint = $endpoint |
.settings.api_endpoints.storage_endpoint = $endpoint |
.settings.api_endpoints.search_endpoint = $endpoint |
.settings.api_endpoints.legal_endpoint = $endpoint |
.settings.api_endpoints.schema_endpoint = $endpoint |
.settings.api_endpoints.file_endpoint = $endpoint |
.settings.api_endpoints.secrets_endpoint = $connectorapi |
.settings.api_endpoints.graphAPI_endpoint = $graph |
.settings.api_endpoints.workflow_endpoint = $endpoint |
.settings.api_endpoints.wddms_endpoint = $endpoint |
.settings.api_endpoints.gcz_endpoint = $gcz
' \
src/config/config.json > src/config/temp.json && \
mv src/config/temp.json src/config/config.json