To install and run OutSystems, you need permissions to change files in the file system, run services, listen to specific ports, and make changes to the database. Learn what permissions are needed.
The Platform Server must run on a server deployed on bare metal or hardware virtualization technologies (e.g. VMware, KVM) with a fixed MAC address. Changing the MAC address (either by physically changing the network card, of through virtualization software) results in an invalid license.
All software required for installing the Platform Server is listed in the Platform Server installation checklist.
Users and groups
All processes executed by OutSystems run using the ‘outsystems’ user: a regular user created during the installation process.
The Platform Server installer also creates a group named ‘outsystems’ and adds both the ‘outsystems’ and ‘jboss/wildfly’ users to this group. The installer also changes the ‘jboss/wildfly’ group to ensure that the ‘outsystems’ user is part of it. This ensures the ‘outsystems’ and ‘jboss/wildfly’ users have similar permissions in the file system.
The name of this user and group cannot be changed, otherwise OutSystems might misbehave.
The Platform Server is installed at /opt/outsystems/platform and its configurations are stored at /etc/outsystems/server.hsconf. This file should not be edited manually, instead, use the Configuration Tool to change these settings. Also, the Platform Server stores configurations at /etc/.java/.systemPrefs/outsystems/prefs.xml. For this reason, you need to ensure that both the ‘outsystems’ and ‘jboss/wildfly users have read-write privileges for these files.
The environment variables used by the Platform Server are configured at /etc/sysconfig/outsystems. To expand these environment variables, use: source /etc/sysconfig/outsystems.
During the installation, OutSystems registers a service named ‘outsystems’ at /etc/init.d that is responsible for starting up the Platform Server services. Below you can find the list of services.
To configure your server for the role of front-end, or deployment controller, use the script available on /opt/outsystems/platform/serviceconfigurator.sh.
|Service||Executable /opt/outsystems/platform||Configuration /etc/outsystems||Policy /etc/outsystems||Logs /opt/outsystems/platform /logs|
The communication between services is done using Java RMI.
The SQL Server database must comply with the following requirements:
- If you are using SQL Server authentication, the authentication mode needs to be set to “Mixed Mode”.
- When using Windows Authentication, all front-ends and controller must use the same domain as the database server.
- The collation of the SQL Server instance must be case-insensitive (CI_*).
To integrate with an Oracle database, the NLS_CHARACTERSET must be set to WE8MSWIN1252 or AL32UTF8. Additionally, names of tables and columns you want to integrate must use uppercase letters only.
To integrate with DB2 database for iSeries, the installation of the IBM iAccess software is required in all Front-End and Deployment Controller server machines.
The OutSystems installer ensures that the application server is properly configured to run the applications. These configurations include the maximum number of requests, the connection timeouts, maximum post size, and others. Below you can find the location of the customizations.
Application servers need to be configured to listen to ports:
- 8080 for HTTP
- 8443 for HTTPs
The OutSystems installer adds redirect rules to the iptables file to forward traffic from port 80 to 8080 and 443 to 8443.
When you install OutSystems, a new profile ‘outsystems’ is created in JBoss, to store all configurations and customizations required.
These configurations can be found in $JBOSS_HOME/standalone/configuration/standaloneoutsystems.xml.
To configure the application server, for example to add support for SSL or set the maximum number of requests, you should change the same xml file as above. Read the JBoss official documentation to learn more about these configuration files and how to customize them.
When you install OutSystems, a new profile ‘outsystems’ is created in Wildfly, to store all configurations and customizations required.
These configurations can be found in $WILDFLY_HOME/standalone/configuration/standalone-outsystems.xml.
To configure the application server, for example to add support for SSL or set the maximum number of requests, you should change the same xml file as above.
Please read the Wildfly official documentation to learn more about these configuration files and how to customize them.
Applications source code
The server with the deployment controller role stores the application source code at /opt/outsystems/platform/share/<module name>/full.
During the deployment of an application, the Deployment Controller ensures the front-end servers have the compiled applications stored in the OutSystems installation folder, and proceeds to created symbolic links from the application server deployment folders to these.
The compiled applications are stored at:
- Shared Libraries - /opt/outsystems/platform/repository
- Applications - /opt/outsystems/platform/running
The application server deployment folder can be found at:
- Boss - $JBOSS_HOME/standalone/deployments
- Wildfly - $WILDFLY_HOME/standalone/deployments.
OutSystems has built-in logic capabilities to monitor the applications during runtime. To ensure the performance of the applications is not compromised, the logs are performed asynchronously, using a message queue. The Log service then consumes the messages in these queues and inserts them in the OutSystems' Log tables. You can then use the environment management console to see the logs.
OutSystems uses HornetQ as message queue. The message queues created, can be found in $JBOSS_HOME/standalone/configuration/standalone-outsystems-mq.xml, and are configured to be persisted in secondary memory.
To learn how to configure the logging capabilities, check JBoss official documentation.
OutSystems uses HornetQ as message queue. The message queues created, can be found in $WILDFLY_HOME/standalone/configuration/standalone-outsystems-mq.xml, and are configured to be persisted in secondary memory. To learn how to configure the logging capabilities, please check Wildfly official documentation.