15 setembro 2010

Instalando e testando o Halberd

Instalação Halberd

Encontrei no blog “corujati” informação referente uma ferramenta para realizar análise de performance em um ambiente web. Então como no meu trabalho existe uma empresa que esta desenvolvendo um site que acho este site estremamente pesado, por que pelo menos eu nunca encontrei um site que carregasse 1,4 Mb, acho isso um absurdo comparado com sites que passei um dia inteiro navegando e comparando.O máximo encontrado foi 600Kb. Bem, mas isto não vem ao assunto.

Ao ver o apresentava fiquei curioso como um site submarino que concerteza é um dos maiores sites de vendas no Brasil, carrega uma página tão rápida e como é o seu processo de balanceamento nos servidores.

Então decide instalar o Halberd e analisar as informações que iria me retornar.

Bom, o procedimento de instalação foi até rápido comparado a uns problemas entre meu note e a cadeira,devido ao horário de 2:00 hrs da matina.

Para o meu ambiente de testes utilizei o seguinte:

1. Debian lenny - Virtualizada

2. 512 de Memória

Baixei os pacotes de requisito do Halberd que é o Python.

O problema relatado anteriormente foi devido a versão que instalei que foi a 2.4, e quando em seguida realizava a instalação do Halberd e executa me retornava o seguinte erro:

ImportError: No module named hashlib

Então com um pouco de pesquisa verifiquei a correção estava na versão do Python 2.5.

aptitude install python2.5

Beleza, após a atualização do python realizei a instalação do Halberd que realizei o download deste link:

http://halberd.superadditive.com/dist/halberd-0.2.4.tar.gz

Descompactei:

tar –xvf halberd-0.2.4.tar.gz

Agora instalei:

python setup.py install

Vai lhe retornar acredito que algo parecido com o seguinte:

testedebian:~/halberd-0.2.4# python setup.py install

running install

running build

running build_py

running build_scripts

creating build/scripts-2.5

copying and adjusting scripts/halberd -> build/scripts-2.5

changing mode of build/scripts-2.5/halberd from 644 to 755

running install_lib

creating /usr/lib/python2.5/site-packages/Halberd

copying build/lib/Halberd/crew.py -> /usr/lib/python2.5/site-packages/Halberd

copying build/lib/Halberd/clientlib.py -> /usr/lib/python2.5/site-packages/Halberd

copying build/lib/Halberd/reportlib.py -> /usr/lib/python2.5/site-packages/Halberd

copying build/lib/Halberd/conflib.py -> /usr/lib/python2.5/site-packages/Halberd

copying build/lib/Halberd/shell.py -> /usr/lib/python2.5/site-packages/Halberd

copying build/lib/Halberd/logger.py -> /usr/lib/python2.5/site-packages/Halberd

creating /usr/lib/python2.5/site-packages/Halberd/clues

copying build/lib/Halberd/clues/file.py -> /usr/lib/python2.5/site-packages/Halberd/clues

copying build/lib/Halberd/clues/analysis.py -> /usr/lib/python2.5/site-packages/Halberd/clues

copying build/lib/Halberd/clues/Clue.py -> /usr/lib/python2.5/site-packages/Halberd/clues

copying build/lib/Halberd/clues/__init__.py -> /usr/lib/python2.5/site-packages/Halberd/clues

copying build/lib/Halberd/version.py -> /usr/lib/python2.5/site-packages/Halberd

copying build/lib/Halberd/ScanTask.py -> /usr/lib/python2.5/site-packages/Halberd

copying build/lib/Halberd/__init__.py -> /usr/lib/python2.5/site-packages/Halberd

copying build/lib/Halberd/util.py -> /usr/lib/python2.5/site-packages/Halberd

byte-compiling /usr/lib/python2.5/site-packages/Halberd/crew.py to crew.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/clientlib.py to clientlib.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/reportlib.py to reportlib.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/conflib.py to conflib.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/shell.py to shell.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/logger.py to logger.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/clues/file.py to file.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/clues/analysis.py to analysis.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/clues/Clue.py to Clue.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/clues/__init__.py to __init__.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/version.py to version.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/ScanTask.py to ScanTask.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/__init__.py to __init__.pyc

