#linux LIFE
1.22K subscribers
184 photos
8 videos
13 files
141 links
Группа канала Linux Life в youtube
Обозреватель свободного программного обеспечения для линукс , а также канал о пингвинах и не только!

youtube канал https://www.youtube.com/@linuxlifepage

Связаться с автором @worldranger
Download Telegram
❗️❗️❗️⚠️⚠️⚠️

БОТ С БЕСПЛАТНЫМИ ТЕСТОВЫМИ СЕРВЕРАМИ VPS СНОВА В ДЕЛЕ! 👉 @root_cheap_bot
Доступно еще 60 виртуалок!!! Регайте!

Что было сделано за сегодня?
1) Доделал команду для ПЕРЕСОЗДАНИЯ сервера /reload, теперь она работает без багов, и прежний ID не удаляются с портами.
ВАЖНО! Не злоупотреблять командой, только в крайнем случае, когда это реально необходимо. Иначе бот может заблочить за частую перезагрузку. Доступно несколько раз в сутки

2) Немного пофиксил логику с iptables правилами

3) Включил для админов команду с быстрым devmode если что-то пошло не так)
🤗1
Подождите немного, мне нужно будет вас также пересоздать. За вами числятся сервера которых нет
🤝4
Какую бы вы заплатили цену за VPS в МЕСЯЦ с такими ресурсами (1CPU/750MB/15GB на моем гипервизоре (предположим что я их продаю, а вы как клиент:))
Anonymous Poll
10%
200 рублей (2$)
13%
150 рублей (1.5$)
32%
100 рублей (1$)
46%
50 рублей (0.5$)
Теперь SMS по VPS не будут приходить временно, они приходят мне также в бота. Поэтому пишите мне, я перешлю его вам
Как вам идейка lxd/lxc контейнеры с дистрибутивами alpine/void/и тд.
Тех хар-ки LXC - 1CPU/300Mb RAM/4GB
Anonymous Poll
10%
Excellent!
31%
Памяти не маловато будет?
2%
Памяти можно и меньше - 200мб
3%
Диск хватит и 3ГБ
25%
А для чего оно?
16%
KVM рулит!
13%
Что это?
Всем привет! 👏

Вчера протестировал создание lxc контейнеров alpine в автоматическом режиме, скоро они появятся в боте 🎉

Какие проблемы надо решить в связи с этим?

1) Вся логика заточена только на 1 сервер для пользователя, и в базу данных пишется все по одному, то есть надо смаштабировать и поменять схему базы и перекроить всего бота

2) Физическая привязка скрипта к гипервизору.
То есть разместив второй гипервизор, уже не реально использовать скрипт для него. Надо делать апгрейд логике и доступ к api kvm/lxd извне

3) Правила iptables были сгенерированы скриптом с 10000 по 40000 для 100 пользователей. Понял что сделал ошибку изначально, можно было диапазон и поменьше использовать раз в 100 и более, так как 100 пользователей по 20 портов это всего 2000. В итоге все равно остаются хорошие запасы по диапазону с 40к по 60к
У коллеги openvpn и wireguard заблочил домашний провайдер. Дал ей xray, вроде работает но дохло прям
Хорошая новость. SHadowsocks работает 😁👍
В общем так. Заработало в таком интересном варианте. Сначала врубаем SHADOWSOCKS в режиме TUN через программу Nekoray для десктопов.

А далее включаем openvpn параллельно, и появляется доступ к инфраструктуре вашей

Такой способ протестирован только на Windows
Гипервизор не плохо себя чувствует. Лишь память со swap нагружены )
👍4
❗️❗️❗️Ребзи, скоро (в течении 1-2 суток, возможно и сегодня, но не факт), бот уйдет в devmod, чтобы в базу уже ничего не писалось и не добавлялось.

Перезагружать виртуалки можно будет через меня (только если сильно надо), но /reload вы уже не сделаете, то есть перезалить сервак нельзя будет.

В devmod он будет находиться пару дней или как звезды встанут. Эта первая итерация к масштабированию бота, первая
1) lxd/lxc контейнеры

После будут также:
2) Включение кучи гипервизоров и удаленное создание виртуалок и управление
3) Работа над тарифами
4) Добавление регионов Европы и тд
5) Балансы кэша на аккаунтах

