Servidor VPS com OpenVZ

openvz-logo-150px_new_4Esta última semana foi muito intensa. Novos clientes surgiram com uma demanda incomum: escalabilidade para sites de conteúdo.

Os clientes são portais de notícias regionais da Paraíba e o seu volume de acessos quadruplicou nos últimos anos, provocando instabilidade e lentidão nos acessos. A fórmula básica de instalar um WordPress em um servidor com configuração mais generosa já não resolvia o problema. Chega um momento em que não adianta ter RAM demais e cores extras se eles não forem utilizados 100%.

Estruturas monolíticas tem capacidade limitada de responder a muitas requisições, mesmo que a maquina seja poderosa. É uma questão de enfileiramento e é para isso que os serviços de VPS, Proxy reverso e balanceamento de carga entram em cena: forçar o uso máximo do hardware e permitir escalabilidade.

Tecnologias utilizadas

Neste cenário usamos as seguintes tecnologias:

  • OpenVZ para servidor VPS;
  • HA Proxy para proxy e balanceamento de carga
  • Nginx + PHP5-fpm como servidor HTTP
  • Mount bind para compartilhamento de arquivos

Descrição do fluxo

As requisições chegam na porta 80 (HTTP) e são atendidas pelo HA Proxy que verifica se a página está em seu cache ou não. Se estiver ele fornece o conteúdo sem requisitar nada dos servidores internos. Isso faz dele uma super ferramenta que reduz drasticamente o consumo de recursos computacionais. Se a página não estiver em cache ele faz a solicitação para um dos servidores internos. Mas essa solicitação é feita de forma inteligente e balanceada para não sobrecarregar apenas um.

Internamente há varias maquinas virtuais ou VPS’s que foram criadas com o servidor OpenVZ. Estas maquinas tem configurações similares e isolam várias instalações do WordPress e outras do MySQL. Neste cenário são 8 máquinas virtuais que respondem às requisições, sendo 6 com WordPress e duas com Mysql.

As VPS’s tem a mesma configuração e os mesmos softwares instalados: Nginx+PHP5-Fpm, além de todas as dependências para que o WordPress funcione.

O conteúdo a ser mostrado, ou seja, o próprio WordPress está gravado na maquina hospedeira e é compartilhado via a montagem linkada para cada uma das VPS’s, usando-se a opção bind do comando mount. O OpenVZ tem uma forma própria de fazer isso e que está bem documentada no wiki do projeto. Dessa forma, uma alteração qualquer de configuração ou adição de um plugin, por exemplo, ganha efeito imediato para todas as VPS’s. Importante lembrar que todas elas usam o mesmo servidor MySQL que está instalado em uma outra VPS’s.

O resultado final é estonteante. Onde antes o servidor não era capaz de atender as solicitações agora ela sobra e está pronta para atender mais que o triplo de requisições.

O layout é como descreve a figura abaixo apesar de termos usado o “layer 7”.

Tutorial para começar

Observações:

  • A distribuição escolhida foi Debian;
  • Não usamos o glusterfs por problemas de performance.

Portais

Links

Agradecimentos

Quero agradecer imensamente os amigos João Gabriel e Rodolfo Pilas pela ajuda, inspiração e especialmente aquelo olho clínico para apontar as vírgulas e espaços fora do lugar.

Saudações Livres!

Publicado em Artigos, Nerd

UltraGNU

Fiz uma série twitters e achei que seria legal deixá-los registrados aqui também. A hashtag é #ripsl


 

  • @jesulino Então serei reto: o movimento software livre morreu por covardia e cooptação de seus lideres.
  • @jesulino 99% dos “ativistas” de software livre usam Gmail, Skype, Netflix, Ubuntu e agora poderão usar Windows 10 🙂
Publicado em Artigos

FLISOL 2016 #semUbuntu

