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

Options de déploiement

Il existe deux options de déploiement pour l’interface utilisateur de l’administrateur OSDU :

  1. 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.

  2. 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

  1. Sélectionnez le bouton Deploy to Azure pour déployer l’interface utilisateur de l’administrateur OSDU à l’aide d’Azure Container Apps.

    Déployer dans Azure

  2. Renseignez les paramètres requis dans le portail Azure. Pour plus d’informations sur les paramètres, consultez la section paramètres.

    Capture d’écran montrant le formulaire de déploiement du portail Azure.

  3. Sélectionnez Réviser + créer puis Créer pour déployer l’interface utilisateur de l’administrateur OSDU.

  4. Vérifiez la section Outputs pour connaître l’URL de l’interface utilisateur de l’administrateur OSDU déployée.

  5. Configurez la stratégie ADME CORS et l’URI de redirection de l’application d’inscription SPA avec l’URL du site Web.

  6. 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

  1. 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.

  2. 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.

    Ouvrir dans un dépôt distant - Conteneurs

  3. Acceptez l’invite de clonage.

    Capture d’écran montrant le clonage du dépôt.

  4. Lorsque vous êtes invité à entrer un modèle de configuration de conteneur.

    1. sélectionnez Ubuntu.
    2. Acceptez la version par défaut.
    3. N’ajoutez aucune fonctionnalité supplémentaire.
  5. Après quelques minutes, le conteneur de développement s’exécute.

    Capture d’écran montrant l’exécution de devcontainer.

  6. Ouvrez le terminal.

    Capture d’écran montrant l’ouverture du terminal.

  7. 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
    

    Capture d’écran montrant l’installation.

  8. Connectez-vous à Azure CLI en exécutant la commande sur le terminal. Vous accédez à l’écran de connexion.

    az login
    
  9. 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.

    Capture d’écran montrant une connexion réussie.

  10. Validez que vous utilisez l’abonnement approprié.

    az account show
    
  11. Si nécessaire, utilisez ce code pour changer d’abonnement.

    az account set --subscription <subscription-id>
    

Configuration des variables d’environnement

  1. 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

  1. 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
    
  2. 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
    
  3. 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
    
  4. 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

  1. Accédez au dossier OSDUApp.

    cd OSDUApp/
    
  2. Copiez le fichier Azure routing.ts.

    cp providers/azure/routing.ts src/app/routing.ts
    
  3. Installez les dépendances.

    npm install
    
  4. 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.

  1. Créez l’interface utilisateur web.

    ng build
    
  2. Chargez la build dans le compte de stockage.

    az storage blob upload-batch \
        --account-name $WEBSITE_NAME \
        --source ./dist/OSDUApp \
        --destination '$web' \
        --overwrite
    
  3. Récupérez l’URL du site web.

    echo $REDIRECT_URI
    
  4. Configurez la stratégie ADME CORS et l’URI de redirection de l’application d’inscription SPA avec l’URL du site Web.

  5. 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.