Entrevista com Karanbir Singh, do projeto CentOS

Entrevista com Karanbir Singh, do projeto CentOS

Interview with Karanbir Singh, CentOS project

Autor original: Ladislav Bodnar

Publicado originalmente no: distrowatch.com

Tradução: Roberto Bechtlufft

centos
logo-dw

O CentOS, uma distribuição Linux criada pela compilação de pacotes de código fonte do Red Hat Enterprise Linux (RHEL), é o clone mais popular do RHEL disponível hoje. Embora por vezes seja visto como um sistema operacional para servidores de missão crítica, onde a estabilidade e a confiabilidade são muito mais importantes do que tecnologia de ponta, o CentOS pode ser usado em outros cenários, como em servidores especializados ou estações de trabalho de desenvolvimento. Hoje vamos conversar com Karanbir Singh (foto abaixo), um desenvolvedor do CentOS, sobre as razões por trás do sucesso contínuo do projeto, e tentamos compará-lo a outras distribuições e sistemas operacionais corporativos semelhantes. Karanbir também descreve o processo de compilação do CentOS a partir do código fonte que a Red Hat disponibiliza a cada nova versão.

* * * * *

hombre

DW: Karanbir, muito obrigado por separar um tempo para nós. Vamos começar pelo de sempre. Por favor, apresente-se. Quantos anos você tem? Onde mora? O que faz para ganhar a vida?

KS: Olá, meu nome é Karanbir Singh. Tenho 35 anos, adoro cerveja belga, gosto de viajar e curto um bom bife. Nascido e criado na Índia, eu me mudei para o Reino Unido em maio de 2001. Moro na região sudeste de Londres, e trabalho como líder de infraestrutura para uma grande empresa de serviços online.

DW: Como e quando você se envolveu com o CentOS?

KS: Quando a Red Hat mudou do modelo do Red Hat Linux para o do Red Hat Enterprise Linux, o lugar onde eu trabalhava na época ficou num dilema. Nossa equipe interna tinha muita experiência com a plataforma “Red Hat”, ou seja, nós tínhamos plena capacidade de dar suporte às nossas próprias necessidades. A plataforma RHEL, por outro lado, era e ainda é voltada principalmente para quem precisa de suporte comercial e técnico, e nenhum dos dois figurava muito alto na nossa lista de prioridades. As opções eram nos adaptarmos a uma alternativa como o Debian ou o SUSE, ou apostar nossas fichas no que viria a ser o Fedora, uma distro que muda rapidamente.

Só que nenhuma dessas opções parecia natural. Todas elas exigiriam uma boa dose de trabalho, e não estávamos dispostos a causar uma mudança drástica em nosso esquema de trabalho. Para a nossa sorte, foi nesse momento que encontrei a distro White Box Enterprise Linux (WBEL), e aí vimos a terceira opção: continuar usando a plataforma Red Hat, dando suporte próprio às nossas necessidades. Depois de alguns testes, começamos a migrar a base de produção para o WBEL, e daí começamos a recompilar os pacotes internamente.

Poucos meses depois, conversando com Johnny Hughes Jr, percebi que o WBEL tinha foco muito específico numa necessidade interna de seu único desenvolvedor. Então bolamos um plano grandioso de começar nosso próprio projeto, com um conjunto de objetivos mais aberto, mais definido e com o qual as pessoas se identificassem com mais facilidade. A força por trás dessa ideia não estava nos objetivos de implementação de cada um. O que nós queríamos era garantir que teríamos uma plataforma estável e bem gerenciada, somada ao conhecimento técnico que as pessoas que já usavam essa plataforma poderiam trazer para um meio comum. Mas foi Donavan Nelson quem nos mostrou o CentOS, que já tinha lançado o CentOS 3. Depois de alguma conversa, Johnny e eu decidimos que, em vez de começar nosso próprio projeto, nós adotaríamos o CentOS 4, e que seríamos a equipe do “CentOS 4”.

Hoje, quase seis anos depois, ainda estamos envolvidos com o projeto e fazendo boa parte do trabalho na equipe de núcleo do CentOS. É claro que a vida pessoal tem prioridade, e todos nós precisamos dar uma descansada do “trabalho” no CentOS de vez em quando.

