CDA System Requirements and Sizing
The first step in preparing to install or upgrade your CDA system is making sure that you have the necessary infrastructure ready and required components and versions installed.
This page includes the following:
Compatibility Matrix
To install and run your intended system or update an existing one successfully you have to check requirements and prerequisites.
Use the Automic Compatibility Matrix to find the relevant information on supported versions, setup, or prerequisites. Check all CA Automic components and prerequisites for vendor, version or setup information.
For more information about preparations and prerequisites, see Requirements and Installation Types or Upgrade Installation.
Sizing of Continuous Delivery Automation Systems
Sizing
Notes:
- Database systems and database storage must always be fail safe and redundant.
- The numbers of JWP and DWP ensure stable response times up to the maximum amount of concurrent users. You can adjust the number of processes according to the expected amount of users.
- If you are using a x core AMD CPU, deactivate low-current functions and dynamical cycle adjustments in the BIOS on the Automation Engine computer.
The size of the configuration depends on various factors, such as the number of concurrent users, agents, object definitions, and executions. To be on the safe side, these options show conservative results. The Q&A section guide you through the mos important considerations, see Adjustments - Questions and Answers.
Small Configuration
A system with the following setup is considered to have a small configuration:
-
CDA concurrent users: <5
-
Parallel deployments (executions): <10
Note: The deployment of 1 simple application WF equals ~ 45 executions on AE.
Configuration
-
customer.config > Connection String > Max Pool Size: 100 (default)
To keep up with the workload of a small configuration, your system must be set up as follows:
- CPU: 4 cores
- Memory: 16 GB
- Disk: 200 GB
- When multiple Automation Engines are installed on the same server, additional resources are used on the machine. Additionally, when the configuration of one Automation Engine is spread across multiple machines, fewer resources are used per machine.
- Agent resources affect the Automation Engine's resources only when the Agent is installed on the same maching as the Automation Engine.
Medium Configuration
A system with the following setup is considered to have a medium configuration:
-
CDA concurrent users: <30
-
Parallel deployments (executions): <40
Note: The deployment of 1 simple application WF equals ~ 45 executions on AE.
Configuration
-
customer.config > Connection String > Max Pool Size: 500
To keep up with the workload of a medium configuration, your system must be set up as follows:
2 servers (one for the database, one for the webui and server components), each with:
Important! For the database server, check the database vendor sizing documentation.
- CPU: 4 cores
- Memory: 16 GB
- Disk: 400 GB
- When multiple Automation Engines are installed on the same server, additional resources are used on the machine. Additionally, when the configuration of one Automation Engine is spread across multiple machines, fewer resources are used per machine.
- Agent resources affect the Automation Engine's resources only when the Agent is installed on the same maching as the Automation Engine.
Big Configuration
A system with the following setup is considered to have a big configuration:
-
CDA concurrent users: <100
-
Parallel deployments (executions): <200
Note: The deployment of 1 simple application WF equals ~ 45 executions on AE.
Configuration
-
customer.config > Connection String > Max Pool Size: 750
To keep up with the workload of a big configuration, your system must be set up as follows:
4 servers (two for the database, two for the webui and server components), each with:
Important! For the database server, check the database vendor sizing documentation.
- CPU: 8 cores
- Memory: 32 GB
- Disk: 400 GB
Automic Web Interface
AWI allows you to make Automation Engine accessible to more users. To guarantee quick response times in the web interface, the Automation Engine has to handle lots of requests. Most requests are handled by DWPs, and some by JWPs. Using separate DWPs prevents web interface requests to interfere with job processing.
Web interface requests also generate a significant amount of database I/O, so make sure your system is not I/O bound when making it available to many concurrent users.
Analytics
For medium configurations and bigger installations, setting up a regular backup and truncate for the Analytics datastore is recommended in order to provide a stable chart performance (e.g. back up and truncate to only keep the last 3-12 months in the Analytics database).
Setup Recommendations
- The UI plug-in is always added to the host(s) where AWI is installed.
- Datastore and backend should be installed on a dedicated host together (one host for backend and datastore).
- The backend must be accessible via http(s) from the AWI hosts and must be able to connect to the datastore and to all required databases (AE, ARA).
For more information, see:
- Analytics - Sizing Requirements
- Analytics - System Requirements
CAPKI - Public Key Infrastructure
Information security services, such as the TLS implementation of the ServiceManager, require features provided by the CAPKI package, see CAPKI - Securing the ServiceManager. You need to install CAPKI on all computers in which the Automation Engine or the ServiceManager and any of the following components will run:
Adjustments - Questions and Answers
After you have got a rough estimation of what to expect, there are some additional aspects to be taken into consideration, which may affect the sizing. Below you find a list of possible questions and answers concerning system sizing adjustments.
General
Is the expected load distributed over the day evenly or do you expect high peaks?
- Normal: -
- Even: Reduce resources
- High Peaks: Add resources (cores, WPs)
Is excellent performance important even in periods of peak load?
- No: -
- Yes: Add resources (cores, WPs)
Is the expected load constant or do you expect growth?
- Constant: -
- Growth: Consider next sizing level
How long do you need to hold data (statistics, job reports, revision reports) in the database?
- > 12 month: Add more database storage
- < 3 month: Reduce database storage
Do you expect many huge job reports to be stored in the database (e.g. more then 100.000 lines)?
- No: -
- Yes: Add more database storage
Do you plan to use ILM?
- Yes: Plan how to deal with switched out data
- No: Run the AE DB Reorg utility as near as possible to the database and add storage for output data (if generated)
Do you plan to use Oracle as database system?
Yes: Add resources on the database node(s) (faster CPUs, faster network, etc. )
What hardware to you plan to use for the AE system?
- Linux/Windows on Intel x64: -
- Others: Add resources
Do you plan to run the AE/database on virtual nodes?
Yes: Make sure that computing power is guaranteed for your systems and other Virtual Machines do not detract from the computing power/bandwidth.
Is logging and traceability over a longer period important for you?
- Y: -
- N: Reduce local disk storage on AE
Fail Safe
Is a fail safe system important for you?
- No: -
- Yes: Make sure your systems are equipped with redundant components (power supply, network, and so on) and that you have an "always-on" database environment.
Performance during a failure situation (e.g. one node fails): Are the remaining node(s) able to handle the load?
For example, a two-node system has to be oversized by 100% to be able to handle the load on the remaining node. Consider not only cores and memory, but also the amount of CPs, WPs, DWPs, JWPs, DB-Service agents, etc.
If fail safe is crucial for you, consider to run on more than two nodes.
Agents
Do you expect high usage of some agents?
- No: -
- Yes: Add resources to those nodes. Take care that resources used by your jobs are available.
Do you plan to run many agents on a single node such as SAP or WebService?
-
No: -
-
Yes: Add approximately 1 GB per Java-based agent to those nodes
An average used java agent will need between 512-1024 MB, but in some cases this may be more.
Users
Do you have many users, who are constantly monitoring activities and workflows?
-
No: -
-
Yes: Add more resources to dialog processes (DWPs) and AWI
Run more DWPs and take care that cores and memory are available for this additional load.
Do you expect huge workflows (> 1000 tasks per workflow)?
-
No: -
-
Yes: Add memory to AE / AWI
Expect 1-2 GB per DWP.
Do you expect huge xml imports/exports?
-
No: -
-
Yes: Add memory to AE / AWI
Expect 1-2 GB per DWP.
Automic Web Interface
Do you expect to have users in different locations (long distance)?
-
No: -
-
Yes: Run multiple AWI instances at every location (for example, on every continent where users are located)
Do you expect a high load at a particular location?
- No: -
- Yes: Run one strong server with plenty of RAM (see high end configuration)
Does load balancing make sense?
In general, the AWI needs little CPU, just plenty of RAM. Load balancing for performance does not make sense. Most load balancers do not support websockets, which the AWI uses and which reduce our resource usage per session and improves UI responsiveness. If you want to use a load balancer for high availability, see Configuring Automic Web Interface.
Are you experiencing slow response times?
If the CPU on the servlet container running AWI is low and you are sure that your database can handle the increased I/O, try increasing the amount of DWPs and JWPs.
Does job processing slow down via database I/O by heavy web interface usage?
In times of heavy web interface usage, you can temporarily reduce the number of DWPs in order to take load off the backend while working on improving database I/O.
Analytics
What is the required disk space?
To estimate the disk space required in the datastore you can calculate with about 1GB for 1.000.000 executions in the Automation Engine.
Do I need to back up the datastore?
The Analytics datastore was created to store large amounts of data. If you have a medium or bigger installation it might still be useful to remove data older than approx. 1 year from the Analytics datastore. It is recommended to setup the provided backup actions (ANALYTICS ACTION PACK).
Which are the general database rules?
This is valid for all DB vendors - the log files must/should be placed on the fastest available disks (=SSDs).
- ORACLE: REDO LOG FILE DESTINATION
- SQL SERVER: TRANSACTION LOG and TEMPDB files
- DB2: LOG files
- LOG and DATA files must always be on separate DISKS /LUNS
Troubleshooting
Local system is too slow
-
CPU is too slow.
-
Increase CPU speed
-
Increase CPU count
-
-
Other apps consume too much CPU power on your node.
Run the Automation Engine exclusively on your nodes.
-
The system is under memory pressure.
-
Add memory
-
Reduce memory consumption
-
-
The virus scanner slows down I/Os.
Avoid running the virus scanner on your production node.
Database is too slow
-
Connection to the database is too slow.
-
Increase network speed/capacity
-
Reduce the distance to the database
-
-
Database transactions are too slow.
-
Mirror or similar issues: Reduce the distance to mirror or use other (faster) fail safe features.
-
Check CPU speed/usage/count
-
Check memory size/usage
-
Check storage speed/capacity/usage of other apps
-
Check database maintenance (index reorganization, etc.)
-
Check query optimizer (settings, statistics, etc.)
-
Consult your database vendor for improvements
-
It takes too long to import thousands of entities using ImportExportCLI
- Add more CPs to the Connection section in the
customer.config
file (Automic\Release.Manager\WebUI\customer.config). - Run the ImportExportCLI tool for multiple processes (1 process = 1 ImportExportCLI run)
It takes too long to execute deployments
- Use multiple profiles
Disk Space for Release Manager WebUI
The log folder is very space-consuming. Monitoring the space usage of this folder will help to have a reasonable plan on disk space for Release Manager WebUI.
- daily usage
- log files life-time (how long you want to keep the log files)
See also:
- Analytics - Sizing Requirements
- Analytics - System Requirements