Mais recentes

Conteúdo técnico, ferramentas e experiências práticas da IceNex.

sexta-feira, 22 de janeiro de 2021

Ubuntu - Problema para traduzir OIDs de uma MIB (SNMP)

 E aí pessoal, tudo bem?

Um dica rápida para quem usa Ubuntu Server ou até mesmo para quem está estudando as possibilidades de utilizá-lo depois do anúncio do fim do CentOS.

Bem, pra quem trabalha com monitoração é comum ter que configurar o serviço SNMP no servidor para que ele possa envitar traps ou até mesmo para que a monitoração faça consultas e assim gerar a coleta do consumo de recursos e/ou disponibilidade.

Bem, vou tentar explicar brevemente algumas coisas antes de continuar:

SNMP

  • Simple Network Management Protocol - resumindo, é o protocolo mais utilizado para podermos saber o que está acontecendo dentro de um equipamento que tenham suporte a este serviço (exemplo: servidores, equipamentos de rede, alguns storages, etc).
  • MIB - As mibs descrevem de forma hierarquica como a gestão dos dados devem acontecer, contendo identificadores (OID) para cada objeto.
  • OID - Uma estrututra hierarquica onde com a separação da árvora em alguns pontos temos as identificações do fabricante, modelo do equipamento, versão, recursos que podem ser "coletados".  Ao pé da letra, é a identificação do objeto dentro da árvore da MIB.

Exemplo da estrutura de uma MIB:


 Imagem do site Support Huaewi - Switch CloudEngine 8800, 7800, 6800, and 5800 V200R003C00.

Acontece que fazendo uma "varredura" em um equipamento por toda estrutura do SNMP que ele responde, pode não ser muito amigável a saída de cada OID. Isso mesmo! Podemos ter saída apenas no formato número e para saber o que é cada item, ter que pegar o número, consultar na internet ou documentação da MIB para verificar qual componente/monitor ele se refere.

Existe algumas opções de comando que fazem a tradução destes OIDs para nomes mais amigáveis e assim podermos ter uma noção melhor do monitor ao qual o OID se refere.

No Ubuntu Server, encontrei um problema onde essa tradução não estava funcionando e por isso resolvi fazer este post para compartilhar.

 Para os testes vamos utilizar o comando:

# snmpwalk -t -2 -v2c -c servers IP-DO-DEVICE .1.3.6.1.2.1.25.2.3.1.2

Como podemos ver na imagem acima, não temos a menor ideia do que é cada OID ou cada monitor por assim dizer, quando fazemos uma consulta específica por um bloco da estrutura da MIB.

No Ubuntu Server para resolver isso, precisamos comentar a linha "mibs :" no arquivo /etc/snmp/snmp.conf

Após comentar a linha e salvar o arquivo, devemos fazer o restart do serviço do SNMP

# systemctl restart snmpd.service

E ao fazer o mesmo teste novamente, a saída deve ser semelhate à abaixo:

Apenas como comparativo, quando utilizava CentOS isso não era necessário, pois a configuração que vinha "padrão" na instalação funcionava dessa forma.

Mas é isso ...

Nem tudo é igual no mundo Linux quando falamos de uma distribuição para outra, alguns ajustes requerem mais interação nossa, etc...

Espero que isso ajude.

Até a próxima.

Abs

:wq!

sábado, 19 de dezembro de 2020

Jenkins - Instalação no Debian

Fala galera, beleza?

Espero que tudo bem ...

Hoje muito se fala de automação, entraga de forma automatizada, DevOps, etc.

Bem, pensando nisso eu resolvi fazer dois posts, sendo o primeiro com o passo-a-passo de instalação de Jenkins no Debian (já vou começar a fazer os labs no Debian, visto que o projeto do CentOS está chegando ao fim) e o segundo post com um exemplo de um pipeline para automatizar a entrega de uma ferramenta de monitoração, algumas customizações do SO, criação de serviço e start.




Primeiramente ... O que é Jenkins?

- Nada mais é do que um servidor/serviço de automação gratuito muito utilizado hoje em dia em esteiras DevOps para entrega contínua.

Para saber mais sobre o projeto, basta acessar o site oficial: https://www.jenkins.io/

Laboratório utilizado:

  • VirtualBox
  • Debian na versão 10.7
  • Jenkins instalado via repo
Tendo você já o Debian instalado, vamos fazer o update e instalar o default JDK necessário para o correto funcionando do Jenkins:

Para o update:

# apt-get update

Para instalar o Default JDK:
# apt-get install default-jdk

Será solicitado seu OK para confirmar a instalação ... Caso queira fazer tudo de forma direta é só colocar o parâmetro -y no comando acima?

Agora precisamos baixar e aplicar a GPG Security key.

Isso se faz necessário para autenticar/validar o software que instalamos. É mais para informar que o software que queremos instalar é confiável.

Vamos ao download do GPG...

# wget –q –O – https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add –

Dando tudo certo iremos receber um OK ao final da execução do comando:

** colocar o print **

Com o comando abaixo iremos adicionar o repo do Jenkins no Debian para podermos fazer a instalação através do apt-get instal também:
# sh –c ‘echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list’
Obs.: este repo é para quem usa a versão stable do Debian, OK?

Caso você utilize outra versão é necessário adicionar o seguinte repo: sh -c 'echo deb https://pkg.jenkins.io/debian binary/ > /etc/apt/sources.list.d/jenkins.list'

Agora que já temos o java default, as keys de validação e o repo adicionado, vamos fazer a instalação do Jenkins:
# apt-get update && apt-get install jenkins
Novamente será solicitado o seu OK para realizar a instalação ... caso queria pular este passo é só colocar o -y no apt-get install jenkins -y

A instalação finalizando com sucesso, vamos fazer o start do serviço e já habilitá-lo para start automático durate a inicialização do servidor.
# systemctl start jenkins ; systemctl enable jenkins

É necessário agora finalizar a configuração do Jenkins através da console Web:

Acessar a console no próprio servidor (http://localhost:8080) ou acessar de forma remota (http://ip_do_server:8080). É normal demorar um pouco até o start completo e com isso aparecer o seguinte status:




Será solicitado que você capture a senha criada na instalação para continuar:
# cat /var/lib/jenkins/secrets/initialAdminPassword

Na tela seguinte selecionar para que seja feita a instalação dos plugins sugeridos...



No passo seguinte criar o usuário que será utilizado para administrar e configurar/usar o Jenkins daqui pra frente...




Assim que finalizar é só fazer o teste acessando o Jenkins com o usuário e senha definidos na instalação.




Agora está tudo pronto para o próximo post, onde iremos criar um cenário para fazermos um pipeline do deploy de uma ferramenta de monitoração, alguns ajustes, tunings, etc.

Abs e até a próxima galera!
:wq!