TL; DR : Chaos Monkey được phát triển vào năm 2010 tại Netflix và được phát hành vào năm 2012 là một phần của Quân đội Simian , cực kỳ phổ biến trong số những người theo dõi tận tụy . Được xây dựng trên các nguyên tắc của kỹ thuật hỗn loạn , quân đội tăng khả năng phục hồi thất bại bằng cách tiêm thất bại liên tục vào hệ thống.
Khái niệm
Chaos Monkey được phát triển riêng cho AWS, nơi nó sẽ giết ngẫu nhiên các cá thể trong Nhóm tự động nhân rộng. Nó có nghĩa là chạy trong giờ làm việc khi các kỹ sư cảnh giác và có thể nhanh chóng phản ứng với những thất bại được phát hiện.
Quân đội Simian
Các thành viên của quân đội sẽ gieo rắc hỗn loạn thông qua các phương tiện khác:
Những con khỉ khác rất hữu ích và loại bỏ những thành viên yếu trong đàn:
Conformity Monkey tắt các trường hợp không tuân theo các thực tiễn tốt nhất.
Security Monkey tìm kiếm các lỗ hổng bảo mật đã biết trong cấu hình và dịch vụ.
Doctor Monkey tắt các trường hợp không lành mạnh không tuân theo các số liệu nhất định.
Khỉ Janitor tìm kiếm các tài nguyên không sử dụng để đòi lại.
Thất bại là không thể tránh khỏi
Thất bại trong Hệ thống là không thể tránh khỏi, một cái gì đó sẽ luôn luôn đi sai . Bạn có thể không thể chọn những gì, nhưng bạn có thể cố gắng chọn khi nào. Bằng cách giới thiệu các lỗi nhỏ trong suốt cả ngày, bạn đảm bảo rằng các kỹ sư của bạn có mặt. Bằng cách nhanh chóng tiêu diệt các dịch vụ không tuân thủ, bạn đảm bảo rằng các lỗi sẽ xảy ra thường xuyên trước khi triển khai. Bằng cách làm cho môi trường trở nên bất lợi hơn, bạn đảm bảo rằng đó sẽ là các nhà phát triển gặp vấn đề từ lâu trước khi bất kỳ dịch vụ nào được đưa vào sản xuất. Thất bại sẽ nhanh chóng xuất hiện trong giai đoạn tích hợp các dịch vụ mới với các dịch vụ cũ, nhưng điều đó không sao, bởi vì các dịch vụ sản xuất cũ đã được phục hồi.
Gia súc không Thú cưng
Mọi người sẽ nói với bạn gần đây: Đừng coi máy chủ của bạn là thú cưng . Có một sức mạnh về số lượng và bất kỳ điểm thất bại duy nhất sẽ làm giảm hệ thống. Cho dù bạn có thể điều chỉnh và tối ưu hóa máy chủ của mình tốt đến mức nào, cho dù bạn có thể nhận được phần cứng mạnh mẽ như thế nào, có thể xử lý được bao nhiêu, nó sẽ không bao giờ phù hợp với các trường hợp có thể mở rộng nhỏ. Chaos Monkey khuyến khích bạn suy nghĩ về việc loại bỏ tất cả các điểm thất bại, vì sớm hay muộn, Khỉ sẽ đến! Mọi người đều thất bại và ngay cả Amazon S3 cũng gặp sự cố mất điện khó lường .
Chống mong manh
Vậy lý thuyết là gì và tại sao nó hoạt động? Nassim Nicholas Taleb trong cuốn sách Antifragile của ông mô tả một khái niệm trong đó các hệ thống tự nhận thức sống, sẽ được hưởng lợi từ một mức độ ngẫu nhiên nhỏ và thực sự trở nên tốt hơn khi đối mặt với nghịch cảnh. Điều này tương tự như ủ.
Ông cũng mô tả một cách tiến hóa, trong đó sự mong manh của các bộ phận trong một hệ thống được chuyển thành chống đông của toàn bộ . Việc chuyển tiền xảy ra ở hai cấp độ:
Bằng một biến thể ngẫu nhiên nhỏ - nhà phát triển thực hiện thay đổi - phù hợp nhất với môi trường sẽ tồn tại và lan truyền - vượt qua các thử nghiệm và được triển khai . Vòng đời phát triển tiêu chuẩn .
Do sự thất bại của các bộ phận không có khả năng chịu được mức độ ngẫu nhiên lớn hơn trong môi trường, các bộ phận còn lại có thể chịu được nó tạo thành một hệ thống có khả năng đối phó với môi trường thay đổi tốt hơn trước đây. Đây thực chất là Chaos Monkey .
Mức độ ngẫu nhiên lớn hơn có thể được ngăn chặn bằng cách sử dụng phương pháp thứ hai.