*Не переживайте, тариф Free останется))
👏3🤗3👍1
420164334, зачем ты так с ним? 😄
😢5😁3🔥1
Опять блочат ВПН
😱2💯1
тесты на ТСПУ. Будут проходить с 16:00 07.09.2023 по 11.09.2023 МСК
Решил ли ты уже вопрос блокировок впн в своей инфраструктуре?
Anonymous Poll
27%
Да
40%
Нет
33%
Не моя проблема
Всем привет! 👏
Эпопея про VPS на гипервизоре и LXD(Lxc) продолжается.

Хочу рассказать о такой вещи как изоляция контейнеров, если они публичные и используются среди клиентов, а не только вами
🚧 Изолировать сеть между контейнерами - нет проблем с помощью правил iptables и правильного режима виртуального интерфейса

Но как изолировать дисковую подсистему каждого контейнера
То есть, если storage pool у вас идет как директория для этих контейнеров, то и доступ эти контейнеры могут получать внутри этого пула.

Тогда можно создать для каждого контейнера свой пул и поидее он будет ограничен им (к примеру директорией /lxd/pool-1)

С этим вроде решили. 🏄 Но есть второй момент - квота дискового пространства, она также остается общей для всех контейнеров, каждый может писать сколько угодно пока диск не забьется, ведь это не qcow диск
НО, для этого придумали в конфигурации root тома контейнера специальный флаг в конфиге root size=2GB, то есть ограничили размер корневого раздела двумя гб.
К сожалению это работет только для zfs/btrfs и еще вроде lvm, с ext4 не прокатит

Как же тогда можно изолировать контейнерное дисковое пространство вместе с квотой? Ваши догадки?
Всем доброе утро👏

В предпоследнем абзаце последнего сообщения я ошибся с ext4, я имел ввиду про dir, то есть директория

ИТАК, варианты доступные для изолирования диска контейнера, напишу 2 вврианта

1) Не совсем правильный. Создаем с помощью утилиты dd диск img, форматируем его и монтируем в /mnt/lxd-1, далее создаем пул в этой директории для одного контейнера. В итоге он получит то что нужно в размере, который предоставляет этот образ, также изолируется от других.
Проблемы тут могут возникнуть при перезагрузке гипервизора, то есть надо позаботиться еще об автомонтировании

2) ПРАВИЛЬНЫЙ. В предыдущем посте я упомянул lvm, как раз он нам и нужен. Когда вы создаете профиль lxd при первоначальной команде lxd init, то выбирая для пула lvm можно указать существующий, либо создать новый, и если выбрать новый, то он создаст loop девайс, который как раз является lvm томом блочным устройством в виде физического файла, того же img, который располагается в директории /var/lib/lxd/...

Как раз для него можно задавать для каждого контейнера размер при старте через параметр -d root,size=5GB. В итоге контейнер получит и изоляцию и также нужный размер, управляемый lxd

Но тут есть одно НО, может кто-то уже догадался в чем может быть проблема?
👍1
📜 Ответ по проблеме с правильным вариантом.

Loop устройство (образ img) создается по дефолту в /var/lib/lxd/... и далее монтируется том. Естественно поменять расположение его нельзя при первоначальной инициализации, и после в конфигурации изменить на свой тоже нельзя.

Так как я использую на гипервизоре BCACHEFS том, созданный из ssd+hdd, то в этом вся загвоздка, что он не корневой и мне необходимо хранить все виртуалки и контейнеры на этом разделе

Какой выход? 🏃
Можно настроить симлинк на /var/lib/lxd.., но по мне это не верное решение, так как при обновлении может пойти что-то не так, и я такое не тестировал.

ПРАВИЛЬНОЕ решение заключается в создании loop блочного устройства (образ img) там где нужно, далее его монтирование через losetup и уже создаем через команду lxc storage create <pool-name> lvm source=<vg-name>

* образ loop должен быть разряженным и с заданным максимальным размером
Доделал lxd/lxc. Возможно сегодня залью функционал в бота.

То есть теперь для каждого будет доступно еще +1 сервак - lxc контейнер.

Хочу еще протестировать на lxc tun интерфейсы (вайргуард и тд)
🔥4