Недавно у департамента эксплуатации Яндекс.Денег прошло значимое событие. Наша компания быстро растет, и оказалось, что перемен требуют не только наши сердца, но и дата-центр. А точнее, перемен требовала его локация. И вот уже три месяца, как один из дата-центров живет в новом месте.

О том, как Яндекс.Деньги переезжали в новый дата-центр, расскажу я, руководитель департамента эксплуатации, и Иван, начальник отдела ИТ-инфраструктуры и внутренних систем.

Под катом — хронология событий, важные вехи переезда, неожиданные повороты и разбор полетов. Делимся, как мы пережили это.

Предпосылки переезда


Ранее один из дата-центров Яндекс.Денег размещался в пригороде Москвы. Реальность такова, что за пределами города не у всех провайдеров оптических каналов связи есть возможность независимо прокладывать кабельные трассы — это дорого. И первая причина нашего решения о переезде была связана с тем, что в старом дата-центре каналы связи проходили по одним и тем же маршрутам, а это несло дополнительные риски.
Внутри МКАДа много провайдеров, и кабельная система хорошо развита. Можно у разных провайдеров закупить каналы, которые идут разными путями, и не пересекаются. В области же есть повышенные риски — например, приедет экскаватор и перекопает сразу все трассы.

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

Но самая главная причина (= боль) — невозможность расширения. Это значило, что в здании закончилось пространство для дополнительных стоек, куда можно было ставить новое оборудование. Это напрямую касалось нашей продуктивной среды, потому что у Яндекс.Денег два дата-центра и они должны быть симметричны по мощностям.

Планирование


Подготовку к переезду поделили на этапы:

  • Конкурсы: ДЦ, каналы, сети, стойки, PDU, кабели;
  • Перенос приложений и БД во 2-ой ДЦ;
  • Учения — отключение ДЦ;
  • Новая архитектура опорных сетей, IX;
  • Настройка нового ядра сети в ДЦ.


Выбор поставщиков


Первый дата-центр Яндекс.Денег расположен в Москве. И чтобы избежать больших сетевых задержек, решили расположить второй ЦОД недалеко от первого.
В пределах МКАД для минимизации сетевых задержек и не ближе 20 км к первому объекту для обеспечения независимости обоих ЦОДов от одних и тех же городских объектов инфраструктуры и возможных техногенных или природных катастроф.

При анализе рынка ориентировались на такой важный критерий, как сертификация дата-центров по уровню доступности и надежности. Самым распространенным в России и мире является стандарт, разработанный компанией Uptime Institute, которая проводит аудит дата-центров во всем мире. Стоит отметить, что есть много дата-центров, у которых сертифицирована только проектная документация, но это еще не говорит о том, что сам дата-центр построен, проверен и эксплуатируется по стандартам.
Случай из нашей практики: один провайдер услуг дата-центров Москвы заявил нам о соответствии проекта ЦОДа стандарту Tier III и предложил заключить договор с обещанием 100% доступности, то есть 0 минут простоя в год! Лично посетив объект, мы поняли, что официальных сертификаций, гарантирующих уровень качества, нет, а инфраструктура явно не тянет на Tier III. ЦОД располагался на первом этаже жилого дома, и единственный генератор-прицеп стоял на улице без какой-либо физической защиты.

Поэтому в требования к конкурсу мы включали не только сертификацию проекта, но и сертификацию реализации и процессов управления.

Далее определялись с поставщиками оптических каналов связи между нашими ДЦ и каналов в точки обмена трафиком (IX) там, где мы организуем стыки с провайдерами или нашими партнерами. Основной критерий был в том, чтобы оптические каналы связи были независимыми, шли разными трассами.

И, конечно, оставались другие закупки — в первую очередь это сетевое оборудование, стойки (специализированные шкафы для установки серверов), power distribution unit (интеллектуальные блоки распределения электропитания), а также кабели и патч-корды.

