OneFS: Utilização da memória
Summary: Este artigo discute brevemente as categorias gerais de memória e explica quais categorias de memória podem ser consideradas disponíveis ou "gratuitas". São fornecidas diretrizes sobre o número de memória que determinados processos e contêineres podem usar. ...
Instructions
Isso pode causar a reinicialização dos nós, a reinicialização dos processos e problemas de desempenho. Este artigo explica brevemente como avaliar a memória disponível de um nó e faz referência a algumas diretrizes técnicas de memória. No OneFS, a memória é amplamente categorizada em cinco áreas ou filas: Livre, inativa, com fio, ativa e buffer
MEMÓRIA DISPONÍVEL
A memória livre está imediatamente disponível para uso e não está alocada.
A memória inativa (Inact) não foi usada recentemente e está disponível para ser alocada.
MEMÓRIA INDISPONÍVEL
A memória com fio está em uso pelo kernel e não está disponível para outra alocação.
A memória ativa foi usada recentemente e está alocada no espaço do usuário.
A memória de buffer (Buf) é usada para armazenamento em cache de disco.
CALCULANDO A MEMÓRIA
DISPONÍVELEssas categorias de memória podem ser vistas na parte superior do comando.
Observe que é esperado que não veja uma categoria Cache e não veja nada na seção Swap:
# top last pid: 98143; load averages: 0.00, 0.02, 0.00 up 48+04:45:17 16:01:09 643 processes: 1 running, 642 sleeping CPU: 0.0% user, 0.0% nice, 0.2% system, 0.0% interrupt, 99.8% idle Mem: 512M Active, 28G Inact, 11G Wired, 12G Buf, 7530M Free Swap:
Se você visualizar o resultado de vmstat -H, você vê páginas de memória disponíveis (AVM) e memória livre (FRE) em bytes.
# vmstat -H procs memory page disks faults cpu r b w avm fre flt re pi po fr sr ad4 ad7 in sy cs us sy id 0 14 0 9333548 7713640 863 0 0 0 564 15 0 0 428 903 200 0 0 100
A conversão de páginas AVM em bytes mostra a memória disponível (inativa + livre):9333548 x 4096 = 38230212608 bytes
Convert to GB 38230212608/(1024^3)= 35.6 GB Available Memory
Se você adicionar os valores Inact e Free do top O resultado neste exemplo é que você tem:28GB + 7.35GB = 35.35GB
Observe que a saída superior já foi arredondada, portanto, pode não corresponder exatamente ao valor de vmstat.
PROCESSAR
UTILIZAÇÃO DE MEMÓRIA ESPECÍFICATamanho virtual ou vsz (SIZE) refere-se à memória alocada para esse processo.
Na página de manual do topo, "SIZE é o tamanho total do processo (texto, dados e pilha)"
Resident Set Size (RES) refere-se à quantidade de memória física em uso por esse processo.
Na página de manual do topo, "RES é a quantidade atual de memória residente (tanto SIZE quanto RES são fornecidos em kilobytes)"top Comando mostrando os seis processos que usam a maior parte da memória virtual:
# top -o size -n 6 last pid: 26745; load averages: 0.15, 0.20, 0.17 up 3+19:06:14 20:03:26 103 processes: 1 running, 102 sleeping Mem: 152M Active, 23G Inact, 14G Wired, 12G Buf, 10G Free Swap:
PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 10244 root 15 60 r112 592M 310M kqread 3 6:35 0.00% nfs 2698 root 11 20 0 585M 125M select 7 34:41 0.00% isi_celog_monitor 2544 root 26 60 r112 506M 70184K kqread 4 0:05 0.00% isi_papi_d 3217 root 2 26 0 439M 48336K kqread 3 0:13 0.00% isi_celog_capture 2676 root 2 52 0 399M 41540K kqread 2 1:46 0.00% isi_celog_capture 26740 root 2 20 0 399M 40168K kqread 6 0:00 0.00% isi_celog_capture
VALORES MÁXIMOS PARA CONSUMO DE
MEMÓRIA DO CONTÊINER LW E ARQUIVOS ABERTOS POR NÓ Existem alguns valores máximos publicados para memória, dependendo da versão do OneFS. Itens como arquivos abertos por nó e SMB e NFS dentro do contêiner LW são explicados.
Consulte o Guia de especificações técnicas do OneFS
- Contêiner LW: Página 9~23
No OneFS, três lwio Os contêineres de processo existem um contêiner para cada processo SMB, NFS e Swift. O contêiner SMB pode ter até 20% da RAM total, mas tem pelo menos 1 GB e, no máximo, 32 GB. O contêiner NFS pode ser até 25% da RAM total, mas é de pelo menos 1 GB e, no máximo, 8 GB. O contêiner Swift tem 512 MB.
- Limite de arquivos abertos: Pág. 12
O número máximo de arquivos abertos por nó é 90% do número máximo de vnodes nesse nó, conforme expresso na seguinte fórmula: kern.maxfiles = kern.maxvnodes * 0.9 Os daemons do protocolo OneFS, como o daemon de entrada/saída (lwio), pode impor restrições adicionais ao número de arquivos que um nó pode ter abertos. Os daemons de protocolo normalmente impõem essas restrições porque o kernel coloca limites no consumo de memória por processo.
VERIFIQUE A UTILIZAÇÃO DA MEMÓRIA EM RELAÇÃO AOS VALORES MÁXIMOS
Visualizando a memória de um lsass processo usando ps:
# ps auwx | egrep "USER|lsass" | grep -v grep USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND root 14689 0.0 0.3 162112 20404 ?? I 20Feb17 0:33.30 lw-container lsass (lsass)
Verificando usando top comando:
top -n 100 | egrep "SIZE|lsass" PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 14689 root 26 20 0 158M 20764K ucond 2 0:00 0.00% lsass