Stand by...

A minha experiência com Citrix XenServer

Esta semana ando a fazer testes com softwares de virtualização baseado em XEN. Especialmente com dois que me merecem mais atenção: XenServer da Citrix e o Oracle VM. Em tempos cheguei a fazer uma instalação de ambos num único servidor, mas agora tive acesso a duas máquinas que me permitiram aprofundar melhor as potencialidades de ambos. Hoje acabei os testes com o primeiro software e até ao final da semana espero contar mais acerca do segundo.
O XenServer está disponível numa único ISO (actualmente na versão 5.5.0) e que se instala muito facilmente ao fim de poucos minutos. Para os hosts usei dois computadores Dell OptiPlex 780, processador Intel Dual Core 2.60Ghz e 4Gb de RAM.
Minutos depois, os meus dois hosts estavam up and runnning e à espera da instalação das VM’s, que pode ser feito localmente ou através de uma ligação SSH à máquina, tudo usando o CLI.
Para quem preferir uma gestão mais gráfica, temos que recorrer a um pc com Windows, no meu caso optei por usar uma VM com o Windows XP SP2 e instalar o XenCenter. Embora existam outras alternativas para a consola de gestão, até ao momento não tive tempo para testar nenhuma delas, que diga-se que à primeira vista ficam muito há quem da solução “nativa” da Citrix.
Instalada a framework .Net 2.0, eis que depois o XenCenter fica disponível para utilização no pc e pronto para se ligar aos hosts, usando as credenciais que anteriormente se definiu na fase de instalação.
Com a ajuda de um quarto pc a correr Ubuntu 9.10, instalei o nfs-kernel-server para exportar um directório com vários ISO’s de instalação de SO e que usei para criar o primeiro repositório por NFS. Também temos a opção de criar uma storage por CIFS ou ainda copiar as ISO para a storage local do host, mas esta última apenas com a ajuda do CLI. Em qualquer dos casos, os medias de instalação ficam imediatamente disponíveis, sendo possível ter os três tipos de storage activos ao mesmo tempo. Primeiro comecei por criar uma VM com o Windows XP sem qualquer problema, mas quando fui para a segunda com Debian, a máquina simplesmente falha ao fazer o boot pela ISO, aparentemente porque depois de montar o ficheiro, o path para o bootstrap aponta para um caminho que não está totalmente correcto. Isto aconteceu-me com ISO’s diferentes e só consegui por uma vez arrancar a VM. Bug?
A seguir criei uma pool com os hosts, onde se pode adicionar os diversos storages ou atribuir apenas a um dado host e com a configuração de um outro repositório NFS para a criação dos discos virtuais p. ex., consegue-se migrar manualmente VM’s de um host para outro, sem qualquer downtime ou perda de performance. Muito bom mesmo.
Finalmente a cereja em cima do bolo, é ter o Citrix Essentials instalado para se poder gozar de uma solução HA com balanceamento de carga. E chegados aqui começa-se a perceber qual é o modelo de negócio da Citrix, já que a licença mais barata para este software custa a módica quantia de $2,750 dólares na versão Enterprise.
Ainda assim sempre se pode instalar a versão trial por 30 dias e ver o funcionamento da coisa, ou não. É que o Citrix Essentials só funciona se tivermos um repositório partilhado entre os hosts que funcione em cima de iSCSI ou FC e não é o meu caso :-/ Embora até haja, primeiro ainda tenho que conseguir por a mão em dois servidores que tenham acesso à SAN.
E a experiência acaba por aqui, pelo menos para já. Em resumo, devo dizer que o interface do XenCenter está muito bem conseguido e é muito fácil de utilizar. A instalação do Essentials deu um bocado mais dor de cabeça e foi necessário instalar antes o SQL Server Client Tools, a framework do Microsoft .Net 2.5, um update do Windows Installer 3.1 e ainda o SQL Server 2005 Express…. e num ápice ficamos presos a um fornecedor que nada tem a ver com a escolha inicial do produto. Na volta mais valia ter partido logo para o Hyper-V…. :P

