Zephyrnet Logosu

Amazon OpenSearch Hizmetini yüksek kullanılabilirlik için yapılandırın | Amazon Web Hizmetleri

Tarih:

Amazon Açık Arama Hizmeti öneri motorları, e-ticaret siteleri ve katalog arama gibi kullanım durumları için iş ve operasyonel verilerin gerçek zamanlı arama, izleme ve analizini güvenli bir şekilde ortaya çıkaran tamamen açık kaynaklı bir arama ve analiz motorudur. İşinizde başarılı olmak için, sistemlerinizin yüksek düzeyde kullanılabilir ve yüksek performanslı olmasına, kesinti sürelerini en aza indirmeye ve arızalardan kaçınmaya ihtiyacınız vardır. OpenSearch Hizmetini altyapınızı izlemenin birincil yolu olarak kullandığınızda, kullanılabilirliğini de sağlamanız gerekir. OpenSearch Hizmeti için kesinti, gelir kaybı, üretkenlik kaybı, marka değeri kaybı ve daha fazlası gibi iş sonuçlarınız üzerinde önemli bir etkiye sahip olabilir.

The kullanılabilirliği ölçmek için endüstri standardı dokuzlar sınıfıdır. OpenSearch Hizmeti, takip ettiğinizde 3 9 kullanılabilirlik sağlar en iyi uygulamalar, bu da ayda 43.83 dakikadan daha az aksama süresini garanti ettiği anlamına gelir. Bu gönderide, alanınızı kurarken en iyi uygulamaları ve önerileri izleyerek OpenSearch Hizmeti alanınızı yüksek kullanılabilirlik ve performans için nasıl yapılandırabileceğinizi öğreneceksiniz.

Alanınızın kullanılabilirliğini etkileyen iki temel unsur vardır: alanınızın çoğunlukla iş yükünüzden kaynaklanan kaynak kullanımı ve altyapı arızaları gibi harici olaylar. İlki, alanın performansının ve sağlığının sürekli izlenmesi ve alanın buna göre ölçeklendirilmesi yoluyla kontrol edilebilse de, ikincisi olamaz. Erişilebilirlik Alanı kesintisi, bulut sunucusu veya disk arızası ya da alanınızdaki ağ sorunları gibi harici olayların etkisini azaltmak için birden fazla Erişilebilirlik Alanına dağıtılan ek kapasite sağlamanız ve verilerin birden çok kopyasını tutmanız gerekir. Bunun yapılmaması performansın düşmesine, kullanılamamasına ve en kötü durumda veri kaybına neden olabilir.

Alanın kullanılabilir ve performanslı olduğundan emin olmak için kullanabileceğiniz seçeneklere bir göz atalım.

Küme yapılandırması

Bu bölümde, dağıtım için AZ sayısını belirtme, ana ve veri düğümlerini kurma, dizinleri ve parçaları ayarlamayı içeren, kümenizi doğru bir şekilde kurmanız gereken çeşitli yapılandırma seçenekleri hakkında konuşacağız.

Multi-AZ dağıtımı

Veri düğümleri, etki alanınızdaki dizin oluşturma ve arama isteklerinin işlenmesinden sorumludur. Veri düğümlerinizi birden çok Erişilebilirlik Alanına dağıtmak, bölge başına yedekli veri depolama ve işleme ekleyerek alanınızın kullanılabilirliğini artırır. Multi-AZ dağıtımıyla, alanınız tam bir Erişilebilirlik Alanı kullanılamadığında bile kullanılabilir durumda kalabilir. Üretim iş yükleri için, AWS, etki alanınız için üç Erişilebilirlik Alanı kullanmanızı önerir. Gelişmiş kullanılabilirlik için yalnızca ikisini destekleyen Bölgeler için iki Erişilebilirlik Alanı kullanın. Bu, etki alanınızın bir Single-AZ hatası durumunda kullanılabilir olmasını sağlar.

Özel küme yöneticisi (ana düğümler)

AWS, üç özel küme yöneticisi (CM) düğümü kullanmanızı önerir tüm üretim iş yükleri için. CM düğümleri, kümenin sağlığını, dizinlerinin ve parçalarının durumunu ve konumunu, tüm dizinlerin eşlemesini ve veri düğümlerinin kullanılabilirliğini izler ve işlenmekte olan küme düzeyinde görevlerin bir listesini tutar. Ayrılmış CM düğümleri olmadan küme, kümeyi iş yükü taleplerine karşı savunmasız hale getiren veri düğümlerini kullanır. Görevin boyutuna göre CM düğümlerini boyutlandırmanız gerekir; öncelikle veri düğümü sayıları, dizin sayıları ve parça sayıları. OpenSearch Hizmeti, Bölge tarafından desteklendiğinde CM düğümlerini her zaman üç Erişilebilirlik Alanına dağıtır (bölgelerin yalnızca iki Erişilebilirlik Alanı varsa, bir Erişilebilirlik Alanında ikisi ve diğer Erişilebilirlik Alanında bir tane). Çalışan bir etki alanı için, üç CM düğümünden yalnızca biri seçilmiş bir lider olarak çalışır. Seçilen CM düğümü başarısız olursa, diğer iki CM düğümü bir seçime katılır.