DW: Às vezes parece que você é o principal relações públicas do projeto, anunciando a maioria dos lançamentos do CentOS e oferecendo informações a terceiros. Essa é a sua função oficial, ou é sua própria iniciativa tornar o CentOS mais visível para o mundo?

KS: Acho que é um pouco das duas coisas, é algo oficial e também é algo que faço por vontade própria. Parte dessa visibilidade está meio implícita. Tem muita gente contribuindo à sua maneira, e muitas dessas pessoas (eu incluso) investem horas e mais horas por semana no CentOS e nos trabalhos associados ao projeto. O que acontece é que as coisas com as quais estou trabalhando no momento têm muito mais visibilidade pública, então muita gente acaba ouvindo falar de mim com frequência.

Nós fazemos de tudo para tornar o CentOS mais popular, e gostamos de promover a plataforma. Eu me sinto bem quando alguém diz que as pequenas coisas que eu faço têm um impacto. Eu também gostaria de poder participar de mais eventos de código aberto e de eventos corporativos para contar às pessoas sobre o CentOS, mas o trabalho do dia a dia sempre atrapalha! Como tenho que ganhar a vida, só posso participar de dois ou três eventos por ano.

DW: Já houve muitas tentativas de recompilar o código fonte do Red Hat Enterprise Linux (RHEL) e criar uma “nova” distribuição. Até agora, o CentOS é disparado a mais bem sucedida. A que você atribui esse sucesso?

KS: Há muitas coisas que contribuem. Para começar, a questão da confiança. Por muito tempo, nós mostramos à base de usuários que ela podia contar com uma plataforma consistente, confiável e estável. Isso se deve em grande parte ao nosso esforço em nos mantermos fiéis ao que a Red Hat oferece. Como eu já mencionei, os objetivos do CentOS não estão na implementação, mas sim na plataforma. Para os usuários, isso significa que eles podem confiar no produto oferecido pelo CentOS, sabendo que os aplicativos da distro contam com o benefício de terem passado pelo processo de testes da Red Hat.

Outro fator que contribui para nossa popularidade é a recomendação de parceiros. Trilhamos um longo e tortuoso caminho, mas sempre encorajamos novos segmentos da indústria a crescerem conosco. Por exemplo, no início de 2005, com o CentOS-4/x86_64, conseguimos atingir a indústria de VoIP com grande eficiência. Tentamos garantir que os líderes de opinião da indústria tomassem ciência do CentOS, que conhecessem nossos objetivos, que tivessem um caminho para oferecer suas opiniões diretamente e que soubessem que essa opinião faria a diferença. O resultado final foi que a maioria saiu recomendando o CentOS por aí. Ouvi rumores recentes de que o CentOS talvez seja a maior base instalada do mundo para provedores de VoIP! A indústria de hospedagem é outra área na qual tivemos um sucesso parecido. Esses dois segmentos de mercado são áreas na quais eu já trabalhei. E não vamos nos esquecer de que muita gente vem tendo sucesso parecido com o CentOS em suas próprias áreas de interesse.

Um terceiro fator que ajudou a disseminar a disponibilidade do CentOS: nós sempre tentamos garantir que haveria muitos mirrors, que eles teriam muita banda e que estariam espalhados pelo mundo. Hoje, há mais de 100 máquinas gerenciadas pela equipe de infraestrutura do CentOS, e mais de 500 mirrors externos. Praticamente toda grande rede de mirrors de código aberto no mundo oferece o CentOS. Deu muito trabalho para chegarmos aí. Por muitas vezes, um de nós tinha que ir chatear repetidamente os administradores para conseguir fazer com que eles distribuíssem nosso conteúdo.

Outra questão muito importante, talvez o aspecto mais subestimado do CentOS, é que ele é uma plataforma fantástica para a construção de tecnologias emergentes ou de aplicativos que mudem com muita frequência. Sei que muita gente vai ficar surpresa com isso. A impressão geral que se tem é a de que o CentOS é uma plataforma estável, com uma base de aplicativos de ABI altamente confiável e que não diverge de sua funcionalidade central durante o ciclo de uma versão. E isso é verdade. Mas por causa disso tudo, o CentOS também é uma plataforma fantástica para que você altere alguns aplicativos específicos que sejam importantes para você, confiando no fato de que os outros programas da distro não mudarão drasticamente. Poder fazer isso e ainda contar com atualizações de segurança e correções para a plataforma é algo de um valor imenso para os desenvolvedores.

