Resource Considerations
This document describes resource considerations and limitations to be taken into account when provisioning and operating a9s MariaDB Service Instances.
The resource requirements of a Service Instance depend on the Template selected for its Service Plan. Each Template defines the topology (number of nodes) and the set of colocated processes. Templates that provide logging require a higher-memory VM type and more ephemeral disk than Templates without logging.
The Platform Operator must define matching vm_type and persistent_disk_type entries in the BOSH Cloud Config and
reference them from the Service Plan configuration. For guidance on Service Plans and Templates, see Service Plans
and Available Templates.
For guidance on Service Plans and Templates, see Service Plans and Available Templates.
Template Requirements
The resource requirements of a Service Instance depend on the Template selected for its Service Plan. The small,
medium, and large labels used for VM type and persistent disk type in the tables below refer to the example Cloud
Config entries defined in Update the Cloud Config.
Templates that provide logging require a higher-memory VM type than Templates without logging.
Templates that provide logging reserve at least 512 MB of RAM for the logging process, in addition to the memory required by the data service process itself. Provisioning 512 MB of additional headroom above this minimum is recommended, to comfortably absorb the logging overhead.
The following table lists resource requirements per VM, as well as totals across all nodes of a Service Instance.
- Per VM
- Totals
| Template name | Nodes | vCPUs | Logging | SSL | Min. RAM | Min. Persistent Disk | Min. Ephemeral Disk | Example VM Type | Example Persistent Disk Type |
|---|---|---|---|---|---|---|---|---|---|
mariadb1011-single-ssl | 1 | 4 | Yes | Yes | ≥ 4.5 GB † | 10 GB | 10 GB | large | medium |
mariadb1011-single-no-logging-ssl | 1 | 2 | No | Yes | ≥ 4 GB | 10 GB | 10 GB | small | medium |
mariadb1011-cluster-ssl | 3 | 4 | Yes | Yes | ≥ 4.5 GB † | 10 GB | 10 GB | large | medium |
| † Includes the RAM reserved for the logging process. See the note above. | |||||||||
| Template name | Nodes | vCPUs | Logging | SSL | Min. RAM | Min. Persistent Disk | Min. Ephemeral Disk |
|---|---|---|---|---|---|---|---|
mariadb1011-single-ssl | 1 | 4 | Yes | Yes | ≥ 4.5 GB † | 10 GB | 10 GB |
mariadb1011-single-no-logging-ssl | 1 | 2 | No | Yes | ≥ 4 GB | 10 GB | 10 GB |
mariadb1011-cluster-ssl | 3 | 12 | Yes | Yes | ≥ 13.5 GB † | 30 GB | 30 GB |
| † Includes the RAM reserved for the logging process. See the note above. | |||||||
Binary logs are produced to support replication and are retained on each node. Under high write throughput, binary logs
can exhaust disk within hours if purge policies are not configured. At least 5 GB of persistent disk is required, but
the smallest cluster plans should preferably use the medium disk type (10 GB) to accommodate binary log growth from
replication.
Ephemeral Disk Size
A minimum of 10 GB of ephemeral disk size is required for a9s MariaDB, above the 5 GB baseline that applies to most other Data Services.
Reserved Memory
The relevant buffer configuration used by a9s MariaDB is innodb_buffer_pool_size, which by default is set to 50% of
total_memory - 1 GB, with that 1 GB reserved for side processes.
The remaining memory is shared with other small buffers, side processes, and the OS. The number of open connections
influences usage of the remaining memory. The max_connections setting is currently configured as 1500; for smaller
Service Instances this may be excessive, and the number of open connections will directly affect node performance.
Unsupported Plan Updates
a9s MariaDB does not support plan updates from a non-SSL plan to an SSL plan.