Linux Ubuntu'da ortalama gariplik yükle


9

Son birkaç gündür altyapımızda olan tuhaflığı anlamaya çalışıyordum ama bunu anlayamadım, bu yüzden bana bazı ipuçları vermek için size dönüyorum.

Yaklaşık 2 saatte bir ölümcül düzenlilikle meydana gelen load_avg'daki grafitlerde fark ediyorum - tam 2 saat değil ama çok düzenli. Grafit'ten aldığım ekran görüntüsünü ekliyorum

Load Averag - Ayrıntı için tıklayınız

Bunu araştırmak için sıkıştım - bunun düzenliliği beni bir tür cron işi ya da bunun gibi bir şey olduğunu düşünmeye yönlendiriyordu, ancak bu sunucularda çalışan hiçbir cronjobs yok - aslında bunlar Rackspace bulutunda çalışan VM'ler. Aradığım şey, bu sorunlara neden olabileceğinin ve bunu nasıl araştırabileceğinin bir göstergesi.

Sunucular oldukça boşta - bu bir hazırlama ortamıdır, bu yüzden neredeyse gelen trafik yoktur / üzerlerinde yük olmamalıdır. Bunların hepsi 4 sanal çekirdek VM'dir. Kesin olarak bildiğim şey, yaklaşık 10 saniyede bir Grafit örnekleri alıyoruz, ancak yükün nedeni bu ise, farklı sunuculardaki dalgalarda her 2 saatte bir olmaktan ziyade sürekli yüksek olmasını beklerdim.

Bunu araştırmak için herhangi bir yardım büyük mutluluk duyacağız!


Yukarıdaki resimdeki ilk mavi başak olan app01 için sar'dan bazı veriler - Verilerden HERHANGİ bir sonuç çıkaramadım. Ayrıca her yarım saatte bir (her 2 SAAT DEĞİL) oluyor gördüğünüz bayt yazma başak değil, şef-istemci her 30 dakikada bir çalışan nedeniyle değil. Bunu zaten yapmama rağmen daha fazla veri toplamaya çalışacağım, ancak bunlardan da sonuç çıkaramadım.

YÜK

09:55:01 PM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
10:05:01 PM         0       125      1.28      1.26      0.86         0
10:15:01 PM         0       125      0.71      1.08      0.98         0
10:25:01 PM         0       125      4.10      3.59      2.23         0
10:35:01 PM         0       125      0.43      0.94      1.46         3
10:45:01 PM         0       125      0.25      0.45      0.96         0
10:55:01 PM         0       125      0.15      0.27      0.63         0
11:05:01 PM         0       125      0.48      0.33      0.47         0
11:15:01 PM         0       125      0.07      0.28      0.40         0
11:25:01 PM         0       125      0.46      0.32      0.34         0
11:35:01 PM         2       130      0.38      0.47      0.42         0
11:45:01 PM         2       131      0.29      0.40      0.38         0
11:55:01 PM         2       131      0.47      0.53      0.46         0
11:59:01 PM         2       131      0.66      0.70      0.55         0
12:00:01 AM         2       131      0.81      0.74      0.57         0

İşlemci

09:55:01 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle
10:05:01 PM     all      5.68      0.00      3.07      0.04      0.11     91.10
10:15:01 PM     all      5.01      0.00      1.70      0.01      0.07     93.21
10:25:01 PM     all      5.06      0.00      1.74      0.02      0.08     93.11
10:35:01 PM     all      5.74      0.00      2.95      0.06      0.13     91.12
10:45:01 PM     all      5.05      0.00      1.76      0.02      0.06     93.10
10:55:01 PM     all      5.02      0.00      1.73      0.02      0.09     93.13
11:05:01 PM     all      5.52      0.00      2.74      0.05      0.08     91.61
11:15:01 PM     all      4.98      0.00      1.76      0.01      0.08     93.17
11:25:01 PM     all      4.99      0.00      1.75      0.01      0.06     93.19
11:35:01 PM     all      5.45      0.00      2.70      0.04      0.05     91.76
11:45:01 PM     all      5.00      0.00      1.71      0.01      0.05     93.23
11:55:01 PM     all      5.02      0.00      1.72      0.01      0.06     93.19
11:59:01 PM     all      5.03      0.00      1.74      0.01      0.06     93.16
12:00:01 AM     all      4.91      0.00      1.68      0.01      0.08     93.33

IO

