A média de carga é 50, enquanto a utilização da CPU é de 60%

2

Usamos EC2 Auto Scaling e recentemente decidimos alterar o tipo de Instância de m2.2xlarge para c1.xlarge (High Memory para High CPU) porque a quantidade média de RAM usada por instância é 2G, portanto não precisamos de 34G fornecidos por m2.2xlarge, e ter mais poder de CPU de c1.xlarge pelo mesmo preço seria uma boa ideia.

Mas depois de mudar para c1.xlarge, temos o problema:

  1. A média de carga se tornou 50, enquanto a utilização da CPU caiu de 70% para 60%.
  2. O escalonamento de 6 instâncias para 4 não afeta a métrica de Monitoração da nuvem de utilização da CPU.
  3. O tempo de resposta pareceu ser muito lento e as Instâncias substituíram constantemente o Auto Scaling por causa da Verificação de integridade do ELB.
  4. O Auto Scaling reduziu o número de Instâncias de 8 para 4 porque a utilização da CPU caiu.

Você pode me explicar qual pode ser o motivo de tal comportamento e o que posso fazer com ele?

Informações dos tipos de instâncias do EC2:

Instância extra-grande dupla de alta memória

34,2 GB de memória 13 Unidades computacionais EC2 (4 núcleos virtuais com 3,25 Unidades computacionais EC2 cada) 850 GB de armazenamento de instâncias Plataforma de 64 bits Desempenho de E / S: alto Nome da API: m2.2xlarge

Instância extra grande com CPU elevada

7 GB de memória 20 Unidades computacionais EC2 (8 núcleos virtuais com 2,5 Unidades computacionais EC2 cada) 1690 GB de armazenamento de instância Plataforma de 64 bits Desempenho de E / S: alto Nome da API: c1.xlarge

EDITAR:

