Delen via


OSDU Admin UI implementeren boven op Azure Data Manager for Energy

In deze handleiding ziet u hoe u de GEBRUIKERSinterface van OSDU-beheerders implementeert boven op uw Exemplaar van Azure Data Manager for Energy (ADME).

Met de GEBRUIKERSinterface van OSDU Admin kunnen platformbeheerders de Azure Data Manager for Energy-gegevenspartitie waarmee u verbinding maakt, beheren. De beheertaken omvatten rechten (gebruikers- en groepsbeheer), juridische tags, schema's, referentiegegevens, weergave en visualiseer objecten op een kaart.

Vereisten

Implementatieopties

Er zijn twee implementatieopties voor de gebruikersinterface van osdu-beheerders:

  1. Snel implementeren met behulp van Azure Container Apps: Een klik implementeren met behulp van Azure Container Apps. Deze implementatie is de eenvoudigste en snelste manier om de gebruikersinterface van osDU-beheerders te implementeren. Het ondersteunt zowel openbare als privé-implementaties.

  2. Aangepaste implementatie met behulp van statische website van Azure Storage-account: bouw en implementeer de gebruikersinterface van osDU-beheerders met behulp van een Azure Storage-account. Deze implementatieoptie kan beter worden aangepast en stelt u in staat om de implementatie naar uw behoeften te configureren.

Snel implementeren met Azure Container Apps

  1. Selecteer de Deploy to Azure knop om de gebruikersinterface van osdu-beheerders te implementeren met behulp van Azure Container Apps.

    Implementeren op Azure

  2. Vul de vereiste parameters in azure Portal in. Zie de sectie parameters voor meer informatie over de parameters.

    Schermopname van het implementatieformulier van Azure Portal.

  3. Selecteer Beoordelen en maken en maak vervolgens om de gebruikersinterface van osDU-beheerders te implementeren.

  4. Controleer de Outputs sectie voor de URL van de geïmplementeerde OSDU Admin UI.

  5. Configureer het ADME CORS-beleid en de omleidings-URI voor app-registratie-SPA met de website-URL.

  6. Open de URL in een browser en controleer of deze correct werkt en is verbonden met het juiste Exemplaar van Azure Data Manager for Energy.

Parameters

Parameter Omschrijving Vereist
Abonnement Het Azure-abonnement voor het implementeren van de gebruikersinterface van osdu-beheerders. Ja
Resourcegroep De resourcegroep voor het implementeren van de gebruikersinterface van osdu-beheerders. Ja
Regio De Azure-regio voor het implementeren van de gebruikersinterface van osdu-beheerders. Ja
Naam De naam van het exemplaar van de OSDU Admin-gebruikersinterface. Andere resources gebruiken deze naam als de basisnaam en voegen een servicekorting toe Ja
Containerinstallatiekopie De containerinstallatiekopieën die moeten worden gebruikt voor de gebruikersinterface van osdu-beheerders. Zie de gebruikersinterface van het OSDU-forum voor beheerdersinterface voor beschikbare installatiekopieën. Ja
Osdu-eindpunt Het eindpunt van het Azure Data Manager for Energy- of OSDU-exemplaar waarmee verbinding moet worden gemaakt. Ja
Gegevenspartitie-id De gegevenspartitie-id van het Azure Data Manager for Energy- of OSDU-exemplaar waarmee verbinding moet worden gemaakt. Ja
Domeinnaam van rechten De domeinnaam die moet worden gebruikt voor de rechtenservice. Houd .dataservices.energy deze optie bij voor elke ADME-implementatie, alleen bijwerken als u een andere OSDU-implementatie gebruikt. Ja
Client ID De client-id van de app-registratie die moet worden gebruikt voor de gebruikersinterface van de OSDU-beheerder. Ja
Bereik Het bereik van de app-registratie die wordt gebruikt door Azure Data Manager for Energy of OSDU. Als de client-id de REGISTRATIE van de ADME-app is, kunt u deze standaardwaarde behouden. Ja
Eindpunt van connector Optioneel: het API-eindpunt van de OSDU Admin UI Connector dat moet worden gebruikt voor de gebruikersinterface van de beheerder. Nee
Privénetwerk inschakelen Optioneel: schakel toegang tot het privénetwerk in voor de gebruikersinterface van osdu-beheerders. Nee
Logboekfunctie inschakelen Optioneel: schakel logboekregistratie in voor de gebruikersinterface van osdu-beheerders. Nee

Aangepaste implementatie met statische website van Azure Storage-account

Uw computer voorbereiden

  • Installeer Visual Studio Code met Dev Containers. Het is mogelijk om de GEBRUIKERSinterface van osdu-beheerders te implementeren vanaf uw lokale computer met Behulp van Linux of Windows-subsysteem voor Linux (WSL), raden we u aan een Dev-container te gebruiken om mogelijke conflicten tussen hulpprogrammaversies, omgevingen, enzovoort te elimineren.