09:55:01 PM       tps      rtps      wtps   bread/s   bwrtn/s
10:05:01 PM      8.88      0.15      8.72      1.21    422.38
10:15:01 PM      1.49      0.00      1.49      0.00     28.48
10:25:01 PM      1.54      0.00      1.54      0.03     29.61
10:35:01 PM      8.35      0.04      8.31      0.32    411.71
10:45:01 PM      1.58      0.00      1.58      0.00     30.04
10:55:01 PM      1.52      0.00      1.52      0.00     28.36
11:05:01 PM      8.32      0.01      8.31      0.08    410.30
11:15:01 PM      1.54      0.01      1.52      0.43     29.07
11:25:01 PM      1.47      0.00      1.47      0.00     28.39
11:35:01 PM      8.28      0.00      8.28      0.00    410.97
11:45:01 PM      1.49      0.00      1.49      0.00     28.35
11:55:01 PM      1.46      0.00      1.46      0.00     27.93
11:59:01 PM      1.35      0.00      1.35      0.00     26.83
12:00:01 AM      1.60      0.00      1.60      0.00     29.87

AĞ:

10:25:01 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
10:35:01 PM        lo      8.36      8.36      2.18      2.18      0.00      0.00      0.00
10:35:01 PM      eth1      7.07      4.77      5.24      2.42      0.00      0.00      0.00
10:35:01 PM      eth0      2.30      1.99      0.24      0.51      0.00      0.00      0.00
10:45:01 PM        lo      8.35      8.35      2.18      2.18      0.00      0.00      0.00
10:45:01 PM      eth1      3.69      3.45      0.65      2.22      0.00      0.00      0.00
10:45:01 PM      eth0      1.50      1.33      0.15      0.36      0.00      0.00      0.00
10:55:01 PM        lo      8.36      8.36      2.18      2.18      0.00      0.00      0.00
10:55:01 PM      eth1      3.66      3.40      0.64      2.19      0.00      0.00      0.00
10:55:01 PM      eth0      0.79      0.87      0.08      0.29      0.00      0.00      0.00
11:05:01 PM        lo      8.36      8.36      2.18      2.18      0.00      0.00      0.00
11:05:01 PM      eth1      7.29      4.73      5.25      2.41      0.00      0.00      0.00
11:05:01 PM      eth0      0.82      0.89      0.09      0.29      0.00      0.00      0.00
11:15:01 PM        lo      8.34      8.34      2.18      2.18      0.00      0.00      0.00
11:15:01 PM      eth1      3.67      3.30      0.64      2.19      0.00      0.00      0.00
11:15:01 PM      eth0      1.27      1.21      0.11      0.34      0.00      0.00      0.00
11:25:01 PM        lo      8.32      8.32      2.18      2.18      0.00      0.00      0.00
11:25:01 PM      eth1      3.43      3.35      0.63      2.20      0.00      0.00      0.00
11:25:01 PM      eth0      1.13      1.09      0.10      0.32      0.00      0.00      0.00
11:35:01 PM        lo      8.36      8.36      2.18      2.18      0.00      0.00      0.00
11:35:01 PM      eth1      7.16      4.68      5.25      2.40      0.00      0.00      0.00
11:35:01 PM      eth0      1.15      1.12      0.11      0.32      0.00      0.00      0.00
11:45:01 PM        lo      8.37      8.37      2.18      2.18      0.00      0.00      0.00
11:45:01 PM      eth1      3.71      3.51      0.65      2.20      0.00      0.00      0.00
11:45:01 PM      eth0      0.75      0.86      0.08      0.29      0.00      0.00      0.00
11:55:01 PM        lo      8.30      8.30      2.18      2.18      0.00      0.00      0.00
11:55:01 PM      eth1      3.65      3.37      0.64      2.20      0.00      0.00      0.00
11:55:01 PM      eth0      0.74      0.84      0.08      0.28      0.00      0.00      0.00

Cronjobs'u merak eden insanlar için. İşte sunucuda ayarlanmış tüm cronjobs özeti (Ben app01 aldı ama bu aynı cronjobs kurulmuş birkaç diğer sunucularda oluyor)

$ ls -ltr /etc/cron*
-rw-r--r-- 1 root root  722 Apr  2  2012 /etc/crontab

/etc/cron.monthly:
total 0

/etc/cron.hourly:
total 0

/etc/cron.weekly:
total 8
-rwxr-xr-x 1 root root 730 Dec 31  2011 apt-xapian-index
-rwxr-xr-x 1 root root 907 Mar 31  2012 man-db

