“Evcil hayvan olmayan sığırların” tanımı nedir?


47

"Sunucularınızı evcil hayvanlar gibi kullanmayın" terimi son yıllarda özellikle Docker konteynerlerine ve Sanal Makinelere uygulandığında çoğaldı

Evcil hayvanlar vs. Sığırlar

Bu aslında ne anlama geliyor?


1
Uzun açıklama burada hat boyunca her bir "modelleri" pro / eksileri ile.
Tensibai

Yanıtlar:


52

Randy Bias , Bill Baker'ın "ölçek büyütme" ve "ölçek büyütme" mimari stratejilerini tanımlarken analojiyi kullanması durumunda muhtemelen 2011 veya 2012'de ortaya çıktığını belirten terimin tarihini anlatıyor . Bias bunu bulut mimari kalıpları konusundaki sunumlarına uyarladı:

Eski şeyleri yerine getirirken, sunucularımıza evcil hayvan gibi davranıyoruz, örneğin posta sunucusu Bob. Bob düşerse, hepsi güvertededir. CEO e-postasını alamıyor ve dünyanın sonu. Yeni şekilde, sunucular sürüdeki sığırlar gibi numaralandırılır. Örneğin, www001 ila www100. Bir sunucu kapandığında, geri alınır, vurulur ve hatta değiştirilir.

Önyargı, Evcil hayvanları tanımlamaya devam ediyor

Asla yıkılamayan vazgeçilmez veya benzersiz sistemler olarak kabul edilen sunucular veya sunucu çiftleri. Tipik olarak el ile inşa edilir, yönetilir ve “elle beslenir”. Örnekler arasında ana bilgisayarlar, yalnız sunucular, HA yük dengeleyicileri / güvenlik duvarları (aktif / aktif veya aktif / pasif), ana / bağımlı (aktif / pasif) olarak tasarlanmış veritabanı sistemleri vb.

ve gibi sığır

Otomatik araçlar kullanılarak oluşturulan ve hiç kimsenin, iki hatta üç sunucunun yeri doldurulamadığı ikiden fazla sunucu dizileri. Tipik olarak, arıza olayları sırasında dizi, başarısız sunucuları yeniden başlatarak ya da üçlü çoğaltma ya da silme kodlaması gibi stratejiler yoluyla verileri çoğaltarak “arızaları yönlendirmek” özelliklerini sergilediğinden insan müdahalesine gerek yoktur. Örnekler arasında web sunucusu dizileri, Cassandra kümeleri gibi çoklu ana veriler, kümelerde bir araya getirilmiş çoklu dişli rafları ve neredeyse yük dengeli ve çoklu ana olan her şey bulunur.

Temel olarak, Bias ve Baker'ın aktarmaya çalıştığı şey, sunuculara adlar ve duygusal bağlarla “Eşsiz Kar Taneleri” olma şeklinden , sunucu ile ilgili bir sorun yaşarsak yerine geçecek bir modele geçiş yapmamız gerektiğidir. ve sorunlu sunucuyu imha et.

Son olarak, muhtemelen bir sunucuyu arkadan çıkarıp fotoğraf çekmenin en uygun olamayacağına ilişkin düzenlemeler yapılmış ortamlardan bahsetmekte fayda var. Bu gibi durumlarda, örneğin docker pausebir kabı dondurmak için sunucuyu "dondurmak" genellikle avantajlıdır . Bu daha sonra Olay veya Sorun Yönetimi Süreci'nin bir parçası olarak Kök Sebep Analizi yapmak için kullanılabilir .


16

Richards'ın cevabını eklemek için, genel olarak analoji bir sunucu kaybının etkisini göz önüne almak açısından yararlıdır.

Herhangi bir bireysel altyapı parçasının kaybı konusunda bir tür sıkıntı hissederseniz, bunu bir evcil hayvan olarak kabul edin (antipattern okuyun).

Filolardan herhangi birinin çalışmayı durdurması durumunda, operasyonlar üzerinde gerçek bir etkisinin olmayacağını bilmek sizi rahatlatırsa, o zaman sığırlar hakkında konuşuyorsunuz.

Sunucunuzu basitçe sınıflandırmak için analojiyi kullanmak genellikle caziptir, yani "iş yükü düğümlerimiz büyükbaş hayvandır ancak yük dengeleyicilerimiz evcil hayvandır", ancak bu tuzağa düşmek tamamen sorun teşkil etmektedir. Modern bir bilgisayar ortamında evcil hayvanlara yer yoktur (örn. Bulutta, emtia donanımında vb.) Eğer tüm sunucularınız büyükbaş hayvanlar olarak kabul edilirse ve kolayca değiştirilebilirlerse, yardım için kaos maymunu gibi şeylere bakmaya başlayabilirsiniz. altyapınızın gerçekten esnek olduğuna dair güvence oluşturun.

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.