Preparing Azure
You can leverage the Microsoft Azure ecosystem to run machines on-demand all in one place.
Follow the guide below to link QAssist and your Microsoft Azure instance.
Pre-requisites
Azure Regions
The following resources should be in the same region
- A subscription with the following resource providers attached1
Microsoft.Compute
Microsoft.Network
Microsoft.Quota
Microsoft.Web
- A resource group, within that subscription2
- An Azure Virtual Network3
- With a NAT Gateway4
- With 2 subnets with a NAT Gateway (It can be the same NAT Gateway)
Subnet A
- Will be used for the bridgeSubnet B
- Will be used for the on-demand machines
- A way to run the bridge, we recommend
Web App for Containers
5- If you wish to host it differently, follow the guide here
Recommended 'Web App for Containers' setup
The following is a basic recommendation and may not apply to all use cases.
- Basics
- Publish:
Docker Container
- Operating System:
Linux
- Publish:
- Docker
- Options:
Single Container
- Image Source:
Docker Hub
- Access Type:
Public
- Image and tag:
glokon/guacws-next:latest
- Options:
- Networking
- Enable public access:
On
- Enable network injection:
On
- Virtual Network:
The virtual network created earlier
- Enable VNet integration:
On
- Subnet:
Subnet A
- Enable public access:
After creating the web app, change the following Web App settings
- Application settings
- Create an
Application Setting
Name
-WEBSITES_PORT
Value
-8080
- Create an
- General settings
- Always on:
On
- Always on:
Setup App Registration
For QAssist to communicate with Microsoft Azure, you will need to create a Microsoft Entra App Registration
Follow the guide here, make a note of the following:
Directory (tenant) ID
Application (client) ID
Client Secret
Once you have created the app and made a note of those, you will need to give the App Registration
you have just created the following permissions (How to assign roles):
Contributor
role to theresource group
you want to useQuota Request Operator
role to thesubscription
you want to use
Setup Bridge
This section only applies if you are using Web App for Containers
using the recommended settings.
Any other services or ways to run the bridge are out of scope of this document.
- Create your
Web App for Containers
app, using the recommended settings - Follow this guide to create a bridge on QAssist, with the following settings
URL
- This will be theDomain
from theWeb App for Containers
- Make a note of the secret key you receive in your email
- Create a new
Application Setting
in theWeb App
Name
-Cipher__Key
Value
- The secret key you received when creating the bridge
- Restart the
Web App
, after that the bridge setup is complete
Setup Provider
- In QAssist go to
Providers
and clickCreate Provider
Type
-Azure
Name
- choose a friendly nameDirectory (tenant) ID
- FromApp Registration
Subscription ID
- The subscription ID you want QAssist to useApplication (client) ID
- FromApp Registration
Client Secret
- FromApp Registration
Resource Group
- The resource group you want QAssist to use (It must belong to the subscription)
- Click
Add
, QAssist will run some checks, which may take a few minutes - QAssist should now be able to communicate with your Microsoft Azure instance
-
QAssist uses those resource providers to check and provision machines, Learn more. ↩
-
QAssist will only create machines in the resource group configured, Learn more. ↩
-
The virtual network allows communication between the bridge and the machines, Learn more. ↩
-
A NAT gateway is required for machines to access the internet ↩
-
Web App For Containers
is a fast and cost-effective way to get the bridge up and running ↩