Se você quiser compilar e hospedar um aplicativo em Ruby on Rails, por exemplo, o CentOS é uma ótima pedida. Com ele você pode usar o mecanismo que quiser para compilar, testar e implementar seu aplicativo, e ao mesmo tempo garantir ao usuário que o ambiente e a plataforma sejam seguros, confiáveis e estáveis. É isso que contribui em grande parte para o fato de quase todas as tecnologias emergentes de hoje terem ao menos um pezinho no CentOS. A computação em nuvem, a troca de mensagens, o clustering de alto desempenho, a virtualização, as appliances, o VoIP, a hospedagem em nível de commodity etc. são todas áreas nas quais o CentOS está envolvido.

E ainda temos essa enorme comunidade construída em torno da distro, um grupo extremamente capaz e bem instruído de pessoas que trabalham para fazer coisas diferentes usando a mesma plataforma. Quando você tem problemas, costuma haver um bom número de pessoas prontas para ajudar nas listas, IRCs e fóruns, ou até mesmo diretamente via email. Mas tem uma pegadinha aí: o suporte da comunidade exige que você tenha algum nível de conhecimento e que tenha interesse em aprender para poder utilizar esse conjunto de recursos. Se quando as coisas dão errado você precisa ligar para um número de telefone para conversar com um atendente que possa atender esse telefonema e que saiba do que está falando, então é melhor você procurar a Red Hat!

É claro que muitas dessas questões não são específicas do CentOS, e se aplicariam a qualquer compilação dos fontes da Red Hat, mas acho que nossa dedicação faz com que todas essas questões se apliquem a nós.

DW: Você faz ideia de quantas pessoas usam o CentOS? Por exemplo, o Fedora conta o número de endereços IP únicos que se conectam a seus servidores de atualizações. O CentOS tem algum critério parecido? Como o CentOS é oferecido de graça, seria razoável acreditar que os servidores com o CentOS hoje são mais numerosos do que os com o RHEL? Ou estou viajando muito?

KS: Temos duas questões aqui. A primeira diz respeito aos números. Nem imagino quantas pessoas usam o CentOS, só sei que são muitas! Com certeza estamos nos seis dígitos. Sete? Talvez. A contagem dos IPs funciona para o Fedora por causa da demografia e das funções de instalação que a distro tem como alvo. Com a base de usuários do CentOS, as coisas não são tão simples. Por exemplo, muitas organizações e universidades operam seus próprios mirrors locais, e essas instalações do CentOS nunca vão entrar em contato com os repositórios do YUM que nós temos. Além disso, sabemos que há grandes instalações na China e no Japão, e dependemos completamente de hosts de mirrors externos para servir a essas áreas.

A segunda pergunta é uma comparação numérica entre o CentOS e o RHEL. Na minha opinião, não vale a pena comparar. Não estamos competindo nem tentando atrapalhar os negócios da Red Hat. Sei que existem casos em que pessoas que poderiam estar usando o RHEL estão usando o CentOS, e em que pessoas que estariam melhor usando o CentOS usam o RHEL. No grande esquema das coisas, o objetivo do RHEL e o que nós estamos fazendo é algo bem diferente. Se um usuário precisa de suporte técnico e corporativo, além de um contrato de serviço e de uma garantia de que poderá obter suporte a qualquer momento, ele realmente deveria procurar a Red Hat. Por outro lado, se houver conhecimento técnico interno suficiente para dar suporte às suas próprias necessidades e houver a flexibilidade para se depender do suporte comunitário, o CentOS é uma opção real.

Logo, há áreas nas quais as pessoas só precisam de uma plataforma estável para hospedar um aplicativo ou função, com um nível mínimo de envolvimento na administração, como na computação de alto desempenho e em appliances. Mais uma vez, o CentOS cai bem nesses casos, já que permitiria a você alterar tudo o que quisesse sem interferir na disponibilidade do suporte. Também não é incomum ouvir falar sobre configurações híbridas do CentOS e do RHEL nas quais as pessoas usam o CentOS para funções de desenvolvimento e o RHEL para hospedar sua função de produção. Por isso, eu acho que comparar os números do RHEL aos do CentOS não é importante. O que importa é que as pessoas podem escolher o que funciona melhor para elas, em uma plataforma com a qual estão familiarizadas.

