On Samstag, 4. März 2017 22:39:32 CET Enno via Freifunk_info wrote:
Ich denke eher, dass das Alfred (oder wie sich das nennt) vielleicht spinnt… Simon?, Sven?
Irgend eine Kernel-Komponente hing auf den Nodes (Server gingen alle). Deshalb ging der ath9k-Hang workaround nicht mehr (der Hing also auch hoechstwahrscheinlich bei `iw dev XXXX station dump`), der sich darum kuemmern soll, dass bei moeglichen ath9k-WLAN-Problemen, welche unter anderem durch fehlende Verbindung zu den Gateway-Servern erkannt werden, den WLAN-Treiber mal freundlich zu treten. Solche Problem-Geraete ohne direkten Uplink hatten also (hoechstwahrscheinlich) kein Mesh mehr. Geraete mit direktem Uplink hatten wahrscheinlich kein WLAN mehr (waere jedenfalls nicht unwahrscheinlich wenn "iw" haengt) und das Einsammeln der Daten von Wireless-Subsystem (welche dann den Statistikserver uebergeben werden) hing hoechstwahrscheinlich auch und gab daher auch keine Updates mehr an den VPN-Server fuer die Karte/Grafana.
Ausgeloest wurde der ath9k-Hang workaround scheinbar initial weil die VPN Server nacheinander kurz offline waren um Sicherheitsupdates einzuspielen.
Hier sind alle Infos die ich von den Nodes dazu habe:
root@PL-Karl43-IsI:~# cat /sys/kernel/debug/crashlog Time: 1481403619.946509 Modules: iptable_nat@8320b000+2f0 ath9k@83220000+18cf2 nf_nat_ipv4@83116000+1071 nf_conntrack_ipv6@83114000+15a0 nf_conntrack_ipv4@8310e000+1420 ipt_REJECT@83108000+390ipt_MASQUERADE@8312d000+270 ebtable_nat@83106000+390 ebtable_filter@832ff000+390 ebtable_broute@83126000+2e0 ath9k_common@83100000+555e xt_time@832fc000+660 xt_tcpudp@832fa000+690 xt_state@832f8000+2b0 xt_quota@832f5000+2e0 xt_pkttype@832f2000+270 xt_physdev@832f0000+540 xt_owner@831fd000+2b0 xt_nat@831f6000+420 xt_multiport@831f9000+490 xt_mark@831f0000+290 xt_mac@831f5000+270 xt_limit@831f1000+3e0 xt_id@831f3000+1e0 xt_conntrack@83135000+870 xt_comment@83130000+1e0 xt_addrtype@83131000+850 xt_TCPMSS@8313d000+a20 xt_REDIRECT@83016000+410 xt_LOG@83be7000+2f0 xt_CT@83053000+8a0 nf_reject_ipv4@831e2000+793 nf_nat_masquerade_ipv4@8313e000+56c nf_nat@832ec000+26cc nf_log_ipv4@830f6000+c30 nf_defrag_ipv6@8314c000+2377 nf_defrag_ipv4@832e8000+336 nf_conntrack@83140000+beee macvlan@83138000+2932 mac80211@83280000+64ebb iptable_raw@8315e000+280iptable_mangle@831eb000+3b0 iptable_filter@8303f000+2a0 ip_tables@83158000+24dd ebtables@831d8000+3895 ebt_vlan@831e8000+380 ebt_stp@8303d000+720 ebt_snat@8303b000+350 ebt_redirect@83039000+350 ebt_pkttype@831e0000+210 ebt_mark_m@830fb000+250 ebt_mark@830f8000+290 ebt_limit@831e5000+390 ebt_ip6@831e7000+690 ebt_ip@8305d000+4d0 ebt_dnat@830f5000+320 ebt_arpreply@830fc000+420 ebt_arp@83037000+620 ebt_among@830ec000+840 ebt_802_3@83050000+2c0 ath9k_hw@83180000+57491 ath@83030000+4875 em_nbyte@830ed000+2c0 sch_prio@830f4000+c70 sch_pie@830ef000+ff0 sch_gred@830f0000+1950 em_meta@8304e000+1190 sch_teql@83008000+e20 sch_dsmark@83009000+e30 em_text@8306e000+530 act_ipt@8306b000+970 sch_htb@830e8000+3150 sch_codel@83068000+10a0 sch_red@830ba000+1200 sch_sfq@83064000+20d0 sch_fq@830b8000+1740 em_cmp@83077000+2d0 act_skbedit@8302b000+630 act_mirred@8302e000+920em_u32@8302a000+230 cls_u32@83074000+1810 cls_tcindex@83056000+1090 cls_flow@83054000+1390 cls_route@83046000+11d0 cls_fw@830e7000+d70 sch_hfsc@83024000+3430 batman_adv@830c0000+26e7f libcrc32c@83013000+237 cfg80211@83080000+361f0 compat@8301c000+3fcf ip6t_REJECT@83014000+4a0 nf_reject_ipv6@8300f000+7f7 nf_log_ipv6@8300d000+cd0 nf_log_common@8300e000+99f ip6table_raw@8300a000+240 ip6table_mangle@83004000+430 ip6table_filter@83b65000+260 ip6_tables@83000000+2441 x_tables@83b60000+2de2 dummy@83b7b000+550 tun@83b68000+3b7f act_police@83b46000+c50 cls_basic@83b34000+bb0 sch_tbf@83b42000+1410 sch_ingress@83b32000+3a0 gpio_button_hotplug@83b36000+11a0 crc16@83b2f000+3e7 crc32c_generic@83b27000+390 crypto_hash@83b2c000+2612 <6>[430127.100000] [27697] 0 27697 270 17 3 0 0 iw <6>[430127.100000] [27698] 0 27698 346 15 4 0 0 grep <6>[430127.110000] [27778] 0 27778 347 17 4 0 0 sh <6>[430127.120000] [27780] 0 27780 348 18 3 0 0 ath9k-broken-wi <6>[430127.130000] [27795] 0 27795 270 17 3 0 0 iw <6>[430127.140000] [27796] 0 27796 346 15 3 0 0 grep <6>[430127.150000] [27873] 0 27873 347 17 3 0 0 sh <6>[430127.150000] [27875] 0 27875 348 18 5 0 0 ath9k-broken-wi <6>[430127.160000] [27890] 0 27890 270 16 4 0 0 iw <6>[430127.170000] [27891] 0 27891 346 15 4 0 0 grep <6>[430127.180000] [27985] 0 27985 347 17 4 0 0 sh <6>[430127.190000] [27987] 0 27987 348 18 3 0 0 ath9k-broken-wi <6>[430127.200000] [28002] 0 28002 270 17 3 0 0 iw <6>[430127.200000] [28003] 0 28003 346 15 4 0 0 grep <6>[430127.210000] [28082] 0 28082 347 17 3 0 0 sh <6>[430127.220000] [28087] 0 28087 348 18 4 0 0 ath9k-broken-wi <6>[430127.230000] [28099] 0 28099 270 17 4 0 0 iw <6>[430127.240000] [28100] 0 28100 346 15 4 0 0 grep <6>[430127.240000] [28178] 0 28178 347 17 3 0 0 sh <6>[430127.250000] [28183] 0 28183 348 18 3 0 0 ath9k-broken-wi <6>[430127.260000] [28195] 0 28195 270 17 4 0 0 iw <6>[430127.270000] [28196] 0 28196 346 15 4 0 0 grep <6>[430127.280000] [28273] 0 28273 347 17 5 0 0 sh <6>[430127.280000] [28276] 0 28276 348 18 3 0 0 ath9k-broken-wi <6>[430127.290000] [28292] 0 28292 270 17 4 0 0 iw <6>[430127.300000] [28293] 0 28293 346 15 4 0 0 grep <6>[430127.310000] [28382] 0 28382 347 17 4 0 0 sh <6>[430127.320000] [28384] 0 28384 348 18 4 0 0 ath9k-broken-wi <6>[430127.330000] [28399] 0 28399 270 17 4 0 0 iw <6>[430127.330000] [28400] 0 28400 346 15 4 0 0 grep <6>[430127.340000] [28478] 0 28478 347 17 4 0 0 sh <6>[430127.350000] [28480] 0 28480 348 18 4 0 0 ath9k-broken-wi <6>[430127.360000] [28495] 0 28495 270 17 5 0 0 iw <6>[430127.370000] [28496] 0 28496 346 15 4 0 0 grep <6>[430127.380000] [28589] 0 28589 347 17 4 0 0 sh <6>[430127.380000] [28591] 0 28591 348 18 4 0 0 ath9k-broken-wi <6>[430127.390000] [28606] 0 28606 270 17 3 0 0 iw <6>[430127.400000] [28607] 0 28607 346 15 3 0 0 grep <6>[430127.410000] [28685] 0 28685 347 17 4 0 0 sh <6>[430127.420000] [28690] 0 28690 348 18 4 0 0 ath9k-broken-wi <6>[430127.420000] [28702] 0 28702 270 17 4 0 0 iw <6>[430127.430000] [28703] 0 28703 346 15 4 0 0 grep <6>[430127.440000] [28780] 0 28780 347 17 4 0 0 sh <6>[430127.450000] [28785] 0 28785 348 18 4 0 0 ath9k-broken-wi <6>[430127.460000] [28797] 0 28797 270 17 4 0 0 iw <6>[430127.470000] [28798] 0 28798 346 15 3 0 0 grep <6>[430127.470000] [28878] 0 28878 347 17 3 0 0 sh <6>[430127.480000] [28881] 0 28881 348 18 4 0 0 ath9k-broken-wi <6>[430127.490000] [28895] 0 28895 270 17 3 0 0 iw <6>[430127.500000] [28896] 0 28896 346 15 5 0 0 grep <6>[430127.510000] [28976] 0 28976 347 17 4 0 0 sh <6>[430127.510000] [28978] 0 28978 348 18 4 0 0 ath9k-broken-wi <6>[430127.520000] [28993] 0 28993 270 17 3 0 0 iw <6>[430127.530000] [28994] 0 28994 346 15 3 0 0 grep <6>[430127.540000] [29085] 0 29085 347 17 3 0 0 sh <6>[430127.550000] [29087] 0 29087 348 18 5 0 0 ath9k-broken-wi <6>[430127.560000] [29102] 0 29102 270 17 4 0 0 iw <6>[430127.560000] [29103] 0 29103 346 15 5 0 0 grep <6>[430127.570000] [29179] 0 29179 347 17 3 0 0 sh <6>[430127.580000] [29181] 0 29181 348 18 4 0 0 ath9k-broken-wi <6>[430127.590000] [29196] 0 29196 270 17 3 0 0 iw <6>[430127.600000] [29197] 0 29197 346 15 4 0 0 grep <6>[430127.600000] [29291] 0 29291 347 17 4 0 0 sh <6>[430127.610000] [29296] 0 29296 348 18 5 0 0 ath9k-broken-wi <6>[430127.620000] [29308] 0 29308 270 17 3 0 0 iw <6>[430127.630000] [29309] 0 29309 346 15 4 0 0 grep <6>[430127.640000] [29388] 0 29388 347 17 3 0 0 sh <6>[430127.650000] [29393] 0 29393 348 18 4 0 0 ath9k-broken-wi <6>[430127.650000] [29405] 0 29405 270 17 4 0 0 iw <6>[430127.660000] [29406] 0 29406 346 15 3 0 0 grep <6>[430127.670000] [29498] 0 29498 347 17 4 0 0 sh <6>[430127.680000] [29502] 0 29502 348 18 5 0 0 ath9k-broken-wi <6>[430127.690000] [29515] 0 29515 270 17 4 0 0 iw <6>[430127.700000] [29516] 0 29516 346 15 3 0 0 grep <6>[430127.700000] [29596] 0 29596 347 17 3 0 0 sh <6>[430127.710000] [29598] 0 29598 348 18 4 0 0 ath9k-broken-wi <6>[430127.720000] [29613] 0 29613 270 17 4 0 0 iw <6>[430127.730000] [29614] 0 29614 346 15 4 0 0 grep <6>[430127.740000] [29690] 0 29690 347 17 3 0 0 sh <6>[430127.740000] [29695] 0 29695 348 18 4 0 0 ath9k-broken-wi <6>[430127.750000] [29707] 0 29707 270 17 4 0 0 iw <6>[430127.760000] [29708] 0 29708 346 15 4 0 0 grep <6>[430127.770000] [29799] 0 29799 347 17 4 0 0 sh <6>[430127.780000] [29804] 0 29804 348 18 4 0 0 ath9k-broken-wi <6>[430127.790000] [29816] 0 29816 270 17 4 0 0 iw <6>[430127.790000] [29817] 0 29817 346 15 5 0 0 grep <6>[430127.800000] [29899] 0 29899 347 17 3 0 0 sh <6>[430127.810000] [29902] 0 29902 348 18 5 0 0 ath9k-broken-wi <6>[430127.820000] [29916] 0 29916 270 17 5 0 0 iw <6>[430127.830000] [29917] 0 29917 346 15 4 0 0 grep <6>[430127.830000] [30009] 0 30009 347 17 3 0 0 sh <6>[430127.840000] [30011] 0 30011 348 18 4 0 0 ath9k-broken-wi <6>[430127.850000] [30026] 0 30026 270 17 4 0 0 iw <6>[430127.860000] [30027] 0 30027 346 15 5 0 0 grep <6>[430127.870000] [30106] 0 30106 347 17 5 0 0 sh <6>[430127.880000] [30108] 0 30108 348 18 3 0 0 ath9k-broken-wi <6>[430127.880000] [30123] 0 30123 270 17 4 0 0 iw <6>[430127.890000] [30124] 0 30124 346 15 5 0 0 grep <6>[430127.900000] [30202] 0 30202 347 17 4 0 0 sh <6>[430127.910000] [30204] 0 30204 348 18 4 0 0 ath9k-broken-wi <6>[430127.920000] [30219] 0 30219 270 17 4 0 0 iw <6>[430127.920000] [30220] 0 30220 346 15 4 0 0 grep <6>[430127.930000] [30298] 0 30298 347 17 4 0 0 sh <6>[430127.940000] [30299] 0 30299 348 18 6 0 0 ath9k-broken-wi <6>[430127.950000] [30315] 0 30315 270 17 3 0 0 iw <6>[430127.960000] [30316] 0 30316 346 15 3 0 0 grep <6>[430127.970000] [30408] 0 30408 347 17 5 0 0 sh <6>[430127.970000] [30413] 0 30413 348 18 4 0 0 ath9k-broken-wi <6>[430127.980000] [30425] 0 30425 270 17 3 0 0 iw <6>[430127.990000] [30426] 0 30426 346 15 4 0 0 grep <6>[430128.000000] [30504] 0 30504 347 17 4 0 0 sh <6>[430128.010000] [30508] 0 30508 348 18 4 0 0 ath9k-broken-wi <6>[430128.020000] [30521] 0 30521 270 17 3 0 0 iw <6>[430128.020000] [30522] 0 30522 346 15 4 0 0 grep <6>[430128.030000] [30601] 0 30601 347 17 3 0 0 sh <6>[430128.040000] [30603] 0 30603 348 18 4 0 0 ath9k-broken-wi <6>[430128.050000] [30618] 0 30618 270 17 3 0 0 iw <6>[430128.060000] [30619] 0 30619 346 15 3 0 0 grep <6>[430128.060000] [30698] 0 30698 347 17 3 0 0 sh <6>[430128.070000] [30700] 0 30700 348 18 3 0 0 ath9k-broken-wi <6>[430128.080000] [30715] 0 30715 270 17 5 0 0 iw <6>[430128.090000] [30716] 0 30716 346 15 4 0 0 grep <6>[430128.100000] [30795] 0 30795 347 17 4 0 0 sh <6>[430128.100000] [30800] 0 30800 348 18 4 0 0 ath9k-broken-wi <6>[430128.110000] [30820] 0 30820 270 17 4 0 0 iw <6>[430128.120000] [30821] 0 30821 346 15 3 0 0 grep <6>[430128.130000] [30904] 0 30904 347 17 4 0 0 sh <6>[430128.140000] [30906] 0 30906 348 18 5 0 0 ath9k-broken-wi <6>[430128.150000] [30926] 0 30926 270 17 3 0 0 iw <6>[430128.150000] [30927] 0 30927 346 15 4 0 0 grep <6>[430128.160000] [31001] 0 31001 347 17 4 0 0 sh <6>[430128.170000] [31006] 0 31006 348 18 3 0 0 ath9k-broken-wi <6>[430128.180000] [31028] 0 31028 270 17 4 0 0 iw <6>[430128.190000] [31029] 0 31029 346 15 5 0 0 grep <6>[430128.200000] [31097] 0 31097 347 17 4 0 0 sh <6>[430128.200000] [31098] 0 31098 347 17 3 0 0 sh <6>[430128.210000] [31099] 0 31099 347 17 3 0 0 ath9k-broken-wi <6>[430128.220000] [31100] 0 31100 346 16 4 0 0 ntpd-hotplug <6>[430128.230000] [31101] 0 31101 194 17 3 0 0 gluon-neighbour <6>[430128.240000] [31102] 0 31102 406 75 4 0 0 gzip <6>[430128.250000] [31103] 0 31103 298 25 3 0 0 alfred <6>[430128.250000] [31104] 0 31104 346 18 4 0 0 pgrep <6>[430128.260000] [31105] 0 31105 345 14 4 0 0 sleep <0>[430128.270000] Kernel panic - not syncing: Out of memory: system-wide panic_on_oom is enabled <0>[430128.270000]
Der cron hat ath9k-broken-wireless immer wieder neu gestartet und dadurch gluecklicherweise soviel Speicher verbraucht, dass alle Nodes dann von alleine neu gestartet sind.
Man koennte rein theoretisch (rein als Workaround) einen Test schreiben der schaut ob mehrere ath9k-broken-wifi-workaround.sh laufen, um dann den Reboot schneller zu forcieren. Das waere wirklich nur ein Workaround und wuerde leider auch wieder ein Update vonnoeten machen - und es waere ungewiss ob es wirklich hilfreicher waere als der OOM-Killer welcher jetzt die Nodes neu gestartet hat.
Was das Updaten (neben den ganzen anderen Ausfallerscheinungen) momentan auch noch schwieriger macht, waere ein (vermeindliches) Routing-Problem, welches verhindert, dass 2003:49:a051:9000/64 (hinter dem vpn01 und der buildserver sind) nicht mehr von GK Software (unbeschnitten) an die 2003:49:a051::8888 (eth1 von vpn01) uebergeben wird. Momentan gehen keine Pings mehr Richtung 2003:49:a051:9000::1337 (vpn01), aber noch 2003:49:a051::8888 (eth1 von VPN01). Ping Tests wurden von Hetzner-Servern ausgefuehrt. Bei pings von 2003:49:a051:9000::1337 Richtung Hetzner-Server, sieht man aber, dass die ICMP6-Requests ankommen und dann beantwortet werden (aber nie bei vpn01 ankommen). Also gehe ich davon aus, dass etwas Richtung VPN01 nicht stimmt.
Gruesse, Sven