Задать вопрос
Ответы пользователя по тегу Базы данных
  • Зачем ставят сервер баз данных на виртуалку?

    Учебное применение виртуализации - это одно. Да, очень удобно - сунул файлик ВМ, запустил - готово! Каждый студент работает со своей виртуалкой, никто ни к кому не вмешается, на работу другого не повлияет. Кончилась лаба, грохнул файлик и всё. Совсем другое - продакшн. Не всё удобно виртуализировать. Отчасти из-за потерь на "накладные расходы" виртуализации, отчасти из-за дополнительных лицензий на виртуальные серверы.
    У себя поставил виртуальные серверы под Debian на libvirt. Проводил тесты, потери на io виртуализируемого в файле винчестера примерно 5-10% от аналогичного реального. Потери производительности виртуализованного процессора аналогично. Вот к каким выводам пришёл:

    Минусы виртуализации на libvirt:
    - снижение производительности io
    - снижение производительности процессора
    - виртуальный сервер "поедает" до 100Мб оперативной памяти
    - необходимость lvm для снапшотов (никогда не настраивал, ненавижу lvm)
    - ядра процессора с поддержкой HyperTrading видны как "настоящие" процессоры
    - некоторые "тяжёлые" операции внутри ВМ вызывают сильное торможение всего виртуального сервера
    - не стоит использовать для хранения ВМ дисковые массивы, отличные от raid1
    - требуются дополнительные "колдунства", чтобы виртуальный сервер корректно выключал ВМ с серверными платформами Windows, аналогичные выключению питания Windows Server по кнопке питания

    Плюсы виртуализации на libvirt:
    - лёгкая смена "железа" при выходе из строя сервера
    - лёгкое администрирование с любой платформы по rdp, если поставить xrdp и virt-manager
    - лёгкое использование аппаратных или программных raid для хранения ВМ
    - возможность использовать в качестве дисков ВМ локальных файлов|дисков, удалённых ресурсов nfs и др.

    Тонкости виртуализации на libvirt:
    Поставил виртуальный сервер. Размер самого сервера - менее 10Гб. Винтов два, на обоих своп по паре Гб. Raid софтовый, на нём система, остаток места на винтах - софтовый raid1. Как его использовать - два варианта. Можно создать ФС и примонтировать в стандартный пул libvirt: /var/lib/libvirt (или в другое место) и разместить там требуемые образы дисков и ВМ. Можно образы дисков разместить в /var/lib/libvirt в корневом разделе системы, а софтовый raid оставить без ФС и подключить полностью как "диск" ВМ, указав его имя, например, /dev/md1.
    Преимущество софтового raid1 под Linux в том, что можно соединить хоть 10 дисков, в отличие от аппаратных raid контроллеров или софтового под Windows.
    Вообще же, использование софтового raid даёт существенный прирост в чтении данных, например, софтовый raid1 из 6 дисков имеет скорость чтения, сопостовимую с 6-дисковым raid0.
    Если сервер БД виртуальный, и работает больше на выборку, чем на обновление|добавление, это преимущество вам может быть просто неимоверно на руку :)
    Ответ написан
    Комментировать
  • Какую выбрать тему для диплома по автоматизации?

    Автоматизацию службы техподдержки с БД по типовым случаям отказов и возможностью пользователей находить лёгкие (или не требующие высоких привилегий) решения самостоятельно.
    Ответ написан
    Комментировать