Skip to main content

Quick Reference for OutSystems on Microsoft Azure

OutSystems

Quick Reference for OutSystems on Microsoft Azure

This article describes the Azure resources deployed by OutSystems on Microsoft Azure solution template, which contains the OutSystems Development, Test, Production, and LifeTime environments.

Azure Resources

The Azure resources that the OutSystems on Microsoft Azure solution template deploys follow naming conventions based on the general Azure naming conventions. You can identify the deployed resources by the following:

  • All resources are prefixed with the solution identifier (sol_id) that you chose and entered in the solution template wizard.
  • Azure resources associated to a specific OutSystems environment will be named in a way that includes the environment short name: “dev” for Development, “test” for Test, “prod” for Production, and “life” for LifeTime environment.

Virtual Machines

Each environment contains a virtual machine as the OutSystems Platform Server, playing the role of deployment controller and front-end server.

deployment controller-and front-end.png

If you chose to deploy a high-availability production environment, your production environment will have two virtual machines. The second one acts as an additional front-end server.

additional-front-end-server.png

All virtual machines have Windows Server 2016 Datacenter installed.

You can choose the size of the virtual machines during the setup, in the solution template wizard. By default, “D4s v3 Standard” size is selected for all environments.

Tip: When selecting the virtual machine size, choose one of the sizes that are recommended in the wizard: “D4s v3 Standard”, “E4s v3 Standard” or “DS3 v2 Standard”.

The main features of the proposed sizes are:

  D4s v3 (default) E4s v3 DS3 v2
vCPUs 4 4 4
Memory (GB) 16 32 14
Temp Storage (GB) 32 64 28
Max IOPS 8000 8000 12800

Check the official Azure documentation for detailed information on the different virtual machine sizes.

For security reasons, the deployed virtual machines have remote desktop access disabled. Learn here how to enable remote desktop access for a virtual machine.

Azure SQL Servers and Databases

OutSystems on Microsoft Azure solution template uses Azure SQL Database service. Each environment contains one SQL server and three SQL databases - the Platform/Applications database, the Logging database, and the Sessions database.

databases.png

The price tier of all created databases is “S3 Standard”.

All database administration users are named “sql-<VM admin user>”, where <VM admin user> is the username you fill during the setup in the solution template wizard for the virtual machines administration user. The database administration user password is the same as for the virtual machine administration user.

Storage Accounts

Each environment has an associated storage account. This storage account will hold the log files of the installation and configuration steps of each virtual machine, along with several configuration files used by the OutSystems environments.

Application Gateways and Public IP Addresses

Each environment has an application gateway with an associated public IP address. This public IP Address is the entry point to the environment.

For example, if you have two front-end servers in your production environment, the entry point of the environment is the public IP address associated with the production application gateway.

Azure application gateways provide baseline security against most of the OWASP Top 10 vulnerabilities.

Each virtual machine has also a public IP address for direct access, either through Service Center console or through remote desktop access.

Virtual Machine Scale Sets

The development, test, and production virtual machines are deployed with virtual machine scale sets, making these environments ready for horizontal scaling.

Other Azure Resources

The following Azure resources are also deployed for each OutSystems environment to guarantee the infrastructure operation:

  • Load balancer
  • Network interface
  • Network security group
  • Disk

Resources Mapping

The table below shows examples of some of the Azure resources deployed for each environment, mapped into the main OutSystems components when applicable:

OutSystems Component Azure Resource Type Azure Resource Name Example
Non-production Platform Server Virtual machine <sol_id>-<environment>-vm myid-dev-vm
Production Platform Server Virtual machine <sol_id>-prod-vm[1] myid-prod-vm
myid-prod-vm1 (high availability)
Production front-end server
(high-availability only)
Virtual machine <sol_id>-prod-vm2 myid-prod-vm2
Database server Azure SQL server <sol_id>-<environment>-srv<unique_suffix> (*) myid-dev-srvbqxs
Platform/Application database Azure SQL database <sol_id>-<environment>-db myid-dev-db
Session database Azure SQL database <sol_id>-<environment>session-db myid-devsession-db
Logging database     Azure SQL Database <sol_id>-<environment>log-db myid-prodlog-db
- Application gateway <sol_id>-<environment>-appgw
OR  
<sol_id>-prod-appgw-ha
(High Availability)
myid-dev-appgw
- Storage account <sol_id><environment>str<unique_suffix> (*) myiddevstrbqxs
- Public IP address <sol_id>-<environment>[appgw|VM]-PIP myid-dev-appgw-PIP
- Virtual machine scale set <sol_id>-<environment>-VMSS myid-dev-VMSS

(*) Storage accounts and SQL server resources include unique suffixes in their names because the resource name must be unique in the entire Azure infrastructure.

  • Was this article helpful?