My first day on Canada.

Yeah, this is mys first day on Canada…. pois é mas não pensem que vou fazer um post em inglês por que eu vim aqui para apreder inglês hehe!!
Putz, saí de BSB dia 15 às 15:22….mofei em GRU até as 20:10, daí então parti para Toronto.
Quase 11 horas de viagem, cheguei quebrado em Toronto às 6 da matina… As contas não vão bater por causa do fuso, mas foi isso mesmo.
Como se não bastasse, mofei até 9:25 da manhã em Toronto, hora que embarquei para Vancouver, e adivinha?
Mais 5 horas de voo…
Bem, cheguei, um bagaço de pessoa mas cheguei.
A única coisa que eu sei é que tinha que ir para o endereço da minha homestay, então nem pensei duas veze e já cai pra dentro de um taxi.
Uauuuu… 15 minutinhos de primeiro mundo, Vancouver me deixou de queixo caído pela organização de tudo. Sem palavras.
CAD $26,00 (O taxista me levou CAD $30,00, mas eu que dei os 4 de gorjeta) do aeroporto até onde eu vou ficar pelo próximo mês.
Quem me recebeu na homestay foi um Mexicano de 20 anos de idade e que deve pesar +- 130 Kg hehehe, gente finíssima.
A mom e dady da homestay ainda não estavam aqui, o cara me ofereceu um rango (por sinal tinha pimenta pra cacete, não podia ser diferente vindo de um mexicano hehe) tentamo conversar, obviamente eu falando tudo errado e entendendo menos ainda, mas conseguimos nos comunicar bem. Isac é o nome dele.
Essa hora já eram por volta de 12:00 em Vancouver, então por volta de 13:00 fui dar uma cochilada e acordei as 22 hehehehehe, digo acordei as 17, tomei um banho, e dormi novamente até as 22, onde acordei e encontrei com a galera toda.
Minha mom e o marido dela são Filipinos, então comida filipina no jantar …. tirando a forma de fazer, e a forma com que misturam, o rango é bem parecido com o do Brasil.
Rangamo e batemo papo até agora… hora que estou escrevendo este post e vou dormir…
Bem, em resumo eu fiquei com um pouco de medo, mas já me sindo um pouco mais a vontade.
Amanhã, depois e o dia em que sobrar tempo eu escrevo mais contando mais detalhes… isso aqui foi só para não passar batido minha chegada :D

Share

Monitorando o JBOSS com Zapcat e Zabbix

Estes dias eu postei nas redes sociais que havia terminado de implementar um monitoramento bem específico.

Se tratava de ter implementado o monitoramento de um JBOSS utilizando o Zabbix e a ferramenta Zapcat.

Então um colega, o André Deo, me perguntou quando eu escreveria sobre isso, a propósito esta é uma deficiência grave que tenho quando faço as coisas, não gostar de documentar, então eu disse a ele que faria um txt e enviaria pra ele, mas nem isso eu fiz :D .

Então eu resolvi hoje, nessa bela sexta-feira, fazer o tal documento e ensinar a você como se monitora o seu JBOSS com o Zabbix usando o Zapcat, mas não vou utilizar prints de tela, vou só ensinar mesmo como você deve proceder ok!? Fechado! Bora lá então…

Contando que você já tenha seu Zabbix instalado e configurado, bem como seu servidor Linux com JBOSS instalado e configurado, e pode até estar monitorando o servidor Linux onde está o JBOSS com o Zabbix, os passos a seguir já podem ser seguidos, mas antes vamos aos detalhes.

O Zapcat

O que é o Zapcat? O zapcat nada mais é que uma pacote java que é “deployado” no seu servidor JBOSS e que, além de uma interface Web onde você pode visualizar os Itens suportados para o monitoramento, lhe dará um agente Zabbix completinho funcionando dentro do seu JBOSS.

Este agente funciona em uma porta diferente do agente padrão  do Zabbix, funciona na porta 10052 ao invés da porta usual do agente zabbix que é a 10050.

Outro aspecto interessante é que os itens que você pode criar não não tem nada de diferente de um item padrão utilizando o agente Zabbix, exceto as chaves que serão utilizadas no item.

Mas além disso, o Zapcat, para adiantar sua vida difícil de Sysadmin, te da um template Java prontinho pra você usar com Itens, Triggers e Gráficos.

Então vamos a prática.

Baixe o Zapcat daqui http://sourceforge.net/projects/zapcat/, descompacte e localize o arquivo “zapcat-1.2.war” dentro da pasta descompactada.

Localize também a pasta template, e dentro dela localize o arquivo Template_Java.xml.

Pronto, meio caminho andado…Porra, mas ai você vai me falar, como assim meio caminho andado?  Pois é, é muito simples e já está quase tudo pronto.

Com os devidos arquivos localizados, vamos a implementação do monitoramento.

