Sziasztok!
Sajnos még csak most kezdek el elmélyedni ebbe a témába, így pár dolgot még nem is értek (itthoni körülmények a teszt hálózat).
Egy olyan problémám lenne, hogy van egy DHCP szerverem, melyhez kapcsolódik X host. Ezeken a hostokon van egy Zabbix Agent, amely ugye kapcsolódik a szerverhez. És a probléma itt kezdődik.
Szeretném valahogy egyedivé tenni a hostokat, ehhez a Hostname tökéletes is lenne, de:
- Ha az Auto-Discovery-t használom, akkor az addig jó, míg új IP-t nem kapnak a DHCP-től (akármilyen oknál fogva)
- Felderítést próbáltam, de az csak az IP címet adja a host-nak, IP változás esetén szintén nem jó
- DNS-t nem szeretnék a hálózatban használni (enélkül szeretném megoldani)
Szóval úgy szeretném megoldani a host-ok monitorozását, hogy az egyedi azonosító a Hostname legyen, de IP cím változás esetén se legyen probléma.
Lehet csak egy egyszerű beállításról van szó, ami fölött én átsiklottam, vagy netalántán felejtős lenne a kérdésem?
Válaszotok előre is köszönöm! :)
- 4965 megtekintés
Hozzászólások
Nem írtad hogy melyik verzióról van szó, de:
"When adding a host, its name is decided by standard gethostbyname function. If the host can be resolved, resolved name is used. If not, IP address is used."
https://www.zabbix.com/documentation/1.8/manual/config/actions
2.0-tól - ha jól látom - akkor a sytem.uname alapján veszi fel a hostot,
- A hozzászóláshoz be kell jelentkezni
2.0 a verziószám, elnézést.
system.uname?
Esetleg nem system.hostname?
Habár 2.0-ás man-ba is ezt találtam:
"When adding a host, its name is decided by the standard gethostbyname function. If the host can be resolved, resolved name is used. If not, the IP address is used."
De ez a gethostbyname function hogy is működne pontosan itt?
Meg ha én beállítom a HostNameItem-et az Agent-be, akkor az vajon felül definiálja ezt?
Az Auto Registration-t meg azért nem szeretném használni, mert ott nem lehet olyan jó szabályokat beállítani mint a Network Discovery-nél :)
- A hozzászóláshoz be kell jelentkezni
A system.uname hülyeség, csak felületesen olvastam el.
Elvileg megoldás lehet: "Unless you specifically define a Hostname in zabbix_agentd.conf, the system hostname of agent location will be used for naming the host. The system hostname in Linux can be obtained by running the 'hostname' command."
- A hozzászóláshoz be kell jelentkezni
Hmm ez jó lenne, de én sajnos nem Auto Registration-t akarok használni, hanem Network Discovery-t (sokkal több beállítási és szeparálási lehetőség van :) ).
Pofám leszakad. Sikerült elkapnom a zabbix agent debug-ba egy ilyet:
26137:20130909:143851.335 Run remote command [hostname] Result [8] [TestHost]...
26137:20130909:143851.335 Sending back [TestHost]
Ez gondolom a Network Discovery kérte le, mivel fel szerette volna venni a hostot. Fel is vette, de IP CÍM a host neve! Bváá mi ez már?
- A hozzászóláshoz be kell jelentkezni
Hát, nincs nálam éles 2.0-s zabbix, csak 1.8-as, így nem tudom kipróbálni, és lehet hogy jobban jársz ha mégis feltámasztod a DNS-t, amúgy se haszontalan dolog (pláne ha tényleg van értelme a discovery-nek).
- A hozzászóláshoz be kell jelentkezni
Szerver oldalról a dolog:
851 2228:20130909:150111.218 get value from agent result: 'TestHost'
852 2228:20130909:150111.218 End of discover_service():SUCCEED
853 2228:20130909:150111.218 query [txnlev:1] [begin;]
854 2228:20130909:150111.218 In discovery_update_service() ip:'10.0.51.155' port:10050 status:0
855 2228:20130909:150111.218 In discovery_register_host() ip:'10.0.51.155' status:0 value:'TestHost'
856 2228:20130909:150111.219 query [txnlev:1] [select dh.dhostid,dh.status,dh.lastup,dh.lastdown from dhosts dh,dservices ds where ds.dhostid=dh.dhostid and ds.dc
heckid=13 and ds.value='TestHost' order by dh.dhostid]
857 2228:20130909:150111.219 host at 10.0.51.155 is already in database
858 2228:20130909:150111.219 End of discovery_register_host()
859 2228:20130909:150111.219 In discovery_register_service() ip:'10.0.51.155' port:10050 key:'system.hostname'
860 2228:20130909:150111.219 query [txnlev:1] [select dserviceid,dhostid,status,lastup,lastdown,value,dns from dservices where dcheckid=13 and type=9 and key_='sy
stem.hostname' and ip='10.0.51.155' and port=10050]
861 2228:20130909:150111.219 service is already in database
862 2228:20130909:150111.219 End of discovery_register_service()
Most ürítettem ki a táblákat, kíváncsi leszek.
- A hozzászóláshoz be kell jelentkezni
Hát annyit értem vele, hogy semmit, valamiért ugyanúgy megkapja a 10.0.51.155 IP címet egyedi Hostname azonosítóként. :\
- A hozzászóláshoz be kell jelentkezni