TL; DR : Chaos Monkey была разработана в 2010 году на Netflix и выпущена в дикую природу в 2012 году. Она является частью армии Simian , популярной среди преданных последователей . Построенная на принципах хаоса , армия повышает устойчивость к сбоям, внедряя постоянный сбой в систему.
концепция
Chaos Monkey была разработана специально для AWS, где она будет случайным образом убивать экземпляры в рамках группы автоматического масштабирования. Он предназначен для работы в рабочее время, когда инженеры бдительны и могут быстро реагировать на обнаруженные сбои.
Симианская армия
Члены армии сеют хаос другими способами:
Другие Обезьяны полезны и удаляют слабых членов стада:
Соответствие Обезьяна закрывает экземпляры, не следуя передовым методам.
Security Monkey ищет известные уязвимости безопасности в конфигурации и сервисах.
Доктор Обезьяна закрывает нездоровые случаи, не соответствующие определенным показателям.
Дворник Обезьяна ищет неиспользованные ресурсы для восстановления.
Неудача неизбежна
Сбой в Системе неизбежен, что-то всегда пойдет не так . Возможно, вы не сможете выбрать что, но вы можете попытаться выбрать когда. Внося небольшие ошибки в течение дня, вы гарантируете присутствие ваших инженеров. Быстро убивая несоответствующие сервисы, вы гарантируете, что сбои часто происходят перед развертыванием. Делая среду более опасной, вы гарантируете, что разработчики столкнутся с проблемами задолго до того, как какой-либо сервис попадет в производство. Сбои быстро проявятся на этапе интеграции новых сервисов со старыми, но это нормально, потому что старые сервисы уже устойчивы.
Скот не домашние животные
В последнее время все скажут вам : не относитесь к своим серверам как к домашним животным . В числах есть сила, и любая отдельная точка отказа приведет к выходу системы из строя. Независимо от того, насколько хорошо вы можете настроить и оптимизировать свой сервер, независимо от того, какое мощное оборудование вы можете получить, сколько он может обработать, оно никогда не будет подходить для множества небольших масштабируемых экземпляров. Обезьяна Хаоса призывает вас подумать об устранении всех точек неудачи, потому что рано или поздно Обезьяна придет! Все терпят неудачу, и даже у Amazon S3 был непредсказуемый сбой .
Anti-Fragile
Так что же такое теория и почему она работает? Нассим Николас Талеб в своей книге « Antifragile» описывает концепцию, в которой живые самоосознающие системы извлекают выгоду из небольших уровней случайности и фактически становятся лучше перед лицом бедствий. Это похоже на отжиг.
Он также описывает эволюционный путь, где хрупкость частей в системе переходит в хрупкость целого . Передача происходит на двух уровнях:
С небольшими случайными отклонениями - разработчики, вносящие изменения - наиболее подходящие для среды выживут и распространятся - пройдут тесты и будут развернуты . Стандартный жизненный цикл разработки .
Из-за отказа частей, не способных противостоять большему уровню случайности в окружающей среде, оставшиеся части, способные противостоять этому, составляют систему, которая в целом лучше справляется с изменяющейся средой, чем раньше. По сути это Chaos Monkey .
Большие уровни случайности могут быть выдержаны с использованием второго подхода.