Chef (software) - Chef (software)
| Desenvolvedor (s) | Chefe de cozinha | ||||
|---|---|---|---|---|---|
| lançamento inicial | Janeiro de 2009 | ||||
| Versão estável |
|
||||
| Repositório | github |
||||
| Escrito em |
Cliente : Ruby Server : Ruby , Erlang |
||||
| Sistema operacional | Linux , MS Windows , FreeBSD , macOS , IBM AIX , Solaris | ||||
| Modelo | Gerenciamento de configuração , administração do sistema , gerenciamento de rede , gerenciamento de nuvem , a entrega contínua , DevOps , Infraestrutura como Código | ||||
| Licença | Licença Apache 2.0 | ||||
| Local na rede Internet | www |
||||
Chef é uma empresa e o nome de uma ferramenta de gerenciamento de configuração escrita em Ruby e Erlang . Ele usa Ruby puro, linguagem de domínio específico (DSL) para escrever "receitas" de configuração do sistema. Chef é usado para agilizar a tarefa de configurar e manter os servidores de uma empresa e pode se integrar com plataformas baseadas em nuvem, como Amazon EC2 , Google Cloud Platform , Oracle Cloud , OpenStack , IBM Cloud , Microsoft Azure e Rackspace para provisionar e configurar automaticamente novas máquinas. Chef contém soluções para sistemas de pequena e grande escala, com recursos e preços para as respectivas gamas.
Recursos
O usuário escreve "receitas" que descrevem como o Chef gerencia aplicativos e utilitários de servidor (como Apache HTTP Server , MySQL ou Hadoop ) e como eles devem ser configurados. Essas receitas (que podem ser agrupadas como um "livro de receitas" para facilitar o gerenciamento) descrevem uma série de recursos que devem estar em um determinado estado: pacotes que devem ser instalados, serviços que devem ser executados ou arquivos que devem ser escritos. Esses vários recursos podem ser configurados para versões específicas de software para execução e podem garantir que o software seja instalado na ordem correta com base nas dependências. O Chef certifica-se de que cada recurso está configurado corretamente e corrige todos os recursos que não estão no estado desejado.
O Chef pode ser executado no modo cliente / servidor ou em uma configuração autônoma chamada "chef-solo". No modo cliente / servidor , o cliente Chef envia vários atributos sobre o nó para o servidor Chef. O servidor usa Elasticsearch para indexar esses atributos e fornece uma API para que os clientes consultem essas informações. As receitas do Chef podem consultar esses atributos e usar os dados resultantes para ajudar a configurar o nó.
Tradicionalmente, Chef era usado para gerenciar Linux, mas as versões posteriores também oferecem suporte ao Microsoft Windows .
É um dos principais sistemas de gerenciamento de configuração no Linux, junto com CFEngine , Ansible e Puppet . Mais do que uma ferramenta de gerenciamento de configuração, o Chef, junto com o Puppet e o Ansible, é uma das ferramentas de infraestrutura como código (IAC) mais notáveis do setor .
História
Chef foi criado por Adam Jacob como uma ferramenta para sua empresa de consultoria, cujo modelo de negócios era construir ferramentas de implantação / servidor ponta a ponta. Jacob mostrou Chef a Jesse Robbins , que viu seu potencial depois de executar operações na Amazon . Eles fundaram uma nova empresa com Barry Steinglass, Nathen Haneysmith e Joshua Timberman para transformar Chef em um produto.
O projeto foi originalmente chamado de "marionete", mas a palavra era muito longa e complicada para digitar; o formato de "receita" em que os módulos foram preparados fez com que o projeto fosse renomeado para "Chef".
Em fevereiro de 2013, a Opscode lançou a versão 11 do Chef. As mudanças neste lançamento incluíram uma reescrita completa do servidor API principal em Erlang .
Em 2 de abril de 2019, a empresa anunciou que todos os seus produtos agora são de código aberto sob a licença Apache 2.0.
Em 8 de setembro de 2020, a Progress anunciou a aquisição da Chef.
Suporte de plataforma
Chef é compatível com várias plataformas de acordo com uma matriz de plataformas compatível para produtos cliente e servidor. O suporte de plataforma principal para clientes inclui AIX , Amazon Linux , Debian , CentOS / RHEL , FreeBSD , macOS , Solaris , SUSE Linux , Microsoft Windows e Ubuntu . Plataformas de clientes adicionais incluem Arch Linux e Fedora . O Chef Server é compatível com RHEL / CentOS , Oracle Linux , SUSE Linux e Ubuntu .
Clientes
Chef é usado pelo Facebook , AWS OpsWorks , Prezi e BlackLine .
Veja também
- Comparação de software de gerenciamento de configuração de código aberto
- Infraestrutura como código (IaC)
- Infraestrutura como ferramentas de código
- Ansible (software)
- DevOps
- Conjunto de ferramentas DevOps
- Otter (software)
- Fantoche
- Salt (software)
- Juju