Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

This page contains a guide to install Lakehouse Monitor Optimizer using cloud resources that were created previously by the administrator.

Step 1) Required Resources

Lakehouse Monitor Optimizer requires the following resources to already be created:

Step 2) Configuration Prerequisites

  • Azure KeyVault needs to be preconfigured with the following secrets:

    • msft-provider-auth-secret - This is the Service Principal client secret

    • mssql-password - The SQL database password

    • storage-account-key - The access key used for the Azure storage account.
      Note: this is optional, needed only if you don’t want to access the storage account using the Service Principal.

    • application-encryption-secret - used for app encryption. This value is essentially a random string password, so generate accordingly.

More information about how these entries can be created can be found here:

Step 3) Installation procedure

  1. SSH into the BPLM VM configured at Step 1) Required Resources.

    1. download the install archive by running the following command:

RHEL:

Code Block
languagebash
wget https://bplmdemoappstg.blob.core.windows.net/deployment/vm-azure/lho_rhel.zip

Ubuntu:

Code Block
languagebash
wget https://bplmdemoappstg.blob.core.windows.net/deployment/vm-azure/bplm-install.zip

  1. Extract the archive contents
    unzip archive<archivename>.zip -d <destination folder>

  2. In the destination directory you should see the following files:

    Code Block
    .env
    docker-compose.yml
    setup.sh
    start.sh
    // when is docker installed ? // where do we set the Docker pass ?
    1. setup.sh will install Docker and other automation tools (e.g. OpenSSL)

  3. Before you start the setup you need to fill the .env file with the needed information (url of the app, keyvault Key Vault url, etc). Open the file in your editor of choice and fill in the values.

    1. Please find a brief explanation of the .env values below

    2. Code Block
      APPSERVICE_URL=##public DNS of LHO #defaultapplication iseg: https://<vm<VM DNS NAME> dns>
      AZURE_KEYVAULT_TENANTID=##  # Azure ActiveEntra DirectoryID tenantTenant ID
      AZURE_KEYVAULT_URI=###  # can be found in keyvault properties page in azure portal
      AZURE_MANAGED_IDENTITY_ID= ### VM system assigned identity objcetobject ID
      AZURE_MANAGED_IDENTITY_APP_ID= # app id of VM system assigned identity.  Can be found under the vm name in Enterprise application directory)
      SERVICE_PRINCIPAL_CLIENTID= # Service principal tied to app registration client (also called app) id
      SERVICE_PRINCIPAL_OBJECTID= # Service principal tied to app registration object ID
      SERVICE_PRINCIPAL_TENANTID=## Azure Entra ID Tenant ID
      SQL_DATABASE=lakehouse # Azure Active Directory tenant ID or some other database created specifically for LHO
      SQL_SERVER_HOST= # canSQL beserver found'server inname' sqlproperty server propertieseg: lhosqlexample.database.windows.net
      SQL_USER=# #SQL username of sql server
      STORAGE_AZURE_ACCOUNT= # storage account namehosting container for lakehouse optimizer
      STORAGE_AZURE_CONTAINER= # container name created for lakehouse
  4. Run the setup.sh.

    Code Block
    languages
    bash setup.sh

    Note: when prompted if you want to use the Service Principal to access the storage account please keep in mind that if you choose Yes, the keyvault should not contain the storage-account-key secret and if you choose No you will have to have that secret in the keyvault.

    If the setup
    chmod +x setup.sh start.sh
    ./setup.sh --cert_domain "<App DNS Name>" --email_certbot "ITAdmin@company.com"
    • cert_domain is Fully Qualified Domain Name of the application. Used to generate self-signed certificate

    • email_certbot email address notified when cert is pending expiration.

    • e.g. ./setup.sh -d=my-lhm-deployment.com -v=2.5.0

  5. If setup.sh executed successfully you can run the start.sh script to pull down the app container and start the system.

    Code Blockbash start.sh

    application.

    1. Lakehouse Optimizer leverages a containerized application. This container is hosted in Blueprint’s Azure Container Registry (ACR). If you have not been provided an ACR token, please reach out to Blueprint support

      Code Block
      ./start.sh --acr_username <provided token name>
  • where acr_username is the ACR token name provided by Blueprint

    • start.sh will prompt you for the token password

  • e.g./start.sh -u=lho-acr-ex