DW: No ano passado, o CentOS foi muito falado porque três livros diferentes sobre ele foram publicados por grandes editoras. Você acha que isso pode impulsionar uma futura certificação no CentOS? Há planos para a oferta de treinamento no CentOS, algo que poderia atrair as empresas que fogem dos altos custos da certificação RHCE da Red Hat?

KS: Foi ótimo ver livros tratando especificamente sobre o CentOS nas prateleiras. E o melhor de tudo é que parte do conteúdo desses livros foi preparado por pessoas profundamente envolvidas com a comunidade. Quanto à certificação e ao treinamento, se houver um processo que possa ser posto em prática para garantir, nos limites da razão, o nível de competência de um “graduado”, não vejo motivos para não seguirmos esse caminho. Por outro lado, como a base do produto é muito parecida, acho que o maior valor de uma certificação no CentOS seria como um degrau para uma certificação da Red Hat. Com base no que eu vi nos últimos anos, a maioria das empresas que exige alguém com certificação RHCE espera que o candidato esteja trabalhando com o RHEL. É preciso ter isso em mente.

DW: O projeto CentOS se vangloria de ter um relacionamento excelente com a Red Hat. Você pode nos dar mais detalhes? Algumas pessoas talvez fiquem surpresas com esse bom relacionamento, já que o CentOS interfere no modelo de negócios da Red Hat, oferecendo o mesmo produto e um suporte a longo prazo sem cobrar.

KS: Como o público-alvo é muito diferente, os interesses do RHEL e do CentOS não se sobrepõem. Pense da seguinte maneira: O RHEL é um contrato de serviços e suporte que inclui uma distribuição Linux. O CentOS, por sua vez, é uma distribuição Linux que você pode baixar e instalar, e você vai ter que trabalhar duro pelo suporte. A comunidade do CentOS tem mecanismos de suporte muito bons e funcionais, como as listas de discussão, o IRC e os fóruns. Mas não espere que uma seguradora vá lhe oferecer indenização de responsabilidade industrial para isso. Da mesma forma, se você precisar do kernel mais recente por causa de alguma função específica, instalar esse kernel invalida seu contrato de suporte do RHEL.

A palavra “suporte” tem significados muito diferentes para o CentOS e para a Red Hat. Mas não se surpreenda se uma lista de discussão do CentOS solucionar seu problema mais rapidamente do que o suporte técnico da Red Hat 🙂

DW: No cenário do Linux corporativo, há duas grandes empresas: a Red Hat e a Novell. As duas oferecem o código fonte de seus produtos, mas só houve um trabalho de se criar algo a partir dos fontes da Red Hat. Por que você acha que não há uma edição “comunitária” do SUSE Linux Enterprise Server (SLES) da Novell?

KS: A grande diferença entre a Red Hat e a Novell é a atitude de cada uma com relação aos fontes. Ao contrário da Red Hat, a Novell não publica seu código fonte. Até pouco tempo, ela também não publicava um conjunto completo de ferramentas necessárias para que um SLES comunitário fosse possível. E até onde eu sei, parece que a Novell prefere trabalhar no openSUSE do que aceitar um trabalho de recompilação do SLES por parte da comunidade de código aberto. Some a isso o fato de que os fontes das atualizações do SLES não são disponibilizados publicamente. Admito que foi há um ano e meio que verifiquei essa situação toda, pode ser que as coisas tenham mudado.

E também tem a falta de interesse. Eu sei de pelo menos dois grupos de pessoas que cogitaram a hipótese de criar uma distro comunitária com base no SLES, mas que desistiram pela falta de interesse do público. A maioria das pessoas que quer usar a plataforma SUSE parece feliz com o openSUSE. Só o que posso imaginar é que isso prejudica a Novell de um modo geral, já que há o openSUSE tem muito pouca penetração nos setores corporativo e acadêmico.

