Lista de parâmetros do sistema de nós que podem ser otimizados
O CCE fornece parâmetros de sistema de nó padrão, o que pode causar gargalos de desempenho em alguns cenários. Portanto, você pode personalizar e otimizar alguns parâmetros do sistema de nó. Lista de parâmetros do sistema de nós que podem ser otimizados descreve os parâmetros do sistema de nó.
- A modificação tem certos riscos. Familiarize-se com os comandos do Linux e o sistema operacional Linux.
- Os parâmetros listados em Tabela 1 foram testados e verificados. Não modifique outros parâmetros. Caso contrário, podem ocorrer falhas de nó.
- Os comandos para modificar parâmetros do sistema de nó são válidos somente quando imagens públicas são usadas. Os comandos fornecidos neste documento são apenas para referência quando imagens privadas são usadas.
- Depois que o nó for reiniciado, execute o comando sysctl -p para atualizar o valor do parâmetro.
| Parâmetro | Localização do parâmetro | Descrição | Referência |
|---|---|---|---|
| kernel.pid_max | /etc/sysctl.conf | Número máximo de IDs de processo em um nó Obtenção do parâmetro: sysctl kernel.pid_max | |
| RuntimeMaxUse | /etc/systemd/journald.conf | Limite superior da memória ocupada pelo cache de log do nó. Se este parâmetro não for definido, uma grande quantidade de memória será ocupada depois que o sistema for executado por um longo tempo. Obtenção do parâmetro: cat /etc/systemd/journald.conf | grep RuntimeMaxUse | Alteração de RuntimeMaxUse da memória usada pelo cache de log em um nó |
| Openfiles | /etc/security/limits.conf | Número máximo de manipuladores de arquivo para um único processo em um nó, que pode ser ajustado conforme necessário. Obtenção do parâmetro: ulimit -n | Alterar o número máximo de identificadores de arquivo para um único processo em um nó |
| (inside the Openfiles container) LimitNOFILE LimitNPROC |
| Número máximo de alças de arquivo para um único processo em um contêiner, que pode ser ajustado conforme necessário. Obtenção do parâmetro: Nós do Docker: cat /proc/`pidof dockerd`/limits | grep files Nós de contêiner: cat /proc/`pidof containerd`/limits | grep files | Alterar o número máximo de alças de arquivo para um único processo de contêiner |
| file-max | /etc/sysctl.conf | Número máximo de alças de arquivo no sistema, que podem ser ajustadas conforme necessário. Obtenção do parâmetro: sysctl fs.file-max | Alterar o número máximo de identificadores de arquivos em nível de sistema em um nó |
| nf_conntrack_buckets nf_conntrack_max | /etc/sysctl.conf | Capacidade da tabela de rastreamento de conexão, que pode ser ajustada conforme necessário. Uso do bucket = [nf_conntrack_count]/[nf_conntrack_buckets] Ajuste o valor dos buckets para garantir que o uso do bucket seja menor que 0,7. Obtenção do parâmetro: sysctl net.netfilter.nf_conntrack_count sysctl net.netfilter.nf_conntrack_buckets sysctl net.netfilter.nf_conntrack_max | |
| net.netfilter.nf_conntrack_tcp_timeout_close | /etc/sysctl.conf | Tempo de expiração da entrada da conexão no estado de fechamento na tabela de rastreamento de conexão. Diminuir o tempo de expiração pode acelerar a reciclagem. Obtenção do parâmetro: sysctl net.netfilter.nf_conntrack_tcp_timeout_close | |
| net.netfilter.nf_conntrack_tcp_be_liberal | /etc/sysctl.conf | O valor do parâmetro é 0 ou 1.
Obtenção do parâmetro: sysctl net.netfilter.nf_conntrack_tcp_be_liberal | |
| tcp_keepalive_time | /etc/sysctl.conf | Intervalo no qual uma mensagem de Keepalive de TCP é enviada. Se esse parâmetro for definido com um valor grande, as conexões TCP podem ser suspensas na fase Close_wait por um longo tempo, esgotando os recursos do sistema. Obtenção do parâmetro: sysctl net.ipv4.tcp_keepalive_time | |
| tcp_max_syn_backlog | /etc/sysctl.conf | Número máximo de semiconexões TCP, ou seja, o número máximo de conexões na fila SYN_RECV. Obtenção do parâmetro: sysctl net.ipv4.tcp_max_syn_backlog | |
| tcp_max_tw_buckets | /etc/sysctl.conf | Especifica o número máximo de soquetes no estado time-wait que pode existir a qualquer momento. Se o valor do parâmetro for muito grande, os recursos do nó podem estar esgotados. Obtenção do parâmetro: sysctl net.ipv4.tcp_max_tw_buckets | |
| net.core.somaxconn | /etc/sysctl.conf | Número máximo de conexões TCP. Este parâmetro controla o número de conexões TCP em uma fila. Se esse parâmetro for definido como um valor pequeno, o número de conexões TCP é propenso a insuficiência. Se este parâmetro estiver definido como um valor grande, os recursos do sistema poderão ser desperdiçados porque cada cliente à espera de ligação na fila de ligação ocupa determinados recursos de memória. Obtenção do parâmetro: sysctl net.core.somaxconn | |
| max_user_instances | /etc/sysctl.conf | Número máximo de instâncias de inotify permitidas para cada usuário. Se o valor do parâmetro for muito pequeno, o número de instâncias de inotify pode ser insuficiente nos contêineres. Obtenção do parâmetro: sysctl fs.inotify.max_user_instances | |
| max_user_watches | /etc/sysctl.conf | Número máximo de diretórios de todas as instâncias de monitoramento. Se o valor do parâmetro for muito pequeno, o número de diretórios pode ser insuficiente nos contêineres. Obtenção do parâmetro: sysctl fs.inotify.max_user_watches | |
| netdev_max_backlog | /etc/sysctl.conf | Tamanho da fila de recebimento de pacotes da pilha de protocolos de rede. Se o valor do parâmetro for muito pequeno, o tamanho da fila pode ser insuficiente. Obtenção do parâmetro: sysctl net.core.netdev_max_backlog | |
| net.core.wmem_max net.core.rmem_max | /etc/sysctl.conf | Tamanho da memória (bytes) do buffer de envio e recebimento. Se este parâmetro estiver definido como um valor pequeno, o tamanho da memória poderá ser insuficiente em cenários de ficheiros grandes. Obtenção do parâmetro: sysctl net.core.wmem_max sysctl net.core.rmem_max | |
| net.ipv4.neigh.default.gc_thresh1 net.ipv4.neigh.default.gc_thresh2 net.ipv4.neigh.default.gc_thresh3 | /etc/sysctl.conf | Otimização da coleta de lixo de entradas ARP. Obtenção do parâmetro: sysctl net.ipv4.neigh.default.gc_thresh1 sysctl net.ipv4.neigh.default.gc_thresh2 sysctl net.ipv4.neigh.default.gc_thresh3 | |
| vm.max_map_count | /etc/sysctl.conf | Se este parâmetro é ajustado a um valor pequeno, uma mensagem é indicada indicando que o espaço é insuficiente durante a instalação de ELK. Obtenção do parâmetro: sysctl vm.max_map_count |