Стоит отметить, что мы особенно внимательно выбирали поставщика, который будет перевозить оборудование. Важно, чтобы компания имела опыт перевозки серверов, а грузчики понимали, что это не мебель и грузить, а также ехать следует особенно осторожно. Кроме того, мы застраховали перевозимое оборудование на случай его повреждения при перевозке.

Апгрейд сетевой инфраструктуры


Касательно сетевой инфраструктуры, у нас было два варианта. Первый — перевозить старое сетевое оборудование, «как есть». Второй — сперва построить новую сетевую инфраструктуру в новом дата-центре и только тогда перевозить серверное оборудование.

Так как мы понимали, что уже «уперлись» в пропускную способность сети в старом ЦОДе и нам нужны запас и возможность масштабирования минимум на ближайшие 3–5 лет, было принято решение строить сетевую инфраструктуру в новом ЦОДе с нуля и проводить обновление на новое поколение оборудования.

Мы придерживались классической модели при построении сети в новом дата-центре. В каждой стойке серверы подключаются в два коммутатора доступа, которые, в свою очередь, соединены с центральными коммутаторами агрегирования (они же ядро сети).



Учения


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

После проведения работ по резервированию начались учения. Сначала мы отключали отдельные сети, сегменты и только потом ЦОД полностью. За 2019 год мы 10 раз провели тестовое отключение дата-центра — смотрели, как ведут себя наши 300 информационных систем. Многократно проверив автономность, убедились, что можем без проблем проводить отключение.

А дальше…

Неделя X


На одну из пятниц назначили выключение всего оборудования в дата-центре — утром выкатывали последние релизы, а потом объявили на них мораторий.
В Яндекс.Деньгах может выходить по 60 и больше релизов в день, и все они проводятся на оба дата-центра.

Мы остановили релизы, убедились, что система работает стабильно и никакие фиксы не требуются в наших компонентах. Начиная с 15:00 начали постепенно гасить все приложения, базы данных, серверы. В течение ночи с пятницы на субботу выждали время, убедились, что ничего плохого не происходит, — значит, можем ехать. Утром в субботу команда из 15 человек начала демонтировать оборудование и перевозить его в новый дата-центр.



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



В субботу ночью мы смонтировали и подключили первую партию серверов. Основная работа началась в воскресенье — к вечеру выходных было смонтировано почти всё оборудование. А коммутацию мы закончили только в понедельник вечером.



Во вторник утром мы провели финальное тестирование сетей, каналов связи и уже были готовы поднимать наши системы. Начали поднимать первую партию серверов, но что-то пошло не так…

Мы начали получать массовые жалобы от администраторов о том, что в серверах не работает сеть: или полностью, или один из двух интерфейсов. Стали искать проблемы на стороне сетевого оборудования, в операционных системах, в настройках операционных систем.

Симптомы были схожими — начали смотреть, что же может быть причиной. Мы заметили, что стоит сильнее пошевелить патч-корды рядом с портами коммутаторов и часть рабочих линков гаснет.



Обнаружив это, мы поняли, что значительная часть этих патч-кордов (около 40% из 2000 штук) бракованная. Мы перевезли все имеющиеся патч-корды другого проверенного производителя в новый дата-центр и в экстренном порядке начали проводить перекоммутацию наиболее критичных серверов. На это ушел еще один день.

С вечера среды на утро четверга команда начала поднимать основной блок информационных систем.

После того, как мы подняли критичные сервисы и запустили резерв платежной системы, мы включили часть тестовых стендов нового ЦОДа и резерв систем backoffice, чтобы все наши внутренние системы работали с двумя дата-центрами. К концу недели почти вся ИТ-инфраструктура перевезенного ЦОДа была запущена.

Изначально был план на 5 дней, а с внештатной ситуацией, связанной с бракованными патч-кордами, получилась неделя. Ниже расписали наглядно таймлайн наших действий.

План переезда — ожидание:

  • Пятница — гасим сети и приложения;
  • Суббота — везем и начинаем сборку;
  • Воскресенье — установка серверов, запуск сетей;
  • Понедельник — заканчиваем сети, запуск приложений;
  • Вторник — включаем всё.


