Dies ist eine Kurzanleitung zur Installation des Hyperic-Servers und Agenten auf CentOS 6.5. Die PostgreSQL Datenbank wird vorinstalliert und kann auf dem gleichen oder einem separaten System installiert werden. Somit wird die lästige knallgelbe Meldung:
“The Hyperic built-in database is provided for EVALUATION PURPOSES ONLY. For production purposes use vPostgreSQL.”
vermieden.
Vorab: Die Dokumenation von Hyperic 5.8 und die Downloads sind hier: https://www.vmware.com/support/pubs/hyperic-pubs.html
1) Postgresql 9.1installieren
Ich benutze CentOS 6.5 mit allen Updates die am 1. April 2014 verfügbar waren:
Postgresql 9.1 Installationsanleitung ist hier: http://tecadmin.net/installing-postgresql-9-1-on-centos-56-and-rhel-56/#
1.1 Repository hinzufügen
# rpm -Uvh http://yum.postgresql.org/9.1/redhat/rhel-6.3-x86_64/pgdg-centos91-9.1-4.noarch.rpm
1.2 Server installieren
# yum install postgresql91-server
1.3 Datenbank initialisieren
# /etc/init.d/postgresql-9.1 initdb
Nach der Installation sind die Daten und die Log-Files unter /var/lib/pgsql/9.1/data
1.4 Postgresql Autostart einschalten
# chkconfig postgresql-9.1 on # chkconfig postgresql-9.1 --list postgresql-9.1 0:off 1:off 2:on 3:on 4:on 5:on 6:off
2) Die Konfiguration der DB anpassen
2.1 PostgreSQL kann an die Grösse der Umgebung angepasst werden, siehe Details in: http://pubs.vmware.com/hyperic-58/index.jsp?topic=%2Fcom.vmware.hyperic.install.config.doc%2FGUID-AAA4C9F5-70A9-4F02-BF23-1864647F9B8E.html
Je nachdem, ob PostgreSQL auf dem gleichen Server installiert wird, sollte man auch die
listen_addresses = '*'
in postgresql.conf eintragen.
2.2 Datenbank-Authentifizierung konfigurieren:
In der Datei: /var/lib/pgsql/9.1/data/pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all postgres trust local HQ hqadmin password host all all 0.0.0.0/0 password # IPv4 local connections: host all all 127.0.0.1/32 password # IPv6 local connections: host all all ::1/128 password
2.3 Datenbank neu-starten:
# /etc/init.d/postgresql-9.1 restart
3) Benutzer hqadmin und HQ Datenbank anlegen
3.1 psql – Shell starten:
su - postgres # psql
3.2 User und Datenbank anlegen (nach jedem Kommando “;” nicht vergessen !)
postgres=# CREATE USER hqadmin WITH ENCRYPTED PASSWORD 'hqadmin'; CREATE ROLE
postgres=# CREATE DATABASE "HQ" OWNER hqadmin ENCODING 'UTF8'; CREATE DATABASE
3.3. Ergebnisse prüfen und psgl beenden:
postgres=# \list postgres=# \du postgres=# \q
3.4 Überprüfen, ob ein Login mit dem neuen User klappt:
# psql -U hqadmin -d HQ Password for user hqadmin: psql (9.1.13) Type "help" for help. HQ=> \q
4) Hyperic server installation
4.1 Hyperic wird nicht als root, sondern als user “hyperic” installiert, deshalb zuerst den User anlegen:
# useradd hyperic # passwd hyperic # su - hyperic
4.2 Installation starten:
[hyperic@hyperic01 ~]$ tar zxvf hyperic-hqee-installer-x86-64-linux-5.8.1.tar.gz[hyperic@hyperic01 hyperic-hqee-installer-5.8.1]$ ./setup.sh -full ... Choose which software to install: 1: Hyperic HQ Server ...
Alle Einstellungen können als vorgeschlagen belassen werden, bis zu der Frage nach der Datenbank. Hier 2. für die eigene PostgreSQL wählen:
1: HQ Built-in Database 2: PostgreSQL The HQ built-in database is provided for EVALUATION PURPOSES ONLY. For production purposes use vPosgreSQL. What backend database should the HQ server use? [default '1']: 2
danach den Namen des DB-Hosts, den Benutzernamen (hqadmin) und Passwort angeben.
5) Hyperic-Server Startskript
Hier ist mein Skript zum automatischen Start des Hyperic-Servers (/etc/init.d/hyperic-server) Nach dem Kopieren sollte es mit chkconfig scharfgeschaltet werden:
# chkconfig hyperic-server on
#!/bin/sh # Hyperic Server Stops and starts the Hyperic Server # # chkconfig: 2345 97 1 # description: Used to start and stop the Hyperic Server # #### CHANGE following according to your installation directory: export HYPERIC_HOME=/home/hyperic/server-5.8.1-EE # If there is a different user you would like to run this script as, # change the following line export HYPERIC_USER=hyperic #******************************** function execCommand() { OLD_PWD=`pwd` exec su - $HYPERIC_USER -c "$HYPERIC_HOME/bin/hq-server.sh $1" sleep 1 # allows prompt to return cd $OLD_PWD } start() { execCommand "start" } status() { execCommand "status" } stop() { execCommand "stop" } case "$1" in start) start RETVAL=0 ;; stop) stop RETVAL=0 ;; status) status RETVAL=0 ;; restart) stop sleep 10 # since stop is backgrounded start ;; esac exit 0
6) Hyperic-Agent installieren
6.1 Hyperic-Agent wird als root installiert. Hierzu einfach das Archiv hyperic-hqee-agent-x86-64-linux-5.8.1.tar.gz nach /opt/vmware/hyperic entpacken.
6.2 Ausführen und konfigurieren:
# cd /opt/vmware/hyperic/bin # hq-agent.sh start
und den Agent interaktiv konfigurieren. Achtung der Server muss zu diesem Zeitpunkt laufen.
7) Startskript für den Hyperic-Agenten
#!/bin/sh # Hyperic Agent Stops and starts the Hyperic Server # # chkconfig: 2345 99 1 # description: Used to start and stop the Hyperic Server # export HYPERIC_HOME=/opt/vmware/hyperic/ # If there is a different user you would like to run this script as, # change the following line export HYPERIC_USER=root # ----------------------------------------------------------------- function execCommand() { OLD_PWD=`pwd` echo $HYPERIC_HOME exec $HYPERIC_HOME/bin/hq-agent.sh $1 sleep 1 # allows prompt to return cd $OLD_PWD } start() { execCommand "start" } stop() { execCommand "stop" } status() { execCommand "status" } case "$1" in start) start RETVAL=0 ;; stop) stop RETVAL=0 ;; status) status RETVAL=0 ;; restart) stop sleep 10 # since stop is backgrounded start ;; esac exit 0
8) Einloggen und sich freuen:
Thank you very much my friend. This tuto was a great help for me, I installed Hyperic on my Production environment and it’s working properly as expected.
Kind regards from Lima, Perú.
🙂
Thank you Miguel! Your feedback made my day 🙂