Deploying a BMC Discovery virtual appliance into Microsoft Azure
To convert the Discovery VMDK file to VHD
Microsoft Azure requires the disk image to be in VHD format, rather than the VMDK format in which the BMC Discovery VA is supplied.
You must download a BMC Discovery VA from the BMC EPD site.
Follow the steps appropriate for your Microsoft Azure or Hyper-V from the Microsoft Azure Migrate site.
When you have created a VHD image, you can upload it to Microsoft Azure.
To upload the VHD file to Microsoft Azure
This procedure uploads the VHD file to a new Storage Account and Resource Group in Microsoft Azure.
Follow the steps to install the Azure Az PowerShell module as described on this Microsoft site.
Log in to your Microsoft Azure account. Enter:
Connect-AzAccountSet some variables to be used in the following commands, changing the region as required. The Storage Account name must be unique in Azure. Enter:
$UploadRGName = "DiscoveryUpload"
$UploadRegion = "West US"
$UploadStorageAccount = "discoveryuploadstorage"Create a new Resource Group. Enter:
New-AzResourceGroup -Name $UploadRGName -Location $UploadRegionCreate a new Storage Account. Enter:
New-AzStorageAccount -ResourceGroupName $UploadRGName `
-Name $UploadStorageAccount -Location $UploadRegion `
-SkuName "Standard_LRS" -Kind "Storage"Set a variable for the upload destination. Replace the version number in the .vhd file name to match the version of BMC Discovery that you are uploading. Enter:
$VHDurl="https://$UploadStorageAccount.blob.core.windows.net/discoveryupload/discovery_<version number>.vhd"Upload the VHD file. Replace the path to the .vhd file as required. Enter:
Add-AzVhd -ResourceGroupName $UploadRGName -Destination $VHDurl `
-LocalFilePath C:\temp\Discovery_<version number>.vhd
To create an Azure image from the uploaded VHD
The following steps create an Azure Image that can be used to deploy BMC Discovery VM instances.
Create a new image configuration. Enter:
$imageConfig = New-AzImageConfig -Location $UploadRegionConfigure the OS disk for the image. Enter:
$imageConfig = Set-AzImageOsDisk -Image $imageConfig `
-OsType Linux -BlobUri $VHDurlCreate the Image. Replace the Image name value as required.
$image = New-AzImage -ImageName Discovery-12-3-0-2-Image `
-ResourceGroupName $UploadRGName -Image $imageConfig
To create a new VM from the Azure image
The following steps create an Azure Virtual Machine from the image.
- In the Azure Portal, navigate to the upload Resource Group DiscoveryUpload and locate the image created in the previous steps.
- Click through to the image and click Create VM.
- Set values as required for the VM. Specify a username and use password authentication. The username and password are required by Microsoft Azure for the deployment, but the user is not created. Any valid values for the username and password can be used.
- Set a size for the VM according to your requirements.
Set the Networking values for the VM.
- Set any other options as required. The storage for the VM is set as Managed Disk and cannot be changed.
Proceed to create the VM.
To install the Azure Virtual Machine Agent
The following steps install the Azure Virtual Machine Agent.
- Determine the public or private IP address for the VM by viewing it in the Azure Portal. The type of IP you use depends on how you configured networking for the VM. If you are using the private IP, you must use another machine on the same network to connect to the VM using SSH.
- Using SSH, connect to the Discovery appliance as the tideway user and log in with the default password tidewayuser. On the first login, you are forced to change the password. Reconnect after you have changed the password.
Change to the root user and specify a login shell.
Enter:
su --login rootand enter the default root password tidewayroot. You are prompted to set a new password for the root user.
Run the following commands to install pip, which is required for the agent installation:
cd /tmp
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py
python get-pip.pyRun the following commands to download and install the Azure agent:
wget https://github.com/Azure/WALinuxAgent/archive/v2.6.0.2.zip
unzip v2.6.0.2.zip
cd WALinuxAgent-2.6.0.2
python setup.py installParameters to set are now:
Provisioning.Agent=disabled
ResourceDisk.EnableSwap=y
ResourceDisk.SwapSizeMB=4096 # Set to value appropriate
# for VM sizeConfigure the agent to start at boot by running this command:
systemctl enable waagentStart the agent:
systemctl start waagentEnsure the agent service is running:
systemctl status waagent- If the VM deployment job failed because the agent was not installed within the timeout period, and the VM still shows as failed after some time has passed, restart the VM from the Azure Portal. This should clear the failed state, and show it as running.