❗️❗️❗️⚠️⚠️⚠️
БОТ С БЕСПЛАТНЫМИ ТЕСТОВЫМИ СЕРВЕРАМИ VPS СНОВА В ДЕЛЕ! 👉 @root_cheap_bot
Доступно еще 60 виртуалок!!! Регайте!
Что было сделано за сегодня?
1) Доделал команду для ПЕРЕСОЗДАНИЯ сервера /reload, теперь она работает без багов, и прежний ID не удаляются с портами.
ВАЖНО! Не злоупотреблять командой, только в крайнем случае, когда это реально необходимо. Иначе бот может заблочить за частую перезагрузку. Доступно несколько раз в сутки
2) Немного пофиксил логику с iptables правилами
3) Включил для админов команду с быстрым devmode если что-то пошло не так)
БОТ С БЕСПЛАТНЫМИ ТЕСТОВЫМИ СЕРВЕРАМИ VPS СНОВА В ДЕЛЕ! 👉 @root_cheap_bot
Доступно еще 60 виртуалок!!! Регайте!
Что было сделано за сегодня?
1) Доделал команду для ПЕРЕСОЗДАНИЯ сервера /reload, теперь она работает без багов, и прежний ID не удаляются с портами.
ВАЖНО! Не злоупотреблять командой, только в крайнем случае, когда это реально необходимо. Иначе бот может заблочить за частую перезагрузку. Доступно несколько раз в сутки
2) Немного пофиксил логику с iptables правилами
3) Включил для админов команду с быстрым devmode если что-то пошло не так)
🤗1
Какую бы вы заплатили цену за 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
Тех хар-ки LXC - 1CPU/300Mb RAM/4GB
Anonymous Poll
10%
Excellent!
31%
Памяти не маловато будет?
2%
Памяти можно и меньше - 200мб
3%
Диск хватит и 3ГБ
25%
А для чего оно?
16%
KVM рулит!
13%
Что это?
Что тебе интереснее и хотелось бы обсуждать здесь и в канале/чате(группе)?
Anonymous Poll
7%
Linux Base (все что про линукс не вдаваясь в глубокие дебри)
13%
Виртуализация (KVM, LXD, виртуальные сервера, докеры)
9%
Высшие материи - DevOps (Облака AWS/Google, k8s, gitlab(ci/cd), IaaC(terraform,ansible)..
26%
Халявные сервера оракл, впн, прокси
1%
Железяки
4%
Безопасность и сети
40%
ВСЕ вместе интересно
🤓6🔥1🤗1
Всем привет! 👏
Вчера протестировал создание lxc контейнеров alpine в автоматическом режиме, скоро они появятся в боте 🎉
Какие проблемы надо решить в связи с этим?
1) Вся логика заточена только на 1 сервер для пользователя, и в базу данных пишется все по одному, то есть надо смаштабировать и поменять схему базы и перекроить всего бота
2) Физическая привязка скрипта к гипервизору.
То есть разместив второй гипервизор, уже не реально использовать скрипт для него. Надо делать апгрейд логике и доступ к api kvm/lxd извне
3) Правила iptables были сгенерированы скриптом с 10000 по 40000 для 100 пользователей. Понял что сделал ошибку изначально, можно было диапазон и поменьше использовать раз в 100 и более, так как 100 пользователей по 20 портов это всего 2000. В итоге все равно остаются хорошие запасы по диапазону с 40к по 60к
Вчера протестировал создание lxc контейнеров alpine в автоматическом режиме, скоро они появятся в боте 🎉
Какие проблемы надо решить в связи с этим?
1) Вся логика заточена только на 1 сервер для пользователя, и в базу данных пишется все по одному, то есть надо смаштабировать и поменять схему базы и перекроить всего бота
2) Физическая привязка скрипта к гипервизору.
То есть разместив второй гипервизор, уже не реально использовать скрипт для него. Надо делать апгрейд логике и доступ к api kvm/lxd извне
3) Правила iptables были сгенерированы скриптом с 10000 по 40000 для 100 пользователей. Понял что сделал ошибку изначально, можно было диапазон и поменьше использовать раз в 100 и более, так как 100 пользователей по 20 портов это всего 2000. В итоге все равно остаются хорошие запасы по диапазону с 40к по 60к
В общем так. Заработало в таком интересном варианте. Сначала врубаем SHADOWSOCKS в режиме TUN через программу Nekoray для десктопов.
А далее включаем openvpn параллельно, и появляется доступ к инфраструктуре вашей
Такой способ протестирован только на Windows
А далее включаем openvpn параллельно, и появляется доступ к инфраструктуре вашей
Такой способ протестирован только на Windows
❗️❗️❗️Ребзи, скоро (в течении 1-2 суток, возможно и сегодня, но не факт), бот уйдет в devmod, чтобы в базу уже ничего не писалось и не добавлялось.
Перезагружать виртуалки можно будет через меня (только если сильно надо), но /reload вы уже не сделаете, то есть перезалить сервак нельзя будет.
В devmod он будет находиться пару дней или как звезды встанут. Эта первая итерация к масштабированию бота, первая
1) lxd/lxc контейнеры
После будут также:
2) Включение кучи гипервизоров и удаленное создание виртуалок и управление
3) Работа над тарифами
4) Добавление регионов Европы и тд
5) Балансы кэша на аккаунтах
*Не переживайте, тариф Free останется))
Перезагружать виртуалки можно будет через меня (только если сильно надо), но /reload вы уже не сделаете, то есть перезалить сервак нельзя будет.
В devmod он будет находиться пару дней или как звезды встанут. Эта первая итерация к масштабированию бота, первая
1) lxd/lxc контейнеры
После будут также:
2) Включение кучи гипервизоров и удаленное создание виртуалок и управление
3) Работа над тарифами
4) Добавление регионов Европы и тд
5) Балансы кэша на аккаунтах
*Не переживайте, тариф Free останется))
👏3🤗3👍1
Решил ли ты уже вопрос блокировок впн в своей инфраструктуре?
Anonymous Poll
27%
Да
40%
Нет
33%
Не моя проблема
🚧 Изолировать сеть между контейнерами - нет проблем с помощью правил iptables и правильного режима виртуального интерфейса
Но как изолировать дисковую подсистему каждого контейнера ⁉
То есть, если storage pool у вас идет как директория для этих контейнеров, то и доступ эти контейнеры могут получать внутри этого пула.
Тогда можно создать для каждого контейнера свой пул и поидее он будет ограничен им (к примеру директорией /lxd/pool-1)
С этим вроде решили. 🏄 Но есть второй момент - квота дискового пространства, она также остается общей для всех контейнеров, каждый может писать сколько угодно пока диск не забьется, ведь это не qcow диск
НО, для этого придумали в конфигурации root тома контейнера специальный флаг в конфиге root size=2GB, то есть ограничили размер корневого раздела двумя гб. ‼
К сожалению это работет только для zfs/btrfs и еще вроде lvm, с ext4 не прокатит
Как же тогда можно изолировать контейнерное дисковое пространство вместе с квотой? Ваши догадки?
Но как изолировать дисковую подсистему каждого контейнера ⁉
То есть, если 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
‼ Но тут есть одно НО, может кто-то уже догадался в чем может быть проблема?
В предпоследнем абзаце последнего сообщения я ошибся с 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 должен быть разряженным и с заданным максимальным размером
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 интерфейсы (вайргуард и тд)
То есть теперь для каждого будет доступно еще +1 сервак - lxc контейнер.
Хочу еще протестировать на lxc tun интерфейсы (вайргуард и тд)
🔥4