Localwürstchens Tagebuch

Ich muß nicht über meine Gefühle sprechen — ich blogge.

Sammlung: ätzende Hadoop- und Ganglia-Fehlermeldungen

| 1 Comment

Name node is in safe mode.

$ bin/hadoop dfs -mkdir test
mkdir: org.apache.hadoop.dfs.SafeModeException: Cannot create directory /user/spillerm/test.
Name node is in safe mode.

Zu dieser Meldung kommt es unmittelbar nach dem Start der benötigten Dienste. Weiteres Eingreifen ist hier nicht erforderlich — das Filesystem kommt nach einer Weile selbst aus dem SafeMode hoch und funktioniert dann regulär (im Webinterface ist auch der Hinweis »Safe mode is ON. Safe mode will be turned off automatically.« zu sehen).

data_thread() got no answer from any [xxx] datasource

Zu dieser Meldung kommt es, wenn der gmetad keinerlei Daten empfängt; das kann entweder daran liegen, daß auf keiner Maschine ein gmond gestartet ist oder aber daran, daß die Clients zwar laufen, die Multicast-Routen aber fehlerhaft sind und somit keine Kommunikation möglich ist.

fsockopen()

Warning: fsockopen() [function.fsockopen]: unable to connect to 127.0.0.1:8652 (Connection refused)
in /var/www/ganglia/ganglia.php on line 304
There was an error collecting ganglia data (127.0.0.1:8652): fsockopen error: Connection refused

Zu dieser Meldung kommt es, wenn man versucht das Ganglia-Webinterface aufzurufen, der gmetad aber gar nicht läuft; ganz klar, daß da dann keine Verbindung aufgebaut werden kann. Prüfen läßt sich das auf der Maschine, auf der der gmetad laufen soll, so:

root@host:/$ netstat -nlp | grep 8652
root@host:/$

Ganz offenbar ist Port 8652 nicht belegt; Abhilfe schafft also das Starten des Dienstes. Die Ausgabe von netstat sieht danach in etwa so aus:

root@host:/$ netstat -nlp | grep 8652
tcp        0      0 0.0.0.0:8652            0.0.0.0:*               LISTEN     30266/gmetad

not well-formed (invalid token)

/opt/local/sbin/gmetad[18283]: Process XML (testcluster01): XML_ParseBuffer() error at line 53: not well-formed (invalid token)

So schlimm diese Meldung aussieht, so harmlos ist sie eigentlich; in aller Regel hat sie ihren Ursprung durch einen Eintrag in der /etc/ganglia/gmond.conf:

cluster { 
  ... 
  owner = "Bla & Fasel GmbH & Co. KG" 
  ...
}

De facto kann gmond nicht mit dem & umgehen — eine Änderung zu “Bla and Fasel GmbH and Co. KG” schaffte fix Abhilfe ;)

Unable to create tcp_accept_channel.

Beim Starten des gmond kann es hin und wieder zu nachfolgender Fehlermeldung kommen:

root@host:/$ /opt/local/sbin/gmond --debug=9
loaded module: core_metrics
loaded module: cpu_module
loaded module: disk_module
loaded module: load_module
loaded module: mem_module
loaded module: net_module
loaded module: proc_module
loaded module: sys_module
udp_recv_channel mcast_join=224.0.0.0 mcast_if=NULL port=8649 bind=NULL
tcp_accept_channel bind=NULL port=8649
Unable to create tcp_accept_channel. Exiting.

Ist dies der Fall, so ist in erster Linie zu prüfen, ob der genannte Port (8649) durch etwas belegt ist; in aller Regel löst sich das Rätsel insofern, als daß schlicht und ergreifend bereits eine Instanz des gmond läuft:

root@host:/$ netstat -nlp | grep 8649
tcp        0      0 0.0.0.0:8649                0.0.0.0:*                   LISTEN      31491/gmond         
udp        0      0 0.0.0.0:8649                0.0.0.0:*                               31491/gmond

Author: localwurst

Ich bin… weiblich. Baujahr 1980. Systemadministrator. Hobby-Photograph. Handarbeits-Freak. Mama. »Die wallende Mähne[tm]«. Nachteule. Urban explorer.

One Comment

  1. da hab ich noch einen ausm asterisk:
    Nice channel, I’ll take it: SIP/polycom

Leave a Reply

Required fields are marked *.