Este é o segundo ano da campanha. E deveremos persistir até que haja uma reação contundente dos voluntários heróis que fazem do FLISOL o maior evento de Software Livre do mundo. Ano passado muitas cidades aderiram ao #semUbuntu e foi histórico, mas temos que melhor ainda mais.

Não há como sermos mais explícitos: por favor organizadores e voluntários do FLISOL, não instalem Ubuntu.
O Festival Latino-americano de Instalação de Software Livre (FLISOL), é um evento realizado desde 2005 e que acontece simultaneamente em várias cidades da América Latina com intuito de difundir o software livre por meio da instalação de sistemas operacionais e aplicativos livres. Porém nas últimas edições, a maioria dos voluntários passou a instalar o Ubuntu nos notebooks e computadores dos visitantes, com a melhor das intenções.

O problema é que Ubuntu não é software livre faz muito tempo! Seja pela quantidade de código não livre embutido nele, seja pela sua postura eminentemente comercial, seja pelo seu absoluto desrespeito pelos princípios éticos e filosóficos do movimento do software livre.
Em nossa humilde opinião, os voluntários do FLISOL acham que estão fazendo o bem, porém estão confundindo modelo de desenvolvimento de código fonte aberto (definido pela Open Source Initiative) com o movimento filosófico do software livre (definido pela Free Software Foundation), estão difundindo mais software não livre que qualquer outra coisa.

Porque a implicância com o Ubuntu?

O projeto Ubuntu distribui vários dados funcionais não livres (não somente software não livre), além de distribuírem vários dados não funcionais não redistribuíveis (que não podem ser nem compartilhados, nem vendidos). Além disso, Ubuntu foi a única distribuição GNU/Linux que instalou, a partir de outubro de 2012, software malicioso para coletar dados de seus usuários, sem dizer nada a ninguém. Isso é antiético, imoral e vai de encontro a todos os princípios do Software Livre. Só isso deveria bastar, mas a Canonical deixou claro em sua defesa sobre o spyware que instalou secretamente, que ações desse tipo são normais no mundo corporativo e que não se arrependia. E ainda tem mais: criticou diretamente a Free Software Foudation (FSF) e o Richard Stallman por terem exposto o problema ao público “da forma como fizeram”.

Então se unirmos os dois problemas – software não livre + comportamento contrário ao movimento filosófico do software livre – qual é o motivo que leva o Ubuntu a ser a distribuição GNU/Linux mais instalada em todas as edições do FLISOL? Facilidade, praticidade, compatibilidade? Se sua resposta for sim para qualquer uma dessas, lembre-se: esses são argumentos do modelo de desenvolvimento de código fonte aberto e não do movimento filosófico do software livre. O objetivo primário é defender as quatro liberdades essenciais da sociedade para com os dados funcionais.

Instalar outras distribuições pode?

Não deveria poder, afinal de contas a maioria das distribuições usa kernel Linux e este já está tão infectado de softwares não livres, que mal dá para categorizá-lo como um software livre. Assim distribuições como Fedora, Mandriva, openSUSE, Debian e outras mais populares, estão fadadas à mesma condição do Ubuntu. A diferença está em não usar a pior delas, para a comunidade do software livre.

Retroceder para voltar ao rumo certo

Recusar formalmente a instalação do Ubuntu seria um recado claro de que a comunidade do software livre não aceita mais os abusos cometidos. Que não aceita mais a inclusão constante e crescente de software não livre em suas distribuições GNU/Linux mais queridas. Pensem no efeito que um posicionamento como esse teria e os benefícios que alcançaríamos como movimento social e político, depois de toda a experiência adquirida nos últimos anos?

Dar dois passos para trás, para poder dar um à frente, na direção certa. Sejamos francos, até quando vamos continuar nos submetendo aos abusos de poder dado por nós mesmos aos fabricantes de notebooks, aos desenvolvedores do kernel Linux e a empresas como a Canonical. Todos eles parecem cada vez mais interessados em seus próprios negócios do que em fomentar e disseminar a cultura do software livre.