/etc/cron.daily:
total 68
-rwxr-xr-x 1 root root  2417 Jul  1  2011 popularity-contest
-rwxr-xr-x 1 root root   606 Aug 17  2011 mlocate
-rwxr-xr-x 1 root root   372 Oct  4  2011 logrotate
-rwxr-xr-x 1 root root   469 Dec 16  2011 sysstat
-rwxr-xr-x 1 root root   314 Mar 30  2012 aptitude
-rwxr-xr-x 1 root root   502 Mar 31  2012 bsdmainutils
-rwxr-xr-x 1 root root  1365 Mar 31  2012 man-db
-rwxr-xr-x 1 root root  2947 Apr  2  2012 standard
-rwxr-xr-x 1 root root   249 Apr  9  2012 passwd
-rwxr-xr-x 1 root root   219 Apr 10  2012 apport
-rwxr-xr-x 1 root root   256 Apr 12  2012 dpkg
-rwxr-xr-x 1 root root   214 Apr 20  2012 update-notifier-common
-rwxr-xr-x 1 root root 15399 Apr 20  2012 apt
-rwxr-xr-x 1 root root  1154 Jun  5  2012 ntp

/etc/cron.d:
total 4
-rw-r--r-- 1 root root 395 Jan  6 18:27 sysstat
$ sudo ls -ltr /var/spool/cron/crontabs 
total 0
$

Gördüğünüz gibi SAATLİK cronjobs yok. Sadece günlük / haftalık vb.

Bir sürü istatistik (vmstat, mpstat, iostat) topladım - ancak zor çalışıyorum, herhangi bir VM bileşeninin yanlış davranmasını önerecek herhangi bir ipucu göremiyorum ... Hipervizördeki potansiyel sorunlara doğru eğilmeye başlıyorum. İstatistiklere bir göz atmaktan çekinmeyin "Gend" zaman etrafında sar -q çıktı ile başlıyor ve sonra vm, mp ve iostats görebilirsiniz ....

Temelde hala benim için tam bir gizem ...


Daha fazla araştırmak için paylaşabileceğiniz etkileşimli verileriniz var mı? Ayrıca, herhangi bir garip davranış gösterip göstermediklerini görmek için söz konusu saatlerde uygulama günlüklerinizi kontrol ettiniz mi? Ayrıca, genel bulut altyapısında barındırılmayan benzer yapılandırmalara sahip ana bilgisayarlarınız var mı ve varsa benzer davranış sergiliyorlar mı?
esquireofoz

Uygulama günlükleri açısından - hiçbir şey olmuyor. İçerdiği tek günlük girişleri, her dakika gerçekleşen izleme kontrolleridir - temel olarak izleme sistemi ana siteye çarpar ve sonuç kodunu rapor eder - bu günlükler dışında tamamen boştur. Ayrıca gördüğünüz gibi yukarıdaki ana çeşitli - bu hepsini (redis, uygulama sunucusu, şef sunucusu vb.)
Oluyor

Psacct'ı daraltmak için kullanmayı denediniz mi?
HTTP500

düzenliliği varsayarsınız, ancak gösterdiğiniz veriler düzenli olarak gerçekleşen ani artışlar göstermez. Lütfen düzenliliği tam olarak gösterdiği süreye göre daha spesifik olun (birkaç gün içinde? resimde, düzenlilik yoktur.) her 1 milyonda bir "top -n 1" çalıştırın ve bunları bir dosyada saklayın ve bu, bir artış olduğunda aynı anda diğer işlemlerin cpu için rekabet ettiğini görmenize yardımcı olabilir. App1 internete dönük bir uygulama ise, belki de sadece birisi ona erişiyor ve bu davranışı zorluyor? düzenli bir "netstat -an" kaydı da ekleyin (her dakika?)
Olivier Dulac

Ekteki ekran görüntüsünü gördünüz mü? Bu normal bir şey göstermiyorsa, ne yaptığını bilmiyorum. Şimdi sar için örnekleme süresini arttırdım, bu yüzden her 5 dakikada bir örnek alıyorum. Resimdeki düzenlilik açıktır - her iki saatte bir. Bu, ağ istatistikleri için yukarıdaki sar çıktılarından da görebileceğiniz gibi, hiç trafiği YOK olan bir evreleme ortamıdır.
milosgajdos

Yanıtlar:


3

İlginç.

İlk olarak, sar günlüğü sıklığını artırabilir. 10 dakika yerine, her dakika oturum açmayı deneyin. Sysstat cronjob yapılandırılabilir.

Ardından, aşağıdaki komutları yazmayı deneyin.

ps auxf > /tmp/ps.out
vmstat 1 50 > /tmp/vm.out
mpstat -P ALL 1 50 > /tmp/mp.out
iostat -xdk 1 50 > /tmp/io.out
cat /proc/meminfo > /tmp/meminfo.out

