Maximize o poder do seu servidor com Hot-Plug no Linux

Maximize o poder do seu servidor com Hot-Plug no Linux

Dentro do Linux é possível realizar o hot-plug de CPU, mas o que é “hot-plug“?

Hot-plug é um mecanismo de “troca de hardware à quente”, ou seja, enquanto o servidor ainda está ligado, não sendo necessário que o mesmo seja desligado para que ele reconheça e habilite o novo hardware que está sendo adicionado. A vantagem de se ter um servidor que suporta esse tipo recurso, é poder realizar manutenções e alterações físicas no hardware com o servidor ainda ligado, sendo assim, não há downtime nas aplicações que rodam nele.

Lembrando que para servidores físicos é necessário que a BIOS tenha suporte ao hot-plug e também possua mais de um slot para processadores.

Agora que entendemos o que é o hot-plug em si, podemos habilitar e desabilitar os núcleos logicamente.

 

Hands-On!

A partir do momento em que adicionamos um processador, o diretório “/sys/devices/system/cpu/” será populado com os núcleos deste processador. A população do diretório também acontece quando é aumentado a quantidade de vCPUS em um servidor virtualizado.

root@ubuntu:~# ls -l /sys/devices/system/cpu/
total 0
drwxr-xr-x 6 root root 0 Jan 21 19:18 cpu0
drwxr-xr-x 6 root root 0 Jan 21 19:18 cpu1
drwxr-xr-x 6 root root 0 Jan 21 19:18 cpu2
drwxr-xr-x 6 root root 0 Jan 22 18:53 cpu3
drwxr-xr-x 5 root root 0 Jan 21 19:18 cpu4
drwxr-xr-x 5 root root 0 Jan 21 19:18 cpu5
drwxr-xr-x 5 root root 0 Jan 21 19:18 cpu6
drwxr-xr-x 5 root root 0 Jan 21 19:19 cpu7
drwxr-xr-x 2 root root 0 Jan 21 19:18 cpufreq
drwxr-xr-x 2 root root 0 Jan 21 19:18 cpuidle
drwxr-xr-x 2 root root 0 Jan 21 19:18 hotplug
-r--r--r-- 1 root root 4096 Jan 21 19:18 isolated
-r--r--r-- 1 root root 4096 Jan 21 19:18 kernel_max
-r--r--r-- 1 root root 4096 Jan 21 19:18 modalias
-r--r--r-- 1 root root 4096 Jan 21 19:18 offline
-r--r--r-- 1 root root 4096 Jan 21 19:18 online
-r--r--r-- 1 root root 4096 Jan 21 19:18 possible
drwxr-xr-x 2 root root 0 Jan 21 19:18 power
-r--r--r-- 1 root root 4096 Jan 21 19:18 present
drwxr-xr-x 2 root root 0 Jan 21 19:18 smt
-rw-r--r-- 1 root root 4096 Jan 21 19:18 uevent
drwxr-xr-x 2 root root 0 Jan 21 19:18 vulnerabilities
root@ubuntu:~#

Através do retorno da listagem do diretório, podemos notar que existem alguns arquivos destacados, sendo eles:

  • cpuX – Dentro destes diretórios há arquivos que podemos utilizar na manipulação do núcleo do processador.
  • offline – Neste arquivo há os núcleos que estão logicamente desativados.
  • online – Dentro deste arquivo há os núcleos que estão habilitados no servidor.

E dentro do diretório referente ao novo núcleo, existe um arquivo chamado “online”. Através desse arquivo, podemos gerenciar o status de tal núcleo no servidor, sendo assim, podemos habilitá-lo ou desabilitá-lo.

Por exemplo, para verificar o status do núcleo através do arquivo, podemos exibir o conteúdo do arquivo “online” dentro do diretório “cpu7”:

root@ubuntu:~# cat /sys/devices/system/cpu/cpu7/online
0
root@ubuntu:~#

Como conteúdo deste arquivo, podemos ter duas informações:

  • 0 – Significa que este núcleo está desabilitado;
  • 1 – Significa que este núcleo está habilitado.

Para habilitar, simplesmente podemos redirecionar o numeral “1” para dentro deste arquivo.

root@ubuntu:~# echo 1 > /sys/devices/system/cpu/cpu7/online
root@ubuntu:~#

Caso queira desabilitar o núcleo, é só redirecionar o numeral “0” para o mesmo arquivo.

root@ubuntu:~# echo 0 > /sys/devices/system/cpu/cpu7/online
root@ubuntu:~#

 

Conclusão

Neste post vimos que é possível aumentar o poder de processamento em nosso servidor sem ter que desligá-lo para isso, o que no dia a dia se torna um recurso muito importante.

Até a próxima!

 

CURSOSCONSULTORIA    CONTATO

Anterior Caça Talentos Melhor Idade: 20 candidatos selecionados para terceira fase do projeto
Próxima Terraform: Aprenda a gerenciar dependências entre recursos na GCP

About author

Vinicius Felix
Vinicius Felix 5 posts

Vinicius Felix da Silva, atua como Analista de Infraestrutura, é entusiasta em tecnologias de software livre e é formado em Redes de Computadores pelo SENAC. Possui a certificação LPI 1.

View all posts by this author →

Você pode gostar também

Infraestrutura TI

Entenda o que é um chatbot e como ele pode revolucionar o atendimento ao cliente

A procura por soluções de chatbot (atendimento automatizado por chat) vem crescendo muito nos últimos tempos, ainda mais nestes tempos de pandemia. Muitos criticam seu uso pois isso retira uma

Monitoramento TI

Guia prático para atualizar o Zabbix 4.0 LTS para a 5.0 LTS

Assim como muitas ferramentas Open Source, o Zabbix vem aprimorando seus recursos através de um ciclo contínuo de desenvolvimento sempre tentando atender as necessidades de clientes e da própria comunidade,

Monitoramento TI

Como otimizar a monitoração de infraestrutura com Prometheus e Grafana

Um dos dos pilares do DevOps é a monitoração contínua de nossa infraestrutura e de nossos serviços. Através do monitoramento, podemos extrair informações importantes sobre a saúde de nossos componentes,