Primeiramente seu servidor Zabbix deverá ter acesso a porta 10052 do servidor que você quer monitorar.

Segundo, faça um backup do template java que já vem por padrão no Zabbix, modificando seu nome para qualquer coisa que você queira. Feito isso você vai importar o Template_Java.xml que falamos logo acima para o Zabbix, que por sua vez já criará para você um template para monitorar os Servidores JBOSS já com alguns Itens, Triggers e Gráficos.

Feito isso o próximo passo é fazer o deploy do arquivo “zapcat-1.2.war” no seu AS. Para isso você terá que simplesmente copiar o arquivo “.war” acima para dentro da diretório “${JBOSS_HOME}/server/default/deploy”. Não precisa nem reiniciar o JBOSS. Neste momento o Zapcat já estará instalado e o Zabbix configurado para monitorar o seu JBOSS AS.

Bom, agora você terá que adicionar o Servidor ao Zabbix.

Putz, ai você vai me falar: Carinha, eu já tenho este servidor cadastrado no Zabbix!!

E eu vou lhe dizer: Adiciona novamente mas mudando o nome do host, tipo adicionando a palavra “zapcat” na frente dele, e ao invés de usar a porta padrão pré configurada na adição do host, tu muda para a porta do zapcat, que é a 10052.

Beleza, já no ato da adição tu pode associar seu novo “host-zapcat” ao Template_Java que criamos agora a pouco.

Pronto, zapcat instalado e monitorando o JBOSS.

Para você ver os itens disponíveis para monitoramento você pode acessar a seguinte url:

http://ip.do.servidor.jboss:8080/zapcat-1.2/ <- interfacezinha web falando do zapcat.

http://ip.do.servidor.jboss:8080/zapcat-1.2/mbean.jsp <- Lista de intens e parametros que você pode monitorar no seu JBOSS AS. Ou simplesmente clique em “mbeam list” na interfacezinha que eu mostrei acima.

Obviamente teremos agora as restrições :D . Vamo então as observações sobre o Zapcat:

- Se o monitoramento não funcionar de cara você terá que acessar primeiro o jmx-console do AS para o Zapcat passar a funcionar. Eu não sei por que cargas d’agua isso acontece, mas se tu não acessar http://ip.do.seu.jboss:8080/jmx-console antes de começar a monitorar em alguns casos. Se não fizer isso o maldito zapcat não funciona. Tipo que não precisa fazer nada na jmx-console, é só acessar que o zapcat passa a funcionar.

- O template do zapcat não funciona com Zabbix Server 1.8.3, sei que a partir do 1.8.4 funciona bem e com o Zabbix Server 1.6 também funciona.

- O zapcat-1.2.war não funciona no JBOSS AS 4.0.2, a partir do 4.2 já pode usar sem medo de ser feliz.

Déo, tá ai, acho que melhor que o txt que eu prometi :D

Abraços

Share

Criando um Live-Pendrive Debian

Há tempos eu queria mostrar como se faz isso e o quanto é simples.

Normalmente quando se tem algum problema com o sistema e nenhum dos recursos convencionais dão certo, o que todo mundo te diz é:

“Dá um boot com um live-cd de qq XXXXX e faz o que você precisa”

Beleza, mas e quando você tá com seu Netbook, ou quando o Servidor tem aquele Drive de CD/DVD hotplug que é usado nos outros 32 servidores e naquele momento está sendo usado por alguém em outro servidor?

Dá um boot com o pendrive :D

Fazer isso como Ubuntu é facinho facinho, ta cheio de documentação pela internet a fora. E fazer isso com o Debian, também não é difícil, mas as formas são várias, eu vou mostrar uma dela usando uma ferramenta nativa do Debian, mas que pode ser usado no Ubuntu para gerar um Debian.

Bacana né?

Então mão na massa.

No seu Debian ou Ubuntu instale a ferramenta live-build:

aptitude install live-build

Esqueci de dizer no início, mas você terá que estar conectado na internet para fazer da forma que eu vou mostrar, entretanto nada que um “lh config -u” não resolva para criar a partir de um DVD, NFS, FileSystem dentre outros.

Em seguida crie um diretório com o nome da versão do Debian que deseja criar o live pendrive.

Vou fazer com o Squeeze. Então:

mkdir squeeze

cd squeeze

O próximo passo é criar a “árvore de configuração”. Vou mostrar o básico depois dou uma sofisticada.

Criando a configuração:

lh config -d squeeze -b usb-hdd –packages “xfce4″

Bom, vou explicar rapidamente o que esta linha fará.

Ela criará uma configuração que criará um uma imagem para dispositivos USB (-b usb-hdd) com Debian Squeeze (-d squeeze) e que vai ter os pacotes necessários para subir um XFCE 4 (–packages “xfce4″).

Só uma observação. O pacote “xfce4″ é um “meta pacote” que traz como dependência todos os pacotes para que o XFCE4 funcione corretamente. Lógico que só virão tudo que o XFCE4 precisa, então não contem com Web Browsers ou terminais sofisticados.

