Monthly Archivedezembro 2009



Dicas 16 dez 2009 08:57 am

Usando kernel vanilla como domU no Xen

O Xen é um dos paravirtualizadores mais famosos do mercado e seu uso está cada vez mais difundido a cada dia que se passa.

Configurar uma instalação básica do Xen nas principais distribuções não é muito difícil e no Gentoo não é diferente. Em geral o processo envolve instalar um kernel customizado no dom0 (a “máquina real”), e instalar os utilitários do Xen também no dom0. Se a CPU em questão tiver suporte a virtualização (flag  svm em arquitetura AMD, ou vmx em arquitetura Intel) é possível utilizar para os domU’s (as “máquinas virtuais”) qualquer versão de Kernel ou de Sistema Operacinal, não necessitando que o mesmo tenha sido previamente preparado (patch) para utilização sob o Xen.

Caso a CPU não tenha suporte a virtualização, é necessário utilizar um Sistema Operacinal ou Kernel devidamente adaptado, o que não costuma ser uma tarefa muito complicada visto que as principais distribuições já orefecem pacotes prontos. No Gentoo apenas é necessário compilar uma versão do mesmo kernel utilizado no dom0 porém com os devidos recursos que dão suporte a inicialização e execução do domU.

Até ai, tudo corre muito bem, sem muitos problemas, no entanto, quando é necessário utilizar uma versão específica de kernel para o domU é que o problema começa, principalmente se for necessário utillizar uma das versões mais recentes do kernel, visto que os patches de suporte ao Xen não costumam ser disponibilizados com a mesma frequência que novas versões do kernel.

Felizmente desde a versão 2.6.23 o kernel vanilla (padrão) do Linux conta com suporte nativo a virtualização, possibilitando que o mesmo seja iniciado como um domU sob o Xen. Para tanto é necessário habilitar no kernel as seguintes opções:

Continue Reading »

Dicas 13 dez 2009 08:18 pm

IIS + Plesk + PHP e o mistério por trás do erro “502 – Bad Gateway”

Um certo cliente me pediu que desenvolvesse um pequeno script em PHP que fosse capaz de ler um documento do MS-Excel e inserir seus registros numa base mysql.
Usei uma classe bem conhecida para ler arquivos XLS e testei em meu servidor, um Gentoo Linux rodando Apache com PHP 5.
Ao executar o primeiro teste no servidor do cliente, um Windows 2003 Server, o script morreu ao atingir o tempo limite de exeução do PHP.
Modifiquei o script inserindo logo em seu início uma chamada para remover o limite de timeout: set_time_limit(0).
Tentei executar novamente o script e obtive meu primeiro contato com o erro:

“502 Bad Gateway
Web server received an invalid response while acting as a gateway or proxy server.”
Procurando no google encontrei um fórum que mencionava justamente um problema com o trio IIS + Plesk + PHP e a sugestão era de habilitar a extensão ISAPI na configuração do servidor WEB.
Por sorte o cliente tinha os dados de adminstração do servidor então segui os seguintes passos:
1 – Logar na interface Web do Plesk
2 – Entrar na configuração de domínios e escolher o domínio desejado
3 – Entrar em Setup
4 – Habilitar a opção “
5 – Salvar a configuração
Feito isso testei o script e tudo funcionou normalmente sem mais erros misteriosos do IIS.