E qual é a sugestão?

Apontar um problema e não oferecer nenhuma solução não seria correto, então seguem algumas sugestões práticas para o FLISOL:

a) Escolha uma distribuição de sistemas livres recomendada pela FSF https://www.gnu.org/distros/free-distros.html ;
b) Sugerimos a distribuição Trisquel GNU/Linux (http://trisquel.info), exatamente porque se baseia no Ubuntu LTS e isso facilitaria encontrar documentação e opções on-line;
c) Substitua o hardware incompatível, em especial as placas wifi. Como? Aqui conto como fiz: http://www.anahuac.eu/sua-liberdade-por-r-2000/
d) Se não for possível substituir a placa wifi permitam uma exceção de driver não livre usando o ndiswrapper para permitir o funcionamento das mesmas;
e) Automatizem via script a instalação dos pacotes não livres mais comuns: codecs multimídia privativos, Java, e outros, mas não executem vocês mesmos. Deixem que as pessoas façam isso elas mesmas.

Elas são livres para escolher usar ou não software não livre, mas o FLISOL e os ativistas do movimento filosófico do software livre não.

Consequências diretas

O primeiro incômodo é ter que explicar as pessoas que cheguem ao FLISOL procurando instalações de Ubuntu, porque não se instalará essa distribuição. A consequência imediata é criar a percepção geral de que o Ubuntu não é tão bom assim. Discutir a ética e a filosofia do software livre em um evento de software livre é super legal!

O segundo incômodo é colocar um instalador com um driver privativo, de forma evidente, sem margem a interpretações. O que os olhos não veem, o coração não sente. E isso se aplica aos blobs privativos que vem no kernel Linux, que são instalados sem que se perceba. É isso o que gera aquela “felicidade” de ter o hardware funcionando, mesmo que seja em detrimento de todo o nosso discurso de ativismo em prol da liberdade tecnológica.

O terceiro é trazer de volta a discussão sobre os problemas que os drivers privativos e dados funcionais não livres causam: dependência tecnológica imposta pelo poder econômico dos donos/proprietários. Neste momento é o inconveniente do DRM e amanhã será o boot restrito. Até quando vamos permitir passivamente sermos limitados, constrangidos e relegados? O dia em que não será possível instalar mais um sistema operacional livre está chegando. Vamos reagir?

Apelo

Este á um apelo para que o FLISOL seja a força propulsora para que o movimento filosófico do Software Livre volte a ser valorizado como deve, para que seus princípios éticos e filosóficos sejam priorizados, para que o modelo que da mais valor à placa de wifi funcionando do que a liberdade tecnológica seja derrotado.

Não estamos buscando coerência plena neste momento. Trata-se do primeiro passo do resto de nossas vidas. Todos juntos podemos fazer do Mundo um lugar melhor. Usar, difundir, desenvolver e se manter firme ao lados dos preceitos éticos e filosóficos do Software Livre é um dos caminhos para se alcançar esse objetivo.

Saudações Livres!

Alessandro Moura
Anahuac de Paula Gil

Publicado em Artigos

Unimecafy: um conto GNU

Ricardo era uma criança especial. Ele percebia as coisas de uma forma diferente. Nem todos entendiam o que ele dizia e ele, quase nunca, entendia o que os demais queriam dizer. – Como é isso de “querer dizer”? Por que não dizem as coisas claramente? Perguntava Ricardo para sua mamãe. Com a paciência que só as mães tem, ela sempre lhe dizia o mesmo – As pessoas tem medo de serem rejeitadas e por isso insinuam mais do que falam, pois falar as coisas exatamente como são, termina por magoar os demais. Ricardo sempre fingia entender, mas essa explicação nunca foi satisfatória. Ricardo, então, continuava a ser direto e objetivo na sua honestidade, afastando as pessoas, mas acreditando cada vez mais que a verdade e o bem sempre prevaleceriam.

