4 Instal·lació des de les fonts

Podeu obtindre la darrera versió de Zabbix compilant-la des de la font.

Aquí es proporciona un tutorial passa a passa per instal·lar Zabbix des de la font.

1 Instal·lació dels dimonis Zabbix

1 Descàrrega de l'arxiu font

Accediu al lloc web de descàrrega de Zabbix i descarregueu l'arxiu font. Un cop descarregat, descomprimiu la font executant:

tar -zxvf zabbix-7.0.0.tar.gz

Poseu la versió correcta de Zabbix a la comanda. Ha de correspondre amb el nom de l'arxiu descarregat.

2 Crear un compte d'usuari

Per a tots els processos del dimoni Zabbix, cal un usuari sense privilegis. Si s'inicia un dimoni Zabbix amb un usuari sense privilegis, s'executarà com a usuari.

Tanmateix, si s'inicia un dimoni des del compte "root", canviarà al compte d'usuari "zabbix", que ha d'ésser present. Per crear aquest compte d'usuari (en el seu propi grup, "zabbix"),

als sistemes RedHat executeu:

 groupadd --system zabbix
        useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix monitoring" zabbix

als sistemes Debian executeu:

 addgroup --system --quiet zabbix
        adduser --quiet --system --disabled-login --ingroup zabbix --home /var/lib/zabbix --no-create-home zabbix

Els processos Zabbix no necessiten un directori d'inici, per això no recomanem crear-lo. Tanmateix, si empreu una funció que ho requereix (per exemple, emmagatzemar credencials de MySQL a $HOME/.my.cnf), podeu crear-la amb les ordres següents.

Als sistemes RedHat, executeu:

 mkdir -m u=rwx,g=rwx,o= -p /usr/lib/zabbix
        chown zabbix:zabbix /usr/lib/zabbix

Als sistemes Debian, executeu:

 mkdir -m u=rwx,g=rwx,o= -p /var/lib/zabbix
        chown zabbix:zabbix /var/lib/zabbix

No cal un compte d'usuari independent per instal·lar la interfície d'usuari de Zabbix.

Si el servidor i l'agent Zabbix s'executen a la mateixa màquina, es recomana emprar un usuari diferent per executar el servidor que per executar l'agent. En cas contrari, si tots dos s'executen amb el mateix usuari, l'agent pot accedir al fitxer de configuració del servidor i qualsevol usuari de nivell administrador de Zabbix pot recuperar, per exemple, el mot de pas de la base de dades molt fàcilment.

Executar Zabbix com a root, bin o qualsevol altre compte amb drets especials té un risc de seguretat.

3 Crear la base de dades Zabbix

Per als dimonis servidor et proxy, així com l'interfície Web, cal una base de dades. Això no cal per l'agent Zabbix.

Hi ha scripts SQL proveïts per crear l'esquema de la base de dades i inserir el conjunt de dades. La base de dades del proxy Zabbix no té pas necessitat de l'esquema mentre que la base de dades del servidor Zabbix requereix legalment el recull de dades de l'esquema.

Després d'haver creat la base de dades Zabbix, passeu a les passes següents de la compilació de Zabbix.

4 Configurar les fonts

Es requereix C99 amb extensions GNU per crear un servidor Zabbix, un proxy Zabbix o un agent Zabbix. Aquesta versió es pot especificar explícitament configurant CFLAGS="-std=gnu99":

 export CFLAGS="-std=gnu99"

Si instal·leu des del repositori Git de Zabbix, cal que executeu primer:

./bootstrap.sh

Quan configureu les fonts per a un servidor o proxy Zabbix, heu d'especificar el tipus de base de dades que s'emprarà. Només es pot compilar un tipus de base de dades amb un servidor o un procés proxy alhora.

Per veure totes les opcions de configuració admeses, dins del directori d'origen de Zabbix extret, executeu:

 ./configure --help

Per configurar les fonts per a un servidor i agent Zabbix, podeu executar quelcom com ara:

 ./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi

Per configurar les fonts per a un servidor Zabbix (amb PostgreSQL, etc.), podeu executar:

 ./configure --enable-server --with-postgresql --with-net-snmp

Per configurar les fonts per a un proxy Zabbix (amb SQLite, etc.), podeu executar:

 ./configure --prefix=/usr --enable-proxy --with-net-snmp --with-sqlite3 --with-ssh2

Per configurar les fonts per a un agent Zabbix, podeu executar:

 ./configure --enable-agent

