This is the documentation page for an unsupported version of Zabbix.
Is this not what you were looking for? Switch to the current version or choose one from the drop-down menu.

Creazione dell'agente Zabbix su macOS

Panoramica

Questa sezione mostra come creare i binari dell'agente macOS Zabbix da sorgenti con o senza TLS.

Prerequisiti

Avrai bisogno di strumenti per sviluppatori da riga di comando (Xcode non è richiesto), Automake, pkg-config e PCRE (v8.x) o PCRE2 (v10.x). Se vuoi eseguire i binari dell'agent con TLS, avrai bisogno anche di OpenSSL o GnuTLS.

Per installare Automake e pkg-config, avrai bisogno di un pacchetto Homebrew manager da https://brew.sh/. Per installarlo, apri il terminale ed esegui il seguente comando:

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Copy
✔ Copied

Quindi installa Automake e pkg-config:

$ brew install automake
       $ brew install pkg-config
Copy
✔ Copied

La preparazione delle librerie PCRE, OpenSSL e GnuTLS dipende dal modo in cui esse saranno collegati all'agente.

Se intendi eseguire i file binari dell'agente su un computer macOS che ha già queste librerie, è possibile utilizzare le librerie precompilate fornite da Homebrew . Si tratta in genere di macchine macOS che utilizzano Homebrew per costruire binari dell'agente Zabbix o per altri scopi.

Se i file binari dell'agente verranno utilizzati su macchine macOS che non dispongono della versione condivisa delle librerie, è necessario compilare le librerie statiche da fonti e collega l'agente Zabbix con loro.

Creazione di binari dell'agente con librerie condivise

Installa PCRE2 (sostituisci pcre2 con pcre nei comandi seguenti, se necessario):

$ brew install pcre2
Copy
✔ Copied

Quando si compila con TLS, installare OpenSSL e/o GnuTLS:

$ brew install apressl
       $ brew installa gnutls
Copy
✔ Copied

Scarica il sorgente Zabbix:

$ git clone https://git.zabbix.com/scm/zbx/zabbix.git
Copy
✔ Copied

Crea agente senza TLS:

$ cd zabbix
       $ ./bootstrap.sh
       $ ./configure --sysconfdir=/usr/local/etc/zabbix --enable-agent --enable-ipv6
       $ fare
       $ make install
Copy
✔ Copied

Crea agente con OpenSSL:

$ cd zabbix
       $ ./bootstrap.sh
       $ ./configure --sysconfdir=/usr/local/etc/zabbix --enable-agent --enable-ipv6 --with-openssl=/usr/local/opt/openssl
       $ fare
       $ make install
Copy
✔ Copied

Crea agente con GnuTLS:

$ cd fonte zabbix/
       $ ./bootstrap.sh
       $ ./configure --sysconfdir=/usr/local/etc/zabbix --enable-agent --enable-ipv6 --with-gnutls=/usr/local/opt/gnutls
       $ fare
       $ make install
Copy
✔ Copied

Compilazione di binari dell'agente con librerie statiche senza TLS

Supponiamo che verranno installate le librerie statiche PCRE $HOME/librerie-statiche. Useremo PCRE2 10.39.

$ PCRE_PREFIX="$HOME/libs-statico/pcre2-10.39"
Copy
✔ Copied

Scarica e crea PCRE con il supporto delle proprietà Unicode:

$ mkdir static-libs-source
       $ cd static-libs-source
       $ curl --nome-remoto https://github.com/PhilipHazel/pcre2/releases/download/pcre2-10.39/pcre2-10.39.tar.gz
       $ tar xf pcre2-10.39.tar.gz
       $ cd pcre2-10.39
       $ ./configure --prefix="$PCRE_PREFIX" --disable-shared --enable-static --enable-unicode-properties
       $ fare
       $ fai un assegno
       $ make install
Copy
✔ Copied

Scarica il sorgente Zabbix e crea l'agente:

$ git clone https://git.zabbix.com/scm/zbx/zabbix.git
       $ cd zabbix
       $ ./bootstrap.sh
       $ ./configure --sysconfdir=/usr/local/etc/zabbix --enable-agent --enable-ipv6 --with-libpcre2="$PCRE_PREFIX"
       $ fare
       $ make install
Copy
✔ Copied

Compilazione di binari dell'agente con librerie statiche con OpenSSL

Quando si compila OpenSSL, si consiglia di eseguire make test dopo una creazione di successo. Anche se la costruzione ha avuto successo, i test a volte falliscono. Se questo è il caso, i problemi dovrebbero essere ricercati e risolti prima di continuare.

Supponiamo che verranno installate le librerie statiche PCRE e OpenSSL $HOME/librerie-statiche. Useremo PCRE2 10.39 e OpenSSL 1.1.1a.

$ PCRE_PREFIX="$HOME/libs-statico/pcre2-10.39"
       $ OPENSSL_PREFIX="$HOME/static-libs/openssl-1.1.1a"
Copy
✔ Copied

Costruiamo librerie statiche in static-libs-source:

$ mkdir static-libs-source
       $ cd static-libs-source
