alexreinert/piVCCU

ccu3-webui nicht mehr erreichbar

jagiella opened this issue · 10 comments

Das web interface ist plötzlich nicht mehr erreichbar, auch nach einer kompletten Neuinstallation des Systems.

Ich benutze armbian (aktuell: trixie rolling release, vorher: noble rolling release) auf einem odroid c2.

$ sudo pivccu-info 
piVCCU version: 3.73.9-87
OS:             Armbian 24.5.0-trunk.89 trixie
Kernel:         6.1.63-current-meson64 aarch64
Kernel modules: Available
Raw UART dev:   Available
HMRF Hardware:  HM-MOD-RPI-PCB
 Connected via: GPIO@c11084c0.serial (/dev/raw-uart)
 Board serial:  #######
 Radio MAC:     #######
HMIP Hardware:  HM-MOD-RPI-PCB
 Connected via: GPIO@c11084c0.serial (/dev/raw-uart)
 SGTIN:         3014F711A061A7D8A99187EB
 Radio MAC:     #######
State:          RUNNING
PID:            2087
IP:             192.168.0.28
Link:           vethpivccu
 TX bytes:      48.45 KiB
 RX bytes:      552.16 KiB
 Total bytes:   600.61 KiB
$ sudo systemctl status pivccu
● pivccu.service - piVCCU
     Loaded: loaded (/usr/lib/systemd/system/pivccu.service; enabled; preset: enabled)
     Active: active (running) since Sat 2024-03-02 13:10:38 CET; 42min ago
   Main PID: 2086 (lxc-start)
      Tasks: 0 (limit: 1987)
     Memory: 3.7M (peak: 7.1M)
        CPU: 1.631s
     CGroup: /system.slice/pivccu.service
             ‣ 2086 "[lxc monitor] /var/lib/piVCCU3 lxc"

Mär 02 13:10:31 odroidc2 systemd[1]: Starting pivccu.service - piVCCU...
Mär 02 13:10:36 odroidc2 start_container.sh[1770]: cat: /sys/class/net//address: No such file or directory
Mär 02 13:10:38 odroidc2 start_container.sh[2083]: kernel.sched_rt_runtime_us = -1
Mär 02 13:10:38 odroidc2 systemd[1]: Started pivccu.service - piVCCU.
$ sudo nmcli connection show --active
NAME               UUID                                  TYPE      DEVICE 
br0                ####### bridge    br0    
bridge-slave-end0  #######  ethernet  end0   
lo                 #######  loopback  lo     
lxcbr0             #######  bridge    lxcbr0
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: end0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master br0 state UP group default qlen 1000
    link/ether 00:1e:06:35:4a:cd brd ff:ff:ff:ff:ff:ff
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 02:e3:c6:9d:a2:f4 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.10/24 brd 192.168.0.255 scope global dynamic noprefixroute br0
       valid_lft 861972sec preferred_lft 861972sec
    inet6 fe80::727b:43a6:fef0:ea/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
4: lxcbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 00:16:3e:00:00:00 brd ff:ff:ff:ff:ff:ff
    inet 10.0.3.1/24 brd 10.0.3.255 scope global lxcbr0
       valid_lft forever preferred_lft forever
5: vethpivccu@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br0 state UP group default qlen 1000
    link/ether fe:03:ce:aa:65:44 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet6 fe80::fc03:ceff:feaa:6544/64 scope link proto kernel_ll 
       valid_lft forever preferred_lft forever

image

Wurde zufällig IPv6 auf dem Host deaktiviert?

Ich kann die virtuelle Maschine über die IP4-Addresse anpingen:

$ ping 192.168.0.28
PING 192.168.0.28 (192.168.0.28) 56(84) bytes of data.
64 bytes from 192.168.0.28: icmp_seq=1 ttl=64 time=10.8 ms
64 bytes from 192.168.0.28: icmp_seq=2 ttl=64 time=12.3 ms
64 bytes from 192.168.0.28: icmp_seq=3 ttl=64 time=9.59 ms
64 bytes from 192.168.0.28: icmp_seq=4 ttl=64 time=10.0 ms
^C
--- 192.168.0.28 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 9.592/10.679/12.322/1.037 ms

Komisch finde ich folgende Medlung vom pivccu.service: Mär 02 13:10:36 odroidc2 start_container.sh[1770]: cat: /sys/class/net//address: No such file or directory

Der Pfad sollte doch eigentlich ein Netzwerkinterface enthalten, wie z.B. /sys/class/net/end0/address

Wie sieht die /etc/network/interfaces aus?

$ cat /etc/network/interfaces
source /etc/network/interfaces.d/*
# Network is managed by Network manager
auto lo
iface lo inet loopback

Was bedeutet komplette Neuinstallation: Gesamtes OS oder nur piVCCU? War nach der Installation die WebUI nicht erreichbar oder erst nach Einspielen eines Backups?

Die Netzwerkkonfiguration ist also schonmal nicht wie in der Anleitung beschrieben.

Ich hab das aktuelle Armbian image Armbian Trixie Minimal neugeflasht, den Kernel hab ich aber downgegraded auf 6.1.63-current-meson64 (wegen der kernel header) und pivccu installiert nach der Anleitung https://github.com/alexreinert/piVCCU/blob/master/docs/setup/armbian.md.

Das Backup konnte ich nicht installieren, weil das web-Interface schon nach der Neuinstallation nicht mehr geht.

Die Netzwerkkonfiguration ist also schonmal nicht wie in der Anleitung beschrieben.

Halt, mein Fehler, ist ja Armbian.

Irgendwas scheint mit dem Start als Service nicht zu funktionieren.

Wenn ich denn Service stoppe und pivccu "händisch" per Skript starte, dann funktioniert das Webfrontend wieder.

$ sudo /var/lib/piVCCU3/start_container.sh 
<14>Mar  2 16:19:24 piVCCU3: MAIN_INTERFACE=br0
kernel.sched_rt_runtime_us = -1

image

Wenn ich dann pivccu per Skript wieder stoppe und erneut über systemd starte, bleibt das Webfrontend wieder unerreichbar.

Ich habe den odroid nun nochmals neu aufgesetzt: Diesmal mit Armbian 24.2.1 Bookworm CLI und da funktioniert komischerweise wieder alles.

Vielleicht war in dem rolling release von armbian irgendein breaking change an anderer Stelle.