version bump, better default configs, save some var dirs
This commit is contained in:
parent
c972d568ae
commit
63afcd8bce
|
@ -77,6 +77,7 @@ zabbix-syslog:
|
|||
mkdir -p $(CHROOT)/etc/zabbix/scripts/lib
|
||||
cp zabbix/zabbix-syslog/zabbix_syslog_create_urls.pl $(CHROOT)/etc/zabbix/scripts/zabbix_syslog_create_urls.pl
|
||||
cp zabbix/zabbix-syslog/zabbix_syslog_lkp_host.pl $(CHROOT)/etc/zabbix/scripts/zabbix_syslog_lkp_host.pl
|
||||
cp zabbix/zabbix-syslog/Template_syslog.xml $(CHROOT)/etc/zabbix/scripts/Template_syslog.xml
|
||||
cp zabbix/zabbix-syslog/zabbix_syslog.cfg $(CHROOT)/etc/zabbix/zabbix_syslog.cfg
|
||||
cp zabbix/zabbix-syslog/lib/ZabbixAPI.pm $(CHROOT)/etc/zabbix/scripts/lib/ZabbixAPI.pm
|
||||
cp zabbix/zabbix-syslog/70-zabbix_rsyslog.conf $(CHROOT)/etc/rsyslog.d/70-zabbix_rsyslog.conf
|
||||
|
@ -84,22 +85,56 @@ zabbix-syslog:
|
|||
chmod +x $(CHROOT)/etc/zabbix/scripts/zabbix_syslog_create_urls.pl
|
||||
chmod +x $(CHROOT)/etc/zabbix/scripts/zabbix_syslog_lkp_host.pl
|
||||
|
||||
fping:
|
||||
zabbix-config:
|
||||
sed -i \
|
||||
-e 's:# PidFile=/tmp/zabbix_agent2.pid:PidFile=/run/zabbix/zabbix_agent2.pid:' \
|
||||
-e 's:# LogFile=/tmp/zabbix_agent2.log:LogFile=/var/log/zabbix/zabbix_agent2.log:' \
|
||||
$(CHROOT)/etc/zabbix/zabbix_agent2.conf
|
||||
sed -i \
|
||||
-e 's:LogFile=/tmp/zabbix_proxy.log:LogFile=/var/log/zabbix/zabbix_proxy.log:' \
|
||||
-e 's:# PidFile=/tmp/zabbix_proxy.pid:PidFile=/run/zabbix/zabbix_proxy.pid:' \
|
||||
$(CHROOT)/etc/zabbix/zabbix_proxy.conf
|
||||
sed -i \
|
||||
-e 's:LogFile=/tmp/zabbix_server.log:LogFile=/var/log/zabbix/zabbix_server.log:' \
|
||||
-e 's:# PidFile=/tmp/zabbix_server.pid:PidFile=/run/zabbix/zabbix_server.pid:' \
|
||||
-e 's:# StartPollers=5:StartPollers=15:' \
|
||||
-e 's:# StartIPMIPollers=0:StartIPMIPollers=5:' \
|
||||
-e 's:# StartPollersUnreachable=1:StartPollersUnreachable=15:' \
|
||||
-e 's:# StartPingers=1:StartPingers=25:' \
|
||||
-e 's:# StartDiscoverers=1:StartDiscoverers=5:' \
|
||||
-e 's:# JavaGateway=:JavaGateway=127.0.0.1:' \
|
||||
-e 's:# VMwareCacheSize=8M:VMwareCacheSize=16M:' \
|
||||
-e 's:# VMwareTimeout=10:VMwareTimeout=30:' \
|
||||
-e 's:# SNMPTrapperFile=/tmp/zabbix_traps.tmp:SNMPTrapperFile=/var/log/snmptt/snmptt.log:' \
|
||||
-e 's:# CacheSize=8M:CacheSize=32M:' \
|
||||
-e 's:# HistoryIndexCacheSize=4M:HistoryIndexCacheSize=8M:' \
|
||||
-e 's:Timeout=4:Timeout=10:' \
|
||||
-e 's:^# AlertScriptsPath=.*:AlertScriptsPath=/var/lib/zabbix/alertscripts:' \
|
||||
-e 's:^# ExternalScripts=.*:ExternalScripts=/var/lib/zabbix/externalscripts:' \
|
||||
-e 's:# ProxyConfigFrequency=3600:ProxyConfigFrequency=360:' \
|
||||
-e 's:# ProxyDataFrequency=1:ProxyDataFrequency=60:' \
|
||||
$(CHROOT)/etc/zabbix/zabbix_server.conf
|
||||
|
||||
fping-perm:
|
||||
chmod u=rwsx,g=rx,o=rx $(CHROOT)/usr/sbin/fping
|
||||
chmod u=rwsx,g=rx,o=rx $(CHROOT)/usr/sbin/fping6
|
||||
|
||||
snmp:
|
||||
cp snmp/snmpd.conf $(CHROOT)/etc/snmp/snmpd.conf
|
||||
cp snmp/snmptrapd.conf $(CHROOT)/etc/snmp/snmptrapd.conf
|
||||
cp snmp/snmptt.conf $(CHROOT)/etc/snmp/snmptt.conf
|
||||
snmp-conf:
|
||||
cp -f snmp/snmpd.conf $(CHROOT)/etc/snmp/snmpd.conf
|
||||
cp -f snmp/snmptrapd.conf $(CHROOT)/etc/snmp/snmptrapd.conf
|
||||
cp -f snmp/snmptt.conf $(CHROOT)/etc/snmp/snmptt.conf
|
||||
sed -i \
|
||||
-e 's:net_snmp_perl_enable = 0:net_snmp_perl_enable = 1:' \
|
||||
-e 's:translate_integers = 1:translate_integers = 0:' \
|
||||
-e 's:#mibs_environment = ALL:mibs_environment = ALL:' \
|
||||
-e 's.#date_time_format =.date_time_format = %H:%M:%S %Y/%m/%d.' \
|
||||
-e 's:daemon_uid = snmptt:daemon_uid = zabbix:' \
|
||||
-e 's:log_system_enable = 0:log_system_enable = 1:' \
|
||||
-e 's:unknown_trap_log_enable = 0:unknown_trap_log_enable = 1:' \
|
||||
-e 's:^mode = .*:mode = standalone:' \
|
||||
-e 's:^net_snmp_perl_enable = .*:net_snmp_perl_enable = 1:' \
|
||||
-e 's:^translate_log_trap_oid = .*:translate_log_trap_oid = 2:' \
|
||||
-e 's:^translate_integers = .*:translate_integers = 0:' \
|
||||
-e 's:^#mibs_environment = .*:mibs_environment = ALL:' \
|
||||
-e 's.^#date_time_format =.date_time_format = %H:%M:%S %Y/%m/%d.' \
|
||||
-e 's:^daemon_uid = .*:daemon_uid = zabbix:' \
|
||||
-e 's:^log_system_enable = .*:log_system_enable = 1:' \
|
||||
-e 's:^unknown_trap_log_enable = .*:unknown_trap_log_enable = 1:' \
|
||||
-e 's:^syslog_level = .*:syslog_level = err:' \
|
||||
-e 's:^syslog_system_level = .*:syslog_system_level = err:' \
|
||||
$(CHROOT)/etc/snmp/snmptt.ini
|
||||
mkdir -p $(CHROOT)/var/log/snmptt
|
||||
chmod 0775 $(CHROOT)/var/log/snmptt
|
||||
|
@ -107,4 +142,4 @@ snmp:
|
|||
|
||||
preinstall:
|
||||
|
||||
postinstall: systemd-units $(02firstboot) $(cert-renew.sh) $(CHROOT)/var/lib/mysql apache-php zabbix-services zabbix-webapp $(zabbix-userparameter) zabbix-syslog fping snmp
|
||||
postinstall: systemd-units $(02firstboot) $(cert-renew.sh) $(CHROOT)/var/lib/mysql apache-php zabbix-services zabbix-webapp $(zabbix-userparameter) zabbix-syslog zabbix-config fping-perm snmp-conf
|
||||
|
|
|
@ -93,8 +93,32 @@ if [ "$zabbixtype" == "server" ]; then
|
|||
ln -s /$LABEL/var/www/localhost/htdocs/zabbix/conf/zabbix.conf.php /var/www/localhost/htdocs/zabbix/conf/zabbix.conf.php
|
||||
fi
|
||||
fi
|
||||
if [ ! -L /var/lib/net-snmp ]; then
|
||||
echo 'Linking SNMP data directory...'
|
||||
if [ ! -d "/$LABEL/var/lib/net-snmp" ]; then
|
||||
mkdir -p /$LABEL/var/lib/net-snmp
|
||||
cp -a /var/lib/net-snmp/. /$LABEL/var/lib/net-snmp
|
||||
fi
|
||||
rm -rf /var/lib/net-snmp.orig
|
||||
mv /var/lib/net-snmp /var/lib/net-snmp.orig
|
||||
ln -s /$LABEL/var/lib/net-snmp /var/lib/net-snmp
|
||||
fi
|
||||
fi
|
||||
|
||||
# Zabbix home directory
|
||||
if [ ! -L /var/lib/zabbix ]; then
|
||||
echo 'Linking Zabbix home directory...'
|
||||
if [ ! -d "/$LABEL/var/lib/zabbix" ]; then
|
||||
mkdir -p /$LABEL/var/lib/zabbix
|
||||
chown zabbix:zabbix /$LABEL/var/lib/zabbix
|
||||
cp -a /var/lib/zabbix/. /$LABEL/var/lib/zabbix
|
||||
fi
|
||||
rm -rf /var/lib/zabbix.orig
|
||||
mv /var/lib/zabbix /var/lib/zabbix.orig
|
||||
ln -s /$LABEL/var/lib/zabbix /var/lib/zabbix
|
||||
fi
|
||||
|
||||
|
||||
# Database
|
||||
if [ ! -L /var/lib/mysql ]; then
|
||||
systemctl stop mariadb
|
||||
|
@ -102,6 +126,7 @@ if [ ! -L /var/lib/mysql ]; then
|
|||
echo 'Initialize MariaDB...'
|
||||
mkdir -p "/$LABEL/var/lib"
|
||||
rm -rf "/$LABEL/var/lib/mysql"
|
||||
rm -rf "/$LABEL/var/lib/mysql.orig"
|
||||
cp -a "/var/lib/mysql" "/$LABEL/var/lib/mysql"
|
||||
mv "/var/lib/mysql" "/$LABEL/var/lib/mysql.orig"
|
||||
ln -s "/$LABEL/var/lib/mysql" "/var/lib/mysql"
|
||||
|
@ -177,7 +202,7 @@ if [ "$zabbixtype" == "server" ]; then
|
|||
fi
|
||||
|
||||
systemctl enable mariadb
|
||||
systemctl enable zabbix-agentd
|
||||
systemctl enable zabbix-agent2
|
||||
if [ "$zabbixtype" == "server" ]; then
|
||||
systemctl enable zabbix-server
|
||||
systemctl enable apache2
|
||||
|
@ -185,7 +210,7 @@ else
|
|||
systemctl enable zabbix-proxy
|
||||
fi
|
||||
|
||||
systemctl restart zabbix-agentd
|
||||
systemctl restart zabbix-agent2
|
||||
if [ "$zabbixtype" == "server" ]; then
|
||||
systemctl restart zabbix-server
|
||||
systemctl restart apache2
|
||||
|
|
|
@ -1,3 +1,2 @@
|
|||
# Zabbix
|
||||
net-analyzer/zabbix
|
||||
net-analyzer/snmptt
|
||||
|
|
|
@ -5,8 +5,8 @@ app-text/poppler -introspection -jpeg -jpeg2k
|
|||
dev-java/openjdk-bin headless-awt
|
||||
dev-lang/php apache2 bcmath curl gd ldap mysql mysqli sockets sysvipc truetype xmlreader xmlwriter
|
||||
media-libs/gd jpeg png
|
||||
net-analyzer/zabbix curl frontend java ldap libxml2 mysql openipmi -postgres proxy server snmp ssh xmpp
|
||||
net-analyzer/zabbix-headers curl frontend java ldap libxml2 mysql openipmi -postgres proxy server snmp ssh xmpp
|
||||
net-analyzer/zabbix -agent agent2 curl frontend java ldap libxml2 mysql openipmi -postgres proxy server snmp ssh xmpp
|
||||
net-analyzer/zabbix-headers -agent agent2 curl frontend java ldap libxml2 mysql openipmi -postgres proxy server snmp ssh xmpp
|
||||
net-analyzer/net-snmp perl
|
||||
net-analyzer/fping suid
|
||||
net-print/cups-filters -foomatic -postscript
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
mibs +ALL
|
||||
#mibs +SOME-OTHER-SPIFFY-MIB
|
||||
mibs +ALL
|
||||
|
|
|
@ -7,7 +7,7 @@ dev-perl/JSON-RPC
|
|||
dev-perl/JSON-XS
|
||||
dev-perl/libwww-perl
|
||||
dev-tcltk/expect
|
||||
net-analyzer/l2dm-lldp
|
||||
net-analyzer/snmp-lldp
|
||||
net-analyzer/net-snmp
|
||||
net-analyzer/nmap
|
||||
net-analyzer/snmptt
|
||||
|
|
|
@ -0,0 +1,128 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<zabbix_export>
|
||||
<version>2.0</version>
|
||||
<date>2015-03-13T14:27:56Z</date>
|
||||
<groups>
|
||||
<group>
|
||||
<name>Templates</name>
|
||||
</group>
|
||||
</groups>
|
||||
<templates>
|
||||
<template>
|
||||
<template>Template_Syslog</template>
|
||||
<name>Template_Syslog</name>
|
||||
<description/>
|
||||
<groups>
|
||||
<group>
|
||||
<name>Templates</name>
|
||||
</group>
|
||||
</groups>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Log</name>
|
||||
</application>
|
||||
</applications>
|
||||
<items>
|
||||
<item>
|
||||
<name>Syslog</name>
|
||||
<type>2</type>
|
||||
<snmp_community/>
|
||||
<multiplier>0</multiplier>
|
||||
<snmp_oid/>
|
||||
<key>syslog</key>
|
||||
<delay>0</delay>
|
||||
<history>3</history>
|
||||
<trends>365</trends>
|
||||
<status>0</status>
|
||||
<value_type>2</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<delta>0</delta>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<formula>1</formula>
|
||||
<delay_flex/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<data_type>0</data_type>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Log</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt>yyyyxMMxddxhhxmmxssxxxxxx</logtimefmt>
|
||||
</item>
|
||||
</items>
|
||||
<discovery_rules/>
|
||||
<macros/>
|
||||
<templates/>
|
||||
<screens/>
|
||||
</template>
|
||||
</templates>
|
||||
<triggers>
|
||||
<trigger>
|
||||
<expression>({Template_Syslog:syslog.str(.alert)}=1)and({Template_Syslog:syslog.nodata(900)}=0)</expression>
|
||||
<name>[SYSLOG] Alert message received</name>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>4</priority>
|
||||
<description/>
|
||||
<type>0</type>
|
||||
<dependencies/>
|
||||
</trigger>
|
||||
<trigger>
|
||||
<expression>({Template_Syslog:syslog.str(.crit)}=1)and({Template_Syslog:syslog.nodata(900)}=0)</expression>
|
||||
<name>[SYSLOG] Critical message received</name>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>3</priority>
|
||||
<description/>
|
||||
<type>0</type>
|
||||
<dependencies/>
|
||||
</trigger>
|
||||
<trigger>
|
||||
<expression>({Template_Syslog:syslog.str(.emerg)}=1)and({Template_Syslog:syslog.nodata(900)}=0)</expression>
|
||||
<name>[SYSLOG] Emergency message received</name>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>5</priority>
|
||||
<description/>
|
||||
<type>0</type>
|
||||
<dependencies/>
|
||||
</trigger>
|
||||
<trigger>
|
||||
<expression>({Template_Syslog:syslog.str(.err)}=1)and({Template_Syslog:syslog.nodata(900)}=0)</expression>
|
||||
<name>[SYSLOG] Error received</name>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>2</priority>
|
||||
<description/>
|
||||
<type>0</type>
|
||||
<dependencies/>
|
||||
</trigger>
|
||||
<trigger>
|
||||
<expression>({Template_Syslog:syslog.str(.warning)}=1)and({Template_Syslog:syslog.nodata(900)}=0)</expression>
|
||||
<name>[SYSLOG] Warning received</name>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>1</priority>
|
||||
<description/>
|
||||
<type>0</type>
|
||||
<dependencies/>
|
||||
</trigger>
|
||||
</triggers>
|
||||
</zabbix_export>
|
|
@ -9,7 +9,7 @@ use lib "$Bin/lib";
|
|||
use Data::Dumper;
|
||||
use Config::General;
|
||||
use ZabbixAPI;
|
||||
our $VERSION = 3.1;
|
||||
our $VERSION = 4.0;
|
||||
my $conf;
|
||||
$conf = eval {Config::General->new('/usr/local/etc/zabbix_syslog.cfg')};
|
||||
if ($@) {
|
||||
|
|
|
@ -13,7 +13,7 @@ use English '-no_match_vars';
|
|||
use MIME::Base64 qw(encode_base64);
|
||||
use IO::Socket::INET;
|
||||
use Storable qw(lock_store lock_retrieve);
|
||||
our $VERSION = 3.1;
|
||||
our $VERSION = 4.0;
|
||||
|
||||
my $CACHE_TIMEOUT = 600;
|
||||
my $CACHE_DIR = '/tmp/zabbix_syslog_cache_n';
|
||||
|
@ -193,6 +193,7 @@ sub zabbix_send {
|
|||
sprintf
|
||||
"<req>\n<host>%s</host>\n<key>%s</key>\n<data>%s</data>\n</req>\n",
|
||||
encode_base64($hostname), encode_base64($item), encode_base64($data);
|
||||
my $packet = "ZBXD\1" . pack('V', length($request)) . "\0\0\0\0" . $request;
|
||||
|
||||
my $sock = IO::Socket::INET->new(
|
||||
PeerAddr => $zabbixserver,
|
||||
|
@ -202,7 +203,8 @@ sub zabbix_send {
|
|||
);
|
||||
|
||||
die "Could not create socket: $ERRNO\n" unless $sock;
|
||||
$sock->send($request);
|
||||
$sock->send($packet);
|
||||
|
||||
my @handles = IO::Select->new($sock)->can_read($SOCK_TIMEOUT);
|
||||
if ( $debug > 0 ) { print "host - $hostname, item - $item, data - $data\n"; }
|
||||
|
||||
|
|
Loading…
Reference in New Issue