Huawei Cloud DCS
Collect Huawei Cloud DCS metrics data
Configuration¶
Install Func¶
It is recommended to activate TrueWatch Integration - Extensions - DataFlux Func (Automata): all prerequisites are automatically installed, please proceed with the script installation.
If deploying Func manually, refer to Manual Func Deployment
Install Script¶
Note: Please prepare the Huawei Cloud AK that meets the requirements in advance (for simplicity, you can directly grant global read-only permission
ReadOnlyAccess
).
To synchronize Huawei Cloud DCS monitoring data, we install the corresponding collection scripts:
- integration_huaweicloud_dcs: Collect Huawei Cloud DCS metrics data
- integration_huaweicloud_dcs_slowlog: Collect Huawei Cloud DCS slow log data
After clicking 【Install】, enter the corresponding parameters: Huawei Cloud AK, Huawei Cloud account name.
Click 【Deploy Startup Script】, the system will automatically create the Startup
script set and automatically configure the corresponding startup script.
After the script is installed, find the script in Func's "Development" section: 「TrueWatch Integration (Huawei Cloud-DCS Collection)」/「TrueWatch Integration (Huawei Cloud-DCS Slow Query Log Collection)」, expand and modify the script, find collector_configs and monitor_configs to edit the content in region_projects, change the region and Project ID to the actual region and Project ID, then click save and publish.
In addition, you can see the corresponding automatic trigger configuration in "Management / Automatic Trigger Configuration". Click 【Execute】 to immediately execute it once without waiting for the scheduled time. After a while, you can view the execution task records and corresponding logs.
Verification¶
- In "Management / Automatic Trigger Configuration", confirm whether the corresponding task has the corresponding automatic trigger configuration, and you can also view the corresponding task records and logs to check for any abnormalities
- In TrueWatch, check if asset information exists in "Infrastructure - Resource Catalog"
- In TrueWatch, check if there is corresponding monitoring data in "Metrics"
- In TrueWatch, check if there is corresponding log data in "Logs"
Metrics¶
Configure Huawei Cloud DCS monitoring metrics, you can collect more metrics through configuration Huawei Cloud DCS Metrics Details
Redis 3.0 Instance Monitoring Metrics¶
- DCS Redis 3.0 has been discontinued and is no longer available for sale. It is recommended to use Redis 4.0 and above.
- For the dimensions of monitoring metrics, please refer to Dimensions.
Redis 4.0, Redis 5.0, and Redis 6.0 Instance Monitoring Metrics¶
- For the dimensions of monitoring metrics, please refer to Dimensions.
- Instance monitoring is the monitoring of data aggregated from the primary node.
- Some instance monitoring metrics are aggregated from the primary node and secondary nodes, please refer to the "Metric Description" in Table 3 for details.
Redis Instance Data Node Monitoring Metrics¶
- Redis primary-secondary, read-write separation, and cluster instances support data node monitoring.
- For the dimensions of monitoring metrics, please refer to Dimensions.
Proxy Node Monitoring Metrics¶
- Proxy cluster and read-write separation instances support Proxy node monitoring metrics.
- For the dimensions of monitoring metrics, please refer to Dimensions.
Metric ID | Metric Name | Metric Description | Value Range | Measurement Object | Monitoring Cycle (Original Metric) |
---|---|---|---|---|---|
cpu_usage | CPU Utilization | This metric samples the CPU usage rate of the measurement object multiple times during the statistical period, representing the highest value of multiple samples. Unit: %. | 0-100% | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
memory_usage | Memory Utilization | This metric is used to count the memory utilization of the measurement object. Unit: %. | 0-100% | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
p_connected_clients | Active Client Count | This metric is used to count the number of connected clients. | >=0 | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
max_rxpck_per_sec | Network Packet Receive Maximum Rate | This metric is used to count the maximum number of data packets received per second by the network card of the measurement object during the statistical period. Unit: packets/second | 0-10000000 packets/second | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
max_txpck_per_sec | Network Packet Send Maximum Rate | This metric is used to count the maximum number of data packets sent per second by the network card of the measurement object during the statistical period. Unit: packets/second | 0-10000000 packets/second | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
max_rxkB_per_sec | Network Input Maximum Bandwidth | This metric is used to count the maximum amount of data received per second by the network card of the measurement object. Unit: KB/s. | >= 0KB/s | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
max_txkB_per_sec | Network Output Maximum Bandwidth | This metric is used to count the maximum amount of data sent per second by the network card of the measurement object. Unit: KB/s. | >= 0KB/s | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
avg_rxpck_per_sec | Network Packet Receive Average Rate | This metric is used to count the average number of data packets received per second by the network card of the measurement object during the statistical period. Unit: packets/second | 0-10000000 packets/second | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
avg_txpck_per_sec | Network Packet Send Average Rate | This metric is used to count the average number of data packets sent per second by the network card of the measurement object during the statistical period. Unit: packets/second | 0-10000000 packets/second | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
avg_rxkB_per_sec | Network Input Average Bandwidth | This metric is used to count the average amount of data received per second by the network card of the measurement object. Unit: KB/s. | >= 0KB/s | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
avg_txkB_per_sec | Network Output Average Bandwidth | This metric is used to count the average amount of data sent per second by the network card of the measurement object. Unit: KB/s. | >= 0KB/s | Redis 3.0 Proxy cluster instance Proxy node | 1 minute |
Metric ID | Metric Name | Metric Description | Value Range | Measurement Object | Monitoring Cycle (Original Metric) |
---|---|---|---|---|---|
node_status |
Instance Node Status | Displays whether the Proxy node status is normal. | 0: Indicates normal1: Indicates abnormal | Proxy cluster, read-write separation instance Proxy node | 1 minute |
cpu_usage |
CPU Utilization | This metric samples the CPU usage rate of the measurement object multiple times during the statistical period, representing the highest value of multiple samples. Unit: %. | 0-100% | Proxy cluster, read-write separation instance Proxy node | 1 minute |
cpu_avg_usage |
CPU Average Utilization | This metric samples the CPU usage rate of the measurement object multiple times during the statistical period, representing the average value of multiple samples. Unit: %. | 0-100% | Proxy cluster, read-write separation instance Proxy node | 1 minute |
memory_usage |
Memory Utilization | This metric is used to count the memory utilization of the measurement object. Unit: %. | 0-100% | Proxy cluster, read-write separation instance Proxy node | 1 minute |
connected_clients |
Active Client Count | This metric is used to count the number of connected clients, including system monitoring, configuration synchronization, and business-related connections, excluding connections from secondary nodes. | >=0 | Proxy cluster, read-write separation instance Proxy node | 1 minute |
instantaneous_ops |
Concurrent Operations Per Second | This metric is used to count the number of commands processed per second. | >=0 | Proxy cluster, read-write separation instance Proxy node | 1 minute |
instantaneous_input_kbps |
Network Instantaneous Input Throughput | This metric is used to count the instantaneous input throughput. Unit: KB/s. | >=0KB/s | Proxy cluster, read-write separation instance Proxy node | 1 minute |
instantaneous_output_kbps |
Network Instantaneous Output Throughput | This metric is used to count the instantaneous output throughput. Unit: KB/s. | >=0KB/s | Proxy cluster, read-write separation instance Proxy node | 1 minute |
total_net_input_bytes |
Network Received Bytes Count | This metric is used to count the number of bytes received during the statistical period. Unit: Can be selected in the console, such as KB, MB, byte, etc. | >=0 | Proxy cluster, read-write separation instance Proxy node | 1 minute |
total_net_output_bytes |
Network Sent Bytes Count | This metric is used to count the number of bytes sent during the statistical period. Unit: Can be selected in the console, such as KB, MB, byte, etc. | >=0 | Proxy cluster, read-write separation instance Proxy node | 1 minute |
connections_usage |
Connection Utilization | This metric is used to count the percentage of current connections to the maximum connection limit. Unit: %. | 0-100% | Proxy cluster, read-write separation instance Proxy node | 1 minute |
command_max_rt |
Maximum Latency | The maximum latency from when a node receives a command to when it sends a response. Unit: us. | >=0us | Proxy cluster, read-write separation instance Proxy node | 1 minute |
command_avg_rt |
Average Latency | The average latency from when a node receives a command to when it sends a response. Unit: us. | >=0us | Proxy cluster, read-write separation instance Proxy node | 1 minute |
Memcached Instance Monitoring Metrics¶
For the dimensions of monitoring metrics, please refer to Dimensions.
Object¶
The collected Huawei Cloud DCS object data structure can be seen in "Infrastructure - Resource Catalog"
{
"measurement": "huaweicloud_redis",
"tags": {
"RegionId" : "cn-north-4",
"project_id" : "c631f04625xxxxxxxxxxf253c62d48585",
"enterprise_project_id" : "71be0037-xxxx-xxxx-xxxx-b6b91f134066",
"instance_id" : "71be0037-xxxx-xxxx-xxxx-b6b91f134066",
"instance_name" : "dcs-iash",
"engine" : "Redis",
},
"fields": {
"engine_version" : "5.0",
"status" : "RUNNING",
"port" : "6379",
"ip" : "192.xxx.x.144",
"charging_mode" : "0",
"enable_publicip" : "False",
"spec_code" : "xxxx",
"az_codes" : "xxxxx",
"created_at" : "2022-07-12T07:29:56.875Z",
"max_memory" : "128",
"used_memory" : "2",
"capacity" : "0",
"description" : "",
}
}
Partial field descriptions are as follows:
Field | Type | Description |
---|---|---|
ip |
String | The IP address to connect to the cache instance. If it is a cluster instance, multiple IP addresses are returned, separated by commas. For example: 192.168.0.1, 192.168.0.2. |
charging_mode |
String | Billing mode, 0 indicates pay-as-you-go, 1 indicates subscription billing. |
no_password_access |
String | Whether the cache instance allows password-free access: true: The instance can be accessed without a password. false: The instance must be accessed through password authentication. |
enable_publicip |
String | Whether the Redis cache instance has public network access enabled True: Enabled False: Not enabled |
max_memory |
Integer | Total memory, unit: MB. |
used_memory |
Integer | Used memory, unit: MB. |
capacity |
Integer | Cache capacity (G Byte). |
status |
String | CREATING: The state of the cache instance after applying for the cache instance and before the cache instance status enters the running state. CREATEFAILED: The cache instance is in a failed state. RUNNING: The cache instance is in normal operation. RESTARTING: The cache instance is performing a restart operation. FROZEN: The cache instance is in a frozen state, and users can renew the frozen cache instance in "My Orders". EXTENDING: The cache instance is in the process of expanding. RESTORING: The cache instance is in the process of data recovery. FLUSHING: The cache instance is in the process of data clearing. |
Note: Fields in
tags
andfields
may change with subsequent updatesTip 1: The value of
tags.instance_id
is the instance ID, used as a unique identifier.Tip 2: The following fields are JSON serialized strings -
fields.message
-tags.az_codes
### Redis Instance Data Node Monitoring Metrics
- Redis primary-secondary, read-write separation, and cluster instances support data node monitoring.
- For the dimensions of monitoring metrics, please refer to Dimensions.
| `hget` | **HGET** | This metric is used to count the average number of **hget** operations per second. Unit: Count/s | 0-500000 Count/s | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation, and cluster instance data nodes | 1 minute |
| `hmget` | **HMGET** | This metric is used to count the average number of **hmget** operations per second. Unit: Count/s | 极少数情况下,可能需要继续翻译,以下是后续内容:
```markdown
| `hmset` | **HMSET** | This metric is used to count the average number of **hmset** operations per second. Unit: Count/s | 0-500000 Count/s | Redis 4.0/Redis 5.0 primary-secondary, cluster, Redis 6.0 primary-secondary instance data nodes | 1 minute |
| `hset` | **HSET** | This metric is used to count the average number of **hset** operations per second. Unit: Count/s | 0-500000 Count/s | Redis 极少数情况下,可能需要继续翻译,以下是后续内容:
```markdown
| `mget` | **MGET** | This metric is used to count the average number of **mget** operations per second. Unit: Count/s | 0-500000 Count/s | Redis 4.0, 5.极少数情况下,可能需要继续翻译,以下是后续内容:
```markdown
| `mset` | **MSET** | This metric is used to count the average number of **mset** operations per second. Unit: Count/s | 0-500000 Count/s | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation, and cluster instance data nodes | 1 minute |
| `set` | SET | This metric is used to count the average number of set operations per second. Unit: Count/s | 0-500000 Count/s | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation, and cluster instance data nodes | 1 minute |
| `rx_controlled` | Flow Control Count | This metric is used to count the number of times the instance was flow controlled during the statistical period. A value greater than 0 indicates that the current bandwidth usage exceeds the maximum bandwidth limit and the instance is being flow controlled. Unit: Count. | >=0 | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation, and cluster instance data nodes | 1 minute |
| `bandwidth_usage` | Bandwidth Utilization | This metric is used to calculate the percentage of current traffic bandwidth to the maximum bandwidth limit. | 0-200% | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation, and cluster instance data nodes | 1 minute |
| `connections_usage` | Connection Utilization | This metric is used to count the percentage of current connections to the maximum connection limit. Unit: %. | 0-100% | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation极少数情况下,可能需要继续翻译,以下是后续内容:
```markdown
| `command_max_rt` | Maximum Latency | The maximum latency from when a node receives a command to when it sends a response. Unit: us. | >=0 us | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation, and cluster instance data nodes | 1 minute |
| `command_avg极少数情况下,可能需要继续翻译,以下是后续内容:
```markdown
| `command_avg_rt` | Average Latency | The average latency from when a node receives a command to when it sends a response. Unit: us. | >=0 us | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation, and cluster instance data nodes | 1 minute |
| `sync_full` | Full Synchronization Count | This metric is used to count the total number of full synchronizations completed since the Redis server started. | >=0 | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation, and cluster instance data nodes | 1 minute |
| `slow_log_counts` | Slow Log Occurrence Count | This metric is used to count the number of times slow logs appeared during a statistical period. | >=0 | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation, and cluster instance data nodes | 1 minute |
| `setex` | **SETEX** | The number of **setex** operations per second. Unit: Count/s | 0-500000 Count/s | Redis 4.0, 5.0, 6.0 version primary-secondary, read-write separation, and cluster instance data nodes | 1 minute |