Skip to main content

 

Setting Up OutSystems

 

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 deployment management console 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 the 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 server

If you chose to deploy a farm production environment, your production environment will have a virtual machine and a scale set. The second one acts as the front-end server answering HTTP(S) requests.

Additional front-end server

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, "F4s_v2" size is selected for all environments.

The main features of the proposed sizes are:

F4s_v2 (default)
vCPUs 4
Memory (GB) 8
Temp Storage (GB) 32
Max IOPS 8000

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. Check 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

The price tier of all created databases is "S3 Standard".

All database administration users are named "VM_admin_user-sql", where VM_admin_user is the user name 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 solution template deployment has an associated storage account. This storage account will hold the log files of the installation and configuration steps of each virtual machine (one log folder for each VM), 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.

Virtual Machine Scale Sets

In a Farm topology, the production environment is 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:

  • Network interfaces
  • 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 myid-prod-vm
Production front-end server
(Farm only)
Azure scale set <sol_id>-prod-vmss myid-prod-vmss
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 myid-dev-appgw
- Storage account s<unique_suffix> (*) strbqxs
- 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.