Приветствую всех. К сожалению, мой первый пост на форуме будет посвящен проблеме. Буду очень благодарен за любую помощь.
Три недели назад я приобрел 2x CWWK/Topton Quad-NIC Intel 226v, Intel N100 Mini PC. Каждый из них оснащен следующими компонентами: Crucial P3 Plus 2000MB NVMe (ZFS), Crucial BX500 SATA SSD (диск загрузки, EXT4), Crucial DDR5-4800 SODIMM 32GB.
Один из узлов не переживает полный 24-часовой цикл без сбоев, а другой работает безупречно в течение 80+ часов во время тестирования. Этап тестирования состоит из:
* Кластер 2x CWWK/Topton Quad-NIC Intel 226v, Intel N100 Mini PC
* 1x Corosync-Qdevice для поддержания кворума
* 2x OPNsense VMs (по одной на узел), с локальным LVM хранилищем на диске загрузки, без одновременного запуска HA (Master/Slave через pfSync и CARP VIPs).
* 2x distinct Oracle Linux (по одной на узел), работающие на хранилище ZFS с репликацией (это для тестирования репликации и живой миграции), свежая конфигурация без установленных пакетов.
Сетевая топология:
```
Node1 Node2
eth0--------------------------------------------------WAN switch-------------------------------------------------eth0
eth1--------------------------------------------------LAN switch-------------------------------------------------eth1
eth2--------------------------------------------------------------------------------------------------------------------eth2 (прямое соединение, выделенный кластерный интерфейс/сеть)
eth3--------------------------------------------------------------------------------------------------------------------eth3 (прямое соединение, выделенный интерфейс pfSync, также вторичная кластерная ссылка)
```
Поведение:
1. Иногда узел полностью не падает, но через 6-18 часов узел, а также все виртуальные машины и хранилище отображаются с серым вопросительным знаком. GUI узла все еще доступен и отвечает, равно как и виртуальные машины и вывод консоли VM и узла. Перезапуск pvestatd решает эту проблему примерно на 5-7 минут, после чего снова появляется серый вопросительный знак. Перезагрузка узла через оболочку происходит не плавно, он становится неотзывчивым и должен быть выключен аппаратно.
2. Чаще всего затронутый узел просто падает без единого журнала `journalctl`. LED питания горит, LED NIC горит, нельзя пинговать, нет видео.
3. В течение 6-18 часов работы я вижу два повторяющихся журнала ошибок, полные фрагменты которых приведены ниже. Узел не всегда падает, когда начинают появляться эти журналы, но иногда это последние журналы, которые я вижу перед сбоем.
**ОШИБКА № 1** - BUG: unable to handle page fault for address: (самый распространенный)
**ОШИБКА № 2** - segfault(s)
Полный вывод приведен в первом комментарии.
Что я пробовал:
1. Несколько ядер для proxmox 8.1.4, а именно 6.5.11-4, 6.5.11-7, 6.5.11.8
2. Запуск узла изолированно, вне кластера, без ZFS, 1x OPNsense VM, 1x Oracle Linux на NVMe диске (настроен как EXT4, локальный LVM), 1x Oracle Linux на SATA (настроен как EXT4, локальный LVM).
3. Перестановка компонентов (NVMe, SATA, RAM) между узлами, ошибка остается с хостом, а не мигрирует с компонентами.
4. Переустановка PVE, 5-6 раз.
5. Memtest на ночь с 1 из DIMMs, прошел без проблем.
6. Я знаю о следующем посте, но BIOS не предлагает никаких опций для On-Die ECC или подобных: [ >)
Вывод `pveversion -v`:
```
root@test:~# pveversion -v
proxmox-ve: 8.1.0 (running kernel: 6.5.11-8-pve)
pve-manager: 8.1.4 (running version: 8.1.4/ec5affc9e41f1d79)
proxmox-kernel-helper: 8.1.0
proxmox-kernel-6.5: 6.5.11-8
proxmox-kernel-6.5.11-8-pve-signed: 6.5.11-8
proxmox-kernel-6.5.11-4-pve-signed: 6.5.11-4
ceph-fuse: 17.2.7-pve1
corosync: 3.1.7-pve3
criu: 3.17.1-2
glusterfs-client: 10.3-5
ifupdown2: 3.2.0-1+pmx8
ksm-control-daemon: 1.4-1
libjs-extjs: 7.0.0-4
libknet1: 1.28-pve1
libproxmox-acme-perl: 1.5.0
libproxmox-backup-qemu0: 1.4.1
libproxmox-rs-perl: 0.3.3
libpve-access-control: 8.0.7
libpve-apiclient-perl: 3.3.1
libpve-common-perl: 8.1.0
libpve-guest-common-perl: 5.0.6
libpve-http-server-perl: 5.0.5
libpve-network-perl: 0.9.5
libpve-rs-perl: 0.8.8
libpve-storage-perl: 8.0.5
libspice-server1: 0.15.1-1
lvm2: 2.03.16-2
lxc-pve: 5.0.2-4
lxcfs: 5.0.3-pve4
novnc-pve: 1.4.0-3
proxmox-backup-client: 3.1.4-1
proxmox-backup-file-restore: 3.1.4-1
proxmox-kernel-helper: 8.1.0
proxmox-mail-forward: 0.2.3
proxmox-mini-journalreader: 1.4.0
proxmox-offline-mirror-helper: 0.6.4
proxmox-widget-toolkit: 4.1.3
pve-cluster: 8.0.5
pve-container: 5.0.8
pve-docs: 8.1.3
pve-edk2-firmware: 4.2023.08-3
pve-firewall: 5.0.3
pve-firmware: 3.9-1
pve-ha-manager: 4.0.3
pve-i18n: 3.2.0
pve-qemu-kvm: 8.1.5-2
pve-xtermjs: 5.3.0-3
qemu-server: 8.0.10
smartmontools: 7.3-pve1
spiceterm: 3.3.0
swtpm: 0.8.0+pve1
vncterm: 1.8.0
zfsutils-linux: 2.2.2-pve1
```
Вывод `zfs list`:
```
NAME USED AVAIL REFER MOUNTPOINT
zfs 55.2G 1.70T 96K /zfs
zfs/vm-103-disk-0 2.20G 1.70T 2.20G -
zfs/vm-104-disk-0 53.0G 1.75T 2.21G -
```
Три недели назад я приобрел 2x CWWK/Topton Quad-NIC Intel 226v, Intel N100 Mini PC. Каждый из них оснащен следующими компонентами: Crucial P3 Plus 2000MB NVMe (ZFS), Crucial BX500 SATA SSD (диск загрузки, EXT4), Crucial DDR5-4800 SODIMM 32GB.
Один из узлов не переживает полный 24-часовой цикл без сбоев, а другой работает безупречно в течение 80+ часов во время тестирования. Этап тестирования состоит из:
* Кластер 2x CWWK/Topton Quad-NIC Intel 226v, Intel N100 Mini PC
* 1x Corosync-Qdevice для поддержания кворума
* 2x OPNsense VMs (по одной на узел), с локальным LVM хранилищем на диске загрузки, без одновременного запуска HA (Master/Slave через pfSync и CARP VIPs).
* 2x distinct Oracle Linux (по одной на узел), работающие на хранилище ZFS с репликацией (это для тестирования репликации и живой миграции), свежая конфигурация без установленных пакетов.
Сетевая топология:
```
Node1 Node2
eth0--------------------------------------------------WAN switch-------------------------------------------------eth0
eth1--------------------------------------------------LAN switch-------------------------------------------------eth1
eth2--------------------------------------------------------------------------------------------------------------------eth2 (прямое соединение, выделенный кластерный интерфейс/сеть)
eth3--------------------------------------------------------------------------------------------------------------------eth3 (прямое соединение, выделенный интерфейс pfSync, также вторичная кластерная ссылка)
```
Поведение:
1. Иногда узел полностью не падает, но через 6-18 часов узел, а также все виртуальные машины и хранилище отображаются с серым вопросительным знаком. GUI узла все еще доступен и отвечает, равно как и виртуальные машины и вывод консоли VM и узла. Перезапуск pvestatd решает эту проблему примерно на 5-7 минут, после чего снова появляется серый вопросительный знак. Перезагрузка узла через оболочку происходит не плавно, он становится неотзывчивым и должен быть выключен аппаратно.
2. Чаще всего затронутый узел просто падает без единого журнала `journalctl`. LED питания горит, LED NIC горит, нельзя пинговать, нет видео.
3. В течение 6-18 часов работы я вижу два повторяющихся журнала ошибок, полные фрагменты которых приведены ниже. Узел не всегда падает, когда начинают появляться эти журналы, но иногда это последние журналы, которые я вижу перед сбоем.
**ОШИБКА № 1** - BUG: unable to handle page fault for address: (самый распространенный)
**ОШИБКА № 2** - segfault(s)
Полный вывод приведен в первом комментарии.
Что я пробовал:
1. Несколько ядер для proxmox 8.1.4, а именно 6.5.11-4, 6.5.11-7, 6.5.11.8
2. Запуск узла изолированно, вне кластера, без ZFS, 1x OPNsense VM, 1x Oracle Linux на NVMe диске (настроен как EXT4, локальный LVM), 1x Oracle Linux на SATA (настроен как EXT4, локальный LVM).
3. Перестановка компонентов (NVMe, SATA, RAM) между узлами, ошибка остается с хостом, а не мигрирует с компонентами.
4. Переустановка PVE, 5-6 раз.
5. Memtest на ночь с 1 из DIMMs, прошел без проблем.
6. Я знаю о следующем посте, но BIOS не предлагает никаких опций для On-Die ECC или подобных: [ >)
Вывод `pveversion -v`:
```
root@test:~# pveversion -v
proxmox-ve: 8.1.0 (running kernel: 6.5.11-8-pve)
pve-manager: 8.1.4 (running version: 8.1.4/ec5affc9e41f1d79)
proxmox-kernel-helper: 8.1.0
proxmox-kernel-6.5: 6.5.11-8
proxmox-kernel-6.5.11-8-pve-signed: 6.5.11-8
proxmox-kernel-6.5.11-4-pve-signed: 6.5.11-4
ceph-fuse: 17.2.7-pve1
corosync: 3.1.7-pve3
criu: 3.17.1-2
glusterfs-client: 10.3-5
ifupdown2: 3.2.0-1+pmx8
ksm-control-daemon: 1.4-1
libjs-extjs: 7.0.0-4
libknet1: 1.28-pve1
libproxmox-acme-perl: 1.5.0
libproxmox-backup-qemu0: 1.4.1
libproxmox-rs-perl: 0.3.3
libpve-access-control: 8.0.7
libpve-apiclient-perl: 3.3.1
libpve-common-perl: 8.1.0
libpve-guest-common-perl: 5.0.6
libpve-http-server-perl: 5.0.5
libpve-network-perl: 0.9.5
libpve-rs-perl: 0.8.8
libpve-storage-perl: 8.0.5
libspice-server1: 0.15.1-1
lvm2: 2.03.16-2
lxc-pve: 5.0.2-4
lxcfs: 5.0.3-pve4
novnc-pve: 1.4.0-3
proxmox-backup-client: 3.1.4-1
proxmox-backup-file-restore: 3.1.4-1
proxmox-kernel-helper: 8.1.0
proxmox-mail-forward: 0.2.3
proxmox-mini-journalreader: 1.4.0
proxmox-offline-mirror-helper: 0.6.4
proxmox-widget-toolkit: 4.1.3
pve-cluster: 8.0.5
pve-container: 5.0.8
pve-docs: 8.1.3
pve-edk2-firmware: 4.2023.08-3
pve-firewall: 5.0.3
pve-firmware: 3.9-1
pve-ha-manager: 4.0.3
pve-i18n: 3.2.0
pve-qemu-kvm: 8.1.5-2
pve-xtermjs: 5.3.0-3
qemu-server: 8.0.10
smartmontools: 7.3-pve1
spiceterm: 3.3.0
swtpm: 0.8.0+pve1
vncterm: 1.8.0
zfsutils-linux: 2.2.2-pve1
```
Вывод `zfs list`:
```
NAME USED AVAIL REFER MOUNTPOINT
zfs 55.2G 1.70T 96K /zfs
zfs/vm-103-disk-0 2.20G 1.70T 2.20G -
zfs/vm-104-disk-0 53.0G 1.75T 2.21G -
```
