Referência de Livros de Receitas Comuns
Os clusters do Azure CycleCloud são criados e configurados usando uma combinação de uma imagem de computador base, o CycleCloud Cluster Init e a estrutura de automação de infraestrutura do Chef.
Apenas usuários muito avançados do CycleCloud precisarão entender como criar livros de receitas do Chef. No entanto, muitos usuários se beneficiarão de um conhecimento básico de como o CycleCloud usa o Chef. Em particular, os usuários devem entender o conceito de um run_list
, recipe
e Chef attributes
.
Conceitos básicos do Chef
Cada node
um em um cluster CycleCloud é inicializado seguindo um Chef run_list
. O run_list
é um conjunto ordenado de recursos ou recipes
a ser aplicado para inicializar o nó. Os recipes
próprios implementam as operações de sistema de baixo nível necessárias para aplicar o recurso. Cookbooks
são coleções que recipes
compõem um recurso. Cookbooks
e recipes
são parametrizados pelo Chef attributes
para permitir mais personalização e configuração do recurso.
O CycleCloud é fornecido com um conjunto de modelos de cluster predefinidos que podem ser usados para provisionar um conjunto de tipos de cluster suficientes para muitos usuários. E a personalização adicional é facilmente realizada usando Cluster-Init. Portanto, a maioria dos usuários nunca precisará modificar run_lists
ou criar seus próprios recipes
e cookbooks
.
No entanto, os clusters CycleCloud são provisionados usando um conjunto de Livros de Receitas Comuns disponíveis para todos os clusters do CycleCloud e esses cookbooks
têm um conjunto do attributes
qual os usuários podem desejar personalizar. Alguns dos mais usados attributes
são documentados abaixo.
Observação
Prefira os recursos do Modelo de Cluster à modificação direta dos atributos chef.
Atributos comuns do Cookbook estão sujeitos a alterações. As configurações de atributo geralmente são substituídas, pois os recursos que eles controlam são disponibilizados como recursos mais gerais/avançados do próprio CycleCloud. Se uma personalização estiver disponível no Modelo de Cluster e por meio de um atributo Chef, sempre prefira o método Modelo de Cluster, pois ele é a solução mais geral.
Para obter mais informações sobre a própria estrutura do Opscode Chef, consulte o site da Opscode.
Usando atributos chef
Chef attributes
configure a operação de run_list
um nó individual ou matriz de nós. Eles devem ser definidos na sub-seção do [[[configuration]]]
nó. Por exemplo, para definir a Senha de Administrador do CycleServer para um nó configurado para executar o CycleServer:
[[node cycle_server]]
[[[configuration]]]
run_list = role[monitor], recipe[cyclecloud::searchable], recipe[cfirst], \
recipe[cuser::admins], recipe[cshared::client], recipe[cycle_server::4-2-x], \
recipe[cluster_init], recipe[ccallback::start], recipe[ccallback::stop]
cycle_server.admin.pass=P\@ssw0rd
Thunderball
A Computação de Ciclo fornece um recurso chef chamado thunderball
para simplificar o download de objetos de serviços de nuvem para nós. O thunderball lida automaticamente com a repetição do download com falha e dá suporte a várias configurações. Por padrão, o thunderball baixará um arquivo do repositório de pacotes do CycleCloud e o gravará $JETPACK_HOME/system/chef/cache/thunderballs
em . Um exemplo usando a configuração padrão:
thunderball "condor" do
url "cycle/condor-8.2.9.tgz"
end
A tabela a seguir lista todos os atributos do recurso thunderball.
Atributo | Descrição |
---|---|
soma de verificação | Soma de verificação SHA256 para o artefato a ser baixado. |
cliente | Cliente de linha de comando a ser usado. Assume o padrão de :pogo . |
config | Configuração de thunderball personalizada a ser usada. |
dest_file | O caminho do arquivo para o qual baixar. storedir é ignorado quando dest_file está em uso. |
storedir | Os arquivos de localização são baixados. Assume o padrão de thunderball.storedir . |
url | O local do arquivo a ser baixado (completo ou parcial). |
Seções de configuração personalizadas podem ser usadas para baixar objetos de outro repositório.
Atributo | Descrição |
---|---|
base | URL base. |
cliente | Ferramenta de linha de comando para interagir com o provedor. |
endpoint | Ponto de extremidade de URL a ser usado. |
filename | Arquivo de configuração a ser usado. |
password | Senha do Azure. |
proxy_host | Host a ser usado como proxy. |
proxy_port | Porta a ser usada para proxy. |
usuário | Usuário do sistema local que usará essa configuração. O arquivo de configuração é colocado no diretório inicial desse usuário (filename é ignorado quando isso é usado) |
Nome de Usuário | Access_key/nome de usuário do Azure. |