Monitoring AWS RDS
The AWS RDS sensor is automatically deployed and installed after you install the Instana agent.
Learn about the other supported AWS services with our AWS documentation.
Sensor (Data Collection)
Tracked Configuration
RDS Instance Details | Description |
---|---|
ARN | The unqualified Amazon Resource Name (ARN) assigned to the instance. |
Endpoint | The endpoint of the instance. |
Port | The port of the instance. |
Master User | The master user of the instance. |
Availability Zone | The location of the instance. |
Engine | The instance engine. |
Cluster | The instance of cluster. |
Metrics
RDS Instance metrics | Description |
---|---|
CPUUtilization | The percentage of CPU utilization. |
CPUCreditUsage | The number of CPU credits spent by the instance for CPU utilization. |
CPUCreditBalance | The number of earned CPU credits that an instance has accrued since it was launched or started. |
BurstBalance | The percent of General Purpose SSD (gp2) burst-bucket I/O credits available. |
DatabaseConnections | The number of database connections in use. |
DiskQueueDepth | The number of outstanding IOs (read/write requests) waiting to access the disk. |
FreeableMemory | The amount of available random access memory. |
FreeStorageSpace | The amount of available storage space. |
ReplicaLag | The amount of time a Read Replica DB instance lags behind the source DB instance. |
SwapUsage | The amount of swap space used on the DB instance. |
ReadIOPS | The average number of disk read I/O operations per second. |
WriteIOPS | The average number of disk write I/O operations per second. |
ReadLatency | The average amount of time taken per disk I/O operation. |
WriteLatency | The average amount of time taken per disk I/O operation. |
ReadThroughput | The average number of bytes read from disk per second. |
WriteThroughput | The average number of bytes written to disk per second. |
EBSIOBalance% | The percentage of I/O credits remaining in the burst bucket of your RDS database. |
NetworkReceiveThroughput | The incoming network traffic on the DB instance, including both customer database traffic and Amazon RDS traffic used for monitoring and replication. |
NetworkTransmitThroughput | The outgoing network traffic on the DB instance, including both customer database traffic and Amazon RDS traffic used for monitoring and replication. |
VolumeBytesUsed (Aurora) | The amount of storage used by your Aurora DB instance. |
Required Permissions
cloudwatch:GetMetricStatistics
cloudwatch:GetMetricData
rds:DescribeDBInstances
rds:DescribeEvents
rds:ListTagsForResource
Configuration
Metrics for RDS are pulled every 60 seconds, this can be changed via agent configuration in <agent_install_dir>/etc/instana/configuration.yml
:
com.instana.plugin.aws.rds:
cloudwatch_period: 300
To disable monitoring of RDS instances use the following configuration:
com.instana.plugin.aws.rds:
enabled: false
To enable batch discovery of RDS instances use the following configuration:
com.instana.plugin.aws.rds:
enable_batch_discovery: true # default false
Proxy configuration
To configure the specific AWS Sensor to use proxy configuration, add the following agent configuration settings:
com.instana.plugin.aws.rds:
proxy_host: 'example.com' # proxy host name or ip address
proxy_port: 3128 # proxy port
proxy_protocol: 'HTTP' # proxy protocol: HTTP or HTTPS
proxy_username: 'username' # OPTIONAL: proxy username
proxy_password: 'password' # OPTIONAL: proxy password
Monitoring multiple AWS accounts
Refer to the Monitoring multiple AWS accounts documentation to set up monitoring of multiple AWS accounts with one AWS agent in the same region.
AWS named profiles approach
To override which profiles should be used to monitor RDS, use the following configuration:
com.instana.plugin.aws.rds:
profile_names:
- 'profile2'
- 'profile3'
Defining profiles on service level will override the global AWS profiles configuration.
AWS STS approach
To override which IAM Roles should be used to monitor RDS, use the following configuration:
com.instana.plugin.aws.rds:
role_arns:
- 'arn:aws:iam::<account_1_id>:role/<role_1_name>'
- 'arn:aws:iam::<account_2_id>:role/<role_2_name>'
Defining IAM roles on service level will override the global AWS IAM roles configuration.
Filtering
Multiple tags can be defined, separated by a comma. Tags should be provided as a key-value pair separated by :. In order to make configuration easier, it is possible to define which tags you want to include in discovery or exclude from discovery. In case of defining tag in both lists (include and exclude), exclude list has higher priority. If there is no need for services filtering, the configuration should not be defined. It’s not mandatory to define all values in order to enable filtering.
Users are able to specify how often sensors will poll the AWS tagged resources using the tagged-services-poll-rate
configuration property (default 300 seconds).
Tags are only available in conjunction with the AWS Agent.
To define how often sensors will poll the tagged resources use following configuration:
com.instana.plugin.aws:
tagged-services-poll-rate: 60 #default 300
To enable batch discovery in order to reduce throttling of rds instances, use following configuration:
com.instana.plugin.aws:
enable_batch_discovery: true #default false
To include services by tags into discovery use following configuration:
com.instana.plugin.aws.rds:
include_tags: # Comma separated list of tags in key:value format (e.g. env:prod,env:staging)
To exclude services by tags from discovery use following configuration:
com.instana.plugin.aws.rds:
exclude_tags: # Comma separated list of tags in key:value format (e.g. env:dev,env:test)
AWS services without tags will be monitored by default but can be excluded by setting the include_untagged
field to false
:
com.instana.plugin.aws.rds:
include_untagged: false # True value by default