ansible для шедулинга размещения и создания базок • Работала в режиме cli • Данная схема абсолютно криповая и нерасширяемая • Рутина по заведению базок продолжала угнетать
• Переписываем в виде сервиса на python • resman – RESource MANager • Пока остается режим cli который дергает api • resman + It-crowd = рутина заведения базок ушла
кнопке • Базки заказываются через it-crowd • Наша группа начинает больше пилить и расширять инфраструктуру для Postgresql • Горизонтальное масштабирование инфраструктуры поддерживает вертикальный рост компании • Планы на большую автоматизацию работы инфраструктуры вокруг Postgresql
Anti-Affinity: • dc • стойка в которой расположен гипервизор • shard-prefix (мягкое) Вес – утилизация гипервизора. • Hyper-man – управляет ресурсами гипервизора - позволяет создавать и управлять виртуальными машинами.
снижает latency 15 Весь CPU pool поделен на 3 части: • Shared: здесь расположены все CPU не привилегированных виртуальных машин. • Exclusive: здесь расположены CPU эксклюзивных машин. • System: изолированный кусок пула CPU для функционирования hypervisor kernel, обслуживание сети в виртуальных машинах.
MERGING (KSM), позволяет экономить около 20% памяти: • Мы используем ”золотые образы” операционной системы. • Мы используем одинаковые версии софта, (кроме версий PostgreSQL).
online-resize. • По IOPS есть математический overselling, фактического не наблюдаем. • Есть scheduler (hyper-dog), который делает автоматический ресайз дисков, но от него планируем отказаться, так как это приводит к неконтролируемому росту.
иногда упираемся в трафик реплик. • Пакетики обрабатываются как на стороне гипервизора, так и внутри виртуальной машине. • Рандомно трафик VM-1 был виден в VM-2, из-за чего обработка “очереди пакетов” тормозила весь гипер: https://access.redhat.com/solutions/2822941
tc внутри виртуалки. • Трафик обрабатывается только внутри виртуальной машины • Нагрузочное тестирование: расходы cpu sys меньше в два раза, cpu irq в 10 раз.
• Начинает с async, потом sync, потом leader. • Выводит из балансировки, если leader делает switchover, если синхронная реплика дожидается появления синхронной реплики. • Останавливает виртуальную машину, производит ресайз, запускает. • После запуска, если необходимо, делает тюнинг настройки PostgreSQL.