Déployer OSDU Admin UI sur Azure Data Manager for Energy
Ce guide vous montre comment déployer l’outil OSDU Admin UI sur votre instance Azure Data Manager for Energy (ADME).
L’outil OSDU Admin UI permet aux administrateurs de plateforme de gérer la partition de données Azure Data Manager for Energy à laquelle vous le connectez. Les tâches de gestion comprennent les droits d’utilisation (gestion des utilisateurs et des groupes), les étiquettes légales, les schémas, les données de référence, ainsi que l’affichage et la visualisation d’objets sur une carte.
Prérequis
Un enregistrement de l’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 d’application pour qu’Admin UI fonctionne correctement.Lors de la première connexion à l’interface utilisateur de l’administrateur, les autorisations nécessaires vous sont demandées. Vous pouvez également octroyer les autorisations requises à l’avance. Consultez Documentation sur l’autorisation de l’API Inscription d’application.
Options de déploiement
Il existe deux options de déploiement pour l’interface utilisateur de l’administrateur OSDU :
Déploiement rapide à l’aide d’Azure Container Apps : déploiement en un clic à l’aide d’Azure Container Apps. Ce déploiement est le moyen le plus simple et le plus rapide de déployer l’interface utilisateur d’administration OSDU. Il prend en charge les déploiements publics et privés.
Déploiement personnalisé à l’aide du site Web statique du compte de stockage Azure : générez et déployez l’interface utilisateur de l’administrateur OSDU à l’aide du compte de stockage Azure. Cette option de déploiement est plus personnalisable et vous permet de configurer le déploiement en fonction de vos besoins.
Déploiement rapide avec Azure Container Apps
Sélectionnez le bouton
Deploy to Azure
pour 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
Outputs
pour 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 de l’application d’inscription SPA 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 dans lequel déployer l’interface utilisateur de l’administrateur OSDU. | Oui |
Resource group | 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 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. | Oui |
ID de partition des données | ID de partition des données de l’instance Azure Data Manager for Energy ou OSDU à laquelle se connecter. | Oui |
Droits d’utilisation 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 : point de terminaison de l’API du connecteur d’interface utilisateur de l’administrateur OSDU à utiliser pour l’interface utilisateur de l’administrateur. | 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. Il est possible de déployer l’outil OSDU Admin UI à partir de votre ordinateur local à l’aide de Linux ou du Sous-système Windows pour Linux (WSL), et nous vous recommandons d’utiliser un conteneur de développement pour éliminer les conflits potentiels entre les versions des outils, des environnements, etc.
Configuration de l’environnement
Utilisez le conteneur de développement dans Visual Studio Code pour déployer OSDU Admin UI afin d’éliminer les conflits sur votre ordinateur local.
Sélectionnez
Remote - Containers | Open
pour 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é à entrer 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 14.17.3 && \ export NG_CLI_ANALYTICS=false && \ npm install -g @angular/cli@13.3.9 && \ apt-get install jq -y && \ curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
Connectez-vous à Azure CLI en exécutant la commande sur le terminal. Vous accédez à l’écran de connexion.
az login
Vous accédez à l’écran de connexion. Entrez vos informations d’identification et, si l’opération réussit, vous voyez un message de réussite.
Validez que vous utilisez l’abonnement approprié.
az account show
Si nécessaire, utilisez ce code pour changer d’abonnement.
az account set --subscription <subscription-id>
Configuration des variables d’environnement
Entrez les variables d’environnement nécessaires sur le terminal.
export WEBSITE_NAME="" ## Unique name of the static web app or storage account that will be generated. Storage account name must be between 3 and 24 characters in length and use numbers and lower-case letters only. export RESOURCE_GROUP="" ## Name of resource group export LOCATION="" ## Azure region to deploy to, i.e. "westeurope"
Déployer un compte de stockage
Créez un groupe de ressources. Ignorez cette étape si le groupe de ressources existe déjà.
az group create \ --name $RESOURCE_GROUP \ --location $LOCATION
Créez un 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 true
Configurez le site web statique.
az storage blob service-properties update \ --account-name $WEBSITE_NAME \ --static-website \ --404-document index.html \ --index-document index.html
Définissez des autorisations de conteneur $web pour autoriser l’accès anonyme.
az storage container set-permission \ --name '$web' \ --account-name $WEBSITE_NAME \ --public-access blob
Générer et déployer l’application web
Accédez au dossier
OSDUApp
.cd OSDUApp/
Copiez le fichier Azure routing.ts.
cp providers/azure/routing.ts src/app/routing.ts
Installez les dépendances.
npm install
Modifiez les paramètres dans le fichier de configuration situé dans
/src/config/config.json
.
Remplacez les valeurs des variables d’environnement par vos valeurs.
export OSDU_ENDPOINT="" # Endpoint of the Azure Data Manager for Energy or OSDU instance to connect to
export DATA_PARTITION_ID="" # ADME Data Partition ID (i.e. opendes)
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, i.e. "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
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 appinnsights "$APPINSIGHTS_INSTRUMENTATIONKEY" \
--arg connectorapi "$OSDU_CONNECTOR_API_ENDPOINT" \
'.settings.appInsights.instrumentationKey = $appinnsights |
.settings.data_partition = $data |
.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.secrets_endpoint = $endpoint |
.settings.api_endpoints.wddms_endpoint = $endpoint' \
src/config/config.json > src/config/temp.json
mv src/config/temp.json src/config/config.json
Remarque
L’API OSDU Connector est créée comme interface entre les consommateurs et les API OSDU enveloppant certains appels et objets de chaîne d’API. Actuellement, elle gère toutes les opérations et actions sur les objets de projet et de scénario.
Créez l’interface utilisateur web.
ng build
Chargez la build dans le compte de stockage.
az storage blob upload-batch \ --account-name $WEBSITE_NAME \ --source ./dist/OSDUApp \ --destination '$web' \ --overwrite
Récupérez l’URL du site web.
echo $REDIRECT_URI
Configurez la stratégie ADME CORS et l’URI de redirection de l’application d’inscription SPA avec l’URL du site Web.
Ouvrez l’URL du site web dans le navigateur et vérifiez qu’elle fonctionne correctement et qu’elle est connectée à l’instance Azure Data Manager for Energy appropriée.
Ajoutez une stratégie CORS
Pour que l’interface utilisateur d’administrateur fonctionne bien, vous devez ajouter l’URI de redirection à la stratégie CORS sur l’instance Azure Data Manager for Energy. Pour savoir comment ajouter une stratégie CORS à votre instance Azure Data Manager for Energy, consultez la documentation de la stratégie CORS.
Ajoutez l’URI de redirection à l’inscription d’application
Vous devez ajouter l’URI de redirection en tant qu’application monopage à l’inscription d’application utilisée par l’interface utilisateur de l’administrateur. Pour configurer l’URI de redirection, suivez les étapes de la documentation Ajouter un URI de redirection à l’inscription d’application.
Étapes suivantes
Une fois qu’Admin UI fonctionne correctement, vous pouvez :
Vous pouvez également ingérer les données dans votre instance Azure Data Manager pour Energy :
Références
Pour plus d’informations sur OSDU Admin UI, consultez OSDU GitLab.
Pour obtenir d’autres méthodes de déploiement (Terraform ou pipeline CI/CD Azure DevOps), consultez OSDU Admin UI DevOps.