partly cloudy. Построение отказоустойчивых систем в aws...
TRANSCRIPT
![Page 1: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/1.jpg)
Partly cloudy
Построение отказоустойчивых систем в AWS минимальными
средствами
![Page 2: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/2.jpg)
Евгений Потапов
10 лет опыта веб-разработки
3 года опыта использования облачных технологий
генеральный директор компании «Сумма АйТи»
![Page 3: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/3.jpg)
Поддержка высоконагруженных веб-сайтов
90 миллионов уникальных посетителей в сутки
113 инстансов на поддержке в Amazon AWS
Использовали AWS, Softlayer Cloudlayer, Rackspace Cloud, Scalaxy
![Page 4: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/4.jpg)
Amazon Web Services с точки зрения эксплуатации
Переход работающих проектов
Использование особенностей облака минимальными средствами
Построение отказоустойчивых систем в AWS минимальными средствами
![Page 5: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/5.jpg)
![Page 6: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/6.jpg)
Реальную сущность облаков
Не думаем о стоимости внедрения
Верим в чудо
Мы забываем
![Page 7: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/7.jpg)
Владельцы хотят
Высокой надежности
Простой масштабируемости
Платить за используемые ресурсы
![Page 8: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/8.jpg)
новостей за сутки
13
Показывают яндекс.новости по запросу «Облачные вычисления»
![Page 9: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/9.jpg)
Ложные причины перехода в AWS
Искажение реальности
Потеря доверия к текущей хостинг-площадке
![Page 10: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/10.jpg)
Полный переход в AWS
Решение станет дороже
Отказоустойчивости по умолчанию нет
Появляются новые проблемы
![Page 11: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/11.jpg)
Процессор: Quad Core Xeon 3450 2.66GHz w/HT
Оперативная память: 8GB DDR3 Registered 1333
Дисковая подсистема: 4x500GB SATA HDD, RAID 10
Траффик: 5000 гигабайт
Пропускная способность: 1 гигабит
![Page 12: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/12.jpg)
Процессор: High-CPU Extra Large Instance (8 virtual cores)Оперативная память: 7 GB of memoryДисковая подсистема: EBS 1000GBТраффик: 1000 гигабайтПропускная способность: не контролируется
![Page 13: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/13.jpg)
$399
$5011yr upfront: $2000, Instance: $0.16 per hour($2000 / 12) + ($0.16*24*30) = $166.6+$115.2EBS: 1000GB = 1000 * $0.01 = $100Траффик – 1000GB = $0.12*1000 = $120$166+$115+$100+$120 = $501
![Page 14: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/14.jpg)
Но может быть AWS надёжнее?
![Page 15: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/15.jpg)
Даунтайм: 53 часа (21 апреля 2011 года)
Причина: нарушение маршрутизацииЗона: US East
Начало аварии: 12:47 29.04.2011
Конец аварии: 18:15 23.04.2011
![Page 16: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/16.jpg)
21 апреля 2011 года
Мы понимаем то значение, которое оказало это событие на наших клиентов, Мы хотим извиниться, и хотим сказать что мы сделаем выводы из этого происшествия.
http://aws.amazon.com/message/65648/
![Page 17: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/17.jpg)
Даунтайм: 36 часов (7 августа 2011 года)
Причина: отказ подстанцииЗона: EU West
Начало аварии: 10:41 07.08.2011
Конец аварии: 20:25 08.08.2011
![Page 18: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/18.jpg)
7 августа 2011 года
Мы понимаем то значение, которое оказало это событие на наших клиентов, Мы хотим извиниться, и хотим сказать что мы сделаем выводы из этого происшествия.
http://aws.amazon.com/message/2329B7/
![Page 19: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/19.jpg)
Даунтайм: 7 часов (29 июня 2012 года)
Причина: отказ подстанцииЗона: US East
Начало аварии: 19:24 29.06.2012
Конец аварии: 02:45 30.06.2012
![Page 20: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/20.jpg)
29 июня 2012 года
Мы извиняемся за те неудобства, которое оказало это событие на наших клиентов… Мы проведем много часов делая выводы из этого происшествия.
http://aws.amazon.com/message/2329B7/
![Page 21: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/21.jpg)
Uptime 100%
![Page 22: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/22.jpg)
Во всех случаях авария затронула несколько Availability зон в пределах одной географической
локации
![Page 23: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/23.jpg)
Специфика виртуализации
EBS тормозит
![Page 24: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/24.jpg)
Специфика виртуализации
Производительность EBS нестабильна
http://blog.scalyr.com/2012/10/16/a-systematic-look-at-ec2-io/
![Page 25: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/25.jpg)
Специфика виртуализации
Пропускная способность непропорциональна типу инстанса
![Page 26: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/26.jpg)
Но, хорошие решения существуют
![Page 27: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/27.jpg)
1 Гибридный бэкап
Текущий хостинг в основном устраивает
Допустим «откат» в данных на период последнего бэкапа
Бюджет минимален
(показания к применению)
![Page 28: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/28.jpg)
1 Гибридный бэкап
Сайт находится на физическом хостинге все время, кроме аварийных ситуаций
В AWS находятся только образы подсистем проекта и регулярные бэкапы, которые поднимаются только в случае аварии
(особенности решения)
![Page 29: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/29.jpg)
1 Гибрный бэкап(нормальный режим)
![Page 30: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/30.jpg)
1 Гибридное облако(авария на физической площадке)
![Page 31: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/31.jpg)
1 Гибридный бэкап
Время простоя – время между реакцией на падение физического хостинга и окончательным запуском всех сервисов в AWS
Данные актуальны на дату последнего бэкапа
Необходимо поддерживать две разные площадки
(минусы решения)
![Page 32: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/32.jpg)
1 Гибридный бэкап
Необходимо поддерживать актуальное состоние AMI и EBS Snapshot-ов
Код проекта должен быть абстрагирован от текущего хостинга
Стоит запланировать регулярные процедуры перехода в «резервное» облако
(рекоммендации)
![Page 33: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/33.jpg)
2 Бюджетное облако
Текущий хостинг в основном устраивает
При failover в резервную платформу данные должны быть актуальны
Бюджет чуть менее минимален
(показания к приминению)
![Page 34: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/34.jpg)
2 Бюджетное облако
Проект находится на физическом хостинге, но реплицируется на минимально возможную конфигурацию в Amazon
Минимальная конфигурация масштабируется до необходимой в случае аварии
Стоимость резервирования равна стоимости минимально выдерживающего процесс репликации инстанса
(особенности решения)
![Page 35: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/35.jpg)
2(нормальный режим)
Бюджетное облако
![Page 36: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/36.jpg)
2(авария на физической площадке)
Бюджетное облако
![Page 37: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/37.jpg)
2 Бюджетное облако
Время простоя – время между реакцией на падение физического хостинга и окончанием масштабирования инстанса
(минусы решения)
![Page 38: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/38.jpg)
2 Бюджетное облако(рекоммендации)
«Минимальная конфигурация» должна быть способна выдержать входящий поток репликации
За самим процессом репликации следует следить
![Page 39: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/39.jpg)
Переход ради масштабирования
«Взять слабый инстанс и автоматически масштабировать его при росте нагрузок в пиковые часы»
![Page 40: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/40.jpg)
Переход ради масштабирования
Вертикальное масштабирование:Апгрейд инстанса – 4-10 минут
Горизонтальное масштабирование:
Создание инстанса – 5-10 минут
![Page 41: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/41.jpg)
3 Горизонтальное масштабирование v.1
Текущий хостинг всем устраивает, но нагрузка возрастает в сезонные периоды(т.е. праздники, выходные и т.д.)
При появлении пиковой нагрузки можно некоторое время «потормозить»
Бюджет сравним с «гибридным бэкапом»
(применение)
![Page 42: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/42.jpg)
3 Горизонтальное масштабирование v.1
Вариация «Бюджетного клауда».
Проект находится на физическом хостинге, реплика хранится в AWS
При необходимости масштабирования необходимое количество инстансов запускается в AWS и синхронизируется с «минимального» инстанса.
(особенности решения)
![Page 43: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/43.jpg)
3 Горизонтальное масштабирование v.1
(нормальный режим)
![Page 44: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/44.jpg)
3 Горизонтальное масштабирование v.1
(рост нагрузки, синхронизация)
![Page 45: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/45.jpg)
3 Горизонтальное масштабирование v.1
(итоговое состояние)
![Page 46: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/46.jpg)
3 Горизонтальное масштабирование v.1
До запуска в AWS конфигурации способной выдержать текущую нагрузку скорость актуальность данных будет ограничиваться пингом между площадками
Если до этого горизонтальное масштабирование не использовалось -большие усилия направленные на изменения архитектуры проекта
(минусы решения)
![Page 47: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/47.jpg)
3 Горизонтальное масштабирование v.1
При использовании решений не поддерживающих multi-master архитектуры необходимо учитывать наличие только одной (двух) мастер-машин (либо использовать циркулярную репликацию)
Очень легко масштабировать чтение, очень сложно масштабировать запись (синхронизация данных при удалении инстанса)
(рекомендации)
![Page 48: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/48.jpg)
4 Горизонтальное масштабирование v.2
Текущий хостинг всем устраивает, но нагрузка возрастает в короткий промежуток времени (часы)
При появлении пиковой нагрузки нет времени на синхронизацию данных –данные должны быть актуальны
(применение)
![Page 49: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/49.jpg)
4 Горизонтальное масштабирование v.2
Проект целиком находится в AWS, классический облачный хостинг
Минимальный пинг между отдельными компонентами системы
Для резервной конфигурации расходы остаются небольшими
(плюсы решения)
![Page 50: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/50.jpg)
4 Горизонтальное масштабирование v.1
(нормальный режим)
![Page 51: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/51.jpg)
4 Горизонтальное масштабирование v.2
(рост нагрузки)
![Page 52: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/52.jpg)
Специальные сервисы
EC2 Spot Instances
Amazon Route 53
Amazon ELB
Amazon Glacier
![Page 53: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/53.jpg)
Специальные сервисы
Spot Instances: Amazon позиционирует spot instances как инструмент для cloud computing
Действительно, можно взять EC2-инстанс высокой конфигурации за небольшие деньги.
Этот инстанс будет остановлен как только кто-то предложит большую ставку при дефиците инстансов.
![Page 54: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/54.jpg)
Специальные сервисыRoute 53: сервис работает хорошо, но amazon.com использует другие NS
amazon.comamazon.com nameserver = ns4.p31.dynect.net.
amazon.com nameserver = pdns1.ultradns.net.
amazon.com nameserver = pdns2.ultradns.net.
amazon.com nameserver = pdns3.ultradns.org.
amazon.com nameserver = pdns4.ultradns.org.
amazon.com nameserver = pdns5.ultradns.info.
amazon.com nameserver = pdns6.ultradns.co.uk.
amazon.com nameserver = ns1.p31.dynect.net.
![Page 55: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/55.jpg)
Специальные сервисы
ELB: последнее падение затронуло ELB
Проекты которые полагались только на ELB в пределах одного региона оказались недоступны на весь период времени
![Page 56: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/56.jpg)
Специальные сервисы
Glacier: высокая стоимость восстановления данных
Дешевизна и надежность архивирования компенсируется стоимостью и скоростью выгрузки данных:
«Стоимость выгрузки 3 терабайт данных может дойти до $22082»
http://news.ycombinator.com/item?id=4412886
![Page 57: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/57.jpg)
Точка зрения
Реально оценивайте пользу от облаков
Эффективные решения находятся в области
комбинирования подходов
Всегда читайте, что написано мелким шрифтом
![Page 58: Partly cloudy. Построение отказоустойчивых систем в aws минимальными средствами (Евгений Потапов)](https://reader030.vdocuments.mx/reader030/viewer/2022013108/559c1d251a28abd3298b457b/html5/thumbnails/58.jpg)
Евгений Потапов
http://itsumma.ru
http://twitter.com/eapotapov
Построение отказоустойчивых систем в AWS минимальными средствами