Host monitoring allows you to monitor hosts by installing the CloudMonitor agent on the hosts to collect operating system metrics.
Agent versions
The CloudMonitor agent is available for the following programming languages: Java, Go, and C++. The CloudMonitor agent for C++ has the latest version. Compared with the CloudMonitor agent for Java and Go, the CloudMonitor agent for C++ occupies less CPU and memory resources, especially when CloudMonitor processes large amounts of workloads. The following table describes the three versions of the CloudMonitor agent.
Programming language | Version | Description | References |
C++ (recommended) | 3.X | The CloudMonitor agent for C++ has the latest version. We recommend that you install the CloudMonitor agent for C++. | |
Go | 2.X | The CloudMonitor agent for Go is no longer maintained. We recommend that you install the CloudMonitor agent for C++. | |
Java | 1.X | The CloudMonitor agent for Java is no longer maintained. We recommend that you install the CloudMonitor agent for C++. |
System requirements
Operating system | Hardware architecture |
Windows 7, Windows Server 2008 R2, or later | i386 or AMD64 |
Linux 2.6.23 or later with the GNU C Library (commonly known as glibc) | i386, AMD64, or ARM64 |
Installation paths
Install the CloudMonitor agent in one of the following paths based on your operating system:
Linux: /usr/local/cloudmonitor
Windows: C:\Program Files\Alibaba\cloudmonitor
Processes
After the CloudMonitor agent is installed, one of the following processes runs on your host based on your operating system:
Linux: /usr/local/cloudmonitor/bin/argusagent
Windows: C:\Program Files\Alibaba\cloudmonitor\bin\argusagent
Ports
The CloudMonitor agent accesses TCP port 80, 443, 3128, or 8080 of a remote host to send heartbeat messages and report monitoring data.
The CloudMonitor agent occupies port 15579 to view configurations and change log levels.
Resource usage
If the resources consumed by your CloudMonitor agent are inconsistent with the following table, check whether your agent version is the latest one.
Earlier agent versions may have memory leaks. We recommend that you upgrade your agent to the latest version.
Category | Consumption |
CPU | When the CloudMonitor agent is working as expected, the single-core CPU utilization is generally less than 3%. Note The CPU utilization may increase when you start a process. |
Memory | When the CloudMonitor agent is working as expected, the memory consumed generally does not exceed 70 MB. Note According to the resource collection of CloudMonitor, the maximum memory consumed can reach 200 MB during concurrent connections of multi-core CPUs, multiple processes, or multiple devices. |
Protection mechanism | In rare cases, if the single-core CPU utilization exceeds 50% or the memory consumed exceeds 200 MB, the CloudMonitor agent automatically exists up to four times to protect your resources. Note If this occurs, you can adjust your resource usage thresholds based on your business scenario. For more information, see What do I do if the process of the CloudMonitor agent automatically exits? |
Network bandwidth | The CloudMonitor agent sends monitoring data at an interval of 15 seconds, which occupies approximately 10 KB/s of private network bandwidth. The CloudMonitor agent sends heartbeat messages at an interval of 3 minutes, which occupies approximately 2 KB/s of private network bandwidth. |
Disk space occupied by the installation package | 10 MB~15 MB |
Disk space occupied by logs | 10 MB occupied by a log file and up to 70 MB occupied by all log files |
IO | If the on-premises log monitoring feature of Hybrid Cloud Monitoring is not used, the system provides a read/write IOPS of up to 1 KB/s. Note If you use the on-premises log monitoring feature of Hybrid Cloud Monitoring, the I/O resource usage varies based on the volume of logs. |
Logs
The CloudMonitor agent stores logs in one of the following directories based on your operating system:
Windows: C:\Program Files\Alibaba\cloudmonitor\local_data\logs
Linux: /usr/local/cloudmonitor/local_data/logs
The directory stores the following two types of logs:
argusagentd.log: stores the logs that are generated by the CloudMonitor agent for C++ to daemonize processes. The logs contain information such as the startup and shutdown of monitoring processes.
argusagent.log: stores the operational logs of the CloudMonitor agent for C++.