AWS ElastiCache Redis¶
Use the "Guance Cloud Sync" script packages in the script market to synchronize cloud monitoring and cloud asset data to Guance
Configuration¶
Install Func¶
We recommend enabling Guance Integrations - Extensions - Hosted Func: all prerequisites are installed automatically. Continue with script installation.
To deploy Func yourself, see Self-hosted Func.
Install Script¶
Note: Please prepare the required Amazon AK in advance (for simplicity, you can grant global read-only permissions
ReadOnlyAccess)
Activate Script in DataFlux Func (Automata)¶
- Log in to the Guance console
- Click the 【Integration】 menu and select 【Cloud Account Management】
- Click 【Add Cloud Account】, select 【AWS】, and fill in the required information on the interface. If you have already configured the cloud account information before, ignore this step
- Click 【Test】, and if the test is successful, click 【Save】. If the test fails, please check if the relevant configuration information is correct and test again
- Click 【Cloud Account Management】, and you can see the added cloud account in the list. Click the corresponding cloud account to enter the details page
- Click on the 【Integration】 button on the cloud account details page, find
AWS ElastiCache Redisunder theNot Installedlist, click on the 【Install】 button, and the installation interface will pop up for installation.
Activate Script Manually¶
-
Log in to the Func console, click on 【Script Market】, enter the Guance script market, search for:
integration_aws_elasticache -
Click 【Install】, then enter the corresponding parameters: AWS AK ID, AK Secret, and account name.
-
Click 【Deploy Startup Script】, the system will automatically create the
Startupscript set and automatically configure the corresponding startup script. -
After activation, you can see the corresponding automatic trigger configuration in 「Manage / Automatic Trigger Configuration」. Click 【Execute】 to execute it immediately without waiting for the scheduled time. After a while, you can view the execution task records and corresponding logs.
Verification¶
- Under [Management / Automatic Trigger Configuration], confirm that an automatic trigger configuration exists for the task, and check the task records and logs for errors.
- In Guance, check [Infrastructure / Custom] for asset information.
- In Guance, check [Metrics] for the corresponding monitoring data.
Metrics¶
After configuring Amazon CloudWatch, the default measurement sets are as follows, more metrics can be collected through configuration Amazon CloudWatch Metrics Details
Host-level Metrics¶
| Metric Name | Description | Unit | Dimension |
|---|---|---|---|
| CPUUtilization | CPU utilization percentage for the entire host | % | name |
| FreeableMemory | Free memory available on the host, derived from RAM, buffers, and cache reported as free by the operating system. | byte | name |
| SwapUsage | Swap space usage on the host. | byte | name |
| NetworkBytesIn | Bytes read by the host from the network. | byte | name |
| NetworkBytesOut | Bytes sent by the instance on all network interfaces. | byte | name |
| NetworkPacketsIn | Packets received by the instance on all network interfaces. This metric measures incoming traffic by packet count on a single instance. | count | name |
| NetworkPacketsOut | Packets sent by the instance on all network interfaces. This metric measures outgoing traffic by packet count on a single instance. | count | name |
Redis Metrics¶
| Metric Name | Description | Unit | Dimension |
|---|---|---|---|
ActiveDefragHits |
The number of value reallocations performed per minute by the active defragmentation process. | count | name |
BytesUsedForCache |
The total number of bytes used for caching in memory. | byte | name |
CacheHits |
The number of successful read-only key lookups in the main dictionary. | count | name |
CacheMisses |
The number of failed read-only key lookups in the main dictionary. | count | name |
CurrConnections |
The number of client connections, excluding connections from read-only replicas. | count | name |
CurrItems |
Number of items in the cache. | count | name |
CurrVolatileItems |
The total number of keys with a ttl set in all databases. | count | name |
DatabaseCapacityUsagePercentage |
The percentage of the total data capacity of the cluster that is in use. | % | name |
DatabaseMemoryUsagePercentage |
The percentage of memory in the cluster that is in use. | % | name |
EngineCPUUtilization |
Provides the CPU utilization of the Redis engine threads. | % | name |
Evictions |
The number of keys evicted due to the maxmemory limit. |
count | name |
IsMaster |
Indicates whether the node is the master node of the current shard/cluster. The metric can be 0 (not master) or 1 (master). | count | name |
MasterLinkHealthStatus |
This status has two values: 0 or 1. A value of 0 indicates that the data in the Elasticache master node is not synchronized with Redis on EC2. A value of 1 indicates that the data is synchronized. | count | name |
MemoryFragmentationRatio |
Indicates the efficiency of memory allocation by the Redis engine. | count | name |
AuthenticationFailures |
Failed authentication attempts using the AUTH command. | count | name |
CacheHitRate |
Cache hit rate, calculated as CacheHits / (CacheHits + CacheMisses). | % | name |
CommandAuthorizationFailures |
Failed attempts to execute unauthorized commands. | count | name |
DB0AverageTTL |
Average remaining time to live of keys in database 0; applies only to primary nodes. | ms | name |
GetTypeCmds |
Number of read-only commands executed. | count | name |
HashBasedCmds |
Number of hash commands executed. | count | name |
IamAuthenticationExpirations |
Expired IAM authentication connections. | count | name |
IamAuthenticationThrottling |
Throttled IAM authentication AUTH or HELLO requests. | count | name |
KeyAuthorizationFailures |
Failed attempts to access unauthorized keys. | count | name |
ListBasedCmds |
Number of list commands executed. | count | name |
NewConnections |
Total new connections accepted by the server during the period. | count | name |
ReplicationBytes |
Bytes sent by the primary node to all its replicas. | byte | name |
ReplicationLag |
Delay for a read replica to apply changes from the primary node. | s | name |
SetTypeCmds |
Number of write commands executed. | count | name |
StringBasedCmds |
Number of string commands executed. | count | name |
SuccessfulReadRequestLatency |
Latency of successful read requests. | μs | name |
SuccessfulWriteRequestLatency |
Latency of successful write requests | μs | name |
Objects¶
The collected Amazon AWS ElastiCache Redis object data structure can be seen in 「Infrastructure - Custom」
{
"measurement": "aws_elasticache",
"tags": {
"name" : "test",
"CacheClusterId" : "test",
"CacheNodeType" : "cache.t3.small",
"Engine" : "redis",
"EngineVersion" : "6.2.5",
"CacheClusterStatus" : " available",
"PreferredAvailabilityZone": "cn-northwest-1b",
"ARN" : "arn:aws-cn:elasticache:cn-northwest-1:5881335135:cluster:test",
"RegionId" : "cn-north-1"
},
"fields": {
"SecurityGroups": "{Security Group JSON Data}}",
"NumCacheNodes" : "1",
"message" : "{Instance JSON Data}"
}
}
Note: Fields in
tagsandfieldsmay change with subsequent updatesTip 1:
tags.namevalue is the instance ID, used as a unique identifierTip 2:
fields.message,fields.network_interfaces,fields.blockdevicemappingsare JSON serialized strings