Como toda criança Ricardo adorava brincar com seus carrinhos e bonecos, vídeo games e bolas, bicicleta e jogar pião. Mas seu favorito sempre foi o Lego. A possibilidade de libertar a imaginação ligando os bloquinhos de plástico era indescritível! – Olha mamãe, juntei todas as peças que tenho e fiz esse carro com 22 rodas, 19 portas, um elevador, todos os bonecos, cavalinhos e até uma árvore no topo! Ricardo era o orgulho de seus pais.

Ricardo cresceu um pouco e seu pai lhe presenteou com um outro tipo de brinquedo de montar: Unimecafy. Este tinha parafusos, porcas, roldanas, cubos, conectores, rodas e placas perfuradas para que tudo isso pudesse ser interconectado. – Que irado! Isso sim é algo que pode levar minha imaginação a um nível muito mais avançado! Pensou Ricardo. E assim, sem perder, tempo, ele começou a bolar as coisas mais estranhas e fantásticas com as novas peças. O que mantinha tudo junto eram os parafusos e para apertá-los ele precisava usar a chave de fenda que veio no brinquedo. Esta não era uma chave de fenda comum, pois ela tinha ranhuras específicas que se encaixavam nos parafusos, que também não eram comuns.

Ir à escola, fazer os deveres, estudar, comer, o Lego e todo o resto perderam a graça. Havia uma vontade enorme de usar o Unimecafy para criar ferramentas que ajudassem em seu dia a dia. Ricardo fez um passador de páginas do seu livro, uma escala para aumentar o tamanho de um desenho, um apoio giratório para seu Globo e muitas outras coisas superúteis. – Serei um inventor! E poderei ajudar as pessoas com minhas fantásticas invenções. Confessou Ricardo ao seu pai.

Um dia Ricardo descobriu que seu amigo Alan também tinha ganho um Unimecafy e o convidou para brincarem juntos. Quando Alan chegou com sua caixa de peças, ambos pensaram a mesma coisa e falaram juntos: – vamos juntar todas as nossas peças! Vamos construir a maior de todas as invenções! Então limparam um canto do quarto, despejaram todas as peças juntas e colocaram a mão na massa. Em poucos minutos eles já estavam imaginando o tamanho, forma e peças que precisariam para fazer o fantástico escorregador de bolas de gude. E começaram a separar as partes que precisariam. Ricardo fez a base bem sólida, enquanto Alan fez os trilhos por onde as bolas iam passar. Agora só faltava juntar e fixar bem as partes.

Ele tentaram juntá-las colocando uma sobre a outra mas as duas partes não encaixavam. Ele perceberam que a furação das placas perfuradas eram diferentes! E não era só isso os parafusos e as chaves de fenda eram diferentes também. – Ricardo, acho que não vamos conseguir encaixar isso. Disse Alan. – Mas temos que conseguir, afinal o seu é um Unimecafy e o meu também é! Não pode ser! Então com suas caixas de Unimecafy, Ricardo e Alan foram falar com o pai de Ricardo para tentar entender o que havia de errado.

– Papai, Alan e eu estamos tentando juntar estas partes de nossos Unimecafys e não estamos conseguindo. Você pode nos ajudar? Disse Ricardo
– Deixe-me dar uma olhada nessas partes. Hummm, interessante, isso é um escorrego de bolas de gude, certo? Comentou o Pai.
– Sim, estivemos trabalhando nisso por algumas horas, essa parte na sua mão esquerda é a base e na direita o trilho. Interveio Alan.
– Olha, deve ter algo errado, veja os buracos das placas da base feita com meu Unimecafy não encaixam com os buracos das placas dos trilhos feitos com o Unimecafy de Alan! Explicou Ricardo
– Isso não faz muito sentido. Comentou o Pai. – Mas eu tenho uma ideia. Vamos ler o manual de instruções.

