Como eu começo a usar o Chef?

15

A documentação do chef é muito ruim. E o Google não está me ajudando.

Alguém pode me indicar um artigo decente ou algo que me ajude a começar?

Meus problemas específicos são:

  • Como faço para que um cliente leia minha configuração? chef-solo parece ser o melhor começo (não quero executar um servidor OpenID ou Merb)
  • Como eu configuro o Apache para servir o Django? Eu já sei como fazer isso através da configuração regular do servidor, mas acho que um exemplo de receita do Chef seria um bom começo;
Brad Wright
fonte
2
"Chef da manhã, como posso ajudar?" :)
Chopper3
1
Por um momento, pensei que finalmente conseguiria responder "Hello World Suflê". aqui no SF: en.wikipedia.org/wiki/Chef_%28programming_language%29
Janne Pikkarainen

Respostas:

19

Atualizações

  • A versão do Chef é 0.10.8
  • O Chef Wiki passou por muitas revisões desde que isso foi solicitado originalmente.
  • A plataforma Opscode agora é chamada Opscode Hosted Chef
  • O Chef será distribuído em breve como uma instalação de pilha completa , além dos pacotes RubyGems e Debian.
  • O Vagrant é uma ótima maneira de começar a usar o Chef.

A resposta original segue

Primeiro, até o momento em que este artigo foi escrito, a versão mais recente do Chef é 0.9.8 . O Opscode distribui o Chef como RubyGems e também possui pacotes atualizados do Debian / Ubuntu . Os RPMs para a versão mais recente são liberados por um membro da comunidade .

Segundo, nas versões 0.8.x + e superior, o OpenID não é mais necessário para autenticação . O Merb é necessário para o servidor porque é um aplicativo da web Merb.

Opscode hospeda um Chef Server como um serviço chamado The Opscode Platform. Você pode se inscrever e começar . É gratuito durante o "recurso beta" e, quando sai do beta, é gratuito por até 5 nós . Se você se inscrever, há um guia de primeiros passos no site de ajuda do Opscode.

Visão geral dos primeiros passos:

  • Obtenha o Chef instalado . A maneira mais fácil de fazer isso é executar um sistema Ubuntu 10.04, em uma VM ou no EC2, etc. O primeiro passo é instalar o Ruby e instalar o próprio Chef.
  • Configure o ambiente do usuário local para se comunicar com a Opscode Platform ou com seu próprio Chef Server. Você pode configurar seu próprio servidor usando a configuração de inicialização do Opscode Chef para RubyGems .
  • Configure um Repositório de Chefes para armazenar seus livros de receitas e outras configurações de infraestrutura.
  • Faça o download dos livros de receitas que você deseja usar no diretório 'livros de receitas' no repositório.
  • Faça o upload de livros de receitas para o Chef Server, adicione as receitas à lista de execução de um nó e observe como ele é configurado.

Quanto ao Django e Apache2:

Você precisará escrever um que implemente o código do aplicativo Django. O livro de receitas do Apache2 contém uma definição para ajudar a configurar um host virtual para aplicativos da web .

Você pode ajudar a melhorar a documentação enviando um ticket no componente "Documentação" do projeto Chef . Se você tiver problemas com o Open Source Chef Server, os melhores lugares para pedir ajuda são a Mailing List do Chef ou o canal IRC #chef no FreeNode. Se você se inscrever na Plataforma, terá acesso ao site de ajuda para enviar solicitações de suporte.

Divulgação: Eu trabalho para o Opscode.

jtimberman
fonte
O pacote para o Ubuntu 9.10 está quebrado no momento, o que é decepcionante com a linha oficial do opscode, que parece ser "Por que você não está executando o lucid?" :( lists.opscode.com/sympa/arc/chef/2010-07/msg00221.html
Philip Reynolds
2
A linha oficial do Opscode é que não suportamos todos os pacotes necessários para instalar o Chef Server no Karmic devido a restrições de recursos. Lucid funciona bem e é considerado suportado, Karmic não. Podemos apoiar Karmic no futuro.
precisa
Se você quiser experimentar o chef com VMs locais, posso recomendar o Vagrant . Ele gerencia VMs do VirtualBox e se integra ao chef.
Letargia
Também não se esqueça de conferir nossa campanha #learnchef learnchef.com
sethvargo
6

Tarde, mas: http://ericholscher.com/blog/2010/nov/8/building-django-app-server-chef/

Quando comecei a olhar para o Chef, achei incrivelmente complexo e sem documentação fundamental. Essa será minha experiência em entender o Chef durante a configuração de um único servidor. Essa estratégia pode ser usada em vários servidores, com alguns ajustes.

Steve Eley
fonte