Omgeving instellen

  1. Gebruik de Dev-container in Visual Studio Code om de GEBRUIKERSinterface van OSDU Admin te implementeren om conflicten van uw lokale computer te elimineren.

  2. Selecteer Remote - Containers | Open deze optie om een ontwikkelingscontainer te openen en de opslagplaats van de OSDU-beheerdersinterface te klonen.

    Openen in Extern - Containers

  3. Accepteer de kloonprompt.

    Schermopname van het klonen van de opslagplaats.

  4. Wanneer u wordt gevraagd om een containerconfiguratiesjabloon.

    1. Selecteer Ubuntu.
    2. Accepteer de standaardversie.
    3. Voeg geen extra functies toe.
  5. Na enkele minuten wordt de devcontainer uitgevoerd.

    Schermopname van het uitvoeren van devcontainer.

  6. Open de terminal.

    Schermopname van het openen van terminal.

  7. Installeer Angular CLI, Azure CLI, npm en 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
    

    Schermopname van de installatie.

  8. Meld u aan bij Azure CLI door de opdracht uit te voeren op de terminal. U gaat naar het aanmeldingsscherm.

    az login
    
  9. U gaat naar het aanmeldingsscherm. Voer uw referenties in en na succes ziet u een bericht over een geslaagde bewerking.

    Schermopname van geslaagde aanmelding.

  10. Controleer of u het juiste abonnement gebruikt.

    az account show
    
  11. Gebruik indien nodig deze code om het abonnement te wijzigen.

    az account set --subscription <subscription-id>
    

Omgevingsvariabelen configureren

  1. Voer de vereiste omgevingsvariabelen in de terminal in.

    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"
    

Opslagaccount implementeren

  1. Maak een resourcegroep. Sla deze stap over als de resourcegroep al bestaat.

    az group create \
        --name $RESOURCE_GROUP \
        --location $LOCATION
    
  2. Maak een opslagaccount.

    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. Configureer de statische website.

    az storage blob service-properties update \
        --account-name $WEBSITE_NAME \
        --static-website \
        --404-document index.html \
        --index-document index.html
    
  4. Stel $web containermachtigingen in om anonieme toegang toe te staan.

    az storage container set-permission \
        --name '$web' \
        --account-name $WEBSITE_NAME \
        --public-access blob
    

De web-app ontwikkelen en implementeren

  1. Navigeer naar de map OSDUApp.

    cd OSDUApp/
    
  2. Kopieer het Azure routing.ts-bestand.

    cp providers/azure/routing.ts src/app/routing.ts
    
  3. Installeer de afhankelijkheden.

    npm install
    
  4. Wijzig de parameters in het configuratiebestand op /src/config/config.json.

Vervang de waarden van de omgevingsvariabelen door uw waarden.

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

Notitie

OSDU Connector-API is gebouwd als een interface tussen consumenten en OSDU-API's die enkele API-ketenaanroepen en -objecten verpakken. Op dit moment worden alle bewerkingen en acties voor project- en scenarioobjecten beheerd.

  1. Bouw de webgebruikersinterface.

    ng build
    
  2. Upload de build naar het opslagaccount.

    az storage blob upload-batch \
        --account-name $WEBSITE_NAME \
        --source ./dist/OSDUApp \
        --destination '$web' \
        --overwrite
    
  3. Haal de URL van de website op.

    echo $REDIRECT_URI
    
  4. Configureer het ADME CORS-beleid en de omleidings-URI voor app-registratie-SPA met de website-URL.

  5. Open de URL van de website in de browser en controleer of deze correct werkt en is verbonden met het juiste Exemplaar van Azure Data Manager for Energy.

CORS-beleid toevoegen

Als de gebruikersinterface van de beheerder correct werkt, moet u de omleidings-URI toevoegen aan het CORS-beleid in het Exemplaar van Azure Data Manager for Energy. Meer informatie over het toevoegen van een CORS-beleid aan uw Exemplaar van Azure Data Manager for Energy. Raadpleeg de documentatie voor HET CORS-beleid.

Omleidings-URI toevoegen aan app-registratie

U moet de omleidings-URI toevoegen als een app met één pagina aan de app-registratie die wordt gebruikt door de gebruikersinterface van de beheerder. Als u de omleidings-URI wilt configureren, volgt u de stappen in de omleidings-URI toevoegen aan de documentatie voor app-registratie .

Volgende stappen

Nadat u een geslaagde gebruikersinterface voor beheerders hebt uitgevoerd, kunt u het volgende doen:

U kunt ook gegevens opnemen in uw Azure Data Manager for Energy-exemplaar:

Verwijzingen

Zie OSDU GitLab voor informatie over de gebruikersinterface van OSDU-beheerders.
Zie DevOps voor andere implementatiemethoden (Terraform of Azure DevOps CI/CD-pijplijn).