Aşağıdaki tabloda AWS'nin CM boyutlandırma önerileri gösterilmektedir. CM düğümleri, düğüm, dizin, parça ve eşleme sayısına göre çalışır. Ne kadar çok iş tutarsanız, o kadar fazla bilgi işlem ve bellek tutmanız ve küme durumuyla çalışmanız gerekir.

Örnek Sayısı Küme Yöneticisi Düğümü RAM Boyutu Desteklenen Maksimum Parça Sayısı Önerilen Minimum Tahsis Edilmiş Küme Yöneticisi Kurulum Türü
1-10 8 GiB 10,000 m5.large.search veya m6g.large.search
11-30 16 GiB 30,000 c5.2xlarge.search veya c6g.2xlarge.search
31-75 32 GiB 40,000 c5.4xlarge.search veya c6g.4xlarge.search
76 - 125 64 GiB 75,000 r5.2xlarge.search veya r6g.2xlarge.search
126 - 200 128 GiB 75,000 r5.4xlarge.search veya r6g.4xlarge.search

Dizinler ve parçalar

Dizinler, bir belge koleksiyonunu barındıran mantıksal bir yapıdır. Bir birincil parça sayısı belirleyerek dizininizi paralel işleme için bölümlere ayırırsınız; burada parçalar, verileri depolamak ve işlemek için fiziksel bir birimi temsil eder. OpenSearch Hizmetinde bir parça, birincil parça veya kopya parça olabilir. Replikaları dayanıklılık (birincil parça kaybolursa, OpenSearch Service replikalardan birini birincil parçaya yükseltir) ve arama verimini artırmak için kullanırsınız. OpenSearch Hizmeti, birden fazla Erişilebilirlik Alanında dağıtılırsa, birincil ve replika parçalarının farklı düğümlere ve farklı Erişilebilirlik Alanlarına yerleştirilmesini sağlar. Yüksek kullanılabilirlik için AWS, performans ve kullanılabilirlik kesintilerini önlemek amacıyla üç bölgeli bir kurulumda her dizin için en az iki replika yapılandırmanızı önerir. Bir Multi-AZ kurulumunda, bir düğüm arızalanırsa veya nadir görülen en kötü durumda bir Erişilebilirlik Alanı arızalanırsa, yine de verilerin bir kopyasına sahip olursunuz.

Küme izleme ve yönetimi

Daha önce tartışıldığı gibi, yapılandırmanızı en iyi uygulamalara göre seçmek işin yalnızca yarısıdır. Ayrıca, etki alanının ölçeklendirilmesi gerekip gerekmediğini belirlemek için kaynak kullanımını ve performansı sürekli olarak izlememiz gerekir. Yetersiz sağlanan veya fazla kullanılan bir etki alanı, performansın düşmesine ve sonunda kullanılamamasına neden olabilir.

CPU kullanımı

İş yükünüzü çalıştırmak için etki alanınızdaki CPU'yu kullanırsınız. Genel bir kural olarak, herhangi bir veri düğümü için %60 ortalama CPU kullanımını hedeflemeli, tepe noktaları %80'de olmalı ve küçük artışları %100'e kadar tolere etmelisiniz. Kullanılabilirliği göz önünde bulundurduğunuzda ve özellikle tam bir bölgenin kullanılamayacağını düşündüğünüzde, iki senaryo vardır. İki Erişilebilirlik Alanınız varsa, her alt bölge trafiğin %50'sini yönetir. Bir bölge kullanılamaz hale gelirse, diğer bölge bu trafiğin tamamını alarak CPU kullanımını ikiye katlar. Bu durumda, kullanılabilirliği sürdürmek için her bölgede yaklaşık %30-40 ortalama CPU kullanımında olmanız gerekir. Üç Erişilebilirlik Alanı çalıştırıyorsanız, her bir alt bölge trafiğin %33'ünü alıyor. Bir bölge kullanılamaz hale gelirse, diğer bölgeler yaklaşık %17 trafik kazanır. Bu durumda, ortalama %50-60 CPU kullanımını hedeflemelisiniz.

Bellek kullanımı

