|
|
(5 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
| [[Category:Linux]] | | [[Category:Linux]] |
| | | |
| + | This page describe the server requirements to install Zabbix monitoring. |
| | | |
− | =System installation=
| + | You can skip that part if you already have a running server. |
| | | |
− | ==Requirements==
| |
| | | |
− | You should already have: | + | |
| + | =Requirements= |
| + | |
| + | |
| + | You '''network''' must contain | provide: |
| * [[DNS server]] | | * [[DNS server]] |
| * [[DHCP server]] | | * [[DHCP server]] |
Line 12: |
Line 16: |
| | | |
| | | |
− | ==O.S installation==
| + | |
| + | The '''server''' must have: |
| + | * [[Apache 2]] web server |
| + | * [[MySQL server]] |
| + | * [[Firewall]] with allowance for INPUT TCP 10051 |
| + | * [[SNMP client]] |
| + | |
| + | |
| + | |
| + | |
| + | =O.S installation= |
| | | |
| On dedicated hardware you need to install '''Ubuntu Server 14.04 LTS''' using an USB key. | | On dedicated hardware you need to install '''Ubuntu Server 14.04 LTS''' using an USB key. |
− |
| |
| | | |
| | | |
Line 110: |
Line 123: |
| vim /root/.bashrc | | vim /root/.bashrc |
| </syntaxhighlight> | | </syntaxhighlight> |
− |
| |
− |
| |
− |
| |
− | ==Firewall script==
| |
− |
| |
− | See [[Firewall]] to get more details.
| |
− |
| |
− |
| |
− | ==SNMP client==
| |
− |
| |
− | See [[SNMP client]]
| |
− |
| |
| | | |
| | | |
Line 150: |
Line 151: |
| iface em1 inet dhcp | | iface em1 inet dhcp |
| </syntaxhighlight> | | </syntaxhighlight> |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− | =Zabbix server # installation=
| |
− |
| |
− |
| |
− | Source: https://www.zabbix.com/documentation/2.2/manual/installation/install_from_packages
| |
− |
| |
− |
| |
− |
| |
− | ==Add Zabbix repository==
| |
− |
| |
− | <syntaxhighlight lang="bash">
| |
− | wget http://repo.zabbix.com/zabbix/2.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_2.2-1+trusty_all.deb
| |
− | dpkg -i zabbix-release_2.2-1+trusty_all.deb
| |
− | apt-get update
| |
− | </syntaxhighlight>
| |
− |
| |
− |
| |
− | ==Install Zabbix server==
| |
− |
| |
− | <syntaxhighlight lang="bash">
| |
− | apt-get install zabbix-server-mysql zabbix-frontend-php
| |
− |
| |
− | # install Java Gateway too
| |
− | apt-get install zabbix-java-gateway
| |
− | </syntaxhighlight>
| |
− |
| |
− |
| |
− | During installation you have to set:
| |
− | * MySQL administrator password
| |
− | * Allow the automatic DB configuration: reply '''yes'' to "Configure DB for zabbix-server-mysql with dbconfig-common?"
| |
− | * Enter your administrator password
| |
− | * Set the MySQL zabbix password. As this will only be used inside a LAN (in my case) I put '''zabbix''' as password
| |
− |
| |
− |
| |
− | The ''Zabbix server'' application will now use the MySQL login: '''zabbix''' and the password I set earlier ('''zabbix''').
| |
− |
| |
− |
| |
− | -NOTE-
| |
− |
| |
− | Zabbix server also required some specific SNMP libraries:
| |
− |
| |
− | <syntaxhighlight lang="bash">
| |
− | apt-get install libnet-snmp-perl python-netsnmp
| |
− | </syntaxhighlight>
| |
− |
| |
− |
| |
− | ==Install zabbix-agent on zabbix-server==
| |
− |
| |
− | It's recommended to monitor your zabbix-server as well with the other servers. Therefore you should install a local ''zabbix-agent''.
| |
− |
| |
− |
| |
− | See installation notes: [[Zabbix agent setup]]
| |
− |
| |
− |
| |
− |
| |
− | ==Allow remote connections to MySQL==
| |
− |
| |
− | See [[MySQL server]]
| |
− |
| |
− |
| |
− |
| |
− | ==Set timezone and PHP settings==
| |
− |
| |
− | Edit the configuration file
| |
− |
| |
− | <syntaxhighlight lang="bash">
| |
− | vim /etc/apache2/conf.d/zabbix
| |
− | </syntaxhighlight>
| |
− |
| |
− |
| |
− | Find the following lines and edit them as follows. If the lines doesn’t exists, add them.
| |
− | <syntaxhighlight lang="bash">
| |
− | [...]
| |
− | php_value max_execution_time 300
| |
− | php_value memory_limit 128M
| |
− | php_value post_max_size 16M
| |
− | php_value upload_max_filesize 2M
| |
− | php_value max_input_time 300
| |
− | php_value date.timezone Asia/Kolkata
| |
− | [...]
| |
− | </syntaxhighlight>
| |
− |
| |
− | Adjust your timezone !! To get the right value see: http://www.php.net//manual/en/timezones.php
| |
− |
| |
− | Save and close the file.
| |
− |
| |
− |
| |
− | ==Set Apache2 V.Host==
| |
− |
| |
− | Last step: you have to copy this configuration to your local Apache2 server [zabbix has installed one for you].
| |
− |
| |
− | <syntaxhighlight lang="bash">
| |
− | cp /etc/apache2/apache.conf /etc/apache2/conf-available/zabbix.conf
| |
− | a2enconf zabbix.conf
| |
− | service apache2 reload
| |
− | </syntaxhighlight>
| |
− |
| |
− |
| |
− |
| |
− | ==Restart zabbix server==
| |
− |
| |
− | To restart zabbix you have to restart 2 processes:
| |
− | * BACKEND: Zabbix-server
| |
− | * FRONTEND: Apache2
| |
− |
| |
− |
| |
− | <syntaxhighlight lang="bash">
| |
− | service apache2 restart
| |
− | service zabbix-server restart
| |
− | </syntaxhighlight>
| |
− |
| |
− |
| |
− |
| |
− | =Zabbix server # First run=
| |
− |
| |
− | Now you can, at least, run the web-installer.
| |
− |
| |
− |
| |
− | Go to http://yourserver/'''zabbix'''
| |
− |
| |
− |
| |
− | ==Installation==
| |
− |
| |
− |
| |
− | Welcome screen:
| |
− |
| |
− | [[File:zabbix_installation_01.png|none|Zabbix server installation 01]]
| |
− |
| |
− |
| |
− | Installation check:
| |
− |
| |
− | [[File:zabbix_installation_02.png|none|Zabbix server installation 02]]
| |
− |
| |
− |
| |
− |
| |
− | Database configuration:
| |
− |
| |
− | [[File:zabbix_installation_03.png|none|Zabbix server installation 03]]
| |
− |
| |
− | During the installation Zabbix already setup a database for us! :)
| |
− | * '''Db host''': localhost
| |
− | * '''Db Port''': 3306 (default)
| |
− | * '''Db name''': zabbix
| |
− | * '''Db user''': zabbix
| |
− | * '''Db password''': ''your password'' (mine is ''zabbix'')
| |
− |
| |
− |
| |
− |
| |
− | Zabbix server details
| |
− |
| |
− | [[File:zabbix_installation_04.png|none|Zabbix server installation 04]]
| |
− |
| |
− | You can, if you want, name your installation. In my case I will not have any proxy or other zabbix server so I didn't used that option.
| |
− |
| |
− |
| |
− | Confirmation
| |
− |
| |
− | [[File:zabbix_installation_05.png|none|Zabbix server installation 05]]
| |
− |
| |
− |
| |
− |
| |
− | ==First login==
| |
− |
| |
− | [[File:zabbix_installation_06.png|none|Zabbix server installation 06]]
| |
− |
| |
− | Default credentials are:
| |
− | * Username = Admin
| |
− | * Password = zabbix
| |
− |
| |
− | Notice the big 'A' for ''Admin''.
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− | =Zabbix agents=
| |
− |
| |
− | Now you should configure your zabbix agents to use the current server. See [[Zabbix agent setup]]
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− | =Zabbix server configuration=
| |
− |
| |
− |
| |
− | ==Increase history==
| |
− |
| |
− | Follow the excellent Zabbix documentation: https://www.zabbix.com/documentation/2.2/manual/web_interface/frontend_sections/administration/general#housekeeper
| |
− |
| |
− |
| |
− | ==Zabbix server configuration files==
| |
− |
| |
− | Main zabbix server configuration file is available in: "/etc/zabbix/zabbix_server.conf"
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− | =References=
| |
− |
| |
− | Zabbix official documentation (very good): https://www.zabbix.com/documentation/
| |
− |
| |
− |
| |
− | Digitial Ocean community - Zabbix tutorial: https://www.digitalocean.com/community/tutorials/389
| |
− |
| |
− |
| |
− | Tecadmin tutorial:
| |
− | * step 1 : zabbix-server installation: http://tecadmin.net/install-zabbix-on-ubuntu/
| |
− |
| |
− | * step 2 : zabbix-agent installation: http://tecadmin.net/install-zabbix-agent-centos-rhel-and-ubuntu/
| |
− |
| |
− | * step 3 : host configuration on server side: http://tecadmin.net/add-host-zabbix-server-monitor/
| |
− |
| |
− |
| |
− |
| |
− | Zabbix SNMP configuration:
| |
− | * Official documentation: https://www.zabbix.com/documentation/2.2/manual/config/items/itemtypes/snmptrap
| |
− | * Nice setup tutorial for basic discovery: http://projectdaenney.org/blog/2012/10/14/zabbix-baby-steps-part-1/
| |
− | * Nice tutorial for advanced stuff: http://www.zabbix.org/wiki/Start_with_SNMP_traps_in_Zabbix
| |
This page describe the server requirements to install Zabbix monitoring.
You can skip that part if you already have a running server.
Requirements
You network must contain | provide:
The server must have:
O.S installation
On dedicated hardware you need to install Ubuntu Server 14.04 LTS using an USB key.
System configuration
Update sources.list and install key packages
Edit your sources.list
apt-get install vim
vim /etc/apt/sources.list
Put the following:
### Custom repositories list
#
# May 2014 - Guillaume Diaz
# This is an ajdustement of the default "debootstrap" sources.list
# This is required to provided update, security and advanced tools to all our clients
#
#########################
# Ubuntu 14.04 LTS [Trusty]
#########################
# Official repositories
deb http://se.archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse
deb http://se.archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
# Official updates
deb http://se.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
# Canonical partners
#deb http://archive.canonical.com/ubuntu trusty partner
# Community partners
#deb http://extras.ubuntu.com/ubuntu trusty main
Update your package list:
apt-get update && apt-get upgrade
Linux utilities
Now, you can install the basic programs:
# NFS is a bit low, and if you're using many client it might result in time faults.
# You must install NTP to overcome this !!
apt-get install ntp ntpdate
# Basic set of utilities
apt-get install unzip zip htop python3 sysv-rc-conf mc
# Network tools
apt-get install curl
# Advanced APT manager (require to add repository from command line)
apt-get install software-properties-common python-software-properties
# SSH server
apt-get install openssh-server openssh-client
Adjust bash and vim configuration
Edit your VIM configuration:
Enable dark background + set nu + set ruler
Edit your bash configuration files to adjust the alias and enable auto-completion:
vim /etc/bash.bashrc
vim /home/<username>/.bashrc
vim /root/.bashrc
Setup network interfaces
Even though you're using the NetBoot process you still have to register some interfaces! More important, the NetBoot disable the loopback "lo" - so you should better add that one back!
# Adjust "xxxx" by your distribution name
vim /etc/network/interfaces
Add:
auto lo
iface lo inet loopback
# Ethernet default interface
auto eth0
iface eth0 inet dhcp
# Intel NUC ethernet interface is named em1
auto em1
iface em1 inet dhcp