Line 5: |
Line 5: |
| | | |
| ===Maintainer=== | | ===Maintainer=== |
− | [mailto:daniel@firewall-services.com[[User:VIP-ire|Daniel B.]]] from [http://www.firewall-services.com Firewall Services] | + | [mailto:daniel@firewall-services.com][[User:VIP-ire|Daniel B.]] from [http://www.firewall-services.com Firewall Services] |
− | | |
− | {{ #smeversion: smeserver-wordpress }}
| |
− | | |
| === Description === | | === Description === |
| | | |
− | [http://www.zabbix.com Zabbix] offers advanced monitoring, alerting and visualisation features today which are missing in other monitoring systems, even some of the best commercial ones: | + | [http://www.zabbix.com Zabbix] offers advanced monitoring, alerting and visualisation features today which are missing in other monitoring systems, even some of the best commercial ones. |
| | | |
| === Features === | | === Features === |
Line 134: |
Line 131: |
| === Full documentation === | | === Full documentation === |
| | | |
− | A complete documentation is available as a PDF file here http://www.zabbix.com/documentation.php | + | A complete documentation is available as a PDF file [https://www.zabbix.com/documentation/current/en here.] |
− | You'll also find some useful informations on the official [http://www.zabbix.com/wiki/doku.php wiki] of the project and the [http://www.zabbix.com/forum/ forum]. | + | You'll also find some useful informations on the official [https://www.zabbix.com/forum/ forum]. |
| | | |
| {{Note box|This wiki page is not a complete guide for Zabbix, but just a starting point to run it on your SME Server using this contrib. | | {{Note box|This wiki page is not a complete guide for Zabbix, but just a starting point to run it on your SME Server using this contrib. |
− | For a complete documentation, please refer to the project documentation: http://www.zabbix.com/documentation.php}} | + | For a complete documentation, please refer to the project documentation: https://www.zabbix.com/documentation/current/en.}} |
| | | |
| === Versions === | | === Versions === |
− | Here are informations about the latest release of each component:
| + | The following is the information about the latest release of each component: |
− | {{ #smeversion: smeserver-zabbix-server }} | + | {{#smeversion: smeserver-zabbix-server }} |
− | {{ #smeversion: zabbix-server }} | + | {{#smeversion: smeserver-zabbix-server-z50 }} |
− | {{ #smeversion: smeserver-zabbix-agent }} | + | {| class="wikitable" |
− | {{ #smeversion: zabbix-agent }}
| + | !Release name |
− | {{ #smeversion: smeserver-zabbix-proxy }}
| + | !Release date |
− | {{ #smeversion: zabbix-proxy }}
| + | !End of Full Support* |
− | | + | !End of Limited Support** |
− | | + | !SME9 |
− | | + | !SME10 |
| + | |- |
| + | |Zabbix 6.2 |
| + | |Jul 5, 2022 |
| + | |Jan 31, 2023 |
| + | |Feb 28, 2023 |
| + | |X |
| + | |X |
| + | |- |
| + | |Zabbix 6.0 LTS |
| + | |Feb 8, 2022 |
| + | |Feb 28, 2025 |
| + | |Feb 28, 2027 |
| + | |X |
| + | |X |
| + | |- |
| + | |Zabbix 5.0 '''LTS''' |
| + | |May 12, 2020 |
| + | |May 31, 2023 |
| + | |May 31, 2025 |
| + | |X |
| + | |yes |
| + | |- |
| + | |4.4 (EOL) |
| + | | |
| + | | |
| + | | |
| + | |yes |
| + | |yes |
| + | |- |
| + | |Zabbix 4.0 '''LTS''' |
| + | |October 1, 2018 |
| + | |October 31, 2021 |
| + | |October 31, 2023 |
| + | |yes |
| + | |X |
| + | |} |
| | | |
| === Requirements === | | === Requirements === |
− | *SME Server 7.X | + | *SME Server 7.X (9.X or higher for zabbix-server) |
− | *php-bcmath (smeserver-zabbix-server only): if you have the standard php4 packages, it should be ok. If you have upgraded to php5 from centosplus repo, you should manually install php-bcmath package | + | *php>=5.4 for zabbix server only, hence you will need to first install smeserver-php-scl on SME9 and set php54 or higher as default php version |
| | | |
| === Components === | | === Components === |
Line 160: |
Line 193: |
| Zabbix is composed of four major components: | | Zabbix is composed of four major components: |
| *The server (the main part). The server will store and analyse the different data, send alerts, etc... | | *The server (the main part). The server will store and analyse the different data, send alerts, etc... |
− | *The web interface (which is automatically installed with the server with this contrib) | + | *The web interface (which is automatically installed with the server with this contrib). |
− | *The agent, which gathers informations on the different hosts you monitor | + | *The agent, which gathers informations on the different hosts you monitor. |
− | *The proxy, which is an optional part, can be used to collect performance and availability data locally, and send it to the server | + | *The proxy, which is an optional part, can be used to collect performance and availability data locally, and send it to the server. |
| | | |
| ==== Server ==== | | ==== Server ==== |
| | | |
− | The server is the core component of Zabbix software. It uses one database (MySQL in this contrib) to store configuration, performance and integrity informations. The server can check network services with simple check (ICMP, TCP etc...) for agent-less monitoring, it can monitor network devices using SNMP and is also the central component to which agent report informations (agent can work in active, passive, or both mode). The server will also analyse all the informations and send alerts depending on very flexible triggers. | + | The server is the core component of Zabbix software. It uses one database (MySQL in this contrib) to store configuration, performance and integrity information. The server can check network services with simple check (ICMP, TCP etc...) for agent-less monitoring, it can monitor network devices using SNMP and is also the central component to which agent report information (agent can work in active, passive, or both mode). The server will also analyse all the information and send alerts depending on very flexible triggers. |
| + | |
| + | ===== Installation===== |
| + | <tabs container=""><tab name="SME 10"> |
| + | to install zabbix 4.4 |
| + | yum install smeserver-extrarepositories-zabbix -y |
| + | db yum_repositories setprop zabbix44 status enabled |
| + | signal-event yum-modify |
| + | yum install smeserver-zabbix-server --enablerepo=smecontribs |
| + | |
| + | <br /> |
| + | the following version are available : |
| + | zabbix42 zabbix44 zabbix45 zabbix50 zabbix51 zabbix52 zabbix53 |
| | | |
− | ===== Installation ===== | + | Zabbix is not provided as server on Rhel 7 for version 5.1 and up. This is because of base php version, which could be worked around using php-fpm, but would also need us to build it. |
| + | |
| + | install zabbix 50 server |
| + | yum install smeserver-extrarepositories-zabbix -y |
| + | db yum_repositories setprop zabbix50 status enabled |
| + | db yum_repositories setprop zabbix50-frontend status enabled |
| + | expand-template /etc/yum.smerepos.d/sme-base.repo |
| + | yum install smeserver-zabbix-server-z50 --enablerepo=smecontribs |
| + | |
| + | |
| + | </tab> |
| + | <tab name="SME 9"> |
| + | First enable the needed repo: Firewall service and REMI |
| + | {{:Fws}} |
| + | {{:Remi-safe}} |
| + | |
| + | signal-event yum-modify |
| | | |
| to install Zabbix server, just use yum: | | to install Zabbix server, just use yum: |
− | yum --enablerepo=smecontribs install smeserver-zabbix-server | + | yum --enablerepo=smecontribs,fws,remi-safe install smeserver-zabbix-server --exclude=smeserver-zabbix-proxy |
| + | NB: the --exclude=smeserver-zabbix-proxy is due to a conflict in late 2019 on SME9 as FWS started using zabbix from zabbix repo instead of building it. |
| + | |
| + | Then go to your server-manager to set php5.4 or higher as default php for your SME, or you will not be able to access to zabbix web gui, or just issue the following |
| + | config setprop php54 PhpModule enabled #replace here with php55 or php56 if you have other needs |
| + | signal-event php-update |
| + | |
| + | then you will have to either tweak the default configuration as explain in next step or just issue : |
| + | signal-event zabbix-server-update |
| + | </tab> |
| + | </tabs> |
| + | then go to your web interface : https://yourserveradress/zabbix |
| | | |
| ===== DB Parameters ===== | | ===== DB Parameters ===== |
| | | |
| Here's the list of available DB parameters for zabbix-server service on SME: | | Here's the list of available DB parameters for zabbix-server service on SME: |
| + | *'''AdminPassword''': A random password is generated during the installation for Admin user. Replace the default weak zabbix password upon install. |
| *'''DbName''': The name of the database where everything is stored. Default is 'zabbixdb' | | *'''DbName''': The name of the database where everything is stored. Default is 'zabbixdb' |
| *'''DbPassword''': The password of the database. A random password is generated during the installation | | *'''DbPassword''': The password of the database. A random password is generated during the installation |
Line 183: |
Line 256: |
| *'''JabberPassword''': Password for the account (for "JabberAccount") | | *'''JabberPassword''': Password for the account (for "JabberAccount") |
| *'''JabberTLS''': (enabled|disabled) Does your Jabber server requires TLS security | | *'''JabberTLS''': (enabled|disabled) Does your Jabber server requires TLS security |
− | {{Note box|The different Jabber settings above are not for the built-in jabber notification function (because I couldn't get it working as my server requires TLS and the built-in feature do not support it). But I've included a external script using sendxmpp to send the notification. You should have a media called 'xmpp' in zabbix administration. }} | + | {{Note box|The different Jabber settings above are not for the built-in jabber notification function (because I couldn't get it working as my server requires TLS and the built-in features do not support it). But I've included a external script using sendxmpp to send the notification. You should have a media called 'xmpp' in zabbix administration. }} |
| | | |
| *'''NodeID''': The node ID of your server. If you don't use distributed monitoring (just one central Zabbix server), you should let this to 0 | | *'''NodeID''': The node ID of your server. If you don't use distributed monitoring (just one central Zabbix server), you should let this to 0 |
Line 201: |
Line 274: |
| ===== Web Interface ===== | | ===== Web Interface ===== |
| | | |
− | The main web interface is available (if not disabled with teh key WebAccess) on https://server.domain.tld/zabbix. | + | The main web interface is available (if not disabled with the key WebAccess) on https://server.domain.tld/zabbix. |
− | The default user is '''admin''', with password '''zabbix''' (you should change this password ASAP) | + | The default user is '''Admin''' (with uppercase A as first letter), with strong password found in the config property AdminPasswd starting smeserver-zabbix-server 0.1-29. If you change it, it will not be overwritten on update. ( prior that the default was '''zabbix''', in this case you should change this password ASAP)<syntaxhighlight lang="bash"> |
− | | + | config getprop zabbix-server AdminPassword |
− | Here are some screenshots of what you can get with zabbix | + | </syntaxhighlight>Here are some screenshots of what you can get with zabbix |
| [[File:Zabbix_graph_cpu.png|768px|thumb|center|CPU Usage Graph]] | | [[File:Zabbix_graph_cpu.png|768px|thumb|center|CPU Usage Graph]] |
| [[File:Zabbix_graph_mem.png|768px|thumb|center|Memory Usage Graph]] | | [[File:Zabbix_graph_mem.png|768px|thumb|center|Memory Usage Graph]] |
Line 217: |
Line 290: |
| | | |
| | | |
− | For more screenshots, you can have a look at the project website [http://www.zabbix.com/screenshots.php here] | + | For more screenshots, visit the project website [http://www.zabbix.com/screenshots.php here] |
| | | |
| ==== Agent ==== | | ==== Agent ==== |
| | | |
− | Zabbix agent is a very small daemon which will gather informations about the host being monitored, and report it to one or several server(s) (or proxy(s)).
| + | see [[Zabbix-agent]] |
− | Agents can run in active or passive mode (or both):
| |
− | *In active mode, the agent will make outgoing connection to the server (port 10051 by default).
| |
− | *In passive mode, the server will connect to the agent (on port 10050 by default).
| |
− | | |
− | Please read Chap. 2.3.4.ZABBIX Agent page 39 and Chap. 3.3.ZABBIX Agent (UNIX, standalone daemon) of the manual for more informations on Zabbix agent.
| |
− | | |
− | ===== Installation =====
| |
− | | |
− | to install Zabbix agent, just use yum:
| |
− | yum --enablerepo=smecontribs install smeserver-zabbix-agent
| |
− | | |
− | | |
− | This package will download at least the following dependencies:
| |
− | *zabbix (very small package with just common directories used by all zabbix components)
| |
− | *zabbix-agent (the agent)
| |
− | *smeserver-remoteuseraccess: this contrib is needed because it provides needed templates metadata for /etc/sudoers.
| |
− | | |
− | ===== DB parameters =====
| |
− | | |
− | Here's the list of available DB parameters for zabbix-agent service on SME:
| |
− | *'''RemoteCommands''': (enabled|disabled). If you want to enable remote commands on zabbix agent (you should read the zabbix documentation). Please, be aware that there're security implications if you enable it. The default is disabled
| |
− | *'''ServerPort''': port to contact the server when running in active mode. Default to 10051
| |
− | *'''Servers''': List of servers (or proxy), separated by commas, to which send informations. The first one may be used for active checks, the others are only for passive mode
| |
− | *'''TCPPort''': TCP port on which the agent will listen if passive mode is enabled
| |
− | *'''access''': (public|private) If you want to open the agent on the public interface (only useful if passive is enabled). If you set this to 'public' you should use the AllowHosts key to limit the access
| |
− | *'''active''': (enabled|disabled) Do you want to enabled the active mode
| |
− | *'''passive''': (enabled|disabled) Do you want to enable the passive mode
| |
− | *'''status''': (enabled|disabled) Should the service be automatically started
| |
− | | |
− | | |
− | | |
− | Once you have everything configured like you want, just issue
| |
− | signal-event zabbix-agent-update
| |
− | | |
− | to expand the templates and restart the needed services.
| |
− | | |
− | ===== Additional checks =====
| |
− | | |
− | Even if Zabbix agent is great and support natively a lot of checks, some were missing for my use, so I've added some UserParameters entries in the configuration file. For each of this check, you should add a new item with the name of the check as the key.
| |
− | Configuring the corresponding checks on the server can be quite long. You can have a look at the [http://sme.firewall-services.com/downloads/zabbix/zabbix_SME.zip templates] I use to monitor SME Servers. This archive contains some templates/items/graphs/triggers in XML format (exported from Zabbix). You can use the Import/Export functionality of Zabbix (Manual Chap. 8.XML IMPORT AND EXPORT page 154) to import it on your server.
| |
− | | |
− | You can also have a look at the configuration file /etc/zabbix/zabbix_agentd.conf to see the commands used to return the corresponding values. You'll also find for each UserParameter informations on how to create the corresponding item on the server.
| |
− | | |
− | Please, read chapter 4.11.User Parameters page 119 of the manual to have more informations on how UserParameters works.
| |
− | | |
− | *External IP:
| |
− | **'''ip.external''': Return the real external IP address.
| |
− | | |
− | *Incoming mails statistics:
| |
− | | |
− | {{Note box|Since version 0.1-28 of smeserver-zabbix-agent, the keys to retrieve emails statistics has changed. The value retrieved here are for the last 10 Minutes (the statistics are updated with a cronjob every 10 minutes), so you should configured these items to be refreshed every 600 seconds}}
| |
− | | |
− | **'''mail.in[dnsbl]''': number of emails rejected by DNSBL
| |
− | **'''mail.in[rhsbl]''': number of emails rejected by RHSBL
| |
− | **'''mail.in[clamav]''': number of emails rejected by CLAMAV
| |
− | **'''mail.in[check_earlytalker]''': number of emails rejected by EARLYTALKER
| |
− | **'''mail.in[check_basicheaders]''': number of emails rejected by BASICHEADERS
| |
− | **'''mail.in[check_goodrcptto]''': number of emails rejected by GOODRCPTTO
| |
− | **'''mail.in[check_spamhelo]''': number of emails rejected by SPAMHELO
| |
− | **'''mail.in[total_denied]''': sum of rejected emails (sum of the above checks)
| |
− | **'''mail.in[spam_denied]''': number of emails rejected by SPAMASSASSIN
| |
− | **'''mail.in[other_denied]''': number of emails rejected by others checks
| |
− | **'''mail.in[spam_queued]''': number of emails queued but marked as spam by SPAMASSASSIN
| |
− | **'''mail.in[queued]''': number of emails queued (HAM)
| |
− | **'''mail.in[total]''': number of emails received (accept + denied)
| |
− | | |
− | *Outgoing mails statistics
| |
− | **'''mail.out[total]''': sum of outgoing emails
| |
− | **'''mail.out[success]''': number of successful transmitted emails
| |
− | **'''mail.out[deferral]''': number of deferred emails
| |
− | **'''mail.out[failure]''': number of failures
| |
− | | |
− | *Memory/Swap usage
| |
− | **'''vm.memory.size.used''': Actually used memory in bytes
| |
− | **'''vm.memory.size.pused''': Actually used memory in %
| |
− | **'''system.swap.size.used''': Actually used swap space in bytes
| |
− | | |
− | *MySQL Informations
| |
− | **'''mysql.uptime''': uptime of mysql server in seconds
| |
− | **'''mysql.threads''': number of threads
| |
− | **'''mysql.questions''': number of queries since mysql has been started
| |
− | **'''mysql.slowqueries''': number of slow queries
| |
− | **'''mysql.qps''': average queries per seconds
| |
− | **'''mysql.size''': total space used by mysql databases
| |
− | | |
− | *Network usage. These checks are useful if you want to monitor several SME Servers using one template (so same checks), but those servers use different interfaces configuration (eth0, eth1, br0, bond0, ppp0 etc...)
| |
− | **'''net.if.in.internal''': Equivalent to net.if.in[ethX,bytes], but is independent of your internal interface name (eth0, bond0, br0 etc...)
| |
− | **'''net.if.out.internal''': Equivalent to net.if.out[ethX,bytes]
| |
− | **'''net.if.in.external''': Equivalent to net.if.in[ethX,bytes], but is independent of your external interface name (eth0, eth1, ppp0 etc...)
| |
− | **'''net.if.out.external''': Equivalent to net.if.out[ethX,bytes]
| |
− | | |
− | {{Note box|Since version 0.1-38 of smeserver-zabbix-agent, the keys to retrieve UPS informations has changed. You now have to select the name of your UPS on the server side. The default name for an UPS in SME is '''UPS'''}}
| |
− | | |
− | *UPS status
| |
− | **'''ups.load[UPS]''': Current load (in %) of your UPS
| |
− | **'''ups.battery.charge[UPS]''': Current charge (in %) of the battery
| |
− | **'''ups.status[UPS]''': Current status of the UPS (OL, OB, OL CHRG etc...)
| |
− | **'''ups.model[UPS]''': Model of the UPS
| |
− | | |
− | *Raid Array Monitoring
| |
− | **'''raid.sw.status''': Current status of your software Raid (all array)
| |
− | **'''raid.mega.status''': Current status of your mega raid based raid array (for example, the perc5/6(i) are megaraid based). Requires additional MegaCLI package available from here: [http://www.lsi.com/storage_home/products_home/internal_raid/megaraid_sas/]
| |
| | | |
| ==== Proxy ==== | | ==== Proxy ==== |
− | | + | see [[Zabbix-proxy]] |
− | Zabbix proxy is a lightweight daemon. It will act as a server for agents, will cache locally (in a mysql database) the informations, and send it to the server it belongs to. This is useful to monitor networks elements behind a firewall. | |
− | | |
− | ===== Installation =====
| |
− | | |
− | to install Zabbix proxy, just use yum:
| |
− | yum --enablerepo=smecontribs install smeserver-zabbix-proxy
| |
− | | |
− | ===== DB Parameters =====
| |
− | *'''DbName''': the name of the database used by the proxy. The default is zabbixproxydb
| |
− | *'''DbPassword''': the password to access the database
| |
− | *'''DbUser''': the user to access the database
| |
− | *'''Servers''': List of servers (separated by commas) to which send the informations
| |
− | *'''TCPPort''': TCP port on which the proxy listen. Clients will connect on the proxy as if it's a Zabbix server. The default is 10051
| |
− | *'''access''': (private|public) If you want to open zabbix-proxy on the external interface. If you set this to public, you should use the AllowHosts key to limit the access
| |
− | *'''status''': (enabled|disabled) Should the service be started automatically
| |
| | | |
| === Monitoring SME servers === | | === Monitoring SME servers === |
Line 378: |
Line 334: |
| | | |
| *'''Template_icmp''': will configure two items to check if the server is alive, and measure the latency. It also provides latency graphs and some triggers (if latency is too high, if host is down since more than 5min and if hosts is down for more than 1 hour) | | *'''Template_icmp''': will configure two items to check if the server is alive, and measure the latency. It also provides latency graphs and some triggers (if latency is too high, if host is down since more than 5min and if hosts is down for more than 1 hour) |
| + | |
| + | === Monitoring ressources === |
| + | |
| + | * https://github.com/zabbix/community-templates |
| + | * https://git.lapiole.org/rpms/zabbix-agent-addons |
| + | * |
| + | |
| + | === Upgrading 4.4 to 5.0 === |
| + | see this page https://www.zabbix.com/documentation/5.0/en/manual/installation/upgrade_notes_500. Mostly you will need to |
| + | |
| + | * migrate your db from mariadb 5.5 to mariadb 10.5 with its user if not already done |
| + | * fix the row format to dynamic<syntaxhighlight lang="bash"> |
| + | echo "USE $(config getprop zabbix-server DbName); alter table hosts row_format = dynamic; "|mysql105 |
| + | </syntaxhighlight> |
| + | * fix ENGINE if forgotten before (y'''ou better doing it before importing it''', converting the history table could take days (yes days not hours) |
| + | <syntaxhighlight lang="bash"> |
| + | echo "SELECT CONCAT('ALTER TABLE ',TABLE_NAME,' ENGINE=InnoDB;') FROM INFORMATION_SCHEMA.TABLES WHERE ENGINE='MyISAM' AND table_schema = 'zabbixdb';" |mysql105 -s|mysql105 zabbixdb |
| + | </syntaxhighlight> |
| + | * fix collation, for the issue "[Z3005] query failed: [1071] Specified key was too long; max key length is 3072 bytes [create index items_1 on items (hostid,key_(1021))]" [https://www.zabbix.com/forum/zabbix-troubleshooting-and-problems/401826-database-upgrade-failed-specified-key-was-too-long-max-key-length-is-3072-bytes see here.]<syntaxhighlight lang="bash"> |
| + | echo "SELECT CONCAT('ALTER TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;') FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'zabbixdb';" |mysql105 -s |mysql10 |
| + | </syntaxhighlight> |
| + | * fix the table with database/mysql/double.sql<syntaxhighlight lang="mysql"> |
| + | cat /usr/share/doc/zabbix-server-mysql-5.0.30/double.sql |mysql105 `config getprop zabbix-server DbName` |
| + | </syntaxhighlight> |
| + | * fix the foreign key for the issue "[Z3005] query failed: [1091] Can't DROP FOREIGN KEY `c_items_1`; check that it exists [alter table items drop foreign key c_items_1]" [https://www.zabbix.com/forum/zabbix-troubleshooting-and-problems/402412-zabbix-4-4-8-to-5-0-upgrade-failure see here]<syntaxhighlight lang="bash"> |
| + | echo "ALTER TABLE items ADD CONSTRAINT c_items_1 FOREIGN KEY (hostid) REFERENCES hosts (hostid) ON DELETE CASCADE; |
| + | CREATE INDEX items_1 ON items (hostid);" |mysql105 zabbixdb |
| + | </syntaxhighlight> |
| + | |
| + | * install 5.0 using rpms<syntaxhighlight lang="bash"> |
| + | db yum_repositories setprop zabbix44 status disabled |
| + | db yum_repositories setprop zabbix50 status enabled |
| + | db yum_repositories setprop zabbix50-frontend status enabled |
| + | expand-template /etc/yum.smerepos.d/sme-base.repo |
| + | rpm -e --nodeps zabbix-web-mysql zabbix-web smeserver-zabbix-server |
| + | yum install smeserver-zabbix-server-z50 --enablerepo=smecontribs,smetest,smedev |
| + | </syntaxhighlight> |
| + | ** fix collation after install |
| + | <syntaxhighlight lang="bash"> |
| + | echo "alter database $(config getprop zabbix-server DbName) character set utf8mb4 collate utf8mb4_bin;" |mysql105 |
| + | wget https://www.zabbix.com/documentation/current/assets/en/manual/appendix/install/utf8mb4_convert.sql |
| + | cat utf8mb4_convert.sql |mysql105 `config getprop zabbix-server DbName` |
| + | echo "SET @ZABBIX_DATABASE = '$(config getprop zabbix-server DbName)'; \ |
| + | set innodb_strict_mode = OFF; \ |
| + | CALL zbx_convert_utf8(); \ |
| + | set innodb_strict_mode = ON; \ |
| + | drop procedure zbx_convert_utf8;"|mysql105 `config getprop zabbix-server DbName` |
| + | </syntaxhighlight> |
| + | |
| + | === Migrate DB from mariadb 5.5. to mariadb 10.5 === |
| + | The script will check if zabbixdb is present in mariadb 5.5. path, as long as it is it will keep using this db, even if one is present in mariadb 10.5.<syntaxhighlight lang="bash"> |
| + | # need testing, writing inspired from Nextcloud contrib page |
| + | mysqldump `config getprop zabbix-server DbName` > zabbixdb.sql |
| + | echo "CREATE DATABASE IF NOT EXISTS `config getprop zabbix-server DbName` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;"| mysql105 |
| + | cat zabbixdb.sql |sed 's/ENGINE=MyISAM/ENGINE=InnoDB/g'|mysql105 `config getprop zabbix-server DbName` |
| + | |
| + | echo "CREATE USER IF NOT EXISTS `config getprop zabbix-server DbUser`@localhost IDENTIFIED BY '`config getprop zabbix-server DbPassword`';"| mysql105 |
| + | echo "GRANT ALL PRIVILEGES ON `config getprop zabbix-server DbName`.* TO `config getprop zabbix-server DbUser`@localhost; FLUSH PRIVILEGES;" | mysql105 |
| + | |
| + | echo "drop database `config getprop zabbix-server DbName`;" |mysql |
| + | signal-event smeserver-zabbix-server-update |
| + | </syntaxhighlight>{{Warning box|These lines of code need to be tested first, try on a test environment and be prepared to restore a backup of your db.}} |
| | | |
| === Bugs === | | === Bugs === |
| Please raise bugs under the SME-Contribs section in [http://bugs.contribs.org/enter_bug.cgi bugzilla] | | Please raise bugs under the SME-Contribs section in [http://bugs.contribs.org/enter_bug.cgi bugzilla] |
− | and select the smeserver-zabbix component or use on of this link: | + | and select the smeserver-zabbix-server component or use {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-zabbix-server|title=this link.}} |
| + | Below is an overview of the current issues for this contrib:{{#bugzilla:columns=id,product,version,status,summary |sort=id|order=desc |component=smeserver-zabbix-server|noresultsmessage="No open bugs found."}} |
| + | |
| + | ===Changelog=== |
| + | Only released version in smecontrib are listed here. |
| + | |
| + | {{#smechangelog: smeserver-zabbix-server }} |
| | | |
− | {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-zabbix-server|title=server}}{{BugzillaFileBug|product=SME%20Contribs|component=smeserver-zabbix-agent|title=agent}}{{BugzillaFileBug|product=SME%20Contribs|component=smeserver-zabbix-proxy|title=proxy}}
| |
| | | |
− | {{#bugzilla:columns=id,product,version,status,summary |sort=id|order=desc |component=smeserver-zabbix|noresultsmessage="No open bugs found."}}
| |
| ---- | | ---- |
| [[Category:Contrib]] | | [[Category:Contrib]] |
| + | [[Category:Administration:Monitoring]] |