OpenSearch Service, iki tür çöp toplamayı destekler. İlki, OpenSearch Service düğümleri tarafından kullanılan G1 çöp toplamadır (G1GC). AWS Graviton 2. İkincisi, diğer işlemciler tarafından desteklenen tüm düğümler tarafından kullanılan Eşzamanlı İşaret Taramasıdır (CMS). Bir düğüme ayrılan tüm belleğin yarısı (32 GB'a kadar) Java yığınına atanır ve belleğin geri kalanı diğer işletim sistemi görevleri, dosya sistemi önbelleği vb. tarafından kullanılır. Bir alanın kullanılabilirliğini korumak için, maksimum JVM kullanımını CMS'de %80 ve G95GC'de %1 civarında tutmanızı öneririz. Bunun ötesinde herhangi bir şey, etki alanınızın kullanılabilirliğini etkiler ve kümenizi sağlıksız hale getirir. Ayrıca, bellek kullanımını aktif olarak izleyen ve çöp toplayıcıyı tetikleyen otomatik ayarlamayı etkinleştirmenizi öneririz.

Depolama kullanımı

OpenSearch Service, aşağıdakiler için çeşitli yönergeler yayınlar: etki alanlarının boyutlandırılması. Gereksinimleriniz için gereken doğru depolama miktarını belirleyebilmeniz için ampirik bir formül sunuyoruz. Ancak, depolamanın zamanla tükenmesine ve iş yükü özelliklerindeki değişikliklere dikkat etmek önemlidir. Alanın depolama alanının tükenmemesini ve verileri dizine eklemeye devam edebilmesini sağlamak için, Amazon Bulut İzleme alarmlar ve boş depolama alanınızı izleyin.

AWS, her bir parçanın optimum boyut bandında olması için bir birincil parça sayısı seçilmesini de önerir. Verileriniz ve trafiğinizle kavram kanıtı testi yaparak optimum parça boyutunu belirleyebilirsiniz. Kılavuz olarak, arama kullanım örnekleri için 10–30 GB birincil parça boyutları ve günlük analizi kullanım örnekleri için 45–50 GB birincil parça boyutları kullanıyoruz. Parçalar, etki alanınızdaki çalışanlar olduğundan, iş yükünün veri düğümleri arasında dağıtılmasından doğrudan sorumludurlar. Parçalarınız çok büyükse, Java yığınınızda büyük toplamalardan kaynaklanan stres, daha kötü sorgu performansı ve parça yeniden dengeleme, anlık görüntüler ve sıcaktan sıcağa geçişler gibi küme düzeyindeki görevlerde daha kötü performans görebilirsiniz. Parçalarınız çok küçükse, etki alanının Java yığın alanını doldurabilir, aşırı dahili ağ aracılığıyla sorgu performansını kötüleştirebilir ve küme düzeyindeki görevleri yavaşlatabilir. Ayrıca, düğüm başına parça sayısını kullanılabilir yığınla orantılı tutmanızı öneririz (32 GB'a kadar örneğin RAM'inin yarısı): Java yığınının GB başına 25 parça. Bu, alanınızdaki herhangi bir veri düğümünde 1,000 parçalık pratik bir sınır oluşturur.

Sonuç

Bu gönderide, OpenSearch Hizmetini üç Erişilebilirlik Alanında çalıştırarak yüksek performansta ve kullanılabilir durumda tutmanıza yardımcı olan OpenSearch Hizmetini kullanarak yüksek düzeyde kullanılabilir bir etki alanı oluşturmak için çeşitli ipuçları ve püf noktaları öğrendiniz.

OpenSearch Service'in çeşitli özellikleri ve işlevlerine odaklanan bir dizi gönderi için bizi izlemeye devam edin. Bu gönderi hakkında geri bildiriminiz varsa, yorumlar bölümünde gönderin. Bu gönderi hakkında sorularınız varsa, yeni bir konu başlatın. OpenSearch Hizmeti forumu veya irtibat AWS Desteği.


yazarlar hakkında

Rohin Bhargava Amazon OpenSearch Service ekibinde Kıdemli Ürün Yöneticisidir. AWS'deki tutkusu, müşterilerin iş hedefleri için başarıya ulaşmaları için doğru AWS hizmetleri karışımını bulmalarına yardımcı olmaktır.

Prashant Agrawal Amazon OpenSearch Hizmeti ile Kıdemli Arama Uzmanı Çözüm Mimarıdır. İş yüklerini buluta taşımalarına yardımcı olmak için müşterilerle yakın işbirliği içinde çalışır ve mevcut müşterilerin daha iyi performans elde etmeleri ve maliyetten tasarruf etmeleri için kümelerinde ince ayar yapmalarına yardımcı olur. AWS'ye katılmadan önce, çeşitli müşterilerin arama ve günlük analitiği kullanım durumları için OpenSearch ve Elasticsearch'ü kullanmalarına yardımcı oldu. Çalışmadığı zamanlarda onu seyahat ederken ve yeni yerler keşfederken bulabilirsiniz. Kısacası, Ye → Seyahat Et → Tekrarlamayı seviyor.

spot_img

En Son İstihbarat

spot_img