Drivers Linux e a UE

Quando me dizem (sysadmin windows) que o Linux não suporta muitos drivers, claro que fico chateado!
Eu só conheço duas formas de escrever drivers: por iniciativa do fabricante ou então um programador “freelancer” quando as especificações do hardware são abertas e conhecidas.
O Linux suporta qualquer driver, o problema está quando o driver (aka fabricante) não suporta o Linux, ora porque não vê cota de mercado suficientemente interessante para se dar ao trabalho de escrever um driver, ora porque as especificações não são disponibilizadas, inviabilizando quem tem conhecimentos ou interesse em pagar a alguém parao desenvolver (registe-se mais uma oportunidade de negócio no SL).
Agora que está muito em voga a União Europeia meter o dedo em tudo o que é concentração de mercado, porque não obrigar os fabricantes que queiram vender hardware informático na Europa, a disponibilizarem sempre drivers para, pelo menos dois Sistemas Operativos diferentes?
Vale a pena pensar nisto…..

Acreditar

fernando nobre

Nas últimas eleições legislativas tinha reflectido para a necessidade do surgimento de uma nova forma de fazer política em Portugal, da vontade íntima de aparecer cidadãos com provas dadas em diferentes áreas da nossa sociedade (que os temos), dispostos a enveredarem pela política e levarem-me a acreditar que é possível neste país ser-se político de um modo diferente do que se tem assistido quase sempre desde o 25 de Abril. Por momentos quase que acreditei que sim, mas infelizmente se verificou que mais uma vez o hemiciclo se constituiu invariavelmente pelos mesmos, com maior ou menor concentração de lugares, segundo a vontade expressa pelo voto popular.
Mas eis que ressurge em mim novamente essa esperança de ver mudados os rostos de quem ocupa e mais importante do que isso, como são desempenhados os cargos de soberania, como é exemplo o de Presidente da República, com a apresentação da candidatura de Fernando Nobre.
“Portugal precisa de um Presidente que venha verdadeiramente da sociedade civil, que seja independente, que nada precise da política e que conheça bem o país e o mundo.” Esta foi a frase que em definito me fez já acreditar nesta candidatura e que tenho vontade de apoiar desde o primeiro minuto.
Infelizmente receio em grande medida que esta iniciativa tenha um desfecho idêntico ao protagonizado no passado por Maria de Lurdes Pintassilgo, que tentou incutir uma mudança significativa na nossa sociedade, ela que era despojada de qualquer demagogia e populismo, mas que o povo português não soube ou não quis aceitar por medo ao desconhecido, do nunca experimentado, da alteração do empobrecimento mas “pacato” dia-a-dia em que acordamos de manhã, ainda hoje!
Porque quero acreditar nesta mudança, acreditar em Portugal, eu acredito em Fernando Nobre!

Este homem é um Senhor… e não é porque se chama Jesus

jasus

É porque conseguiu por o Benfica a jogar à Benfica, como eu já não via há anos. Não fosse outra equipa de encarnado a tentar o inédito, e o campeonato já estava no papo este ano… ou não :P

Algoritmia e Programação em JAVA

A licenciatura de Engenharia Informática no ISEP tem uma disciplina no 1º semestre do 1º ano chamada APROG (Algoritmia e Programação). A linguagem de programação utilizada é o JAVA na sua versão 6 (em 2004 altura em que fiz a primeira inscrição aprendia-se linguagem C ) e o IDE mais utilizado nas aulas é o NetBeans. Inicialmente ainda comecei com o Xcode, mas depois de ter instalado a versão com o SDK do iPhone, a opção para a criação de aplicações do tipo JAVA simplesmente desapareceu. Ainda que continuasse a ser possível programar em JAVA no Xcode, acabei por me render ao NetBeans.

