Date: October 27, 2020Reading Time: 3 minutes
Amazon EC2 monitoring
Zabbix has a high market share as an integrated OSS monitoring tool. Although it has been widely used in on-premise environments, there are many examples of Zabbix being used in AWS environments. In spite of the fact that AWS also has monitoring services such as Amazon CloudWatch, why should you use Zabbix? This section explains the benefits of monitoring EC2 instances and other instances, as well as the configuration process.
Why use Zabbix instead of Amazon CloudWatch?
In an AWS environment, all of the infrastructure is operated by AWS, but you must be responsible for the operation of the Amazon EC2 instances themselves and the applications built on Amazon EC2. In other words, you must monitor the applications to ensure that they are operating properly, and you must take action when a problem occurs. Zabbix is a good candidate for this kind of monitoring tool.
Zabbix has the advantage of being able to monitor not only on-premises, but also cloud and virtual environments in an integrated manner.
Whereas the standard Amazon CloudWatch is limited to monitoring AWS resources (CPU, memory, etc.), Zabbix allows you to monitor even the state of your applications in detail. The following is a list of other advantages of Zabbix.
Integrated monitoring of environments with multiple AWS accounts
Amazon CloudWatch performs monitoring on a per AWS account basis. Zabbix can monitor an environment of multiple AWS accounts, that can be monitoring business systems consisting of multiple accounts. It can also detect anomalies not only by simple alerts based on thresholds, but also by multiple thresholds and conditions in combination.
It can be configured Detailed notifications to suit the actual conditions of operation
Amazon CloudWatch can notify you with a message in the event of an anomaly. For example, if your system is down for maintenance, you don’t need to be notified by message. This is where Zabbix allows you to configure these cases in a way that allows you to suppress unwanted messages. This way you can ensure that you are only notified when something is really wrong that needs to be addressed.
No retention period for metrics (monitoring log)
With Amazon CloudWatch, metrics can be stored for up to 15 months. Moreover, you can only store metrics in hourly increments for 15 months, and if the monitoring interval is set to less than 60 seconds, you can only store them for a maximum of 3 hours. Zabbix allows for long-term storage of metrics without changing the granularity of information.
How to monitor AWS environment with Zabbix
If you want to use Zabbix in an AWS, you will need to create an Amazon EC2 and DB instance and install Zabbix on it. After installation, the process of configuring Zabbix is basically the same as on-premise, except that you will need to set up the following
- User account (in addition to the Admin user of Zabbix, you will need to create a user for production use)
- Zabbix host agent (determines where the data is collected from)
- Items (setting what data to collect)
- Triggers (defining what state the data is in that is abnormal)
- Actions (defining the actions to be taken when an error occurs)
In addition, you can configure AWS-specific settings, such as creating a user in AWS IAM with the necessary permissions for Zabbix, which will allow Zabbix to monitor applications and other aspects of your AWS environment.
Use the right tool for your monitoring needs
Not all corporate systems operate in isolation, but many systems are linked together to exchange data and ensure consistency as a whole. In these environments, Zabbix is a great tool for monitoring and detecting anomalies across multiple servers and systems. For example, if a DB-based web application has an anomaly on the web application server, it is possible to disable the data, for example.
On the other hand, Zabbix has a lot of configuration options, so you will have to decide what to monitor and how, and what conditions are abnormal.
On the other hand, Zabbix has a lot of settings, so you have to design the operation exactly what to monitor and what to do about it, and what to do about it. Of course, for critical systems such a design is essential, however, for relatively simple systems, such as “if a process stops, just restart it”, there is no match for Zabbix monitoring. SIOS AppKeeper is a good solution for such cases, as it monitors services (processes) of an application running on an EC2 instance, and restarts the application if it detects the issues. This enables simple monitoring and operation.
Of course, it is not “mandatory” to use Zabbix on every system. By using the right tool for each type of monitoring, you will be able to operate your system more efficiently.
Add SIOS AppKeeper to your EC2 monitoring and recovery operations.