byte-compiling /usr/lib/python2.5/site-packages/Halberd/util.py to util.pyc

running install_scripts

copying build/scripts-2.5/halberd -> /usr/bin

changing mode of /usr/bin/halberd to 755

running install_data

running install_egg_info

Writing /usr/lib/python2.5/site-packages/halberd-0.2.4.egg-info

Após este retorno pode executar o commando abaixo:

Halberd http://www.submarino.com.br –d ( O “ d “ é para debug )









Podem encontrar mais informações das opções de comando no próprio site da Halberd.


Caso tenha algum erro de escrita me desculpem pois agora são 02:55 e vou ter que esta no trabalho as 8:00.


Dúvidas podem postar!

Vlw

10 setembro 2010

Virtualizando controlador de domínio

Dica bastante interessanta de como configurar um controlador de domínio utilizando Hyper-V.
Neste tutorial seguem dicas de como migrar uma máquina vísica para virtual e melhores práticas para configuração de um Active Directory utilizando Hyper-V.



Segue link para download.

Utilização de Hardware no Hyper-V

  • Processador
Primeiro de tudo para virtualização necessida de um processador 64bits,podendo ser AMD-V ou INTEL-VT, ambos com suas respectivas tecnologias de virtualização.

  • Memória
Para que muitos pensam, não é so sair colocando memória no servidor que o Hyper-V vai reconhecer toda a memória disponibilizada.
Para windows 2008 enterprise e datacenter o limite é de 1 Tera e no máximo de 64GB por máquian virtual.
para o windows 2008 Standart suporta até 32 GB e 31 GB para a máquina virtual, na minha opinião virtualizar neste caso será para utilizar o Live Migration ou copiar o disco VHD da VM e colocar em outro servidor,mas sobre cópias de VM vou falar mais na frente.

  • Armazenamento
Existe uma variedade de tipos de armazenamentos que podem ser utilizados por Hyper-v:SATA,eSATA,PATA,SAS,SCSI,USB,FIREWARE,iSCSI,FIBRE CHANNEL E SAS.

Existem outros assuntos sobre placa de rede e as opções de configuração de vlan que é de extrema importância o entendimento sobre este assunto.
Deixando este link sobre redes virtuais para melhor entendimento sobre o assunto
O próximo post será somente sobre armazenamento!Muito interessante!

09 setembro 2010

Mundo da Virtualização Hyper-V

A algum tempo venho estudando sobre virtualização,me dedicando a testes e aprofundando sobre o assunto, as vezes me falta mais hardware para realizar testes mais detalhados,mas estou conseguindo me virar para realizar meus estudos.

Vou postar algumas informações que utilizei para estudo e o ambiente de teste que configurei para realizar o live migration. Mas antes vou postar documentações que são de grande importância para um bom entendimento sobre virtualização.

A seguir tem a imagem da linha de raciocínio para implementar o live migration.





Explicando o desenho representa a seguinte :
Dois servidores, ambos rodando com Hyper-V,podendo ser Standart,Enterprise ou DataCenter nas versões 64 bits. Basta realizar uma pesquisa para entender a diferença de licenciamento.
Os servidores estão compartilhando uma única base de dados,neste caso utilizei um pendrive para simular o storage,que a partir de agora será chamado de storage, e assim simular o LiveMigration em um ambiente de produção.
Foi utilizado um switch 3com com portas Giga,pois precisei utilizar iSCSI para a comunicação com o storage.Para comunicação iSCSI necessita de uma rede Giga. Fui saber depois de muito apanhar!
Para a rede ethernet representa a comunicação da rede interna.

Vou encerrando por aqui a minha linha de raciocínio, a seguir vou postando sobre documentos que estudei até chegar no debug de uma máquina virtual.