31
Как сделать Git Lab, который не упадет Айри.рф

Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Как сделать Git Lab,который не упадет

Айри.рф

Page 2: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Мациевский Николай – владелец WEBO Group www.webogroup.com

Айри.рф: 6700+ сайтовГеография: Россия, Беларусь, Украина, КазахстанSLA доступности: 99,99%

2 книги, 16 наград (Microsoft MVP – 6 лет подряд, Стартап года – 2 раза, WebReady, ROI, Окно в Европу, YEES, Эврика, «Старт», VCDay)

Айри.рф

Page 3: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Какая бывает доступность

Page 4: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Доступность = 100% * (1 - частота_недоступности *

период_недоступности)

Айри.рф

Page 5: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Доступность 99,99% =4,5 минуты простоя в месяц

Айри.рф

Page 6: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Доступность 99,999% = 5,2 минуты простоя в год

Айри.рф

Page 7: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Причины недоступности

Page 8: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Отказ базы данных

Айри.рф

Page 9: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Ошибка конфигурации веб-сервера

Айри.рф

Page 10: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Ошибка приложения

Айри.рф

Page 11: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Большая нагрузка

Айри.рф

Page 12: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Сбой оборудования

Айри.рф

Page 13: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

В чем же проблема?

Page 14: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Айри.рф

Page 15: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Айри.рф

Page 16: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

3 кита высокой доступности

Page 17: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Если что-то может отказать – оно откажет!

Айри.рф

Правило доступности №1

Page 18: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Если упало и быстро поднялось, то не падало вовсе!

Айри.рф

Правило доступности №2

Page 19: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Семь раз проверь, и еще раз проверь!

Айри.рф

Правило доступности №3

Page 20: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Прикладные решения

Page 21: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Дублирование узлов, баз данных, подключений, файловых хранилищ, клонирование людей

Айри.рф

1. Отсутствие единой точки отказа

Page 22: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Файлы: Dropbox / lsync / rsyncКонфигурации: AnsibleПриложения: менеджер пакетов (yum)

Авто-проверки целостности

Нет резервного копирования

Айри.рф

2. Синхронизация

Page 23: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Полностью идентичный «боевому»

Конфигурация синхронизируется с «боевыми»

Минимизация ошибок при обновлениях (Amazon = 0,001%)

Айри.рф

3. Выделенный тестовый узел

Page 24: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

DNS – до 15 минут простоя, триггеры

BGP – до 3 минут простоя, протоколы

BFD – до 10 секунд простоя, протоколы

Айри.рф

4. Балансировка

Page 25: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

100% хостинг-провайдеров когда-нибудь «лежат»

Но есть хостинг-провайдеры с доступностью 99,99% в течение года

Айри.рф

5. Аппаратная часть

Page 26: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Автоматизация. Минимум ручного участия в процессах

Отключение. При ручных работах вывод части системы из-под нагрузки

Регламенты. Четкий алгоритм действия для ручного вмешательства и в случаях аварий

Айри.рф

6. Регламенты

Page 27: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Самоанализ узлов, отключение в случае сбоя

Триггеры поведения на все известные форсмажоры: отказ базы, DDoS, сбой оборудования – внутренний мониторинг

https://en.wikipedia.org/wiki/Autonomic_computing

Айри.рф

7. Самолечение

Page 28: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Экономика

Page 29: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

3 сервера (основной, резервный, тестовый) вместо 1 (железо x3)

Больше тестов на приложение (автотесты x2)

Усиление компетенции (обучение x1,2)

Бюджет x2 Айри.рф

Отказоустойчивость 99,99%

Page 30: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

2 независимых хостинг-провайдера с доступностью 99,99%+ переключение в течение 1 минуты при сбое

Нужна собственная AS (либо арендованная /24 подсеть)

Бюджет x3Айри.рф

Отказоустойчивость 99,999%

Page 31: Как сделать Git Lab, · оборудования – внутренний мониторинг ... Доступность 99,999% своими руками Николай

Доступность 99,999% своими руками

Николай Мациевский Мария Питерская[email protected] [email protected]+7 926 728 19 64 +7 925 888 45 00

Спасибо!