Mein eigener Server

Dokumentation meiner Projekte und Hobbies

Munin

apache für munin Installation vorbereiten

Mit Munin könnt Ihr Euch die Auslastung des Servers anschauen. Hierzu erstellen wir eine admin Umgebung auf die nur Ihr zugriff habt.

Weiter geht es mit dem einrichten des IP Filters für die admin Seite.

bind Eintrag für neue Admin Seite erstellen

Datei anpassen (Eigene IP Adresse und aktuelles Datum eintragen): vi /etc/bind/eigener-server.ch.db bzw. vi /chroot/named/etc/bind/eigener-server.ch.db für bind in chroot Umgebung.

          2014082201      ; Serial
admin                   IN      A       185.45.132.41

Bind neu starten mit service bind9 restart

munin Installieren

Durch den Admin Filter haben nur bestimmte Nutzer (IP Adressen) zugriff auf Munin. Solltet Ihr alle IP Adressen aus dem Web auf Munin zulassen solltet Ihr ggf. ein paar Security Aspekte überprüfen.

Ihr meldet Euch als root am System an bzw. nutzt das su- Kommando um zum root user zu wechseln.

munin_1Zuerst führt Ihr ein apt-get update durch damit das Inhaltsverzeichnis von apt-get auf dem neuesten Stand ist.

munin_2Installation von munin mit apt-get install munin munin-node munin-plugins-extra

munin_3Installation mit j bestästigen.

Konfig File anpassen: vi /etc/munin/munin.conf

dbdir   /var/lib/munin
htmldir /var/cache/munin/www
logdir /var/log/munin
rundir  /var/run/munin
tmpldir /etc/munin/templates

# a simple host tree
  [web001.eigener-server.ch]      # Euer Server Name anstelle localhost.localdomain
  address 127.0.0.1
  use_node_name yes

Apache Konfig File anpassen (auch die # in der ersten Zeile): vi /etc/apache2/conf.d/munin

#Alias /munin /var/cache/munin/www

<Directory /var/cache/munin/www>
      Order allow,deny
      #Allow from localhost 127.0.0.0/8 ::1
      Allow from all

Vhost für Apache neu erstellen: vi /etc/apache2/sites-available/admin

<VirtualHost *:80>
  ServerAdmin webmaster@eigener-server.ch
  ServerName admin.eigener-server.ch
  ErrorLog /var/www/eigener-server.ch/logs/error.log
  CustomLog /var/www/eigener-server.ch/logs/access.log combined

  Alias /munin /var/cache/munin/www
  include /etc/apache2/conf.d/munin
        <Directory /var/cache/munin/www/>
            Deny from all
            Allow from env=AllowAdmin
        </Directory>
</VirtualHost>

Neue Seite aktivieren: a2ensite admin

Apache und Munin neu starten:

service apache2 reload
service munin restart

Munin Webseite aufrufen: http://admin.eigener-server.ch/munin/

munin und bind9

Zur Datei im Options {…}; Beeich hinzufügen: vi /chroot/named/etc/named.conf.options

zone-statistics yes;

Mittels Link Plugin aktivieren:

ln -s /usr/share/munin/plugins/bind9 /etc/munin/plugins/bind9
ln -s /usr/share/munin/plugins/bind9_rndc /etc/munin/plugins/bind9_rndc

Am Ende der Datei hinzufügen: vi /etc/munin/plugin-conf.d/munin-node

[bind9]
  user root
  env.logfile /chroot/named/var/log/query.log
[bind9_rndc]
  user root
  env.querystats /chroot/named/var/run/named.stats

munin_bind9_1
Services und bind9 plugin (neu) starten:

service bind9 restart
service munin-node restart
service munin restart
rndc stats 
munin-run bind9
munin-run bind9_rndc

Nach 30 Minuten Testen (bind wird nicht direkt angezeigt): http://admin.eigener-server.ch/munin/

munin und mysql

Konfig File anpassen falls nötig: vi /etc/munin/plugin-conf.d/munin-node

[mysql*]
user root
env.mysqlopts --defaults-file=/etc/mysql/debian.cnf
env.mysqluser debian-sys-maint
env.mysqlconnection DBI:mysql:mysql;mysql_read_default_file=/etc/mysql/debian.cnf

Mittels Link Plugin aktivieren:

ln -s /usr/share/munin/plugins/mysql_bytes /etc/munin/plugins/mysql_bytes
ln -s /usr/share/munin/plugins/mysql_queries /etc/munin/plugins/mysql_queries
ln -s /usr/share/munin/plugins/mysql_slowqueries /etc/munin/plugins/mysql_slowqueries
ln -s /usr/share/munin/plugins/mysql_threads /etc/munin/plugins/mysql_threads

munin node neu starten: service munin-node restart

Nach 30 Minuten Testen (mysql wird nicht direkt angezeigt): http://admin.eigener-server.ch/munin/

ntp Installation

Bei der Installation von munin ist mir aufgefallen dass noch keine Zeitsynchronisation mit ntp aktiv ist.

ntp_1Zuerst führt Ihr ein apt-get update durch damit das Inhaltsverzeichnis von apt-get auf dem neuesten Stand ist.

ntp_2Jetzt mittels apt-get install ntp np auf dem Server installieren.

ntp_3Installation mit j bestästigen.

ntp_4Status Abfragen mit ntpq -p.

ntp_5Status Abfrage mit IP Adressen mit ntpq -pn

ntp_6Uhrzeit abfragen mit date

munin und ntp

Mittels Link Plugin aktivieren:

ln -s /usr/share/munin/plugins/ntp_kernel_err /etc/munin/plugins/ntp_kernel_err
ln -s /usr/share/munin/plugins/ntp_kernel_pll_freq /etc/munin/plugins/ntp_kernel_pll_freq
ln -s /usr/share/munin/plugins/ntp_kernel_pll_off /etc/munin/plugins/ntp_kernel_pll_off
ln -s /usr/share/munin/plugins/ntp_offset /etc/munin/plugins/ntp_offset

Jetzt noch einmal munin node manager neu starten mit service munin-node restart damit Ihr die Zeitsynchronisation auch mit munin überwacht.

munin und Ping

Mittels Link Ping Plugin aktivieren:

ln -s /usr/share/munin/plugins/multiping /etc/munin/plugins/multiping

Konfig für Ping anpassen (es können beliebig viele Hosts eingetragen werden): vi /etc/munin/plugin-conf.d/munin-node

[multiping]
env.host www.google.ch www.eigener-server.ch

Jetzt noch einmal munin node manager neu starten mit service munin-node restart das neue Plugin aktiviert wird.

Die Graphen seht Ihr unter der Kategorie network: http://admin.eigener-server.ch/munin/network-day.html

Weiter geht es mit der Installation von Monit.