Örnek depoya (ve tam tersine) karşı EBS'nin faydaları [kapalı]


381

Amazon EC2'deki örneklerim için EBS'den örnek deposuna ne kadar fayda sağladığım konusunda net değilim. Bir şey varsa, EBS maliyet nispeten küçük bir fark çok daha yararlı (durdur, başlat, devam + daha iyi hız) gibi görünüyor ...? Ayrıca, hala nispeten yeni olduğunu düşünerek, daha fazla insanın EBS kullanıp kullanmadığına dair herhangi bir ölçüm var mı?



"mikro" da yalnızca EBS destekli örnekler kullanıyorsanız kullanılabilir.
Ali

1
Instance Store birimleri çok daha hızlıdır ve ağ tabanlı bir depolama alanı değildir!
Matt

Şahsen örnek mağazasını MongoDB koleksiyonumu boşaltmak ve çalıştırmak için iki nedenden dolayı S3'e koymak için kullanıyorum. Öncelikle ayrıldı ve 10 hacimli EBS RAID'imde yazma hızını azaltmayacak. İkincisi, EBS'den çok daha hızlı olması ve benim durumumla birlikte, dökümü yapmak ve S3'e koyduktan sonra onları yok etmek için ekstra EBS hacimleri oluşturmamın bir anlamı yok. yardımcı olur ve yapıcı değil umut ..
Maziyar

2
AWS Kullanıcı Kılavuzu'nun (700 sayfa) ortasındayım. EBS ve Bulut Sunucusu Depolama konusunu dikkatle okuyun. Neden böyle farklılıklar olduğunu hala anlayamıyorum. Ve Instance mağazasının neden S3'e eşit olduğu, ancak farklı adlandırıldığı gibi daha da şaşkın. Yararlı cevaplara daha fazla katkıda bulunmak için sorunun yeniden açılması gerekir.
Polimeraz

Yanıtlar:


293

Sonuç olarak, neredeyse her zaman EBS destekli örnekleri kullanmalısınız.

