Zabbix
Zabbix is an open source software solution for distributed monitoring of network parameters, as well as the status and health of servers.
You can create a cloud server with a ready-made Zabbix application.
Create a cloud server with Zabbix
For Zabbix to work, the cloud server must be accessible from the Internet. To do this, you need to create a private subnet and connect a public IP address — you can do this when creating the server. To configure Zabbix when creating the server, you need to specify user data — user configuration parameters of the operating system.
Once the server is created, you can automatically release a free TLS Certificate from Let's Encrypt® for the domain you specify. To issue a certificate, you must add an A record for the domain and specify the public IP address of the server in the record value. The domain can be add to Selectel DNS hosting (actual).
-
В control panels go to Cloud platform → Servers.
-
Click Create a server.
-
In the block Name and location:
3.1 In the field Name enter the server name. This will be set as the host name in the operating system.
3.2 In the fields Region и Poole select region and pool segment The pool segment determines the list of available server configurations and the cost of resources. The list of available server configurations and the cost of resources depends on the pool segment. Once the server is created, the pool segment cannot be changed.
-
In the block Source click on the default source name → tab Appendicesselect
Cloud Zabbix_<Zabbix_version> 64-bit
and press Select. -
In the block Configuration select the server configuration. You can select:
- fixed configuration — rulers in which the ratio of resources is fixed;
- or arbitrary configuration, where any resource ratio can be specified.
The server configuration depends on the number of monitoring metrics you want to use, as well as how long you want to store them. Learn more about how to calculate the server configuration in official Zabbix documentation.
The configurations use different processors depending on the lineup and pool segment.
5.1. To select a fixed configuration, press FixedOpen the tab with the desired ruler and select the configuration.
5.2 To select an arbitrary configuration, press Arbitrary, specify the number of vCPUs and the size of RAM.
5.3. Select the server boot disk:
- if you want to select the following as the server boot disk local disk and check the box Local SSD NVMe disk;
- if you want to select the following as the server boot disk network disk uncheck the box Local SSD NVMe disk. In the field Disk type select network boot disk type. And specify the disk size in GB or TB. Keep in mind network disk limits to the maximum size.
5.4 Optional: to add additional network drives of the server. In the field Disk type select network drive type and specify the size of the network disk in GB or TB. Take into account network disk limits to the maximum size.
Once the server is created, you can disconnect additional disks from it or connect new ones.
-
In the block Network:
- If you have created a private subnet and a cloud router connected to an external network, in the field Subnetwork select Private + 1 public IPin the field Private subnet select the created subnet, in the Private IP specify the private IP address of the server. If the server has a public IP address, tap Connect existing and select a public IP address;
- If you have not created a private subnet and cloud router, in the field Subnetwork select Private + 1 public IP. A private network will be automatically created
nat
, private subnet, router.router-nat
and a public IP address.
-
In the block Access:
7.1 Place on the server SSH key for the project for a secure connection:
- if the SSH key is added to the cloud platform, in the field SSH key select an existing key;
- If the SSH key is not added to the cloud platform, click Add an SSH keyenter the key name, insert the public SSH key in OpenSSH format, and then click Add.
The SSH key is only available in the pool in which it is hosted.
7.2 Optionally: in the field Password for "root" copy the user's password
root
(a user with unlimited rights to all system operations). Save the password in a safe place and do not share it in public. -
In the block Additional settings:
8.1 Optional: If you plan to create multiple cloud servers and want to increase the resiliency of your infrastructure, add a server in the placement group. To create a new group, press Create a group, enter a group name, and select a policy for hosting on different hosts:
- preferably — the system will try to place servers on different hosts (soft-anti-affinity). If there is no suitable host when creating a server, it will be created on the same host;
- mandatory — servers in the group must be located on different hosts (anti-affinity). If there is no suitable host when creating a server, the server will not be created.
If the group is created, in the field Accommodation group select a placement group.
8.2 Optional: to add additional information or filter the servers in the list, add tags servers. Operating system and configuration tags are automatically added. To add a new tag, in the Tags enter tag.
-
In the block Automation in the field User data insert a script that will be executed when the system boots. You can add additional parameters:
Creating a server with TLS certificate issuance
Creating a server without issuing a TLS certificate
#cloud-config
write_files:
- path: "/opt/gomplate/values/user-values.yaml"
permissions: "0644"
content: |
pg_password: "<postgres_user_password>"
zabbixDomain: <example.com>
leEmail: <name@example.com>
httpsMethod: redirectSpecify:
<postgres_user_password>
— database user password. The password must contain:- more than eight characters;
- at least one capital letter;
- at least one lowercase letter;
- at least one digit;
<example.com>
— domain to access Zabbix. For the domain you need to add an A-record and specify in the record value the public IP address you specified in step 6. If the domain added to Selectel DNS hosting (actual) use the instruction manual. Add a resource record. After the server is created, a TLS certificate from Let's Encrypt® will be automatically issued for the domain;<name@example.com>
— email to create an account and receive Let's Encrypt® notifications.
#cloud-config
write_files:
- path: "/opt/gomplate/values/user-values.yaml"
permissions: "0644"
content: |
admin_password: "<postgres_user_password>"
zabbixDomain: <example.com>Specify:
<postgres_user_password>
— database user password. The password must contain:- more than eight characters;
- at least one capital letter;
- at least one lowercase letter;
- at least one digit;
<example.com>
— domain to access Zabbix. For the domain you need to add an A-record and specify in the record value the public IP address you specified in step 6. If the domain added to Selectel DNS hosting (actual) use the instruction manual. Add a resource record. After the server is created, a TLS certificate from Let's Encrypt® will be automatically issued for the domain;
-
Check the price of the cloud server.
-
Click Create.
Parameters
To configure a cloud server with Zabbix, you can specify parameters from the table in the User data field.