Реальность:

  • Пятница — гасим сети и приложения;
  • Суббота — везем и начинаем сборку;
  • Воскресенье — монтаж серверов, запуск сетей;
  • Понедельник — разводка кабелей, запуск сетей;
  • Вторник — включаем серверы, 100+ не работает;
  • Среда — брак в проводах, замена, запуск App и БД;
  • Четверг — закончили замену для ПС, запуск App.


Жизнь после переезда


Что мы получили от переезда?
Прежде всего оба наших дата-центра теперь уровня Tier III Uptime Institute. Поставщики дата-центров нам гарантируют уровень доступности Uptime 99,982%, что составляет до 1,6 часа простоя в год. Мы уверены в надежности каналов связи между нашими площадками. Также теперь нет ограничений по расширению нашей ИТ-инфраструктуры.

Идея переезда дала нам отличную возможность обновить сетевое оборудование в части пропускной способности. А также мы провели рефакторинг электропитания в стойках — установили «умные PDU», зарезервировали серверы по питанию.

А еще при переезде мы смогли «причесать» коммутацию, и теперь она выглядит аккуратнее.



Поэтому в целом система начала работать стабильнее, и наши клиенты получают более качественный сервис.

Какие выводы извлекли для себя?
Выполняя крупные проекты нужно думать о рисках, представлять, какие могут быть подводные камни. Наш пример с Ethernet-кабелями показал, что недостаточно сделать контрольную закупку и провести тестирование кабельной продукции выбранного производителя. Чтобы снизить риски, стоило проводить выборочное тестирование партии из 2000 кабелей.

Также стоит учитывать, что некоторые серверы могут не пережить переезда и просто не включиться по различным причинам. Так или иначе, дорога — это тряска и механические воздействия. Из 600 единиц перевезённого оборудования 6 блоков сломались. Из достаточно большого количества серверов пострадал лишь 1%, не вылетело ни одного диска — мы считаем, это отличный результат.



Вот так прошел переезд дата-центра Яндекс.Денег на новое место. Надеемся, что наш опыт поможет вам избежать возможных ошибок и, может быть, натолкнет вас на другие интересные решения.