Hoje foi dia de exame à cadeira e aproveito o facto para adicionar uma nova categoria “licenciatura” no blog, para disponibilizar algum contéudo que possa ser útil para alguém.

Um dos exercícios pretendidos no exame, era a criação de um método em JAVA que recebe uma matriz quadrada de números reais e retorna dois elementos da matriz: o maior elemento acima da diagonal secundária e o maior elemento abaixo da diagonal secundária. A minha implementação é esta:

private static float[] maiores(float[][] matriz) {
float[] v = new float[2];
float maioracima = matriz[0][0];
int x, y;
x = matriz.length - 1;
y = matriz[0].length - 1;

float maiorabaixo = matriz[x][y];

int k = matriz[0].length - 2;

for (int i = 0; i < matriz.length - 1; i++) {
for (int j = k; j >= 0; j--) {
if (matriz[i][j] > maioracima) {
maioracima = matriz[i][j];
}
}
k--;
}

int j = 1;
k = 1;

for (int i = matriz.length - 1; i >= 1; i--) {
for (j = k; j < matriz[0].length; j++) {
if (matriz[i][j] > maiorabaixo) {
maiorabaixo = matriz[i][j];
}
}
k++;
}

v[0] = maioracima;
v[1] = maiorabaixo;
return v;
}

Finalmente era pedido no método principal, que fosse mostrado o maior elemento acima da diagonal secundária e o maior elemento abaixo da diagonal secundária de uma dada matriz:

public static void main(String[] args) {
float matriz[][] = {{1, 1, 8, 0, 9},
{2, 2, 7, 1, 2},
{3, 3, 5, 2, 7},
{4, 4, 1, 3, 6},
{5, 4, 0, 5, 1}};

float[] mdiag = new float[2];

mdiag = maiores(matriz);

System.out.printf("O maior elemento acima da diagonal secundária é: " + mdiag[0]);
System.out.println();
System.out.printf("O maior elemento abaixo da diagonal secundária é: " + mdiag[1]);
System.out.println();
}

Rise Against – Savior

Porque não só de música lamechas vive o homem :P
Já encomendei o album Appeal to Reason dos Rise Against na Play.com

Dizem que é uma espécie de cadeirão

A cadeira de Análise Matemática tem cerca de 500 alunos inscritos no ISEP e é uma espécie de cadeirão no primeiro ano do curso de Engenharia Informática.
Acabo de ter acesso à nota do último teste que me garante que fiz a cadeira por frequência sem necessitar de ir agora a exame. Esta já está feita!!!

Só vou mesmo ter saudades da professora Sandra Aires, uma pessoa incrível sempre disponível para ajudar todos os alunos mesmo noutras cadeiras do Departamento de Matemática, muito simpática e sempre esforçada para dar o seu melhor sem nunca descansar até que os alunos fiquem a perceber realmente da poda. Uma pessoa rara nos dias de hoje…. a ela o meu MUITO OBRIGADO!

2009 review by numbers

O meu ano 2009 visto através dos meus investimentos:

- Comprei um novo MacBook de 13″, ainda antes de a Poweron ter fechado portas :-/
- Paguei mais de 100 euros por um almoço inesquecível no D.O.C.
- Dois bilhetes para o próximo concerto dos U2 em Coimbra na RedZone ficaram-me por mais de 500 euros.
- Já mais perto do final do ano comprei um iPod Touch e somando todas as músicas que paguei no iTunes vai para mais de 100 euros.

No início deste ano de 2010 preve-se uma compra que irá ultrapassar largamento todos os meus investimentos do ano passado numa só vez…. novidades para breve.

Venha agora mais um ano de crise igual ao que terminou ;-)

Between the click of the light and the start of a dream

Se há música que está associada a uma grande mudança na minha vida é sem dúvida esta “Between the click of the light and the start of a dream” dos Arcade Fire.
Foram noites e noites seguidas a vibrar e adormecer com este som brutal.
Obrigado a ti O. por ter conhecido esta música e por todo o significado que ela teve e ainda tem para mim.