2016-04-07 55 views
3

Hizmet Kalitesi üzerinde kaynak dengeleyici ve dinamik yük metriklerine bakarken, bazı sorulara yanıt verdik (Devbox SDK GA 2.0.135 Çalışıyor).
Service Fabric Explorer'da (portal ve bağımsız uygulama), dengelemenin çok sık koştuğunu görebiliyoruz, most of the time it is done almost instantly ve bu her saniye oluyor. Düğümler veya bölümler üzerindeki Yük Metrik Bilgilerine bakarken, yükü rapor ederken değerleri güncellememektedir.Service Fabric Resource balancer eskiyen kullanır Rapor edilen yük

Etkileşimimize (bir hizmete yönelik bir HTTP isteği) dayalı olarak, tek bir bölümün bildirilen yükleme verilerini büyük miktarda artırarak dinamik bir yükleme raporu göndeririz. Bu artış 5 dakika içinde bir noktada görünür hale gelir, bu noktada dengeleyici gerçekten dengelemeye başlar. Bu, yükleme verilerinin yenileneceği bir aralık gibi görünüyor. Son bildirilen süre her zaman yeni değer olmadan güncellenir.

Metrikleri, dengelemede kullanıldığından emin olmak için applicationmanifest ve clustermanifest öğesine ekledik. Bu, kaynak dengeleyicinin 5 dakika boyunca aynı verileri kullandığı anlamına gelir. Bu yapılandırılabilir bir ayar mı? Bir devbox üzerinde çalıştığı için kısıtlama mıdır? Clustermanifest'te çok fazla değişken denedik ama hiçbiri bu refreshtime etki etmiyor.

Eğer bu uyarlanamazsa, birisi dengeleyiciyi neden eski verileriyle çalıştırdığınızı açıklayabilir mi? ve neden bu 5 dakikalık aralık seçildi?

cevap

5

Bu gerçekten yapılandırılabilir bir ayardır ve varsayılan değer 5 dakikadır. Bunun arkasındaki fikir, prod olarak tüm raporların her zaman yüklenmesine neden olan tonlarca kopyaya sahip olmanızdır. Bu nedenle bunları toplu halde toplamak istersiniz, böylece Küme Kaynak Yöneticisi'ni tümüyle bağımsız mesajlar olarak istemezsiniz.

Muhtemelen haklısınız, bu değer yerel geliştirme için çok uzun olan yoludur. Yerel kümeler için bunu değiştirmeye bakacağız, ancak bu arada, varsayılan olarak beklediğimiz süreyi değiştirmek için aşağıdakileri yerel küme bildiriminize ekleyebilirsiniz. Orada başka ayarlar varsa, sadece SendLoadReportInterval satırını ekleyin. Değer saniye cinsindendir ve buna göre ayarlayabilirsiniz. Aşağıdaki, varsayılan yük raporlama aralığını 5 dakika (300 saniye) ila 1 dakika (60 saniye) arasında değiştirecektir. Eğer yerleştirme işleminden önce Test-ServiceFabricClusterManifest mutlaka manifestosunda, oluşturulan veya tam küme üzerinde çalışan eğer

<Section Name="ReconfigurationAgent"> 
     <Parameter Name="SendLoadReportInterval" Value="60" /> 
    </Section> 

her zaman olduğu gibi bunu yaparken sistem hizmetleri (TANSTAAFL) bazı artışı yükünü yapar unutmayın ve lütfen. Yerel bir geliştirme kümesiyle çalışıyorsanız, dağıtılan dosyayı almanın en kolay yolu yalnızca küme bildirim şablonunu değiştirmektir (varsayılan olarak burada: "C: \ Program Files \ Microsoft SDKs \ Hizmet Kumaşı \ ClusterSetup \ NonSecure \ ClusterManifestTemplate. xml ") ve sadece satırı ekleyin, ardından sistem tepsinizdeki Servis Kumaşı Yerel Küme Yöneticisine sağ tıklayın ve" Yerel Kümeyi Sıfırla "yı seçin. Bu, yerel kümeyi şablondaki değişikliklerle yeniden oluşturur.

+0

Yerel dev senaryosundan bahsettiniz, ancak bunu ARM JSON şablonuyla dağıtılan bir Azure kümesi için nasıl gerçekleştireceğiz? [Service Fabric küme ayarlarını özelleştir] bölümünde listelenen 'SendLoadReportInterval' ayarını göremiyorum (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-cluster-fabric-settings) – rktect

+0

Bu, insanların gerçekten dokunması gerektiğini düşündüğümüz bir ayar olmadığından ve dolayısıyla işaretlendiğinden dolayı, bu değer, sistem hizmetlerine çok fazla yük getirerek kümenizi kırıyor olabilir. Üretimde uygulamada ona dokunmaya ihtiyaç duyan insanları görmüyoruz, bu yüzden tarif edilmiyor. Burada gördüğünüz XML'den JSON'a aynı sözdizimi çevirisi (burada) (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-cluster-resource-manager-cluster-description # buffered-capacity) Örneğin, bunu prod olarak değiştirmek istediğiniz için geçerlidir. Tavsiye edilmez. – masnider

+0

Yeterince adil - çok yararlı. Önerilen ayarlara sadık kalmak istiyorum, ancak sadece benim anlayışımın izlenmesi için, ölçümlerimi izleyen bir bekçi servisim var, bu üretim sırasında genel olarak herhangi bir görünürlük veya reaktif eylemin gecikmesiyle kabul edilebilir. beş dakikaya? Yerleşik işlevselliği mümkün olduğunca kullanmaya çalışıyorum. – rktect