Новые процессоры в новом пуле облака Selectel

Новые процессоры в новом пуле облака

С некоторыми задержками, но мы запускаем новый пул на новых процессорах. Старые процессоры Xeon L5520, новые — Xeon E5-2630. Вот мнение Intel о том, как различаются процессоры: http://ark.intel.com/compare/64593,40201

Ключевые позиции:

  • Удвоение размера кеша;
  • Полуторакратный рост числа операций с системной шиной в секунду;
  • Поддержка дополнительных инструкций процессора AVX;
  • 68% рост скорости работы оперативной памяти.

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

Вместе с этими изменениями происходят и крупные изменения в тулстеке облака:

  • Переход на более новую версию гипервизора (3.4 -> 4.1) (чейнжлог для 4.1, 4.0);
  • Поддержку storage motion (крупный шаг для поддержки живой миграции между пулами);
  • Мажорное обновление xapi (changelog).

… и ещё множество локальных улучшений. А под шумок ещё убрали из списка доступных шаблонов в этом пуле ubuntu 10.04 в силу… м… ээ… потери рыночной актуальности.

Скажем честно, 90% из этих изменений — задел на будущее. Некоторые из них:

  1. Storage Motion позволит переносить диски между хранилищами и пулами на ходу, без прерывания работы;
  2. Новый гипервизор (Xen 4.1) позволит принять pv_ops ядра (ванильные ядра linux) в продакт без каких-либо патчей (прощайте, -xen версии ядер);
  3. xapi окончательно избавился от детских болезней XenSever’а и значительно упрощает процесс балансировки виртуальных машин между хостами.

Почему такой долгий деплой?

XCP 1.6, на котором основан новый пул, вышел в декабре 2012. А бета-версия третьего пула была выкачена в конце апреля 2013.

Причин задержек несколько. Во-первых тесты. На тестах мы нашли несколько ошибочных сценариев в работе xapi (они не ошибочные с точки зрения XenServer’а, но совсем не интересны для работы в качестве облачного тулстека). Под это дело была написана система автоматического тестирования, которая выполняет множество операций над готовой копией пула с вариацией параметров. Самый длинный тест у нас занимает больше 5 часов, и выполняется на двух пулах по два хоста в каждом.

Во-вторых адаптация нашей части тулстека под изменения xapi. Они кажутся косметическими, но каждое из них нам стоило несколько человеко-часов работы (сначала найти, потом адаптироваться). Консоли отдаются через TCP, а не через PTS, ряд атрибутов был потерян во время миграции операций с доменами из xapi в xenopsd и нам пришлось искать пути вокруг). Xen в свою очередь принёс изменения в ABI (потребовалось пересобирать/переписывать всю нашу обвязку, занимающуюся учётом SLA).

Способность виртуальных машин хотя бы теоретически путешествовать между пулами потребовала серьёзных изменений в структуру базы данных (раньше у нас было простое и ясное отношение — «у каждой виртуальной машины есть uuid её пула», а теперь пул может меняться, да ещё несколько раз на дню). Отдельной проблемой был передел IP-адресов (свободных IPv адресов всё меньше и меньше).