DesenvolvimentoGeralGerenciamentoSegurança

SOLOWEB Dicas(Avançado) – Comandos em Shell para ajudar no monitoramento

No SOLOWEB dicas de hoje, vamos falar de alguns comandos em shell que pode ajudar no monitoramento de seus servidores. Esses comandos são utilizados em servidores com CentOS 7.

Lembrando que a SOLOWEB oferece soluções de servidores para seu site ou projeto como também oferecemos serviços de monitoramento de servidores.

1 – Primeiro comando é de iniciar, parar, verificar status e reiniciar o serviços de seu servidor, para ele vamos dar o exemplo com o mariadb.

 

Precisando de uma hospedagem de site ou de um servidor dedicado personalizado, seja para ambiente de teste, desenvolvimento ou de produção? E com um suporte de especialistas, que ti, ajudam a resolver os problemas o mais rápido possível? A SoloWeb tem o prazer em ti, ajudar com isso. Entre em contato conosco e faça uma cotação agora mesmo, acesse: www.soloweb.com.br.
$systemctl start mysqld 
$systemctl stop mysqld
$systemctl restart mysqld
$systemctl status mysqld

 

2 – Nosso segundo comando é o “grep”, pode ser utilizado junto com o comando acima, caso você deseje filtrar o resultado o máximo possível, por exemplo caso você utilize o comando para verificar o status do mysql:

 

[root@server ~]# systemctl status mysqld
● mariadb.service - MariaDB 10.1.43 database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
  Drop-In: /etc/systemd/system/mariadb.service.d
           └─migrated-from-my.cnf-settings.conf
   Active: active (running) since Qua 2020-02-19 18:15:05 CET; 1min 29s ago
     Docs: man:mysqld(8)
           https://mariadb.com/kb/en/library/systemd/
  Process: 5863 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
  Process: 5766 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)
  Process: 5755 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
 Main PID: 5801 (mysqld)
   Status: "Taking your SQL requests now..."
   CGroup: /system.slice/mariadb.service
           └─5801 /usr/sbin/mysqld

-=-=-=-=---=-=-=-=---=-=-=-=---=-=-=-=---=-=-=-=---=-=-=-=---=-=-=-=---=-=-=-=--

$ systemctl status mysqld | grep "Active:"
Active: activating (start) since Qua 2020-02-19 18:13:56 CET; 1min 7s ago

 

No exemplo acima você pode verificar a saída do comando status, a quantidade de informação as vezes pode atrapalhar a velocidade do diagnostico que você precisa, então como foi feito no segundo comando foi adicionado o pipe “|” e o comando grep com a palavra chave que procuro, a saída do comando ficará mais fácil de visualizar.

 

3 – O terceiro comando também poderá ser utilizado junto com outros comandos é o “awk”, nesse tutorial estou ensinando o básico de cada comando para poder auxiliar vocês a criar shell scripts que ajuda no monitoramento. Esse comando awk, vai ajudar a filtrar também, porém deixará somente a coluna desejada para seu filtro e poderá ser utilizada para armazenar palavras especificas e assim você utilizar a saída de um comando para outro comando. Vejamos o exemplo:

 

 $ ll
total 0
-rw-r--r-- 1 root root 0 Fev 19 18:56 arquivo

 

No exemplo acima apenas listamos os arquivos como pode ser visto a saída do comando foi as permissões de dono e grupo do arquivo, depois uid,  seguida do dono e depois do grupo do arquivo, depois o tamanho do arquivo em bytes, mês, dia, hora e por ultimo o dono do arquivo.

 

o awk interpreta cada saida dessa como uma coluna:

1 col      | 2 col | 3 col | 4 col | 5 col | 6 col | 7 col | 8 col | 9 col
-rw-r--r--    1      root    root      0      Fev    19      18:56   arquivo

 

Então em resumo cada espaço dado é uma coluna nova, para exemplificar o que estou falando vou pegar apenas o nome do arquivo:

 

$ ll | awk {'print $9'}

arquivo

 

Como pode ser visto apenas o nome do arquivo saiu, para usar com o exemplo que já estávamos utilizando com o comando status ficaria assim:

 

$ systemctl status mysqld | grep "Active:" | awk {'print $2'}
active

 

Assim com a saída apenas desejada do comando acima poderemos criar Shell Scripts que poderá monitorar o status de um serviço do seu servidor.

 

A SOLOWEB oferece soluções de servidores para seu site ou projeto como também oferecemos serviços de monitoramento de servidores.

 

Procurando serviços de hospedagens para sua empresa? A SOLOWEB possui serviços de hospedagens e dedicados com preços que cabem no seu bolso. Acesse www.soloweb.com.br e veja nossos planos com os melhores preço do mercado.

 

 

Esperamos ter ajudado com mais esta dica, e siga nos, nas redes sociais para mais tutoriais, e se precisar de nossa ajuda estamos a disposição: www.soloweb.com.br.

E lembrando que a SOLOWEB além de oferecer Hospedagem de Sites, Servidores Dedicados, Servidores VPS com o menor custo do Brasil, também desenvolve soluções de software e realiza gerenciamento e monitoramento de servidores para sua empresa, faça uma cotação sem custo, acesse: www.soloweb.com.br