Yük ortalaması manuel olarak arttığında veya cron üzerinden bu veri kümesini her yinelemede toplayın. En az bir tam iş günü verisine sahip olmak iyi olur.

Şimdi, sunucuların boşta olduğunu anlıyorum ama yine de bazı uygulamaların çalışıyor olması gerekiyor. Onlar neler?

Perf veya oprofile gibi bazı profil oluşturma araçlarını çalıştırabilirsiniz.

Herhangi bir sunucu donanım bileşeni değiştirildi mi? Ürün yazılımı yükseltmesi veya yazılım yükseltmesi kadar zararsız bir şey bile.

Hey, bir soru. Çalıştırdığınız zamanlayıcı nedir. Ben inanıyorum cfq, herhangi bir şans değiştirmek için noop. Put elevator=noopçekirdek komut satırı parametresinde ve sistemi yeniden ve bunu geliştirir olmadığını görmek.


Zamanlayıcı hakkında küçük bir düzenleme ekledim. lütfen sonuca bakın.
Soham Chakraborty

1

Log Top İşlemleri

Oluşum çok düzenli olduğundan, bu dönemde en iyi süreçleri izlemek için cron işi ayarlayın

#app01
20-59 0/2 * * * root /usr/bin/top -b -n 1 | /usr/bin/head -n 15 >> /var/log/top.log

Değişim 20-59için *her çift sayı saatlerce bütün Saat günlüğe kaydeder. Her iki durumda da Cron işi dakikada bir kez çalışır.

Dönmeyi günlüğe kaydetmek için top.log dosyasını eklemek isteyebilirsiniz, böylece devre dışı bırakmayı unutmanız durumunda tüm yer kaplamaz.

Günlük dosyasını kontrol et

Yüksek yükleme döneminde günlük dosyası girişlerini ara

Aşağıdaki yük girişini örnek olarak alalım

10:25:01 PM         0       125      4.10      3.59      2.23         0

Yapmak

grep ' 22:2' /var/log/*
grep ' 22:2' /var/log/apache2/*

Bu, tüm günlük girişlerini gösterecektir 22:2x:xx. Diğer günlük dizinlerini içermesi gerekebilir.

Paz 6 Oca 21:00:07 2013: xvda w_await başak

xvda Grafiği - W_await başak 6 Ocak'ta 21:00:07 2013 resim açıklamasını buraya girin


0

Kesinlikle kontrol ediyorum bir şey:

  • Aynı model için vSphere grafikleri, belki de aynı ana bilgisayardaki başka bir VM CPU'ları yiyor (bu nedenle VM'nizdeki yük, daha az CPU zamanı olması nedeniyle sabit bir akışla aynı miktarda veriyi işlemek için daha fazla zaman aldığından artar. VM'niz).

Düzenleme: İlk kez alamadım :) Rackspace üzerinde çalışıyorsunuz, bu yüzden hipervizör üzerinde kontrol yok, ancak bu kalıbın aynı ana bilgisayardaki diğer VM'lerde ortak olup olmadığını kontrol edip edemeyeceğini sormaya değer olabilir. .


1
Ben de bundan şüpheliyim - Rackspace bulutu ilk kez bir tür deliliğe neden olmazdı. Ben onların hipervizör sunucuları herhangi bir izlemekten şüpheliyim - VM'lerin yanlış davranması açısından, ancak son çare - Rackspace desteğine dönmeden önce herhangi bir "iç" olasılıkları ekarte etmek istiyorum.
milosgajdos

Hipervizör performansı sanal makinenin kendini gösteren ortalama yükünü etkiler mi? Bu, yük ortalamasının nasıl hesaplandığını düşünmemi sağlıyor. Bu, yeşil / güç tasarrufu özelliğinin çalışmayı düzenli olarak işletim sisteminden habersiz daha az sayıda çekirdeğe kaydırmasının bir etkisi olabilir mi? Veya örneğin çevresel girdilere dayalı olarak saat hızını dinamik olarak değiştirmeye ne dersiniz?
trp

Yük ortalaması, zamanlama algoritması ile hesaplanır, basit bir deyişle, işlem kuyruğunuzda 100 göreviniz varsa ve hipervizör 1 saniyede 10 görev gerçekleştirmede% 100 verimli ise, o zaman hipervizörünüz varsa 100 görevi yürütmek için 10 saniyeniz gerekir. yalnızca% 50 verimlidir (belki de CPU aşırı önizlemesi), aynı miktarda görevi yürütmek 20 saniye sürecek ve böylece yükün artmasına neden olacaktır. Komple açıklama: blog.scoutapp.com/articles/2009/07/31/…
Martino Dino
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.