DW: Partindo para o lado mais técnico, você poderia descrever o processo de lançamento do CentOS? Quando aparece uma versão nova do Red Hat, o que acontece? O processo de compilação das novas imagens ISO é bastante automatizado? Qual é a intensidade dos testes realizados antes que as imagens de DVD sejam carregadas para os servidores FTP e um anúncio siga para a mídia?

KS: Nosso processo é bastante automatizado, mas ainda depende da aprovação de pessoas. Seria ótimo chegar ao ponto de fazer tudo automaticamente, de ponta a ponta, mas ainda não chegamos lá! Espero que em breve possamos começar a cuidar disso, mas no momento esse não é o nosso objetivo.

Quando uma nova versão é anunciada pela Red Hat, nós baixamos todos os fontes aplicáveis. A primeira etapa é recompilar todo o código fonte a partir dos mesmos alvos usados pela Red Hat, e tentar ao máximo possível usar a mesma ordem de compilação. Depois que essa etapa é concluída, nós fazemos testes de atualização com esses pacotes. Por exemplo, na versão 5.5, fizemos muitos testes com atualizações realizadas a partir de várias versões 5.x e 4.x. Quando ficamos satisfeitos com os resultados, e temos uma certeza razoável de que nossos pacotes produzem o mesmo resultado que os da Red Hat, seguimos para a compilação da ISO. Essa parte fica com nossa equipe de controle de qualidade.

A equipe de controle de qualidade é pequena mas concentrada, e trabalha em um grupo particular. Com isso, podemos gerar muitas ISOs novas e corrigir problemas rapidamente. Durante o ciclo do 5.5, não era raro termos quatro conjuntos de ISOs sendo compilados no mesmo dia, e ainda assim podíamos contar com um nível relativamente bom de retorno do controle de qualidade. No momento, nosso trabalho de controle de qualidade se limita aos cenários de instalação, atualização e teste de repositórios. O que nós realmente adoraríamos fazer é expandir para que pudéssemos oferecer testes de funcionalidade dos aplicativos, só que não temos gente suficiente para isso. Se alguém estiver interessado em adotar alguns aplicativos e puder devotar um tempo a eles algumas vezes por ano, entre em contato com a gente.

Nosso objetivo é lançar uma versão nova até quatro semanas depois da Red Hat.

DW: O CentOS geralmente é visto com um sistema operacional sólido e estável, mas desatualizado, sendo mais apropriado para instalação em servidores, que podem trabalhar por anos sem muita manutenção. Ainda assim, a comunidade do CentOS está trabalhando a sério para oferecer pacotes de software extraoficiais e atualizados para o desktop. Isso acontece por causa da demanda dos usuários? O CentOS é atraente para algum tipo de usuário de desktop?

KS: Sim, o CentOS é uma ótima distro para desktops e estações de trabalho. Como eu já disse, ele é uma plataforma estável, e você pode adicionar e remover componentes do sistemas usando seus próprios pacotes compilados ou repositórios de terceiros. Tudo isso sem perder a segurança de ter uma base operacional que não vai entrar em colapso nem sofrer grandes alterações por um bom tempo. Isso transfere o ciclo de atualização imposto por distros que lançam novas versões mais rapidamente, como o Fedora e o Ubuntu, para o usuário, que pode escolher quando, como e o que atualizar. O CentOS 5 saiu há mais de três anos, mas eu ainda encontro usuários que estão muito felizes usando o CentOS 4 com as versões mais recentes do Firefox, do MPlayer e de outros programas. Além disso, é bom lembrar que a Red Hat faz muitos backports do kernel, então embora o número de versão do kernel principal não mude, um melhor suporte a hardware é uma constante.

Sei que os repositórios do CentOS estão meio espalhados, e que isso não é o ideal. Os usuários ainda precisam se esforçar para localizar os repositórios certos para eles, e talvez tenham que lidar com conflitos de pacotes e coisas do gênero. Criar um sistema melhor é uma alta prioridade para nós, e se alguém tiver ideias sobre o que poderíamos fazer nesse sentido (e como fazer), entre em contato conosco!

DW: Karanbir, muito obrigado por responder às nossas perguntas e mantenha o bom trabalho!

Créditos a Ladislav Bodnardistrowatch.com

Tradução por Roberto Bechtlufft <info at bechtranslations.com.br>

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X