Neue Hosts können über den Bloonix-Agenten oder über einen einfachen HTTP Aufruf registriert werden. Mit diesem Feature ist es sehr einfach möglich, neue Hosts über Tools wie Puppet, Ansible, Salstack etc. hinzuzufügen, ohne einen Host manuell in der WebGUI von Bloonix anzulegen.
Der Bloonix-Agent kann einen Host selbst registrieren. Hierzu sind zwei Dinge notwendig:
Legen Sie die Konfigurationsdatei /etc/bloonix/agent/register.conf mit folgendem Inhalt an:
# cat /etc/bloonix/agent/register.conf
webgui_url https://your-webgui.test/
data {
company_id 12345
company_authkey secret-key
}
Wenn kein Host für einen Agenten konfiguriert ist und die Konfigurationsdatei existiert, dann versucht der Agent den Host, auf dem er installiert ist, zu registrieren. Die Company-ID und den Company-Authkey finden Sie in der WebGUI im Formular zur Konfiguration einer Company. Die Daten können nur von einem Administrator eingesehen werden.
Mit diesen Informationen versucht der Agent den Host zu registrieren. Nach der erfolgreichen Registrierung kann der Host über die WebGUI bearbeitet werden. Klicken Sie hierzu den kleinen Button oben rechts in der WebGUI an, der Ihnen anzeigt, wieviele registrierte Hosts darauf warten, konfiguriert und aktiviert zu werden.
Die Hosts müssen, bevor diese ins Monitoring aufgenommen werden können, mindestens einer Gruppe zugeordnet werden. Bearbeiten Sie die registrierten Hosts über die Buttons in der unteren Navigation.
Nachdem der Host bearbeitet wurde, muss dieser zu guter Letzt noch aktiviert werden, denn registrierte Hosts werden initial inaktiv angelegt.
Bei der Registrierung eines neuen Hosts versucht der Agent den Hostnamen und die IP-Adresse eines Hosts automatisch zu ermitteln. Sie können diese Daten aber auch vordefinieren:
# cat /etc/bloonix/agent/register.conf
webgui_url https://your-webgui.test/
data {
company_id 12345
company_authkey secret-key
hostname test.bloonix.org
ipaddr 127.0.0.1
ipaddr6 ::1
description Test host
}
Somit würde der Host mit diesen Daten angelegt. Darüber hinaus besteht die Möglichkeit, einen Host mit der Registrierung automatisch diversen Host-Templates zuzuordnen:
# cat /etc/bloonix/agent/register.conf
webgui_url https://your-webgui.test/
data {
company_id 12345
company_authkey secret-key
hostname test.bloonix.org
ipaddr 127.0.0.1
ipaddr6 ::1
description Test host
host_template_tags linux, apache, mysql
}
Damit würde der Host direkt den Host-Templates zugeordnet, welche die Tags linux, apache und mysql haben. Die Tags können Sie für jedes Host-Template über die WebGUI setzen.
Wenn Sie die Registrierung selbst über ein Skript durchführen möchten, so ist der Aufruf über curl sehr einfach:
curl -H 'Content-Type: application/json' 'https://your-webgui.test/register/host' -d '{
"company_id": "12345",
"company_authkey": "secret",
"hostname": "test.bloonix.org",
"ipaddr": "127.0.0.1",
"ipaddr6": "::1",
"description": "Test host",
"host_template_tags": "linux, apache, mysql"
}'
Die Ausgabe erfolgt als JSON String und sieht wie folgt aus:
{
"status" : "ok",
"data" : {
"password" : "gPWsB5mJ7f3buXlnivGafjLbhI0WKU",
"host_id" : "100104"
},
"server_time" : "1448392212101",
"maintenance" : "disabled",
"size" : 2,
"offset" : 0,
"who_am_i" : "test.bloonix.de",
"total" : 2,
"version" : 111
}
Die Host-ID und das Passwort müssen jetzt nur noch in der Konfigurationsdatei des Agenten eingerichtet werden, am besten in der Datei /etc/bloonix/agent/conf.d/host.conf.