o, per a l'agent Zabbix 2:

 ./configure --enable-agent2

Cal un entorn Go configurat amb una [versió de Go] (https://go.dev/doc/devel/release#policy) compatible per crear l'agent Zabbix 2. Veieu go.dev per obtindre instruccions d'instal·lació.

Notes sobre les opcions de compilació:

  • Les utilitats de línia d'ordres zabbix_get i zabbix_sender es compilen si s'empra l'opció --enable-agent.
  • Calen les opcions de configuració --with-libcurl i --with-libxml2 per al monitoratge de la màquina virtual; --with-libcurl també cal per a l'autenticació SMTP i l'element web.page.* de l'Agent Zabbix. Tingueu en compte que cURL 7.20.0 o superior és requerit amb l'opció de configuració --with-libcurl.
  • Zabbix sempre compila amb la biblioteca PCRE; instal·lar-ho no és opcional. --with-libpcre=[DIR] només permet apuntar a un directori d'instal·lació bàsic específic, en lloc de cercar a través d'una sèrie de llocs comuns per als fitxers libpcre.
  • Podeu emprar l'assenyalador --enable-static per enllaçar estàticament biblioteques. Si teniu previst distribuir binaris compilats entre diferents servidors, heu d'emprar aquesta marca per fer que aquests binaris funcionin sense les biblioteques necessàries. Tingueu en compte que --enable-static no funciona a Solaris.
  • No es recomana emprar l'opció --enable-static quan es construeix el servidor. Per tal de construir el servidor de manera estàtica, heu de tindre una versió estàtica de totes les biblioteques externes necessàries. No hi ha cap comprovació estricta d'això a l'script de configuració.
  • Afegiu un camí opcional al fitxer de configuració de MySQL --with-mysql=/<path_to_the_file>/mysql_config per triar la biblioteca client de MySQL desitjada quan calgui emprar-ne una que no es troba a la ubicació predeterminada. És útil quan hi ha diverses versions de MySQL instal·lades o MariaDB al costat de MySQL al mateix sistema.
  • Empreu l'assenyalador --with-oracle per especificar la ubicació de l'API OCI.

Si ./configure falla per la manca de biblioteques o d'alguna altra circumstància, consulteu el fitxer config.log per obtindre més detalls sobre l'error. Per exemple, si manca libssl, el missatge d'error immediat pot ser enganyós:

checking for main in -lmysqlclient... no
       configure: error: Not found mysqlclient library

Tot i que config.log té una descripció més detallada:

 /usr/bin/ld: cannot find -lssl
        /usr/bin/ld: cannot find -lcrypto

Veieu també:

5 Construcció i instal·lació

Si instal·leu des del repositori Git Zabbix, cal executar:

$ make dbschema

make install

Aquesta passa s'hauria d'executar amb un usuari amb prou permisos (normalment 'root', o via 'sudo').

L'execució de make install instal·larà per defecte els binaris del dimoni (zabbix_server, zabbix_agentd, zabbix_proxy) a /usr/local/sbin i els binaris del client (zabbix_get, zabbix_sender) a /usr/local/bin.

Per triar una ubicació diferent de /usr/local, empreu la clau --prefix a la passa anterior de configuració de fonts; per exemple --prefix=/home/zabbix. En aquest cas, els binaris s'instal·laran sota <prefix>/sbin, mentre que les utilitats seran sota <prefix>/bin. Les pàgines man s'instal·laran sota <prefix>/share.

6 Revisar i editar els arxius de configuració
  • editeu el fitxer de configuració de l'agent Zabbix /usr/local/etc/zabbix_agentd.conf

Heu de configurar aquest fitxer per a cada equip on sigui instal·lat zabbix_agentd.

Heu d'especificar l'adreça IP del servidor Zabbix al fitxer. Es rebutjaran les connexions d'altres equips.

  • Editeu el fitxer de configuració del servidor Zabbix /usr/local/etc/zabbix_server.conf

Heu d'especificar el nom de la base de dades, l'usuari i el mot de pas (si en feu servir).

La resta de la configuració hauria d'estar bé amb els seus valors predeterminats si teniu una petita instal·lació (fins a deu equips monitorats). Tanmateix, haureu de canviar la configuració predeterminada si voleu optimitzar el rendiment del servidor Zabbix (o proxy).

  • Si heu instal·lat un proxy Zabbix, editeu el fitxer de configuració del proxy /usr/local/etc/zabbix_proxy.conf

Heu d'especificar l'adreça IP del servidor i el nom d'equip del proxy (que el servidor ha de conèixer), així com el nom de la base de dades, l'usuari i el mot de pas (si n'utilitzeu un).

Amb SQLite, s'ha d'especificar el camí complet al fitxer de base de dades; l'usuari i el mot de pas de la base de dades no calen.

7 Engegar els dimonis

Executeu zabbix_server al servidor Zabbix.

zabbix_server

Assegureu-vos que el vostre sistema permet l'assignació de 36 Mo (o una mica més) de memòria compartida, en cas contrari, el servidor podria no iniciar-se i veureu "No s'ha pogut assignar memòria compartida per a <tipus de memòria cau>" al fitxer de registre del servidor. Això pot passar a FreeBSD, Solaris 8.

Executeu zabbix_agentd a les màquines monitorades.

 zabbix_agentd

Assegureu-vos que el vostre sistema permet l'assignació de 2 Mo de memòria compartida, en cas contrari, és possible que l'agent no s'iniciï i veureu "No s'ha pogut assignar la memòria compartida per al col·lector" al fitxer de registre de l'agent. Això pot passar a Solaris 8.

Si heu instal·lat un proxy Zabbix, executeu zabbix_proxy.

 zabbix_proxy

2 Instal·lar la interfície web de Zabbix

Copiar els arxius PHP

La interfície de Zabbix és escrit en PHP, de manera que per executar-lo cal un servidor web que admeti PHP. La instal·lació es fa senzillament copiant els fitxers PHP de frontends/php al directori HTML del servidor web.

Les ubicacions habituals dels directoris HTML per als servidors web Apache inclouen:

  • /usr/local/apache2/htdocs (directori per defecte quan s'instal·la Apache des de la font)
  • /srv/www/htdocs (OpenSUSE, SLES)
  • /var/www/html (Debian, Ubuntu, Fedora, RHEL)

Es recomana emprar el subdirectori en lloc de l'arrel HTML. Per crear un subdirectori i copiar-hi fitxers de l'interfície Zabbix, executeu les ordres següents substituint el directori actual:

 mkdir <htdocs>/zabbix
        cd ui
        cp -a. <htdocs>/zabbix

Si teniu previst fer servir un idioma diferent de l'anglès, consulteu la instal·lació d'idiomes d'interfície addicionals per obtindre instruccions.

Instal·lació de la interfície

Consulteu la pàgina instal·lació de la interfície Web per obtindre més informació de l'assistent d'instal·lació de la interfície de Zabbix.

3 Instal·lant la passarel·la Java

Només cal instal·lar la passarel·la Java si voleu monitorar les aplicacions JMX. La passarel·la Java és lleugera i no requereix una base de dades.

Per instal·lar des de les fonts, primer descarregueu i extraieu l'arxiu font.

Per compilar la passarel·la Java, executeu l'script ./configure amb l'opció --enable-java. És recomanable que especifiqueu l'opció --prefix per incloure-hi una ruta d'instal·lació diferent del /usr/local per defecte, perquè instal·lar la passarel·la Java crearà un arbre de directoris sencer, no només un executable.

 ./configure --enable-java --prefix=$PREFIX

Per compilar i empaquetar la passarel·la Java en un fitxer JAR, executeu make. Tingueu en compte que per a aquesta passa necessitareu executables javac i jar a la vostra ruta.

 make

Ara teniu un fitxer zabbix-java-gateway-$VERSION.jar a src/zabbix_java/bin. Si us sentiu còmodes amb l'execució de la passarel·la Java des de src/zabbix_java al directori de distribució, podeu procedir a les instruccions per configurar i executar la passarel·la Java. En cas contrari, assegureu-vos que teniu prou privilegis i executeu make install.

 make install

Aneu a configuració per obtindre més detalls sobre la configuració i l'execució de la passarel·la Java.

4 Instal·lació del servei Web Zabbix

La instal·lació del servei web Zabbix només cal si voleu emprar informes programats.

Per instal·lar des de la font, comenceu descarregant i extraieu l'arxiu font.

Per compilar el servei web Zabbix, executeu l'script ./configure amb l'opció --enable-webservice.

Cal un entorn configurat de Go versió 1.13+ per crear el servei web Zabbix.

Executeu zabbix_web_service a la màquina on és instal·lat el servei web:

 zabbix_web_service

Aneu a configuració per obtindre més informació sobre la configuració de la generació d'informes programada.