Implantar a interface do usuário de administração OSDU sobre o Azure Data Manager for Energy
Este guia mostra como implantar a interface do usuário de administração OSDU sobre sua instância do Azure Data Manager for Energy (ADME).
A interface do usuário de administração do OSDU permite que os administradores de plataforma gerenciem a partição de dados do Azure Data Manager for Energy à qual você a conecta. As tarefas de gerenciamento incluem direitos (gerenciamento de usuários e grupos), tags legais, esquemas, dados de referência, visualização e visualização de objetos em um mapa.
Pré-requisitos
Instale o Visual Studio Code com contêineres de desenvolvimento. É possível implantar a interface do usuário de administração do OSDU a partir do seu computador local usando Linux ou Windows Subsystem for Linux (WSL), recomendamos o uso de um Dev Container para eliminar possíveis conflitos de versões de ferramentas, ambientes, etc.
Uma instância do Azure Data Manager for Energy.
Um Registo da Aplicação Microsoft Entra ID.
Este Registo de Aplicação pode ser o mesmo que o utilizado para o Azure Data Manager for Energy por exemplo.Importante
As seguintes permissões de API são necessárias no Registro do aplicativo para que a interface do usuário do administrador funcione corretamente.
Após o primeiro login na interface do usuário do administrador, ele solicitará as permissões necessárias. Você também pode conceder as permissões necessárias com antecedência, consulte a documentação de permissão da API de registro de aplicativo.
Configuração do ambiente
Use o contêiner de desenvolvimento no Visual Studio Code para implantar a interface do usuário de administração OSDU para eliminar conflitos de sua máquina local.
Selecione
Remote - Containers | Open
para abrir um contêiner de desenvolvimento e clonar o repositório OSDU Admin UI.Aceite o prompt de clonagem.
Quando solicitado para um modelo de configuração de contêiner.
- Selecione Ubuntu.
- Aceite a versão padrão.
- Não adicione recursos extras.
Após alguns minutos, o devcontainer está em execução.
Abra o terminal.
Instale a CLI Angular, a CLI do Azure, o npm e o Gerenciador de Versão do Nó (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 && \ curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
Faça logon na CLI do Azure executando o comando no terminal. Leva-o ao ecrã de início de sessão.
az login
Leva-o ao ecrã de início de sessão. Insira suas credenciais e, após o sucesso, você verá uma mensagem de sucesso.
Valide se está a utilizar a subscrição correta.
az account show
Se necessário, use este código para alterar a assinatura.
az account set --subscription <subscription-id>
Configurar variáveis de ambiente
- Insira as variáveis de ambiente necessárias no terminal.
export ADMINUI_CLIENT_ID="" ## App Registration to be used by OSDU Admin UI, usually the client ID used to provision ADME 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"
Implantar conta de armazenamento
Criar grupo de recursos. Ignore esta etapa se o grupo de recursos já existir.
az group create \ --name $RESOURCE_GROUP \ --location $LOCATION
Crie uma conta de armazenamento.
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
Configure o site estático.
az storage blob service-properties update \ --account-name $WEBSITE_NAME \ --static-website \ --404-document index.html \ --index-document index.html
Defina $web permissões de contêiner para permitir acesso anônimo.
az storage container set-permission \ --name '$web' \ --account-name $WEBSITE_NAME \ --public-access blob
Adicione o URI de redirecionamento ao Registro do aplicativo.
export REDIRECT_URI=$(az storage account show --resource-group $RESOURCE_GROUP --name $WEBSITE_NAME --query "primaryEndpoints.web") && \ echo "Redirect URL: $REDIRECT_URI" && \ echo "Add the redirect URI above to the following App Registration's Single-page Application (SPA) section: https://ms.portal.azure.com/#view/Microsoft_AAD_RegisteredApps/ApplicationMenuBlade/~/Authentication/appId/$ADMINUI_CLIENT_ID/isMSAApp~/false"
Criar e implementar a aplicação Web
Navegue para a pasta
OSDUApp
.cd OSDUApp/
Instale as dependências.
npm install
Modifique os parâmetros no arquivo de configuração localizado em
/src/config/config.json
.{ "mapboxKey": "key", // This is optional for the access token from Mapbox.com and used to visualize data on the map feature. ... "data_partition": "<adme_data_partition>", // ADME Data Partition ID (i.e. opendes) "idp": { ... "tenant_id": "<tenant_id>", // Entra ID tenant ID "client_id": "<client_id>", // App Registration ID to use for the admin UI, usually the same as the ADME App Registration ID, i.e. "6ee7e0d6-0641-4b29-a283-541c5d00655a" "redirect_uri": "<redirect_uri>", // This is the website URL ($REDIRECT_URI), i.e. "https://contoso.z1.web.core.windows.net" "scope": "<client_id>/.default" // Scope of the ADME instance, i.e. "6ee7e0d6-0641-4b29-a283-541c5d00655a/.default" }, "api_endpoints": { // Just replace contoso.energy.azure.com with your ADME_URL after removing https or wwww in all the API endpoints below. "entitlement_endpoint": "https://contoso.energy.azure.com/api/", "storage_endpoint": "https://contoso.energy.azure.com/api/", "search_endpoint": "https://contoso.energy.azure.com/api/", "legal_endpoint": "https://contoso.energy.azure.com/api/", "schema_endpoint": "https://contoso.energy.azure.com/api/", "osdu_connector_api_endpoint":"osdu_connector", // Optional. API endpoint of the OSDU Connector API* "file_endpoint": "https://contoso.energy.azure.com/api/", "graphAPI_endpoint": "https://graph.microsoft.com/v1.0/", "workflow_endpoint": "https://contoso.energy.azure.com/api/" } ... }
Nota
OSDU Connector API é construída como uma interface entre consumidores e APIs OSDU envolvendo algumas chamadas e objetos de cadeia de API. Atualmente, ele gerencia todas as operações e ações em objetos de projeto e cenário.
Crie a interface do usuário da Web.
ng build
Carregue a compilação para a Conta de Armazenamento.
az storage blob upload-batch \ --account-name $WEBSITE_NAME \ --source ./dist/OSDUApp \ --destination '$web' \ --overwrite
Buscar o URL do site.
echo $REDIRECT_URI
Abra a URL do site no navegador e valide se ela está funcionando corretamente e conectada à instância correta do Azure Data Manager for Energy.
Próximos passos
Depois de ter uma interface do usuário de administração bem-sucedida funcionando, você pode:
Você também pode ingerir dados em sua instância do Azure Data Manager for Energy:
- Tutorial sobre a ingestão do analisador CSV.
- Tutorial sobre ingestão de manifesto.
Referências
Para obter informações sobre a interface do usuário de administração do OSDU, consulte OSDU GitLab.
Para outros métodos de implantação (Terraform ou pipeline de CI/CD do Azure DevOps), consulte OSDU Admin UI DevOps.