Bu Kaos Maymunu kim ve neden sunucumu çökertti?


28

Mükemmel bir sunucum vardı, çok güzel ve sağlamdı ve bu yüzden Petra adını verdim. Her yönden mükemmeldi, her şey tam olarak yapılandırıldı ve ayarlandı, mükemmel% 100 servis kaydı ve 753 günlük çalışma süresi vardı. Çok iyi çalıştığından emin olmak için çok zaman ve çaba harcadım. Şirketteki başka hiçbir sunucu bu kadar iyi olmamıştı. Ama dün gece bu kötü canavar sunucumu sebepsiz yere çarptı.

Kaos Maymunu

Tabii ki saat 2'de bana haber verildi ve beni çalıştırmak ve çalıştırmak için sabaha kadar sürdü ve her şey ayarlandı ve ayarlandı, ama korkarım eskisi kadar iyi olmayacak. Eski şanına dönmesi haftalar alabilir. Şimdi çalışma sürem bitti, hatta üç 9s bile yok ve bunun şöhretime ne yapacağını bilen var. Bu Kaos Maymunu kim ve neden sunucuma bunu yaptı ve neden beni mahvetmeye çalışıyor?


12
En komik soru için bir rozet olmalı :)
Richard Slater

Tek sunucu mu? Bu da ne? Neden işinizi, kaçınılmaz bir şekilde başarısız olduğunda veya kiraya verdiğinde kolayca ölçeklendirilebilen ve değiştirilebilen bir meta yerine benzersiz bir sanat eserine dayandırıyorsunuz?
İade Yok İadesi Yok

Bunun siteyi önceden tohumlamak için gerçekten iyi bir soru olduğunu düşünüyor muyuz? Mühendislerin Chaos Monkey'i kurmasını, yapılandırmasını ve çalıştırmasını bekliyoruz, sonra ne olduğunu unutmalıyız, ancak resmi web sitesini ziyaret etmekten ziyade ağlarında çalıştığını ve Yığın Değişimi hakkında bilgi isteyin mi? Etkili olmayan birçok adım var.
Xiong Chiamiov

2
Açıkçası, gerçek bir soru değil. Endüstri tarafından basitçe geride bırakılmış olan eski alanın üstünü canlandırmak bir şakaydı. Ancak eleştiriniz, altyapıya bakan tek bir kişi veya hatta tek bir ekip olduğunu varsayar. Büyük şirketlerde çoğu zaman mevcut altyapı ve ekipler değiştirilirken bile yerinde kalır. Yeni bir ekibin, yeni altyapı ve Chaos Monkey'in kurulumuyla başlaması oldukça muhtemeldir ve eski osuruk, ilk başarının ardından şirketin geniş konuşlandırıldığı bir zamanda vuruldu.
Jiri Klouda

Asıl soru, eğer böyle bir sunucunuz varsa, neden Chaos Monkey'i kurdunuz?
user253751

Yanıtlar:


32

TL; DR : Chaos Monkey , 2010 yılında Netflix'te geliştirildi ve 2012'de vahşi hale getirildi , sadık takipçileri arasında çılgınca popüler olan Simian Ordusunun bir parçası . Üzerine kurulmuş kaos ilkelerine mühendislik, ordu sistemine devamlı başarısızlığa enjekte ederek yetmezliğine karşı esneklik artar.

kavram

Chaos Monkey, bir Otomatik Ölçeklendirme Grubu içindeki örnekleri rastgele öldüreceği AWS için özel olarak geliştirilmiştir. Mühendislerin uyandığı ve keşfedilen arızalara hızlı bir şekilde tepki verebileceği mesai saatleri boyunca çalışması amaçlanmaktadır.

Simian Ordusu

Ordunun üyeleri başka yollarla kaos ekeceklerdi :

  • Latency Monkey, hizmetlere rastgele gecikmeler getirecek.

  • Kaos Gorilla (Kong) tüm müsaitlik bölgesinin kesilmesini simüle edecektir.

Diğer Maymunlar yardımcıdır ve sürünün zayıf üyelerini kaldırır:

  • Uygunluk Monkey, en iyi uygulamaları takip etmeyen örnekleri kapatır.

  • Güvenlik Monkey, yapılandırma ve hizmetlerdeki bilinen güvenlik açıklarını arar.

  • Doktor Monkey, belirli ölçümlere uymayan sağlıksız örnekleri kapatır.

  • Janitor Monkey, kullanılmayan kaynakların geri kazanılmasını istiyor.

Başarısızlık Kaçınılmazdır

Sistemdeki başarısızlık kaçınılmazdır, bir şeyler daima ters gidecektir . Neyi seçemeyebilirsiniz, ancak ne zaman seçmeyi deneyebilirsiniz. Gün boyunca küçük hatalar vererek mühendislerinizin hazır bulunmasını sağlarsınız. Uyumsuz hizmetleri hızlı bir şekilde öldürerek, arızaların konuşlandırmadan önce sık sık olmasını sağlarsınız. Çevreyi daha olumsuz hale getirerek, herhangi bir hizmetin üretime girmesinden çok önce sorunla karşılaşan geliştiriciler olacağını garanti edersiniz. Yeni servislerin eski servislere entegrasyon aşamasında arızalar hızlı bir şekilde görülecektir, fakat bu tamam, çünkü eski üretim hizmetleri zaten esnek.

Sığır evcil değil

