После установки netbird не открывается lxc самохостинга

Стоял PVE с lxc самохостинга. Был настроен под себя и всё работало как часы. После выхода ролика про нетбёрд сделал себе также(то есть отдельным lxc) и всё отлично работало какое то время и в какой то момент удаленный доступ пропал. Я подумал, что может инет дома вырубился, или электричество, но придя домой я не смог зайти ни в дашборд, ни в один из сервисов самохостинга, причем сам proxmox доступен по своему адресу. Перезагрузка контейнеров и физическая перезагрузка не помогла - lxc самохостинга не запускается, в консоль не пускает. Lxc нетбёрда запускается вручную, но толку то от этого… Почесал репу, снес нетберд, перезагрузился и всё заработало, правда с одним нюансом - страница установленного через runtipi, metube перестала загружаться и переусиановка ононго не помогала. Фиг с ним, подумал я и заново установил нетбёрд в новый lxc. Выходные оно всё поработало, а сегодня опять та же песня - сервисы самохостинга удаленно недоступны, нетберд работает и я даже могу удаленно зайти в проксмокс , в консоль lxc самохостинга и даже в роутер свой.
В проксмоксе (в вебморде) ошибок нет вроде никаких. Куда копать, подскажите пожалуйста.

Привет!

Начинать стоит с конкретно 1 сервиса и раскручивать клубок.

Сам по себе агент нетберда живущий в отдельном lxc не должен мешать(я лично не понимаю, как он может, но допускаю, что недостаточно познаний в сетевых вопросах).

Я бы начал с проверки ip адресов:

  • pve
  • lxc контейнеров
  • проверьте какие они, динамические ? Статика?
  • может в сети есть сервисы/устройства с такими ip и отсюда конфликт

Удалять сервисы не обязательно, достаточно остановить сервис или lxc и понаблюдать за работой и воздействие на другие системы.

оба контейнера динамические, но у start-samohosting (start-samohosting.lan) в роутере стоит статика вручную.
В данный момент в роутере самохостинг на 192.168.1.230, а нетберд на 131. пробовал вчера дома остановить lxc нетберда - ничего не изменилось - в самохостинг зайти не смог

кстати ,вот такое в консоли lxc самохостинга нормально?
root@start-samohosting:~# apt update
-bash: /usr/bin/apt: Input/output error

Вобщем дома полазил по PVE и нашёл такое:



похоже этот corosync помер и мешает. но почему?

сегодня решил создать ещё один lxc , но выдало ошибку - нет места.
я удивился, но действительно как будто нету

решил уменьшить размер lxc самохостинга с 415Гб до 400Гб. оно долго думало/делало и в итоге нарисовало мне 815Гб(которых нет, ибо ссд на 512 всего)
после этого самохостинг запустился, работает вместе с нетбёрдом, но проблема с местом никуда не делась, хотя внутри lxc свободное место есть, причём 408Гб.
кстати , то что свободного места нет , это может быть связано с corosync и прочими глюками? deep seek пишет, что должен быть конфиг файл, но этого файла нет.
как всё это вернуть к нормальной жизни, не похерив кучу фоток в immich?

скорее всего нет, corosync вообще в local находится, а место закончилось в local-lvm

Сначала удивился, потом понял и не удивился, на фразе уменить размер lxc даже у меня играет очко и есть целая шпаргалка в базе знаний как это делать т.к. если вы знаете как это сделать и сделали, то можете починить любой проксмокс по определению

Открою секрет:
В интерфейсе PVE где управление дисками есть только увеличения размера и подписано там “Size increment” т.е. к 415ГБ вы этой командой увеличили диск на 400ГБ итого получилось 815ГБ, а поскольку в local-lvm используется thin-lvm, то квоты можно забрать сколько угодно, а по факту если закончится место на диске, то все станет колом

На этом ресурсе не буду советовать не пользовать чужие наработки типа helper scripts или start-samohosting (по понятным причинам), но бекапы все равно буду советовать делать.