İşte nedeni

  • EBS destekli örnekler, API aracılığıyla (yanlışlıkla) sonlandırılamayacak şekilde ayarlanabilir.
  • EBS destekli örnekler, onları kullanmadığınızda durdurulabilir ve tekrar ihtiyacınız olduğunda yeniden başlatılabilir (Sanal PC'yi duraklatmak gibi), en azından kullanım kalıplarım birkaç düzine GB EBS depolama alanına harcadığımdan çok daha fazla tasarruf sağlıyor.
  • EBS destekli örnekler çöktüklerinde bulut depolama alanlarını kaybetmez (tüm kullanıcılar için bir gereklilik değildir, ancak kurtarmayı çok daha hızlı hale getirir)
  • EBS yönetim ortamını dinamik olarak yeniden boyutlandırabilirsiniz.
  • EBS yönetim ortamını yepyeni bir yönetim ortamına aktarabilirsiniz (Amazon'da çalıştırdığınız donanım zaman zaman gerçekleşen kesintili veya ölürse yararlıdır)
  • Görüntünün S3'ten getirilmesi gerekmediğinden EBS destekli bir örnek başlatmak daha hızlıdır.
  • EBS destekli yönetim ortamınızın bakım için zamanlanmış donanımı varsa, yönetim ortamını durdurmak ve başlatmak otomatik olarak yeni donanıma geçer. Ayrıca, EBS destekli bir örneği, başarısız bir donanım üzerinde, örneği zorla durdurarak ve tekrar başlatarak taşıyabildim (kilometreniz, başarısız donanımlara göre değişebilir).

Amazon'un yoğun bir kullanıcısıyım ve teknoloji betadan çıktığı anda tüm örneklerimi EBS destekli depolamaya değiştirdim. Sonuçtan çok memnun kaldım.

EBS hala başarısız olabilir - gümüş bir kurşun değil

Herhangi bir bulut tabanlı altyapının herhangi bir zamanda başarısız olabileceğini unutmayın. Altyapınızı buna göre planlayın. EBS destekli örnekler, geçici depolama örneklerine kıyasla belirli bir dayanıklılık düzeyi sağlarken, başarısız olabilir ve başarısız olabilir. Herhangi bir kullanılabilirlik bölgesinde gerektiği gibi yeni örnekleri başlatabileceğiniz, önemli verilerinizi (örneğin veritabanları) yedekleyebileceğiniz ve bütçeniz izin veriyorsa, yük dengeleme ve artıklık için birden çok sunucu örneği çalıştırın (ideal olarak birden çok kullanılabilirlik bölgesinde) çalıştırabileceğiniz bir AMI'niz varsa ).

Ne Zaman Yapılmaz

Zaman zaman bazı durumlarda, Instance Store örneklerinde daha hızlı GÇ elde etmek daha ucuz olabilir. Kesinlikle doğru olduğu bir zaman vardı. Şimdi EBS depolama için birçok ihtiyaca cevap veren birçok seçenek var. Teknoloji değiştikçe seçenekler ve fiyatlandırmaları sürekli gelişiyor. Gerçekten tek kullanımlık olan önemli miktarda örneğiniz varsa (sadece giderlerse işinizi fazla etkilemezler), maliyet ve performansa ilişkin matematiği yapın. EBS destekli örnekler de herhangi bir zamanda ölebilir, ancak pratik deneyimim EBS'nin daha dayanıklı olmasıdır.


4
Evet, yukarıdaki düşüncelerim de vardı ... Umarım bir şekilde burada örnek mağaza tercihlerini yazıyor ...
HelloWorldy

5
Örnek deposu destekli EC2 de yanlışlıkla sonlandırılmayacak şekilde ayarlanabilir.
Jim Soho

44
Aslında EBS destekli EC2 örnekleri çoğunu örnek depoları kullanmaya geçiyorum. Gerçekten ne elde etmek istediğinize bağlıdır. Daha iyi IO nedeniyle geçiş yapıyorum ve her EC2 örneğini tüm anlarda atılabilir olarak gördüğüm için, ya da: herhangi bir dakikaya bölünecek ve böyle bir örnekte olan her şeyi kaybedeceğim. Bu şekilde mimarlık yapmak gerçek bir HA sistemi elde etmeye yardımcı olur. Ayrıca bkz. Stu.mp/2011/04/the-cloud-is-not-a-silver-bullet.html
Jim Soho

2
@Jim: En azından bir yıl önce cevabı yazdığımda, bir dizi EBS örneğini örnek depolama kullanmaktan çok bir yazılım RAID yapılandırmasına ayırarak daha iyi IO elde ettiniz. EBS desteğinden yedek bir örnek başlatmak da S3 desteğinden çok daha hızlıdır (örnek depolama S3'ten yüklenir, bu yavaş olabilir). Son 6 aydır AWS'de fazla bir şey yapmadım; bazı şeyler değişmiş olabilir.
Eric

2
Biraz lop taraflı görünüyor - EBS-Destekli örnekleri çalıştırmak ve geri dönüştürülebilirliğe ağır bir vurgu yapmak mümkün olsa da, yeni gelenlerin bu gönderiye bakmasının ve daha sonra EBS-Destekli örnekler oluşturmanın tehlikeli olduğunu düşünüyorum, çünkü muhtemelen herhangi bir bulut altyapısının belki de en önemli bileşeni olan geri dönüştürülebilirliğe de aynı vurgu yapılır. Ve buna bakan insanların büyük çoğunluğu bu şeyler için yeni olacağından emin olabilirler
Peter Berg

69

AWS kurulumumuzun% 99'u geri dönüştürülebilir. Yani benim için bir örneği sonlandırmamın bir önemi yok - hiçbir şey kaybolmaz. Örneğin, uygulamam otomatik olarak SVN'den bir örneğe dağıtılır, günlüklerimiz merkezi bir syslog sunucusuna yazılır.

Örnek depolamanın gördüğüm tek faydası maliyet tasarrufu. Aksi takdirde EBS destekli örnekler kazanır. Eric tüm avantajlardan bahsetti.


[2012-07-16] Bu cevabı bugün çok farklı ifade ediyorum.

Geçen yıl EBS destekli örneklerle iyi bir deneyimim olmadı. AWS'deki son duruşlar da EBS'yi harap etti.

RDS gibi bir hizmetin de bir çeşit EBS kullandığını tahmin ediyorum ve bu çoğunlukla işe yarıyor gibi görünüyor. Kendimizi yönettiğimiz durumlarda, mümkün olan yerlerde EBS'den kurtulduk.

Bir veritabanı kümesini tekrar ütüye (= gerçek donanım) taşıdığımız noktadan kurtulmak. Altyapımızda kalan tek parça, birden fazla EBS birimini bir yazılım RAID'ine dönüştürdüğümüz ve günde iki kez yedeklediğimiz bir DB sunucusudur. Yedekler arasında ne kaybedersek yaşayabiliriz.

EBS, aslında bir ağ birimi olduğundan, sunucunuza uzaktan bağlanan bir birim olduğu için biraz kesintili bir teknolojidir. Onunla yapılan işi ihmal etmiyorum - aslında sınırsız kalıcı depolama sadece bir API çağrısı uzakta olduğu için inanılmaz bir ürün . Ancak, G / Ç performansının önemli olduğu senaryolar için pek uygun değildir.

Ağ depolamasının nasıl davrandığına ek olarak, tüm ağ EC2 bulut sunucularında paylaşılır. Daha küçük bir örnek (örn. T1.micro, m1.small) daha da kötüleşir çünkü gerçek ana sistemdeki ağ arabirimleriniz, üzerinde çalışan birden çok VM (= EC2 örneğiniz) arasında paylaşılır.

Ne kadar büyük örnek alırsanız , elbette o kadar iyi olur. Burada daha iyisi akıl içinde demektir .

Kalıcılık gerektiğinde, insanlara her zaman örnekler arasında merkezileştirmek için S3 gibi bir şey kullanmalarını öneririm. S3 çok kararlı bir hizmettir. Ardından, örnek kurulumunuzu yeni bir sunucuyu önyükleyebileceğiniz bir noktaya otomatikleştirin ve kendi başına hazırlanır. Bu durumda, örneğin daha uzun süre dayanan bir ağ depolamasına gerek yoktur.

Sonuçta, EBS destekli örneklere hiçbir fayda görmüyorum. Daha ziyade önyükleme için bir dakika eklerim, sonra potansiyel bir SPOF ile çalışırım.


1
EBS IOPS tipi hacimlerle IO performansının standarda göre önemli bir gelişimi var mı? Varsayalım ki, yukarıda bahsedilen EBS IOPS hacimleri için de geçerlidir.
honzajde

4
Her iki teknoloji de gelişmektedir. Ben 2014 yılında, "Hazırlanmış IOPS" EBS olduğunda bu yorumu wirting, ama - "örnek mağaza" şimdi SSD, daha önce olduğundan daha hızlı !! Geçici depolama her zaman hız açısından kazanacaktır. Bu yüzden her ikisini de kullanıyorum - tüm geçici dosyaları, günlükleri, "TempDB" veritabanı, takas dosyası ve Instance-store'daki diğer şeyleri içeren "kalıcı" şeyleri EBS'de tutun. İKİNDEN FAYDALI!
Alex

Verilerini dağıtılmış ve kalıcı bir şekilde saklaması gereken dağıtılmış bir veritabanına ihtiyacınız varsa ne olur. Örnek depolaması kalıcı olmadığından EBS'ye ihtiyacınız olmaz mı?
CMCDragonkai

@CMCDragonkai Tabii ki var. Bugünlerde birçok seçenek var, örneğin AWS SSD tabanlı depolama sunmaya başladı. Bunları inceleyip analizi tekrar yapardım (tek başına RAID vs.). Ayrıca ağ verimi nedeniyle mümkün olan en büyük örnekleri elde etmeye çalışacağım. EBS t1.micro gibi durumlarda hala bir sorundur.
Till

Ağ performansı hakkındaki bu cevabın bir kısmı oldukça eski - bir süredir, küçük bir ekstra maliyetle "EBS optimize edilebilir" ve bazıları varsayılan olarak (ek ücret olmadan) çeşitli örnekler var. ), EBS'ye yönelik özel ağ arayüzlerine sahip, bkz. docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptfied.html
Josip Rodin

41

Örnek mağazayı seviyoruz. Örneklerimizi tamamen geri dönüştürülebilir hale getirmeye zorluyor ve belirli bir AMI'da sunucu oluşturma işlemini kolayca otomatik hale getirebiliyoruz. Bu aynı zamanda AMI'leri kolayca değiştirebileceğimiz anlamına gelir. Ayrıca, EBS'nin zaman zaman performans sorunları var.


6
Netflix de aynı önerileri sunuyor.
Kingz

2
Peki, blok tabanlı kalıcı dosyalarınızı nerede saklıyorsunuz?
CMCDragonkai

17

Eric hemen hemen çivilenmişti. Biz ( Bitnami ) popüler uygulamalar ve geliştirme çerçeveleri için popüler bir ücretsiz AMI sağlayıcısıyız (PHP, Joomla, Drupal, fikri anlarsınız). Size EBS destekli AMI'lerin S3 destekli olanlardan çok daha popüler olduğunu söyleyebilirim. Genel olarak, s3 destekli örneklerin, bir makine arızalanırsa, diğerinin basitçe döndürüldüğü dağıtılmış, zaman sınırlı işler (örneğin, verilerin büyük ölçekli işlenmesi) için kullanıldığını düşünüyorum. EBS destekli AMIS, durumu yerel olarak tutan ve böylece çökme durumunda verilerin kullanılabilir olmasını gerektiren web veya veritabanı sunucuları gibi 'geleneksel' sunucu görevleri için kullanılma eğilimindedir.

Bahsetmediğim bir özellik, çalışırken EBS destekli bir örneğin anlık görüntülerini alabilmeniz, altyapınızın çok düşük maliyetli yedeklemelerine etkili bir şekilde izin vermenizdir (anlık görüntüler blok tabanlı ve artımlıdır)


S3 yerleşik yedekliliğe sahiptir. EBS'nin hiçbiri yoktur , bu nedenle üzerine yedekleme yazılımı dağıtmanız gerekir.
Pacerier


16

Son pozisyonumda Eric'le tamamen aynı deneyimi yaşadım. Şimdi yeni işimde, son işimde gerçekleştirdiğim aynı süreçten geçiyorum ... EBS destekli örnekler için tüm AMI'lerini yeniden inşa ediyorum - ve muhtemelen 32bit makineler olarak (daha ucuz - ancak 32'de aynı AMI'yi kullanamıyorum ve 64 makine).

EBS örnekleri yeterince hızlı size yararlanmak için başlayabilmesi başlatmak destekli Amazon AutoScaling API ne zaman onları kapatmaya da ek örneği başlatılmasını tetiklemek ve ELB (Elastik yük dengeleyici) bunları kaydetmek için CloudWatch ölçümlerini kullanın ve sağlar Artık gerekli değil.

Bu tür dinamik otomatik ölçeklendirme, AWS'nin temelini oluşturur - BT altyapısındaki gerçek tasarrufların devreye girebileceği yer. Eski s3 "InstanceStore" destekli örneklerle otomatik ölçeklendirme yapmak neredeyse imkansız.


13

EC2'yi kendim kullanmaya başladım, bu yüzden bir uzman değil, ama Amazon'un kendi belgeleri şöyle diyor:

geçici veriler için yerel yönetim ortamını kullanmanızı ve daha yüksek düzeyde dayanıklılık gerektiren veriler için Amazon EBS birimlerini kullanmanızı veya verileri Amazon S3'e yedeklemenizi öneririz.

Vurgu madeni.

Ben web hosting daha fazla veri analizi yapmak , bu yüzden kalıcılık bir web sitesi için olabildiğince benim için önemli değil. Amazon'un kendisi tarafından yapılan ayrım göz önüne alındığında, EBS'nin herkes için doğru olduğunu varsaymam.

Her ikisini de kullandıktan sonra tekrar tartmayı hatırlamaya çalışacağım.


9

EBS bir VM'nin sanal diski gibidir:

  • Dayanıklı, EBS tarafından desteklenen örnekler serbestçe başlatılabilir ve durdurulabilir (para tasarrufu sağlar)
  • Zamanında yedeklemeler almak için herhangi bir zamanda anlık görüntü alınabilir
  • EBS anlık görüntülerinden AMI'ler oluşturulabilir, böylece EBS birimi yeni sistemler için bir şablon haline gelir

Örnek depolama alanı:

  • Yerel, çok daha hızlı
  • Ağa bağlı olmayan, normal durumlarda EBS I / O, ağ bant genişliği maliyetiyle gelir (ayrı EBS bant genişliğine sahip EBS için optimize edilmiş örnekler hariç)
  • Saniyede sınırlı G / Ç vardır. Hatta birkaç bin IOPS'de sağlanan I / O maksimum değeri
  • Kırılgan. Örnek durdurulur durdurulmaz, örnek depolama alanındaki her şeyi kaybedersiniz.

Her birinin nerede kullanılacağı aşağıda açıklanmıştır:

  • Yedekleme OS bölümü ve kalıcı depolama için EBS kullanın (DB verileri, kritik günlükler, uygulama yapılandırması)
  • İşlem içi veriler, kritik olmayan günlükler ve geçici uygulama durumu için örnek depolamayı kullanın. Örnek: harici sıralama depolama, geçici dosyalar vb.
  • Örnek depolama alanı, örnekler arasında çoğaltma olduğunda (NoSQL DB'leri, dağıtılmış sıra / ileti sistemleri ve çoğaltmalı DB'ler) performans açısından kritik veriler için de kullanılabilir
  • Sistemler arasında paylaşılan veriler için S3 kullanın: giriş veri kümesi ve işlenmiş sonuçlar veya lauch edildiğinde her sistem tarafından kullanılan statik veriler için.
  • Önceden pişirilmiş, yüklenebilir sunucular için AMI kullanın

4

Çoğu kişi durum bilgisi olduğu için EBS destekli örneği kullanmayı tercih eder. Daha güvenlidir çünkü içinde çalıştırdığınız ve kurduğunuz her şey dur / durdur veya herhangi bir örnek arızasından kurtulacaktır.

Örnek deposu durumsuzdur, herhangi bir örnek hatası durumunda, içindeki tüm verilerle kaybedersiniz. Ancak, örnek birimi VM'nin çalıştığı fiziksel sunucuya bağlı olduğu için ücretsiz ve daha hızlıdır.


2

Tüm bunlara yeni giren biri için ve yanlışlıkla buraya indiği takdirde

Şu andan itibaren hızlı başlatma bölümündeki tüm AMI'ler EBS desteklidir

resim açıklamasını buraya girin

Ayrıca resmi dokümanda EBS ve Instance mağazası arasındaki fark için iyi bir açıklama var

ve bu görüntü hemen hemen özetliyor resim açıklamasını buraya girin


0

Birden çok örnek çalıştırırsanız ve AWS Örneği için zamanlanmış bir hizmeti Beklenmeyen Ücretlerden Kaçınmak için önceliğiniz olarak atarsanız , örnek deposunu kullanmamanızı öneririm .

EBS Ciltlerinin dokümantasyonunda ve j2d3 ve Siddharth Sharma'nın cevabında açıklandığı gibi , örnek mağazası istediğiniz kadar çalışabilir , ancak durdurulamaz . Hizmetin Otomatik Başlat / Durdur veya Örnek Kurtarma ile zamanlanamayacağı anlamına gelir .

Üstelik düzeni bu tür kullanmak için hiçbir yararı da var EBS destekli üzerinde Elastik Beanstalk ihtiyacınız tüm kaynakların olmasını sağlamak için tasarlanmıştır olarak tutmak çalışan . Durdurduğunuz tüm hizmetleri her zaman otomatik olarak yeniden başlatır. resim açıklamasını buraya girin Gözden her şey kullanımıyla ilgili toplam ücretleri dışında, VPC , EBS ve ELB eklenen bu EC2-Classic , EC2-VPC ile ELB ortamın aksine en iyi seçim çoğunlukla EC2-Klasik , durdurulmuş bir örneği korur ilişkili Elastik IP adresleri ve EBS hacmiotomatik olarak kaydedilir .

Sonuç olarak , sorunuzun ana bölümünü ele alın:

EBS maliyet nispeten küçük bir fark çok daha yararlı (dur, başlat, kalıcı + daha iyi hız) gibi görünüyor ...?

Cevap evet ama örneğiniz EBS tabanlıysa durdurulabilir. Hesabınızda kalacak, sizden ücret alınmayacaktır . Yalnızca birim ücretlendirilirsiniz, ancak EBS saatlik ücretlendirilir . Ayrıca, mevcut tüm türler arasında EBS Birimini Yeniden Boyutlandırma esnekliğine sahip olduğunuzu düşünebilirsiniz .

Zaten Eric tarafından listelenen faydaların yanı sıra, maliyet açısından S3'ün EBS'den daha ucuz olabileceğini veya olmayabileceğinin farkında olmalıdır . Her iki örnek türünü de aynı platformda ve uygulamanın mimarisinde her zaman çalıştırmaya devam ederseniz, göreceli olarak küçük bir fark olduğunu kabul ediyorum .

Bir senaryo daha düşük maliyetli hizmet uygulamayı burada seçimlere Ancak eğer tüm işlenmeyen görevi çekin ve rol onlara karşı VPC / EBS bir yoluyla boru hattı veya lambda kısa bir süre bazında söz hakkından içinde <Günlük 1 saat, yapmak mümkün olduğunda sizi bir örnek mağaza kullanın , o zaman farklı bir hikaye olacaktır.

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.