Monitoring Amazon Redshift

After you install the Instana host agent, the Amazon Redshift sensor is automatically installed, and the monitoring of Amazon Redshift instances is automatically enabled. You can view metrics that are related to Redshift in the Instana UI.

For more information about the other supported AWS services, see AWS documentation.

Required permissions

The following permissions are required for Redshift metrics collection and need to be granted to an AWS Identity and Access Management (IAM) user:

  • cloudwatch:GetMetricData
  • cloudwatch:GetMetricStatistics
  • redshift:DescribeClusters

Viewing metrics

To view the metrics, complete the following steps:

  • In the sidebar of the Instana UI, select Infrastructure.
  • Click a specific monitored host.

You can see a host dashboard with all the collected metrics and monitored processes.

Redshift cluster

Tracked cluster configuration

Redshift instance details Description
Cluster ARN The unqualified Amazon Resource Name (ARN) that is assigned to the instance.
Endpoint The endpoint of the instance to connect to a database.
Port The port of the instance.
Master User The master user of the instance.
Availability Zone The location of the instance.
Cluster Creation Time The provisioned time to create a cluster instance.
Cluster Name The instance of a cluster.
Total Storage (MB) The total storage that is provisioned for a cluster.

Metrics collection

Cluster metrics Description
CPU Utilization The percentage of CPU utilization. For clusters, this metric represents an aggregation of CPU utilization values of all nodes (leader and compute).
Health Status The health status of the cluster. Every minute the cluster connects to its database and runs a query.
If this operation is successful, then the cluster is considered healthy, or else the cluster is unhealthy.
Storage Used The percentage of used disk space.
Database Connections The number of database connections to a cluster.
Read IOPS The average number of disk read operations per second.
Read Latency The average amount of time taken for disk read I/O operations.
Read Throughput The average number of bytes that are read from disk per second.
Write IOPS The average number of write operations per second.
Write Latency The average amount of time taken for disk write I/O operations.
Write Throughput The average number of bytes that are written to disk per second.

Redshift node

Tracked node configuration

Redshift instance details Description
Cluster ARN The unqualified Amazon Resource Name (ARN) assigned to the instance.
Node ARN The derived unqualified Amazon Resource Name (ARN) of the node instance.
Port The port of the instance.
Node Name The name of the instance.
Node Type The instance type.
Public Ip Address The public IP address of a node instance.
Cluster Name The instance of a cluster.

Metrics collection

Node metrics Description
CPU Utilization The percentage of CPU utilization.
Read IOPS The average number of disk read operations per second.
Write IOPS The average number of write operations per second.
Write Latency The average amount of time taken for disk write I/O operations.
Read Latency The average amount of time taken for disk read I/O operations.
Read Throughput The average number of bytes that are read from a disk per second.
Write Throughput The average number of bytes that are written to a disk per second.

Configuring

Instana is configured automatically to monitor Amazon Redshift instances by default after you install the Instana host agent.

Metrics for Amazon Redshift are pulled every 5 minutes, which can be changed by using the following configuration in the Instana agent configuration file <agent_install_dir>/etc/instana/configuration.yaml:

com.instana.plugin.aws.redshift:
  cloudwatch_period: 300

To disable monitoring of Redshift instances, use the following configuration:

com.instana.plugin.aws.redshift:
  enabled: false

To filter only the specific nodes in the Redshift cluster, you can configure regex for node name by using the following configuration:

com.instana.plugin.aws.redshift:
  includeNodeRoleRegex: 'abc.*'

Monitoring multiple AWS accounts

To monitor multiple AWS accounts with one AWS agent in the same region, see Monitoring multiple AWS accounts documentation.

AWS named profiles approach

In the AWS named profiles approach, you can define the profile. To override the profiles that are used to monitor Redshift, use the following configuration in the agent configuration file:

com.instana.plugin.aws.redshift:
  profile_names:
    - 'profile2'
    - 'profile3'

If you define profiles on service level, then these profiles override the configuration of the global AWS profiles.

AWS Security Token Service (STS) approach

To override the IAM roles that are used to monitor Redshift, use the following configuration in the agent configuration file:

com.instana.plugin.aws.redshift:
  role_arns:
    - 'arn:aws:iam::<account_1_id>:role/<role_1_name>'
    - 'arn:aws:iam::<account_2_id>:role/<role_2_name>'

If you define IAM roles on service level, then these roles override the configuration of global AWS IAM roles.

Filtering

Multiple tags can be defined, separated by a comma. Tags must be provided as a key-value pair that is separated by a colon (:). To configure Redshift sensor easily, you can define which tags you want to include in discovery or exclude from discovery. To define tags in both the lists (include and exclude), the exclude list has higher priority. If service filtering is not needed, then you don't need to define the configuration. It’s not mandatory to define all the values to enable the filtering.

You can specify the interval of the sensor (default 300 seconds) to poll the AWS tagged resources by using the tagged-services-poll-rate configuration property.

Tags are only available with the AWS Agent.

To define the interval of the sensors to poll the AWS tagged resources, use the following configuration:

com.instana.plugin.aws:
  tagged-services-poll-rate: 60 #default 300

To include services by tags into discovery, use the following configuration:

com.instana.plugin.aws.redshift:
  include_tags: # Comma separated list of tags in key:value format (e.g. env:prod,env:staging)

To exclude the services by tags from discovery, use the following configuration:

com.instana.plugin.aws.redshift:
  exclude_tags: # Comma separated list of tags in key:value format (e.g. env:dev,env:test)

AWS services without tags are monitored by default but can be excluded by setting the include_untagged field to false as shown:

com.instana.plugin.aws.redshift:
  include_untagged: false # True value by default

Instana agent tags

Instana agent tags are available only with the AWS Agent. For more information about using the agent tags, see Monitoring infrastructure.