Пока что проблема выглядит как довольно опасно, на самом деле. Я бы пошел по следующим шагам

  1. Попытаться удалить или перенести лишние контейнеры, чтобы освободить место на local-lvm, может попытаться снести 101 контейнер
  2. Попытаться зайти в 100 контейнер в консоль и удалить файлы лишние, apt clean, docker system prune rm /var/logs/* и прочие команды т.к. если место закончится совсем в ноль, то контейнер может стать колом настолько, что даже залогиниться не получится т.к. не сможет записать в логи факт логина и создать файл pid процесса, поэтому любым возможным способом освободить хотьс пару мегабайт в контейнере
  3. Тут мой подход со множеством контейнеров как раз полезен, т.к. я могу либо перенести что-то на другой миник или даже грохнуть контейнер с диском т.к. все равно на внешнем хранилище лежат ежедневные резервные копии с которых можно восстановить.
  4. Остановить докер и любые другие сервисы, которые работают в контейнере, чтобы они не писали логи (у меня недавно был прикол конфигурации, когда связка nginx + traefik + openbao за день писала 7 ГБ логов, но я успевал чистить, а потом пофикил
  5. Если зайти в контейнер не получается т.к. все стало колом, то мне помогает увеличить на пару гигов диск, но при этом должно быть место на томе, а Вам его неоткуда взять (может таки 101 удалить?)
  6. Если вы читаете этот пунт поздавляю, вам пи***да!, базы данных с вероятностью 99% не поднимутся или поднимутся, но работать нормально не будут (есть у меня офигительная история про прод и сеньоров бекендеров)
  7. Выполняем pct mount 100 и молимся, чтобы смонировалось, далее если удалось смотрировать диск контейнера в хостевой каталог, то запускаем mc и переносим файлы в /root/backup/ или по подключаем внешний диск и копируем на него, я не помню, монтируется в ro или rw режиме если в только для чтения, то пытаться спасать файлы, если в режиме для чтения, то можно попробовать почистить место так и попытаться запустить контейнер самому
    Можно попробовать еще поискать в /var/lib/docker/volumes/*/ на предмет полезных файлов и скопировать их тоже в /root/backups/volumes/blah/ или на внешний диск
    Вот я попробовал это сделать у себя, выглядит так, что почистить можно, но это у меня, где место свободное есть
root@pve-02:~# pct list| grep 118
118        stopped                 bbb                 
root@pve-02:~# pct mount 118
mounted CT 118 in '/var/lib/lxc/118/rootfs'
root@pve-02:~# cd /var/lib/lxc/118/rootfs
root@pve-02:/var/lib/lxc/118/rootfs# df -h .
Файловая система                 Размер Использовано  Дост Использовано% Cмонтировано в
/dev/mapper/pve-vm--118--disk--0    30G         8,8G   20G           32% /var/lib/lxc/118/rootfs
root@pve-02:/var/lib/lxc/118/rootfs# rm var/log/auth.log.1 
root@pve-02:/var/lib/lxc/118/rootfs# df -h .
Файловая система                 Размер Использовано  Дост Использовано% Cмонтировано в
/dev/mapper/pve-vm--118--disk--0    30G         8,8G   20G           32% /var/lib/lxc/118/rootfs
root@pve-02:/var/lib/lxc/118/rootfs# cd
root@pve-02:~# pct unmount 118
root@pve-02:~# pct start 118

Можно поставить ncdu apt install ncdu а потом

