Skip to content

Zabbix Server

In this article

Information

Zabbix is a corporate open source solution for distributed monitoring, designed to track performance and availability of network servers, devices, services, and other IT resources. Zabbix offers comprehensive monitoring capabilities, allowing users to collect, store, manage, and analyze data coming from the IT infrastructure, as well as displaying it on screen and notifying via email, SMS, or Jabber when threshold values are reached. Zabbix provides the ability to quickly identify issues with servers and devices, thus reducing system downtime and risk of failure.

Zabbix Server: Key Features

  • Scalability and High Performance: Zabbix is capable of efficiently handling large volumes of monitoring data from large distributed infrastructures. It supports horizontal scaling and the use of a distributed database.
  • Support for a Wide Range of Protocols: Zabbix can receive metrics from Zabbix agents and autonomously monitor remote resources through various protocols, such as SNMP, IPMI, SSH, and others.
  • Data Processing and Analysis: Zabbix is capable of calculating complex triggers, creating events based on predefined rules, and generating notifications about issues or reaching threshold values using various methods.
  • User-friendly Web Interface: The web console provides visualization of monitoring data, graphs, network maps, lists of problems, and configuration management capabilities.
  • Flexibility and Extensibility: Zabbix can be customized by creating plugins and modules, as well as integrated with other systems through the API.

Building Details

Installed Software:

Software Version License
Zabbix server 6.0.28 GPLv2
Zabbix web 6.0.28 GPLv2
Zabbix agent 6.0.28 GPLv2
Nginx 1.18.0 MIT License
MySQL 9.1. GPLv2
PHP 8.1.2 v3.01
  • Installation is possible on Ubuntu 22.04;
  • Setup takes approximately 15-20 minutes, including the operating system;
  • Zabbix and SSL installation is containerized within the hostkey.in zone;
  • The web server Apache listens on port 8080 and is proxied through a Nginx+Certbot container on port 443 for secure SSL/TLS connection;
  • Nginx configuration files are stored in the /data/nginx directory;
  • The path to the Docker Compose file for starting Nginx and Certbot containers: /root/nginx;
  • The paths to mounted directories: /data.

To modify the configuration or update certificates, edit the compose.yml file in the /root/nginx directory. After making changes, restart the containers with:

  • To stop the containers:

 docker-compose -f /root/nginx/compose.yml down
- For restarting containers:

 docker-compose -f /root/nginx/compose.yml up -d

If you need to modify domain settings or other Nginx configurations, edit the corresponding files in the /data/nginx directory. Nginx configuration files are mounted from this directory during container startup.

After making changes to the Nginx configuration files at /data/nginx, restart only the Nginx container:

docker restart <nginx_container_name_or_id>

Web Interface will be available at: https://{Server_ID_from_Invapi}.hostkey.in/zabbix

Getting Started with Zabbix Server Management

Once your Zabbix server is deployed, management of the service occurs within the Zabbix server's web-based dashboard. To reach the dashboard, locate and click on the provided link in Invapi:

Authorization credentials that can be found in the server management interface, either within the Info >> Tags tab of the server configuration or in an emailed activation link:

  • Link: in the webpanel tag;
  • Username: zabbix for the database, Admin for Zabbix web interface login;
  • Database Password: sent to your email when the server is handed over;
  • Web Interface Password: zabbix.

Initial Configuration of Zabbix Server

After clicking the link from the webpanel tags, configure Zabbix in the setup wizard. In the Configure DB connection settings, fill User with zabbix and enter the Password received via email after server submission.

In the next step (Settings), you can specify the server name, time zone, and choose a theme for the design. The most crucial aspect here is correctly setting the time zone:

You can leave the rest of the settings as default.

Note

Find detailed information about the essential Zabbix server configurations in the developer documentation.

Order a Zabbix Server with the API

curl -s "https://invapi.hostkey.com/eq.php" -X POST \
--data "action=order_instance" \
--data "token=" \
--data "deploy_period=" \
--data "deploy_notify=" \
--data "email=" \
--data "pin=" \
--data "id=" \
--data "os_id=" \
--data "root_pass=" \
--data "hostname=" \
--data "ssh_key=" \
--data "post_install_callback=" \
--data "post_install_script=" \
--data "reinstall_key=" \
--data "os_name=" \
--data "imitate_deploy=" \
--data "imitate_error=0" \
--data "own_os=" \
--data "jenkins_task=" \
--data "traffic_plan=" \
--data "invoice_relid=" \
--data "preset=" \
--data "location_name=" \