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
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. 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.Ao entrar pela primeira vez na interface do usuário do administrador, ele solicita 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.
Opções de implementação
Há duas opções de implantação para a interface do usuário de administração do OSDU:
Implantação rápida usando Aplicativos de Contêiner do Azure: implantação com um clique usando Aplicativos de Contêiner do Azure. Essa implantação é a maneira mais fácil e rápida de implantar a interface do usuário de administração do OSDU. Ele suporta implantações públicas e privadas.
Implantação personalizada usando o site estático da Conta de Armazenamento do Azure: crie e implante a interface do usuário de administração OSDU usando a Conta de Armazenamento do Azure. Essa opção de implantação é mais personalizável e permite que você configure a implantação de acordo com suas necessidades.
Implantação rápida com Aplicativos de Contêiner do Azure
Selecione o
Deploy to Azure
botão para implantar a interface do usuário de administração OSDU usando os Aplicativos de Contêiner do Azure.Preencha os parâmetros necessários no portal do Azure. Para obter mais informações sobre os parâmetros, consulte a seção de parâmetros para obter mais informações.
Selecione Rever + criar e, em seguida, Criar para implementar a IU de administração OSDU.
Verifique na
Outputs
seção a URL da interface do usuário de administração do OSDU implantada.Configure a política ADME CORS e o URI de redirecionamento do App Registration SPA com a URL do site.
Abra a URL em um navegador e valide se ela está funcionando corretamente e conectada à instância correta do Azure Data Manager for Energy.
Parâmetros
Parâmetro | Descrição | Obrigatório |
---|---|---|
Subscrição | A assinatura do Azure para implantar a interface do usuário de administração do OSDU. | Sim |
Grupo de recursos | O grupo de recursos no qual implantar a interface do usuário de administração do OSDU. | Sim |
País/Região | A região do Azure na qual implantar a interface do usuário de administração do OSDU. | Sim |
Nome | O nome da instância da interface do usuário de administração do OSDU. Outros recursos usam esse nome como o nome base e acrescentam uma abreviação de serviço | Sim |
Imagem de Contentor | A imagem do contêiner a ser usada para a interface do usuário de administração do OSDU. Consulte OSDU Forum Admin UI Container Registry para obter as imagens disponíveis. | Sim |
Ponto final Osdu | O ponto de extremidade da instância do Azure Data Manager for Energy ou OSDU à qual se conectar. | Sim |
ID da partição de dados | A ID da partição de dados da instância do Azure Data Manager for Energy ou OSDU à qual se conectar. | Sim |
Entitlements Nome de Domínio | O nome de domínio a ser usado para o serviço de direitos. Mantenha .dataservices.energy para qualquer implantação do ADME, atualize apenas se estiver usando outra implementação OSDU. |
Sim |
ID de Cliente | A ID do cliente do Registro do aplicativo a ser usado para a interface do usuário de administração do OSDU. | Sim |
Âmbito | O escopo do Registro de Aplicativo usado pelo Azure Data Manager for Energy ou OSDU. Se a ID do Cliente for o Registro do Aplicativo ADME, você poderá deixar esse padrão. | Sim |
Ponto de extremidade do conector | Opcional: O ponto de extremidade da API do OSDU Admin UI Connector a ser usado para a interface do usuário Admin. | Não |
Ativar rede privada | Opcional: Habilite o acesso à rede privada para a interface do usuário de administração do OSDU. | Não |
Ativar registro em log | Opcional: habilite o registro em log para a interface do usuário de administração do OSDU. | Não |
Implantação personalizada usando o site estático da conta de armazenamento do Azure
Prepare o seu computador
- 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.
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 && \ apt-get install jq -y && \ 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 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
Criar e implementar a aplicação Web
Navegue para a pasta
OSDUApp
.cd OSDUApp/
Copie o arquivo routing.ts do Azure.
cp providers/azure/routing.ts src/app/routing.ts
Instale as dependências.
npm install
Modifique os parâmetros no arquivo de configuração localizado em
/src/config/config.json
.
Substitua os valores das variáveis de ambiente pelos seus valores.
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