root@pve-02:~# cd /var/lib/lxc/118/rootfs
root@pve-02:/var/lib/lxc/118/rootfs# ncdu .
ncdu 1.22 ~ Use the arrow keys to navigate, press ? for help                                                                                                                                                                
--- /var/lib/lxc/118/rootfs ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    4,3 GiB [###############################] /usr                                                                                                                                                                          
    4,1 GiB [#############################  ] /var
  350,5 MiB [##                             ] /opt
   53,9 MiB [                               ] /root
    6,4 MiB [                               ] /etc
  128,0 KiB [                               ] /tmp
   76,0 KiB [                               ] /run
   28,0 KiB [                               ] /home
   24,0 KiB [                               ] /local
e  16,0 KiB [                               ] /lost+found
e   4,0 KiB [                               ] /sys
e   4,0 KiB [                               ] /srv
e   4,0 KiB [                               ] /proc
e   4,0 KiB [                               ] /mnt
e   4,0 KiB [                               ] /media
e   4,0 KiB [                               ] /dev
e   4,0 KiB [                               ] /boot
@   0,0   B [                               ]  libx32
@   0,0   B [                               ]  lib64
@   0,0   B [                               ]  lib32
@   0,0   B [                               ]  sbin
@   0,0   B [                               ]  lib
@   0,0   B [                               ]  bin

*Total disk usage:   8,8 GiB   Apparent size:   8,4 GiB   Items: 197617   

И тут можно посмотреть занимаемое место каждым каталогом, найти лишнее и удалить
8. Запускаем контейнер, заходим в него, выполняем пункт 4 и разбираемся с тем, куда уходит место
9. пытаемся запустить по одному сервис и проверяем работоспособность, но повторю, что с большой долей вероятности postgresql самовыпилится
10. Если вы читаете пункт, то в 6 я не соврал, т.к. сносим все нафиг, ставим заново и пытаемся развернуть с теми файлами, что удалось вытянутьна 7 шаге, скорее всего это будут фотки, конфиги и все

  • базы данных с 99% вероятностью мертвы
  • /var/lib/docker в контейнере восстанавливать смысла нет, да и docker может даже не стартовать, помогает только rm -rf /var/lib/docker; dokg-reconfigure docker-ce; systemctl start docker
  • докеровские вольюмы, если они не через локальный байндинг рядом с docker-compose.yaml делались, то с вероятностью 50% тоже мертвы, только если не стянули файлы
  • система и общая конфигурация может и рабочая, но если удалось поправить утечку диска то ок, если все равно уплывает место, то контейнер в мусор

P.S.
Вот моя заметка по уменьшени размера lxc диска

2 лайка

там просто RESIZE , а вот знак плюса слева я неверно понял((((

там размер 2Гб и там netbird

огромное спасибо, всё получилось и не посыпалось!

а его лечить нужно, или не влияет ни на что? А если лечить, то где этот конфиг брать?

П.С.: в какой теме создать вопрос по metube, который в runtipi ставится, но не открывает свою страницу,а в dockge просто не запускается, хотя раньше через runtipi ставиося и работал.

Посмотрите вот эту тему на форуме проксмокса

вообще судя по /usr/lib/systemd/system/corosync.service в условиях проверки только наличие файла /etc/corosync/corosync.conf

Но я проверил на тестовом однонодовом PVE и там тоже нет конфига и такое-же сообщение. Вообще corosync нужен для кластеризации и дефолтно даже не дает поднять 1 ноду кластера т.к. слишком мало для кворума. Поэтому для однонодовых разворачиваний не нужно.

Выглядит так, что это нормальное поведение для безкластерных установок PVE и можно забить на сообщение.

1 лайк

Автора топика - поздравляю с исцелением.

Роман,

Вам, как активному участнику, можно даже с плакатом “НЕ СТАВЬ СБОРКУ САМОХОСТИНГ!” пикетировать =)

А если серьезно, можно подсветить лишний раз, что ребят - лучше делать все с нуля, используя скрипты или готовые вещи = вы рискуете тем или этим.

Оно так и есть, это не должно быть тайной) я ничего ни кому не продаю и не навязываю.
Просто пробую снизить\упростить порог входа.

Удачного самохостинга!

Ну так то да и поэтому я сейчас , как любой новичок, осваиваюсь, наступаю на грабли и пытаюсь фиксить это все и настраивать под себя. Потом наверное заново переставлю полностью со своими хотелками.
И скажите пожалуйста - где разместить вопрос по metube?

Да все так, я не против

  1. Сборки самохостинга
  2. Proxmox Helper Scripts
  3. LLM для написания конфигов или программ

Я за понимание того, что вы делаете и как будете чинить в случае проблем. Использование путь и крутых технологий не освобождает от ответственности в случае сбоев.

Уже несколько раз было такое, что несколько часов бьюсь с ChatGPT наш решением проблемы, а потом захожу в документацию и там все расписано и ре

P.S.
Кстати, по поводу сборки самохостинга, архитектурно она имеет место быть и я считаю, что нет правильных и неправильных архитектур, для себя тоже рассматривал нечто похожее, но потом все завертелось, закрутилось и дальше как в бреду (и я до сих пор не уверен, что у меня хорошо)

В видео про сборку всё подробно рассказано и показано — это очень круто и полезно для траблшутинга :flexed_biceps: :+1:

2 лайка
1 лайк