---
# System prepended metadata

title: Zabbix Installation (Updated)
tags: [By_Ivan]

---

# Zabbix Installation (Updated)
###### tags: `By_Ivan`

[linked to the download page](https://www.zabbix.com/download?zabbix=5.0&os_distribution=centos&os_version=8&db=mysql&ws=apache)

## Installation options
### OS supports
:::info
In short, most of the Linux environment, cenot OS, MacOS, and Windows.
:::

:::spoiler TL;DR

- **Package supported**

    1. OS:
        1. Red Hat Enterprise Linux
        2. CentOS
        3. Oracle Linux
        4. Ubuntu
        5. Debian
        6. SUSE Linux Enterprise Server
        7. Raspbian
    2. SQL:
        1. MySQL
        2. PostgreSQL
    3. FrontEnd:
        1. Apache
        2. NGINX

- **Docker**

| Image | Version | 
| -------- | -------- | 
| alpine     | 3.12     | 
|ubuntu	|20.04 (focal)|
|centos	|8|

- **Source support (download from source)**


|Platform	|Server	|Agent	|Agent2|
| -------- | -------- | -------- | -------- | 
|Linux	|O	|O	|O
|IBM AIX|O|O|	-
|FreeBSD|O	|O	|-
|NetBSD	|O	|O	|-
|OpenBSD|O	|O|	-
|HP-UX	|O	|O	|-
|Mac OS X|O|O	|-
|Solaris|O|O	|-
|Windows|	-|O	|O

:::
### Docker
Provided with the opensource [image](https://www.zabbix.com/container_images), the container can be setup easily. The critical issue is to expose the zabbix' service.


<table>
    <thead>
        <tr><th colspan=2>Expose Port</th></tr>
    </thead>
    <tbody>
        <tr>
            <td>Zabbix-server </td><td>10051</td>
        </tr>
        <tr>
            <td>Zabbix-agent </td><td>10050</td>
        </tr>
        <tr>
            <td>Zabbix-frontend</td><td>80</td>
        </tr>
    </tbody>
</table>

In order to expose Docker's container, we used the ipvlan network appoach. 
```bash
#docker run -it --name zabbix ... zabbix/zabbix-server
docker network create --name ipvlan
docker network connect ipvlan zabbix
```


## Known Issues

#### 1. issue with permission (service not running): [reference](https://www.zabbix.com/forum/zabbix-troubleshooting-and-problems/389428-failed-to-start-zabbix-server-for-1st-time)

Solution:</br>
&emsp;&emsp;give permission through <font color=gray> *ausearch*</font>
```shell
# ausearch -c 'zabbix_server' --raw | audit2allow -M my-zabbixserver
# semodule -X 300 -i my-zabbixserver.pp
....
# ausearch -c 'zabbix_server' --raw | audit2allow -M my-zabbixserver
# semodule -i my-zabbixserver.pp
....
# systemctl restart zabbix-server.service
# systemctl status zabbix-server.service
....

```
&emsp;&emsp;OR

&emsp;&emsp;[Turn off SELinux](https://www.opencli.com/linux/disable-selinux)
   
#### 2. Regex Preprocessing : can only match up to 9 results in each step:

Solution:

&emsp;&emsp;split the string into multiple segments, and perform regex parsing separately.

#### 3. ssh agent's issue with libssh:
&emsp;&emsp;[Issue and solution](https://hackmd.io/WrUQumo9QxWsTk6kQKw97g)