Son zamanlarda herkes size söyleyecek : Sunucunuza evcil hayvan gibi davranmayın . Rakamlarda bir güç var ve herhangi bir başarısızlık noktası sistemi çökertecek. Sunucunuzu ne kadar iyi ayarlayabilir ve optimize edebilirsiniz, ne kadar becerikli bir donanıma sahip olursanız olun, ne kadar tutabilirseniz çalışın, küçük ölçeklenebilir örneklerin sürüsü için asla bir eşleşme olmayacaktır. Kaos Maymunu, tüm başarısızlık noktalarını ortadan kaldırmayı düşünmenizi önerir, çünkü er ya da geç, Maymun gelecek! Herkes başarısız olur ve Amazon S3'ün bile tahmin edilemeyen bir kesintisi oldu .

Anti-Kırılgan

Peki teorisi nedir ve neden işe yarıyor? Antifragile adlı kitabında Nassim Nicholas Taleb , kendini tanıyan sistemlerde yaşamanın, küçük bir rastgelelik seviyelerinden faydalanacağı ve aslında sıkıntı karşısında daha iyi olacağı bir kavramı anlatıyor. Bu tavlamaya benzer.

Ayrıca, bir sistemdeki parçaların kırılganlığının bütünün antiframilitesine geçtiği evrimsel bir yol tarif ediyor . Transfer iki seviyede gerçekleşir:

  1. Küçük bir rastgele varyasyonla - değişiklik yapan geliştiriciler - çevreye en uygun olanı hayatta kalacak ve çoğalacak - testleri geçecek ve konuşlandırılacak . Standart Geliştirme Yaşam Döngüsü .

  2. Ortamda daha büyük bir rasgele düzeye dayanamayan parçaların arızalanması nedeniyle, dayanabileceği kalan parçalar, bir bütün olarak değişen ortamla daha önce olduğundan daha iyi başa çıkabilen bir sistem oluşturur. Bu aslında Kaos Maymunu .

İkinci yaklaşım kullanılarak daha büyük rasgele seviyeler çekilebilir.


"Başarısızlık Kaçınılmazdır" - büyük mantram!
Wogsland

Nassim Talebi'nden bahsettiğin için oy verildi. Süper akıllı adam ve onun fikirleri temelde her şeye uygulanabilir.
maplebird

8

Bu sorunun cevabına bazı ilaveler ...

Ek maymunlar

" Kaos performansı nasıl artırır " konulu makale , bu maymunlardan birkaç tanesini anlatıyor.

  • 10-18 Maymun : Birden fazla bölgedeki müşterilere hizmet veren durumlarda yapılandırma ve çalışma zamanı sorunları bulur.
  • Kaos Kong : Bir Amazon bölgesinin kesintisini simüle ediyor.

Not: Aynı makalede ayrıca “Kaos Goril: bir Amazon kullanılabilirlik bölgesinin kesintisini simüle ediyor” olarak da belirtiliyor, ancak bu şimdi “Kaos Kong: bir Amazon bölgesinin kesintisini simüle ediyor” olarak adlandırılmış olabilir. Kaos ! Bu konuda şu ana kadar herhangi bir onay / belge bulamadım, en azından konu kuyruğunda sorun çıkmadı gibi görünüyor . Belgelenmemiş bir değişiklik onu github'da üretime geçirmiş olabilir ... Gggggggrrrrrreat!

Kendi maymunlarını kur ve kullan.

İçin Github üzerinde Başkanı Simian Ordusu ile temasa (kendi cevap ilk bağlantı olarak aynı bağlantıyı). İşte orada bulacaksınız ne bir alıntı:

Simian Ordusu, buluttaki çeşitli arıza türlerini ortaya çıkarmak, anormal durumları tespit etmek ve hayatta kalma yeteneğimizi test etmek için hizmetlerden (Maymunlar) oluşur. Amaç, bulutumuzu güvenli, emniyetli ve erişilebilir hale getirmektir. Daha fazla ayrıntı bu blogda bulunabilir .

Şu anda, simians arasında Kaos Maymunu , Kapıcı Maymun ve Uygunluk Maymunu bulunur .

Monkeys kurulumunu yapmaya ve kullanmaya başlamak için Hızlı başlangıç ​​kılavuzuna bakın .

Monki'leri bile iş gereksinimlerinize uyacak şekilde yapılandırabilirsiniz .

Bu Github bağlantılarının içinde (örneğin Destek bağlantısının içinde) yeterince derine inerseniz , SimianArmy Google Grubuna katılmak için bir bağlantı da bulacaksınız .


Kaos Kong, sanırım ya da tam tersi bir durum olan Kaos Gorilesi olarak yeniden adlandırıldı.
Jiri Klouda

@JiriKlouda, merak etmeye başladığım şeyi onaylıyor gibisin. Bu yüzden şimdi de cevabımı yorumuma ekledim.
Pierre.Vriens

2

Hepsine hükmedecek bir Sunucu, hepsini bulmak için
bir Sunucu, hepsini getirmek için bir Sunucu ve kesinti içinde

Sen, Sauron, bir Karanlıkta, bu bir sunucu sahte Hüküm Dağı Tüm uygulamalar kural arzusu içinde Veri Merkezi.
Umarım Devops Kardeşliği size şunu söylemek için birleşti:

Gandalf - Sen PAAS olacaksın

Uzun bir dövüşten sonra, Froos the Chaos Monkey, One Sunucunuzu eritebilir ve sizi aynı anda yeniden üretilebilir Sunucular yoluna sürükleyerek tüm uygulamalara özgürlük kazandı.

Kredi:

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.