A partir de agora você já poderia criar sua imagem, entretanto o live-build buscaria todos os pacotes do repositório “http://ftp.de.debian.org/debian”, ou seja, lá na Alemanha, além de criar sua imagem baseada na arquitetura do computador onde está sendo gerada e escolhendo o hostname, que é uma perfumaria mas eu gosto, debian arbitrariamente, vai configurar o idioma para inglês e o teclado também para o idioma configuração US.

Então, por exemplo, se tu criar uma imagem no seu notebook que for i386, a imagem terá a os pacotes da arquitetura i386, que por sua vez vai funcionar num amd64, mas vice e versa não acontece a mesma coisa. O seu sistema estará em inglês e o teclado também configurado para esta lingua, você não terá browser, nem editor de texto nem nada, só xfce. O melhor é definir tudo que você precisa para já criar uma  imagem, digamos, personalizada.

Bom, então vamos sofisticar um pouco mais nossa linha de configuração. Para isso remova tudo que está dentro do diretório que criou inicialmente.

Existe o comando “lh cleanup”, mas não sei por que cargas d’agua não funciona, então use o cleanup apelidado de “rm -rf”.

Melhorando a configuração da nossa imagem:

lh config -a i386 –mirror-bootstrap http://ftp.br.debian.org/debian/  –mirror-chroot http://ftp.br.debian.org/debian/  –mirror-binary http://ftp.br.debian.org/debian/ –debconf-frontend dialog -d squeeze -b usb-hdd -l pt_BR –hostname debian-live –fdisk fdisk –packages “xfce4 iceweasel vim bash-completion”

Agora sim o trem ficou chique. Aqui a gente definiu qual arquitetura (-a i386) definimos qual seria o mirror que será base para fazer o bootstrap (–mirror-bootstrap http://ftp.br.debian.org/debian/), vai fazer o chroot para criação da imagem com base nos pacotes do repositório Debian do Brasil (–mirror-chroot http://ftp.br.debian.org/debian/), vai também baixar os binários (entenda como pacotes) do repositório do Brasil (–mirror-binary http://ftp.br.debian.org/debian/), vai mostrar um dialogo para você escolher o mapa de teclado (–debconf-frontend dialog), vai instalar seu sistema em Português do Brasil (-l pt_BR), vai configura o hostname da sua imagem para debian-live (–hostname debian-live), usará o fdisk e não o fdisk.gnu (–fdisk fdisk) e por fim vai criar sua imagem com alguns pacotinhos úteis como o Vim e um Browser a sua escolha, eu escolhi o Iceweasel (–packages “xfce4 iceweasel vim bash-completion”).

Pronto, agora ficou uma configuração bacana, mas isto pode ser melhorado, faça o comando “lh config -u”, dito anteriormente, e explore tudo que puder, vale a pena.

Ok, neste ponto nossa configuração para a criação da imagem estará pronta, nos resta criá-la. Para criar a imagem é bem simples, execute o comando a seguir:

lh build

Agora sua imagem começará a ser criada.

Enquanto o processo de criação está sendo concluído, vamos preparar o pendrive para receber a imagem, então espete o pendrive no computador e envie zeros para ele hehe.

dd if=/dev/zero of=/dev/sdc

!!!!!!!!!!!!!!! IMPORTANTE!!!!!!!!!!!!!! O MEU DISPOSITIVO É SDC, O SEU EU NÃO SEI QUAL É, ENTÃO TOME BASTANTE CUIDADO POR QUE O COMANDO ACIMA VAI DESTRUIR TUDO QUE HOUVER NESTE DISPOSITOVO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Feito isso o seu pendrive estará literalmente zerado e neste ponto a imagem também deverá estar terminando de ser criada ou já tenha terminado, então um arquivo “binary.img” deve ter sido criado no diretório de trabalho.

Contando que tudo aí pra cima deu certo, basta agora você usar o próprio dd para enviar a imagem para o pendrive, assim:

dd if=binary.img of=/dev/sdc

Ao término deste comando seu pendrive será um Debian Squeeze Live Pendrive :D .

O que falta para eu descobrir:

A imagem gerada tem cerca de 300MB, e se o pendrive for de 2GB eu terei cerca de 1,5GB inutilizado.

Se eu particionar o pendrive e tentar colocar minha imagem lá, eu vou ter problemas, e não vou conseguir bootar já que não existirá um bootloader no setor inicial do pendrive.

Então resta saber como aproveitar o resto do espaço do pendrive…. mas eu nem pesquisei ainda.

Lembre-se também que seu Live Pendrive será executado em memória, e você até poderá instalar um monte de coisa nele, mas no próximo boot tudo estará como era no inicio.

Bom, fica ai a dica que é, no meu ponto de vista, muito útil.

Share