By default, the service is configured with a small footprint, suitable for development but possibly insufficient for production workloads. This document describes symptoms of an under-resourced deployment, and steps that may be taken to reconfigure the service to increase available resources.
- The service is sluggish or unresponsive
- The VMs may have a high utilization of CPU and/or memory
- The service returns "No space left on device" errors
- The persistent or emphemeral disks attached to the database VMs may fill up
If you experience the above symptoms, check your VMs for high resource utilization. You can increase resource capacity as defined below.
The resource configuration is defined in the manifest under resource_pools
. Currently resource configuration is specific to each cloud provider (AWS, vsphere etc) via the cloud_properties
property.
AWS provides instance types which map to specific values of CPU, RAM and ephemeral disk; they are not independently configurable. The instance type is set via the property cloud_properties.instance_type
. If the available space on the attached ephemeral disk is frequently being consumed, consider configuring a larger instance type or attaching a larger empheral disk. A larger ephemeral disk can be attached to a given EC2 instance as shown here. Persistent disk can also be resized as shown.
If the manifest is being generated using spiff and merging the provided templates and stubs, a stub can be provided with the following structure:
---
resource_pools:
- name: <job-name e.g. mysql_z1>
cloud_properties:
instance_type: <some-value>
VSphere allows configuration of the CPU, RAM and ephemeral disk independently; these can be set via cloud_properties.cpu
,cloud_properties.ram
and cloud_properties.disk
respectively.
If the manifest is generated using spiff, merging the provided templates and stubs, a stub can be provided with the following structure:
---
resource_pools:
- name: <job-name e.g. mysql_z1>
cloud_properties:
cpu: <some-value>
ram: <some-value>
disk: <some-value>
To allow finer grained control over ephemeral disk utilization, the MySQL service provides the following properties:
---
jobs:
- name: mysql_z1
properties:
max_heap_table_size: 16777216
tmp_table_size: 33554432
Further details on MySQL/MariaDB/s memory and temp. space usage may be found on their website.