Комментарии (42)


  1. tas
    23.12.2019 12:18
    +1

    Маладца! Прям очень быстро справились! Особенно с учетом бракованных кабелей…


  1. Ostrovv
    23.12.2019 12:27

    … 0 (нулевое) правило: «Информатика — наука о контактах»


  1. Yuriy_krd
    23.12.2019 12:30
    +2

    Вот очень интересно, почему решили сэкономить на кабелях (и это обычные патч-корды...), да еще и не в какой-нибудь институтской общаге, а в ДЦ. Ведь Вы сами написали про ужасный процент брака — значит, это был какой-то подвальный ноунейм от дядюшки Ляо! Почему и кто принял решение так сэкономить ?!


    1. AntonTP Автор
      23.12.2019 14:51

      Решающим фактором стал срок изготовления нужного нам количества патч-кордов с длиной 1,5 метра и тремя цветами. Надежный, ранее проверенный производитель озвучил срок более 5 месяцев. Т.к. процесс переезда уже был запущен, мы не могли столько ждать. Пришлось обратиться к другому, известному на рынке производителю (не Китай), который уложился в 2 месяца.


      1. MarinaToshina
        23.12.2019 17:46
        +1

        А как вы тогда успели переиграть все за один день?


        1. AntonTP Автор
          23.12.2019 18:35
          +2

          Мы взяли более длинные патч-корды из старых запасов. Они не так стройно ложатся в стойки, зато работают надёжно.


          1. 3aBulon
            26.12.2019 08:27

            Почему не взяли рабочие проверенные, вы же их с прошлого места не выбросили?


      1. CherryPah
        24.12.2019 13:11

        а с чем связан выбор именно меди rj45 а не sfp+?
        на новогодних праздниках как раз буду заниматься чем-то похожим (собираемся выкинуть все обычные патчи, кроме тех что ведут в ипми/ило и заменить на sfpшки). правда без перемещений между дц, да и серверов раз в 10 поменьше.


        1. AntonTP Автор
          24.12.2019 17:50

          У нас был постепенный апгрейд сетевой инфраструктуры с 1G до 10G. Base-t позволял сделать это более плавно и с меньшими финансовыми затратами. Далеко не все серверы мы закупали с 10G портами. И вендорские серверы со встроенными картами Base-t выходили дешевле. Да и сейчас у нас не мало серверов могут иметь на борту карты с 1G интерфейсами. Оборудование Base-t позволяет нам размещать в стойках серверы как 1G так и 10G. Так как мы не строили ДЦ с нуля, то на первом месте было поддержание совместимости с существующем обордованием.


          1. CherryPah
            24.12.2019 19:47

            вот это кстати во многих супермикрах вендорах достаточно сильно раздражает — они запихивают в сервера процессоры с сотнями ядер, терабайты оперативки и даже если и делают встроенную 10 то с rj45 разъёмом, с его детскими болячками в виде неплотной фиксации в порте(как раз как в вашем случае при высокой плотности портов)/отламывающимися язычками и прочей болью. ну и сами патчи достаточно толстые, если говорить про полноценные cat6/7
            Мне поудобнее будет — из шассика ptm 1g rj45 вытащу, на его место ptm 10g sfp+ вставлю, и сразу же кабельную сборку в него — двумя движениями 16 серверов переедет на 10ку Повторить еще 4 раза. xD


    1. Keyko
      26.12.2019 11:43

      Тот, кто монтажом занимается, сразу вас скажет, что это Greenconnect…


  1. Fox_exe
    23.12.2019 12:36
    -1

    Так вот почему я который день не могу авторизоваться в Yandex.денгах через Opera… (Просто кидает на главную после авторизации. Хотя в других сервисах авторизация работает)


    1. AntonTP Автор
      24.12.2019 14:36

      Fox_exe, я только что успешно залогинился в Opera.
      Предлагаю потраблшутить, написал вам в личку.


    1. YaMoneyHelp
      24.12.2019 16:16
      +1

      Если в другом браузере получается авторизоваться, то, пожалуйста, попробуйте очистить кэш и включить cookies. Если это не поможет, то понадобится больше подробностей (номер вашего кошелька, скриншоты, дата и время попытки авторизоваться). Наша служба поддержки поможет разобраться, коллеги на связи 24/7.


      1. Fox_exe
        24.12.2019 17:59

        В том то и непонятки — Другие браузеры пашут. Opera — нивкакую. Чистка всего и вся не помогает. Режим Инкогнито (Который тоже, вроде как, сбрасывает все кеши и куки) тоже не работает.
        Отключение плагинов, переустановка — результат прежний.

        В консоли отладки — никаких ошибок. Среди ресурсов — тоже ничего с ошибками 500 или 403/404… (Сама страница авторизации кидает 302 и возвращает на предыдущую)

        AntonTP уже написал в личку… Может и разберемся, что за аномалия…


        1. YaMoneyHelp
          24.12.2019 18:44

          Написали вам в личные сообщения, чтобы уточнить детали и помочь найти решение.


  1. kotomyava
    23.12.2019 13:00

    Вы выбрали просто-таки замечательное время для переезда. Как раз во время скидок/подарков — на пике активности ваших пользователей.


    1. HappyGroundhog
      23.12.2019 13:12
      +1

      3 месяца назад ~ сентябрь. Время скидок/подарков в сентябре? По материалам статьи, кстати, я не заметил, чтобы это как-то сказалось на пользователях) Сами пользуемся Я.Кассой и переезда не заметили.


  1. IgorPie
    23.12.2019 14:05

    Почему вы не хотите прославить поставщика плохих кабелей, тем более, сэмплы они дали нормальные?


    1. AntonTP Автор
      23.12.2019 18:42
      +1

      Пока не хотелось бы выносить это в публичное поле.


      1. IgorPie
        24.12.2019 14:28

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


        1. AntonTP Автор
          25.12.2019 09:32

          Можем поделиться с этим в личке.


  1. God_root
    23.12.2019 14:26

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


    1. Bessnov
      23.12.2019 20:09

      Это будет очень много ручной работы. И это будет уже не Tier III, это будет самопальщина.


      1. God_root
        24.12.2019 09:45

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


        1. AndrewFe
          24.12.2019 10:55

          Вот как раз «сертифицированное оборудование» здесь играет последнюю роль. Если зачищать не тупым канцелярским ножом и обжимать не плоской отверткой, то результат по качеству от используемого инструмента зависеть не будет.
          Но заводские патчи (от нормального производителя) всё равно надежнее. Хотя бы из-за большей степени фиксации кабеля относительно коннектора.
          Одно не понятно — зачем было заказывать патчи, если у кучи довольно серьёзных компаний есть разноцветные линейки и длина 1.5 метра — вполне стандарт.


  1. nikolau
    23.12.2019 18:15

    Интересует вопрос — сколько стоит один интернет-канал для ДЦ в месяц и какая у него пропускная способность (скорость)?


    1. AntonTP Автор
      23.12.2019 18:39

      У нас несколько таких каналов с разными скоростями. Не могу сказать точную пропускную способность из соображения безопасности. Также не могу поделиться стоимостью — коммерческая тайна.


    1. CherryPah
      24.12.2019 12:12

      Там перестают работать «скорость интернета» в том как ее видит конечный пользователь которому провайдер предоставляет какую-то ширину канала.
      И на первый план выходит связность AS между собой и какими путями ходит трафик.
      Если у меня из дома есть свое прямое стекло до какого-нить крупного IX, то в него можно хоть 100гб/c (а при dwdm еще и побольше) налить по цене владения этим волокном, правда при условии что остальные участники IX готовы (sic!) отдать мне столько трафика.
      Собственно первоочередная задача любого цода выйти на как можно большее количество площадок обмена трафиком и дотянуть свои кабеля до контент-генераторов, в результате любая «скорость интернета» становится равной цене кабеля.
      Если я интернет провайдер и мои пользователи смотрят видяшки ВК — мне выгодно получить прямой стык с ВК и гонять там трафик нахаляву. другое дело что сам ВК не горит желанием пириться со всякой мелкотой, потому что можно получить кучу головняка потом с кривыми анонсами из пионэрнетов и напрямую пирится только с теми кто забирает у них минимум 5% трафика (вроде раньше так было) — т.е с крупными операторами. Крупный оператор прикручивает потом три хвоста и перепродает это траф операторам помельче, те повторяют операцию и отдают эту скорость уже конечнику по получившейся цене.
      Ну, вкратце, сам по себе интернет бесплатен, поскольку он состоит из абсолютно равноправных владельцев AS, но в вакууме AS работать не будет, ей нужна физическая связность по проводам с другими участниками. И чем больше и распределенней у вас своя кабельная сеть — тем дешевле стоит «интернет» правда добавляются накладные расходы на поддержание всего этого кабельного хозяйства. Какому-нить транстелекому передача данных между мск и владиком стоит 0 рублей, правда чинить обрыв трассы где-нить между Читой и Хабаровском придется за свой счет.


  1. router
    23.12.2019 20:36

    Яндекс.Деньги не рассматривали нахваливаемые Яндекс надежные ЦОД Яндекс? В них, например, даже Яндекс.Облако стоит, которое, якобы, внутри потребляют, как dog food.


    1. AntonTP Автор
      24.12.2019 18:02

      Да, мы рассматривали варианты размещения в собственных ЦОД Яндекса. У нас относительно немного оборудования, проще эксплуатировать на ограниченной территории. Взвесив много факторов, решили размещать инфраструктуру в Москве.


    1. stilic
      25.12.2019 10:21

      Яндекс.Деньги не рассматривали нахваливаемые Яндекс надежные ЦОД Яндекс? В них, например, даже Яндекс.Облако стоит, которое, якобы, внутри потребляют, как dog food.


      От Яндекса там только 25% и название.
      Проект Яндекс.Деньги — принадлежит Сбербанку уже лет 7.
      www.vedomosti.ru/business/articles/2012/12/19/sberbank_kupil_servis_yandeksdengi


      1. router
        25.12.2019 14:57

        Большее число компаний не принадлежит Яндекс, это не означает, что Яндекс.Облако обречено на отсутствие клиентов. Яндекс в аплинк взяли, домены используют. Аж 25% владения, могли бы и Яндекс как ЦОД или облако рассмотреть. Или в СберКлауд встать тогда уж. В этом и был вопрос: почему своя инфстраструктура при наличии дружественных облаков и ЦОД у владельцев.


        1. AntonTP Автор
          26.12.2019 11:38

          Переехать в Cloud (Сбер или Яндекс) всеми сервисами мы не можем, т.к. имеем требования по PCI-DSS. И нам проще и безопаснее контролировать свой собственный периметр, чем отдавать это в облака, даже материнским компаниям.


  1. 5oclock
    23.12.2019 22:45

    А почему не рассматривалось размещение ЦОД в разных регионах, а не в пределах МКАД — оба?


    1. vanxant
      24.12.2019 04:37

      И какие такие это регионы имеют связность с МСК по разным физическим трассам, чтобы её не мог перерубить один сбесившийся бульдозер?
      PS. Думается здесь ещё без CAP теоремы не обошлось, финансовая транзакция считается закрытой (commited), когда её подтвердили оба ДЦ. А это значит что roundtrip latency между ДЦ становится бутылочным горлышком.


    1. AntonTP Автор
      24.12.2019 14:20

      Здесь несколько факторов. Большинство наших партнеров и множество клиентов находится в московском регионе, размещение рядом даёт минимальные задержки. Второе — мы заинтересованы в минимальных сетевых задержках между нашими ЦОД. Третье, в регионе есть несколько сертифицированных ЦОД уровня Tier III, между которыми можно провести открытый конкурс. Четвёртое, в Москве у нас есть зарезервированный персонал. Пятое, в Москве есть вендорские сервис-центры с хорошим запасом запчастей для серверного оборудования и в случае поломок, мы можем получить замену максимально быстро.


  1. Stas911
    24.12.2019 05:37

    Интересный опыт, спасибо. С проводами, конечно, засада. Ну и интересно тоже, насколько вы сами используете Я.Облако? Почему часть сервисов туда просто не уехала?


    1. AntonTP Автор
      24.12.2019 14:42

      На данный момент мы не используем Я.Облако, но рассматриваем такую возможность.


  1. MaxRAF
    24.12.2019 10:16

    Лучше бы написали статью на каком основании забираете из кошелька не принадлежавшие вам деньги, если ими не пользоваться определенное время.


    1. YaMoneyHelp
      24.12.2019 16:20

      Все банки взимают с клиентов комиссию за использование счета/карты. В Яндекс.Деньгах использование кошелька бесплатное — плата за обслуживание в размере 270 рублей в месяц взимается исключительно если кошельком два года никак не пользоваться.
      Соглашение об использовании кошелька, которое Яндекс.Деньги заключают с пользователем, полностью соответствует требованиям закона. Все соглашения, условия по тарифам и лимитам доступны клиентам до регистрации в сервисе. Как и с любым другим договором, с ними стоит ознакомиться до регистрации. Но в любом случае списания комиссии не являются для пользователя неожиданностью: за месяц до списания мы неоднократно напоминаем о приближении срока и по почте, и в кошельке. Чтобы деньги не списались, достаточно отложить списание, нажав на кнопку из письма, или выполнить любую операцию, например, пополнить баланс своего же сотового.


      1. MaxRAF
        24.12.2019 16:29
        +2

        А вы что, уже банк? Вот так новость. Вот только кошелек у меня появился в самом начале 2000-х, но видимо вы выросли, а вместе с этим и ваши аппетиты. В любом случае и при любой возможности вашим кошельком пользоваться больше не буду.


        Ну, хоть за бесплатную почту спасибо.