Набор скриптов для управления LXD-фермой

by Anton Chernousov aka GITA-DEV


Опубликовано: 17 Май 2018 (последние правки 1 месяц, 3 недели)


Набор скриптов для управления LXD-фермой

В свете последних сообщений о том, что в системе LXC и LXD было исправлено достаточно много ошибок связанных с утечкой памяти, возникло желание, пересобрать свежие версии LXC и LXD для тестовой фермы и понаблюдать до внедрения на продакшн. Перед внедрением на прод естественно надо посмотреть два-три дня и сравнить полученные за тестовый период метрики. Про пересборку фермы LXC-LXD я уже писал, но сегодня я хотел предложить вашему вниманию набор скриптов которые я использую для построения узла фермы контейнерной виртуализации.

На одной из нод тестовой фермы LXC/LXD виртуализации я столкнулся с тем, что вне зависимости от выделенного объема файла подкачки система планомерно с течением времени уходила в своп, что вызывало вполне ощутимые задержки в работе при обращении к сервисам. С 15-го мая в ветке LXC-MASTER начались активные работы по устранению утечек памяти сразу в нескольких подсистемах и вчера ночью было заявлено о завершении работ по устранению утечек памяти.

Устранение утечек паямти в проекте LXC

В статье "Сборка гипервизора контейнеров LXC (LXD) из исходных кодов и настройка окружения разработчика " я уже рассказывал о том как собрать LXC и LXD из текущей вертки разработки с официального GITHUB, но пересобрать все это в ручную для каждой итерации тестирования не сильно то и интересно и я уже давно написал набор скриптов автоматизации для этих целей.

Сегодня я выложил в публичный доступ на свой GIT-HUB репозиторий с набором скриптов которые я использую для построения элемента фермы: https://github.com/gita-dev/lxd-farm-build-scripts

Набор скриптов автоматизации построения LXD-фермы

Надеюсь, что эти скрипты будут вам полезны, ведь фактически это набор конфигурационных файлов и скриптов автоматизации из предыдущих заметок на тему LXC/LXD:


Обратите внимание на статьи:


OpenVPN-сеть для LXD-кластера без назначения адресов клиентов (использование стороннего DHCP для управления клиентами VPN-сети)

OpenVPN-сеть для LXD-кластера без назначения адресов клиентов (использование стороннего DHCP для управления клиентами VPN-сети)

Представляю вашему вниманию небольшой экскурс в активно используемую мной технологию построения распределенных виртуальных сетей на базе OpenVPN в немного непривычной реализации. Если вы работаете с OpenVPN технологиями, то наверное обратили внимание что практически все руководства описывают OpenVPN сеть где OpenVPN-сервер выступет в качестве DHCP-сервера и назначает адреса для своих клиентов, но я сегодня хотел бы предложить вам уйти от типовых реализаций.


Скрипт и поясняющее видео сборки гипервизора контейнеров LXD из исходных кодов (мастер-ветка)

Скрипт и поясняющее видео сборки гипервизора контейнеров LXD из исходных кодов (мастер-ветка)

В продолжение статьи по сборке GIT-версии гипервизора контейнеров LXD из исходных кодов, я подготовил скрипт выполняющий все описанное в предыдущих статьях в автоматизированном режиме и небольшую видео-демонстрацию того как собрать все в ручном режиме.


Управление дисковыми хранилищами LXD из консоли

Управление дисковыми хранилищами LXD из консоли

В предыдущей статье про базовую настройку окружения разработчика мы получили много вопросов по поводу управления дисковыми пулами и по результатам обсуждения статьи мы подготовили небольшую статью HOW-TO по управлению виртуальными дисками (и хранилищами) системы контейнерной изоляции LXD.


Сборка гипервизора контейнеров LXC (LXD) из исходных кодов и настройка окружения разработчика

Сборка гипервизора контейнеров LXC (LXD) из исходных кодов и настройка окружения разработчика

Данная статья родилась в процессе работ над проектом по тестировнию функционала горячей миграции контейнеров LXC. Мы провели сборку LXD из git-репозитария и описали шаги для повторения этих манипипуляций в дальнейшем. Дополнительно мы подготовили инструкцию по созданию окружения для наших разработчиков.


Есть вопросы?
Спрашивайте и я обязательно вам отвечу!

* Поля обязательные для заполнения .

Блог это некоммерческий проект! Если вам понравился мой блог и то что я пишу помогло вам на практике, то можете сказать спасибо материально.