Na capa do manual, em letras enormes estava escrito: “O Unimecafy foi desenhado para lhe prover uma experiência única. Use sua imaginação para criar tudo o que quiser!” – Isso é promissor, pensou o Pai. Então ele continuou lendo e procurando por uma explicação. Passou pela sessão de descrição das partes, do funcionamento do brinquedo, do uso correto da chave de fenda, dos cuidados com o manuseio, da garantia e da assistência técnica autorizada. Na última página, ele encontrou o que buscava.

“O Unimecafy foi feito para ser utilizado apenas pela pessoa que pagou pelo direito de usá-lo. Não é permitido o compartilhamento de suas partes e componentes com mais ninguém. A única forma de garantir o uso exclusivo pelo seu portador, é fazer peças diferentes que não possam ser encaixadas com outros Unimecafys.”

– Entendeu Ricardo? Esse é um brinquedo para brincar sozinho. Disse o Pai depois de ler.
– Mas pai! Assim não é divertido, não é legal! Reclamou Ricardo
– Verdade tio! Assim não dá! Apoiou Alan
– É assim que as coisas são meu filho. Assunto encerrado. Agora me deixem ler o jornal. Finalizou o Pai.

Alan ficou tão desapontado que arrumou seu Unimecafy e foi para casa. Ricardo não conseguia aceitar a sentença de que as coisas são assim. Ele sabia que tinha que fazer algo para conseguir encaixar as peças dos Unimecafys. Como seria possível aceitar que todas as crianças do mundo não podiam brincar juntas com seus Unimecafys? Porque seu brinquedo favorito não era compatível com os demais? Como juntar todas as invenções maravilhosas de todas as crianças se os Unimecafys não poderiam ser interligados? Pensando nisso, o sono foi maior, e ele adormeceu.

Em seus sonhos havia um grande espírito que lhe dizia: – Você pode encontrar uma solução! Este é o seu destino! Você poderá libertar todos os Unimecafys! – Como? Como? Ecoava a sua voz no sonho. E o espírito lhe disse o que ele já tinha percebido – Crie um Unimecafy livre, onde todas as peças se encaixem, e ensine as outras crianças a como fazer isso elas mesmas!

Na manhã seguinte Ricardo sabia exatamente o que tinha que fazer: criar seu próprio conjunto de peças, placas, parafusos e chaves de fenda. E não só isso, mas contar para todas as demais crianças como fazer o mesmo. As crianças e ele mesmo poderiam, finalmente, juntar suas imaginações, juntar as suas ideias e juntar suas peças!

Durante muito tempo ele desenhou cada uma das peças, cada um dos parafusos, cada uma das placas perfuradas e escreveu um manual de como fazê-las. Então mostrou todo o conjunto ao seu amigo Alan e juntos eles melhoraram ainda mais os desenhos e o manual. E agora juntos decidiram mostrar tudo para todos os amigos da escola, do bairro, do clube, da igreja e de todos os lugares onde iam. E cada dia, mais e mais crianças da sua cidade conseguiam fazer, criar e usar seus próprios Unimecafys livres, que se encaixavam uns com os outros. Em seguida, crianças de todo o país souberam da novidade e não demorou muito para que o Mundo inteiro soubesse e quisesse fazer parte disso. Então todas as sugestões foram levadas em conta e as peças foram ficando cada vez melhores e mais divertidas.

Quando um canal de TV decidiu fazer uma entrevista com Ricardo para entender o porquê, ele disse: – porque eu sou uma criança e sei que nenhuma criança pode ter sua imaginação presa por muito tempo. Todos temos o direito de compartilhar nossas ideias e dividir nossas conquistas.

Ele havia sido objetivo e honesto como sempre e o entrevistador não entendeu muito bem. Mas os fabricantes do Unimecafy entenderam e perceberam que Ricardo estava completamente certo. Desse dia em diante eles só fabricaram peças que podiam se conectar umas as outras e inclusive às peças, parafusos e chaves de fenda feitas por Ricardo, Alan e todos os demais colaboradores do mundo inteiro.

 

Publicado em Artigos