Munin holt keine Daten beim externen Node ab

  • Hallo zusammen.
    ich habe den VPS50(debian minimal) als master und einen weiteren Server als Node eingerichtet
    Auf dem Master funktioniert alles einwandfrei,
    nur holt er keine Daten beim Node ab.
    leider erhalte ich folgende Fehlermeldung auf dem Master.

    Code
    2016/10/02 23:11:05 [FATAL] Socket read from srv1 failed.  Terminating process. at /usr/share/perl5/Munin/Master/UpdateWorker.pm line 2542016/10/02 
    23:11:05 [ERROR] Munin::Master::UpdateWorker<srv1;srv1> died with '[FATAL] Socket read from srv1 failed.  Terminating process. at /usr/share/perl5/Munin/Master/UpdateWorker.pm line 254


    /etc/munin/munin.conf(Master)

    Code
    [srv1] 
     address 46.38.XX.XX 
     use_node_name yes


    auf dem Node habe ich in /etc/munin/munin-node.conf Folgendes eingetragen:

    Code
    allow^46\.38\.XX\.XX$


    ein Telnet auf dem Node:

    Code
    telnet localhost 4949 
    Trying 127.0.0.1... 
    Connected to localhost.Escape character is '^]'. 
    # munin node at srv1


    Ein telnet vom Master :

    Code
    telnet 46.38.XX.XX 4949
    Trying 46.38.XX.XX...


    und dann nix mehr

    den Port 4949 habe ich auf dem Node folgendermassen freigegeben:

    Code
    /sbin/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 4949 -j ACCEPT
     #und auch:
     /sbin/iptables -A INPUT -s 46.38.XXX.XXX  -m tcp -p tcp --dport 4949 -j ACCEPT


    Google bring leider nichts zur Fehlermeldung

    Danke im voraus
    michi

    It's me, only me, pure michi 🦆

    RS: ja:thumbup: VPS: yep:thumbup: ARM: sicher:thumbup: WH: klar :thumbup:

    Domains: auch:thumbup:

    3 Mal editiert, zuletzt von extremmichi (3. Oktober 2016 um 00:28)

  • linuxUser123: Das Semikolon bei der Serverdefinition darf fehlen.

    Da fehlt ein Leerzeichen nach dem allow:

    Code
    allow^46\.38\.XX\.XX$

    Danach den Dienst am Node neustarten und nochmals mit telnet versuchen. Ansonsten bitte einmal die Logs vom Munin-Node posten und vorher log_level bei Bedarf in der munin-node.conf erhöhen. Und auch einmal überprüfen, ob der Dienst nach dem Neustart überhaupt läuft und auf einem Port lauscht.


    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Hallo Christian,
    danke für deine Antwort
    das Leerzeichen ist in der config drin, das Kopieren aus der bash heraus klappt nicht ganz richtig.
    es verschwinden alle Zeilenumbrüche sowie Leerzeichen.
    log_level ist schon auf 4


    die logs auf dem node sind absolut sauber


    der Dienst scheint zu laufen

    Code
    #top |grep munin
    
    
    
    
    29547 root      20   0 49596 9656 1968 S   0,3  0,2   0:00.20 munin-node

    Mir gehen die Ideen aus....

    Gruss
    michi

    It's me, only me, pure michi 🦆

    RS: ja:thumbup: VPS: yep:thumbup: ARM: sicher:thumbup: WH: klar :thumbup:

    Domains: auch:thumbup:

  • Moin


    Externer Zugriff und Loopback passen nicht zusammen.

    Mordor

    Hallo Mordor,
    du hast Recht
    Leider bringt es aber keinerlei Änderung
    ob ich nun host * oder host "IP" einsetze.
    Ich glaube fast dass das Problem beim Matser liegt
    und nicht beim Node.

    munin-update.log sagt :(Domain und Servernamen anonymisiert)

    die 2te Zeile gibt mir zu denken "der Prozess ist tot"

    Wie finde ich heraus was Fehler 18 bedeutet?

    gruss
    michi

    It's me, only me, pure michi 🦆

    RS: ja:thumbup: VPS: yep:thumbup: ARM: sicher:thumbup: WH: klar :thumbup:

    Domains: auch:thumbup:

  • Stimmt, ganz übersehen. Dann bitte noch einmal die Firewallregeln von Node und Master:

    Code
    iptables -n -v --list

    Kann ja eigentlich nur noch daran liegen…


    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Du blockierst in der INPUT-Chain alles, bevor Du es zulässt:

    Code
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           
        0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:4949
        0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:4949
        0     0 ACCEPT     tcp  --  *      *       46.38.***.*          0.0.0.0/0            tcp dpt:4949

    Wie werden diese Firewallregeln erstellt? Du könntest jetzt einfach den iptables-Befehl aus Deinem ersten Beitrag abändern und -I (Insert) statt -A (Append) verwenden. Oder Du fügst es nicht zu INPUT sondern z.B. zur Kette INPUT_CHAIN hinzu, die vorher abgearbeitet wird. Das würde dein Problem lösen, rebootfest ist es damit aber noch nicht. Ohne zu wissen, woher diese Regeln kommen bzw. wie sie verwaltet werden, kann man da keine allgemein gültige Antwort geben. Die wirken sowieso ziemlich Overkill und sind größtenteils unnötig.


    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Hallo Christian,
    ja genau das war es
    Danke :)

    ich verwende die arno-iptables-firewall, duie eine Menge Rules selbstständig erstellt.
    und natürlich fail2ban. Möglicherweise ist da was doppelt und auch nicht perfekt,
    das zeigt dieser Post ja :( . FW ist ein Thema mit so vielen Aspekten, dass es auch unübersichtlich werden kann,
    aber lieber doppelt gemoppelt als zuwenig.
    Trotzdem muss ich da wohl nochmal ran.
    Jedenfalls danke ich dir für deine Hilfe

    Gruss
    michi

    It's me, only me, pure michi 🦆

    RS: ja:thumbup: VPS: yep:thumbup: ARM: sicher:thumbup: WH: klar :thumbup:

    Domains: auch:thumbup: