Postagens

Cluster Raspberry Pi

Imagem
Objetivo deste post é comentar um pouco sobre a minha recente experiência com um cluster de raspberry pi que montei aqui em casa no ano de 2020, ano de pandemia de covid-19 e também um ano bastante atípico para muitos. Montar o cluster foi um desafio enorme, o comercio no país atravessava momentos de restrições de funcionamento e falta de matéria prima e boa parte das peças do cluster foram compradas sob medida. A motivação inicial para montar o cluster foi ter novamente hardware suficiente para estudar. Por muito tempo o ambiente de estudos aqui em casa foi um virtualbox instalado no meu macbook. Tenho inclusive boas recordações de estudar vagrant para montar as VMs. Infelizmente fui assaltado e meu hardware passou a ser um raspberryPI3 e um laptop corporativo da empresa na qual trabalho. A ideia do cluster nasceu na sequência de quando eu decidi comprar mais raspberry, inclusive não posso negar que enquanto analisava os preços e condições, não resisti, comprei o rasp4 com 4GB de RA

vnStat

Imagem
vnStat é um monitor de trafego de rede open source e totalmente baseado em terminal linux, ou seja, não possui interface gráfica. Principal objetivo do software é oferecer um registro de trafego de rede para a(s) interface(s) selecionada(s). Uma coisa muito interessante é que a ferramenta disponibiliza filtros por dia, mês, permite ainda que você obtenha os dados em tempo real. Com relação aos dados oferecidos pelo vnStat , eles são obtidos através de estatísticas oferecidas pelo kernel do linux. Alias, isso faz dele uma ferramenta muito performática ao ponto de rodar suave em um OpenWrt. :) Com relação ao fato do vnStat não possuir interface gráfica, fique tranquilo, não faz nenhuma falta. O software é muito pratico e simples. Caso realmente você queira gerar gráficos com os dados obtidos através do vnStat , leia a documentação oficial. Antes de optar pelo vnStat, esbarrei com uma lista com diversas opções e gostaria que gostaria de compartilhar com você através d

HTTPie

Imagem
O HTTPie é um projeto de Jakub Roztocil, desenvolvido em Python, usando as bibliotecas Requests e Pygments , e está sob uma licença BSD. A ferramenta está disponível para instalação através do pip ou pode ser obtida no repositório Github do projeto. A proposta da ferramenta é ser um CLI(Command Line Interface) para servidores web mais humano, a sintaxe dos comandos são simples e o retorno por ex é colorido. Acredite, isso facilita muito a visualização de informações em momentos mais críticos em que você está com pressa. Inevitável não comparar com o cURL até porque os dois possuem recursos semelhante, quer ver um exemplo? Instale os dois na sua maquina e digite o seguinte:  curl -i -X PUT -H 'Content-Type:application/json' -d '{"blog":"pviana"}' http://httpbin.org/put   Agora vamos fazer o mesmo utilizando o HTTPie: http PUT http://httpbin.org/put blog=pviana   Ficou com preguiça? Pois bem o retorno dos dois comandos segue abaixo:   HTTP

Logrotate

Imagem
Logs são extremamente importantes para o correto funcionamento de um sistema, pois estão ali as informações necessárias para corrigir um problema ou para entender porque ocorreu uma determinada falha. Agora logs também possuem seus defeitos, afinal eles podem ser o responsáveis por encher uma partição raiz sem que você perceba, deixando assim o ambiente extramente lento e algumas vezes inutilizável causando os mais diversos problemas. Uma excelente opção de gerencia disso é o tradicional LogRotate . Com ele você indica o período de rotação do arquivo de log, pode determinar ainda o apagamento e se for o caso compressão, alias extensão da compressão também é possível configurar. Arquivo de configuração do log rotate é: /etc/logrotate.conf , o que devemos fazer é indicar o arquivo a ser monitorado e quais as métricas por ex: /var/log/messages { rotate 5 weekly postrotate /sbin/killall -HUP syslogd endscript }  Acima temos o arquivo messages (ou syslog em algumas distribuiç

Devpi

Imagem
Devpi é uma excelente opção para repositório pypi, claro não desmerecendo do Bandersnatch . A grande diferença entre os dois é que o Bandersnatch foi pensado para um ambiente totalmente offline. Quando o Bandersnatch é iniciado faz download de todos os pacotes disponíveis no repositório que foi previamente indicado no seu arquivo de configuração para um diretório local só então começa a servir. Enquanto que o Devpi trabalha com cache, ou seja, você também indica um repositório mestre e um diretório onde ele vai guardar os pacotes, mais o download acontecerá sob demanda. Isso sem falar que o Devpi também trabalha com replicação, quando for iniciar o servidor você pode indicar outro servidor devpi como master. As duas opções são boas a diferença está no jeito que cada uma funciona, acredito que a escolha ficará por conta do ambiente que você possui. Caso tenha uma maquina com acesso a internet então eu usaria o Devpi , até porque não imagino alguém precisando dos 180Gb de pacotes