Deploy from Bash (Linux or Docker)

Lines starting with the # character are just comments. The back slash (\) character on the end of lines is for multi-line commands.

  1. Run Bash shell (WSL or native) where Azure CLI 2.0 is installed, and then log in to the cloud.
  2. Extract Azure disks from the ZIP archive downloaded from the SolarWinds Customer Portal.
  3. Initialize the variables used in the following commands. Copy each line to the command line.
    # authentication and location data
    export AZURE_STORAGE_ACCOUNT="<STORAGE_ACCOUNT>"
    export AZURE_STORAGE_ACCESS_KEY="<ACCESS_KEY>"
    resourceGroup="<RESOURCE_GROUP>"
    vmLocation="<LOCATION>"
    # disk and machine size
    sku="<SKU>"
    vmSize="<VM_SIZE>"
    # disk names
    disk1Name="<DISK1>"
    disk2Name="<DISK2>"
    # virtual machine name
    vmName="<VM_NAME>"
    # vhd disk filenames
    disk1Filename="SolarWinds-SEM-Azure-6.7.0-disk1-system.vhd"
    disk2Filename="SolarWinds-SEM-Azure-6.7.0-disk2-data.vhd"
  1. To upload the files, run the following commands:
    # upload system and data disks
    az storage blob upload --container-name vhds-built --type page –file \
       $disk1Filename --name $disk1Name>
    az storage blob upload --container-name vhds-built --type page --file \
       $disk2Filename --name $disk2Name
  1. To create the disks, run the following commands:
    # get blob urls
    blobUrlDisk1=$(az storage blob url --container-name vhds-built --name \
       $disk1Name -–output tsv)
    blobUrlDisk2=$(az storage blob url --container-name vhds-built --name \
       $disk2Name --output tsv)
    # create system and data disks
    az disk create --resource-group $resourceGroup --sku $sku \
       --name $disk1Name --source $blobUrlDisk1

    az disk create --resource-group $resourceGroup --size-gb "250" --sku $sku \
       --name $disk2Name --source $blobUrlDisk2
  1. Create a virtual machine, and then enable boot diagnostics.
    # create a machine and enable boot diagnostics
    az vm create --resource-group $resourceGroup --size $vmSize \
       --public-ip-sku "Basic" --location $vmLocation --name $vmName \
       --os-type "linux" --attach-os-disk $disk1Name --attach-data-disks \
       $disk2Name
    az vm boot-diagnostics enable --name $vmName --resource-group \
       $resourceGroup --storage $AZURE_STORAGE_ACCOUNT