$ iostat -x
Linux 2.6.38-13-virtual     02/17/2012  _x86_64_    (8 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.34    0.00    0.13    0.02    0.29   98.23

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
xvdap1            0.04     0.09    0.08    0.13     1.50     0.87    22.99     0.01   36.59   23.42   44.75   4.04   0.08
xvdb              0.00     0.00    0.01    0.00     0.03     0.00     9.37     0.00    1.04    0.95   15.00   1.04   0.00



$ iostat
Linux 2.6.38-13-virtual     02/17/2012  _x86_64_    (8 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.45    0.00    0.14    0.02    0.31   98.08

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
xvdap1            0.21         1.50         0.87      93689      54728
xvdb              0.01         0.03         0.00       1575          8



$ top
top - 05:30:08 up 17:20,  3 users,  load average: 15.13, 10.24, 9.66
Tasks: 166 total,  20 running, 146 sleeping,   0 stopped,   0 zombie
Cpu(s): 65.3%us,  4.7%sy,  0.0%ni, 13.5%id,  0.0%wa,  0.0%hi,  0.7%si, 15.8%st
Mem:   7130236k total,   463440k used,  6666796k free,    19100k buffers
Swap:        0k total,        0k used,        0k free,    95136k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                          
 6457 ubuntu    20   0  257m  11m 4820 S   24  0.2   0:16.73 apache2                                                                                                                                                                          
 6416 ubuntu    20   0  257m  11m 4820 R   23  0.2   0:17.36 apache2                                                                                                                                                                          
 6375 ubuntu    20   0  257m  11m 4820 R   22  0.2   0:17.62 apache2                                                                                                                                                                          
 6402 ubuntu    20   0  257m  11m 4820 R   22  0.2   0:16.85 apache2                                                                                                                                                                          
 6472 ubuntu    20   0  257m  11m 4820 S   22  0.2   0:08.95 apache2                                                                                                                                                                          
 6311 ubuntu    20   0  257m  11m 4820 S   21  0.2   0:24.91 apache2                                                                                                                                                                          
 6446 ubuntu    20   0  257m  11m 4820 R   21  0.2   0:16.91 apache2                                                                                                                                                                          
 6372 ubuntu    20   0  257m  11m 4820 R   21  0.2   0:17.89 apache2                                                                                                                                                                          
 6460 ubuntu    20   0  257m  11m 4820 R   21  0.2   0:16.73 apache2                                                                                                                                                                          
 6379 ubuntu    20   0  257m  11m 4820 R   20  0.2   0:16.24 apache2                                                                                                                                                                          
 6380 ubuntu    20   0  257m  11m 4820 S   20  0.2   0:17.20 apache2                                                                                                                                                                          
 6450 ubuntu    20   0  257m  11m 4820 S   20  0.2   0:16.89 apache2                                                                                                                                                                          
 6426 ubuntu    20   0  257m  11m 4820 R   20  0.2   0:16.96 apache2                                                                                                                                                                          
 6432 ubuntu    20   0  257m  11m 4820 S   20  0.2   0:17.78 apache2                                                                                                                                                                          
 6433 ubuntu    20   0  257m  11m 4820 R   20  0.2   0:14.37 apache2                                                                                                                                                                          
 6476 ubuntu    20   0  257m  11m 4816 R   20  0.2   0:02.92 apache2                                                                                                                                                                          
 6386 ubuntu    20   0  257m  11m 4824 S   20  0.2   0:17.94 apache2                                                                                                                                                                          
 6475 ubuntu    20   0  257m  11m 4820 S   19  0.2   0:03.41 apache2                                                                                                                                                                          
 6355 ubuntu    20   0  257m  11m 4820 S   19  0.2   0:24.39 apache2                                                                                                                                                                          
 6417 ubuntu    20   0  257m  11m 4820 R   18  0.2   0:16.66 apache2                                                                                                                                                                          
 6455 ubuntu    20   0  257m  11m 4820 R   18  0.2   0:16.27 apache2                                                                                                                                                                          
 6393 ubuntu    20   0  257m  11m 4820 S   18  0.2   0:16.60 apache2                                                                                                                                                                          
 6325 ubuntu    20   0  257m  11m 4820 R   18  0.2   0:25.66 apache2                                                                                                                                                                          
 6403 ubuntu    20   0  257m  11m 4820 S   18  0.2   0:15.61 apache2                                                                                                                                                                          
 6474 ubuntu    20   0  257m  11m 4812 S   18  0.2   0:04.37 apache2                                                                                                                                                                          
 6477 ubuntu    20   0  257m  11m 4800 S   18  0.2   0:01.43 apache2                                                                                                                                                                          
 6315 ubuntu    20   0  257m  11m 4820 S   17  0.2   0:25.27 apache2                                                                                                                                                                          
 6376 ubuntu    20   0  257m  11m 4820 R   17  0.2   0:17.53 apache2                                                                                                                                                                          
 6478 ubuntu    20   0  257m  11m 4800 S   15  0.2   0:00.45 apache2                                                                                                                                                                          
 6359 ubuntu    20   0  257m  11m 4820 R   15  0.2   0:23.60 apache2   



$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda1            7.9G  1.4G  6.1G  19% /
none                  3.4G  112K  3.4G   1% /dev
none                  3.4G     0  3.4G   0% /dev/shm
none                  3.4G   72K  3.4G   1% /var/run
none                  3.4G     0  3.4G   0% /var/lock
/dev/xvdb             414G  199M  393G   1% /mnt
XXXX.compute.internal:/share_0
                       99G   28G   66G  30% /data_0
XXXX.compute.internal:/share_17
                       99G   30G   64G  33% /data_17
XXXX.compute.internal:/share_13
                       99G   30G   64G  33% /data_13
XXXX.compute.internal:/share_18
                       99G   31G   64G  33% /data_18
XXXX.compute.internal:/share_15
                       99G   28G   66G  30% /data_15
XXXX.compute.internal:/share_10
                       99G   28G   67G  30% /data_10
XXXX.compute.internal:/share_16
                       99G   30G   64G  32% /data_16
XXXX.internal:/share_3
                       99G   29G   66G  31% /data_3
XXXX.compute.internal:/share_11
                       99G   30G   64G  32% /data_11
XXXX.compute.internal:/share_7
                       99G   28G   66G  30% /data_7
XXXX.compute.internal:/share
                       99G   58G   37G  62% /share
XXXX.compute.internal:/share_2
                       99G   28G   66G  30% /data_2
XXXX.compute.internal:/share_8
                       99G   28G   67G  30% /data_8
XXXX.compute.internal:/share_19
                       99G   28G   66G  30% /data_19
XXXX.compute.internal:/share_14
                       99G   31G   64G  33% /data_14
XXXX.compute.internal:/share_5
                       99G   28G   66G  30% /data_5
XXXX.compute.internal:/share_6
                       99G   28G   67G  30% /data_6
XXXX.compute.internal:/share_1
                       99G   28G   66G  30% /data_1
XXXX.compute.internal:/share_12
                       99G   31G   64G  33% /data_12
XXXX.compute.internal:/share_4
                       99G   29G   66G  31% /data_4
XXXX.compute.internal:/share_9
                       99G   28G   66G  30% /data_9



$ free -g
             total       used       free     shared    buffers     cached
Mem:             6          0          6          0          0          0
-/+ buffers/cache:          0          6
Swap:            0          0          0



sar 1
Linux 2.6.38-13-virtual     02/17/2012  _x86_64_    (8 CPU)

05:33:02 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
05:33:03 AM     all     69.27      0.00      5.90      0.00     13.83     11.00
05:33:04 AM     all     70.88      0.00      7.62      0.00     16.50      5.01
05:33:05 AM     all     64.41      0.00      5.35      0.00     17.90     12.34
05:33:06 AM     all     66.41      0.00      9.16      0.00     13.09     11.34
05:33:07 AM     all     74.55      0.00      7.06      0.00     11.21      7.17
05:33:08 AM     all     62.31      0.00      7.49      0.00     13.38     16.81
05:33:09 AM     all     73.65      0.00      5.61      0.00     16.04      4.70
05:33:10 AM     all     76.79      0.00      8.20      0.00      9.70      5.31
05:33:11 AM     all     70.91      0.00      5.86      0.00     14.21      9.02
05:33:12 AM     all     73.95      0.00      6.37      0.00     12.51      7.17
05:33:13 AM     all     63.50      0.00      6.03      0.00     17.52     12.95
05:33:14 AM     all     61.92      0.00      4.42      0.00     17.66     16.00
05:33:15 AM     all     63.56      0.00      6.42      0.00     15.11     14.91
05:33:16 AM     all     72.63      0.00      7.51      0.00     14.90      4.97
05:33:17 AM     all     60.68      0.00      6.17      0.00     15.09     18.06



$ sar -w 1
    Linux 2.6.38-13-virtual     02/17/2012  _x86_64_    (8 CPU)

    09:34:23 AM    proc/s   cswch/s
    09:34:24 AM      0.00   4795.00
    09:34:25 AM      0.00   4174.00
    09:34:26 AM      0.00   4194.23
    09:34:27 AM      1.00   3645.00
    09:34:28 AM      0.00   4564.00
    09:34:29 AM      0.00   4473.00
    09:34:30 AM      0.00   4225.00
    09:34:31 AM      0.00   4064.36
    09:34:32 AM      0.00   4740.00
    09:34:33 AM      0.00   4589.22
    09:34:34 AM      0.00   3887.00
    09:34:35 AM      0.00   4579.00
    09:34:36 AM      0.00   4408.00
    09:34:37 AM      1.00   4390.00
    09:34:38 AM      0.00   4628.00
    
por Roman Newaza 17.02.2012 / 04:09

2 respostas

5

Por favor adicione sar -w 1 output. Eu suponho que um número de mudanças de contexto por segundo está matando seu desempenho, porque há muito mais processos rodando do que os processadores disponíveis. Acho que os switches de contexto em uma máquina virtual são caros.

Se for verdade, existem alguns ajustáveis do kernel que podem ajudá-lo a diminuir o número de opções de contexto:

  • Verifique o valor de systctl kernel.sched_min_granularity_ns . Duplique com um comando semelhante a systctl kernel.sched_min_granularity_ns=2000000 . Repetir. Duplique novamente. Repetir. Repetir. Tente encontrar um valor que não interfira muito na interatividade, mas que não permita muitas alternâncias de contexto e grave-as em /etc/sysctl.conf , de modo que elas sejam definidas na inicialização.

  • Defina a política de agendamento apache como SCHED_BATCH - comece com chrt -b 0 apache2

por 17.02.2012 / 10:14
0

A saída sar mostra um pouco de% steal time, isso basicamente significa que o hardware físico está ocupado e o hipervisor não pode fornecer à VM a quantidade de ciclos de CPU que deseja.

    
por 17.02.2012 / 10:23