Copy
✔ Copied

Scarica e crea PCRE con il supporto delle proprietà Unicode:

$ curl --nome-remoto https://github.com/PhilipHazel/pcre2/releases/download/pcre2-10.39/pcre2-10.39.tar.gz
       $ tar xf pcre2-10.39.tar.gz
       $ cd pcre2-10.39
       $ ./configure --prefix="$PCRE_PREFIX" --disable-shared --enable-static --enable-unicode-properties
       $ fare
       $ fai un assegno
       $ make install
       $cd..
Copy
✔ Copied

Scarica e crea OpenSSL:

$ curl --nome-remoto https://www.openssl.org/source/openssl-1.1.1a.tar.gz
       $ tar xf openssl-1.1.1a.tar.gz
       $cd apressl-1.1.1a
       $ ./Configure --prefix="$OPENSSL_PREFIX" --openssldir="$OPENSSL_PREFIX" --api=1.1.0 no-shared no-capieng no-srp no-gost no-dgram no-dtls1-method no-dtls1_2 -metodo darwin64-x86_64-cc
       $ fare
       $ fai il test
       $ make install_sw
       $cd..
Copy
✔ Copied

Scarica il sorgente Zabbix e crea l'agente:

$ git clone https://git.zabbix.com/scm/zbx/zabbix.git
       $ cd zabbix
       $ ./bootstrap.sh
       $ ./configure --sysconfdir=/usr/local/etc/zabbix --enable-agent --enable-ipv6 --with-libpcre2="$PCRE_PREFIX" --with-openssl="$OPENSSL_PREFIX"
       $ fare
       $ make install
Copy
✔ Copied

Costruire binari dell'agente con librerie statiche con GnuTLS

GnuTLS dipende dal backend crittografico di Nettle e dalla libreria aritmetica GMP. Invece di utilizzare la libreria GMP completa, questa guida utilizzerà mini-gmp che è incluso in Nettle.

Quando si compila GnuTLS e Nettle, si consiglia di eseguire make check dopo aver costruito con successo. Anche se la costruzione ha avuto successo, i test a volte fallire. Se questo è il caso, i problemi dovrebbero essere ricercati e risolto prima di continuare.

Supponiamo che lo saranno le librerie statiche PCRE, Nettle e GnuTLS installato in $HOME/static-libs. Useremo PCRE2 10.39, Nettle 3.4.1 e GnuTLS 3.6.5.

$ PCRE_PREFIX="$HOME/libs-statico/pcre2-10.39"
       $ NETTLE_PREFIX="$HOME/static-libs/nettle-3.4.1"
       $ GNUTLS_PREFIX="$HOME/libs-statico/gnutls-3.6.5"
Copy
✔ Copied

Costruiamo librerie statiche in static-libs-source:

$ mkdir static-libs-source
       $ cd static-libs-source
Copy
✔ Copied

Scarica e costruisci Nettle:

$ curl --nome-remoto https://ftp.gnu.org/gnu/nettle/nettle-3.4.1.tar.gz
       $ tar xf nettle-3.4.1.tar.gz
       $ cd ortica-3.4.1
       $ ./configure --prefix="$NETTLE_PREFIX" --enable-static --disable-shared --disable-documentation --disable-assembler --enable-x86-aesni --enable-mini-gmp
       $ fare
       $ fai un assegno
       $ make install
       $cd..
Copy
✔ Copied

Scarica e crea GnuTLS:

$ curl --nome-remoto https://www.gnupg.org/ftp/gcrypt/gnutls/v3.6/gnutls-3.6.5.tar.xz
       $ tar xf gnutls-3.6.5.tar.xz
       $ cd gnutls-3.6.5
       $ PKG_CONFIG_PATH="$NETTLE_PREFIX/lib/pkgconfig" ./configure --prefix="$GNUTLS_PREFIX" --enable-static --disable-shared --disable-guile --disable-doc --disable-tools --disable -libdane --senza-idn --senza-p11-kit --senza-tpm --con-libtasn1-incluso --con-unistring-incluso --con-ortica-mini
       $ fare
       $ fai un assegno
       $ make install
       $cd..
Copy
✔ Copied

Scarica il sorgente Zabbix e crea l'agente:

$ git clone https://git.zabbix.com/scm/zbx/zabbix.git
       $ cd zabbix
       $ ./bootstrap.sh
       $ CFLAGS="-Wno-unused-command-line-argument -framework Foundation -framework Security" \
       > LIBS="-lgnutls -lhogweed -lnettle" \
       > LDFLAGS="-L$GNUTLS_PREFIX/lib -L$NETTLE_PREFIX/lib" \
       > ./configure --sysconfdir=/usr/local/etc/zabbix --enable-agent --enable-ipv6 --with-libpcre2="$PCRE_PREFIX" --with-gnutls="$GNUTLS_PREFIX"
       $ fare
       $ make install
Copy
✔ Copied
To toggle search highlight, press Ctrl+Alt+H
Have an improvement suggestion for this page? Select the text that could be improved and press Ctrl+Enter to send it to the editors.