Chef - Configurazione client

Per fare in modo che il nodo Chef comunichi con il server Chef, è necessario configurare il client Chef sul nodo.

Chef cliente

Questo è uno dei componenti chiave del nodo Chef, che recupera i libri di cucina dal server Chef e li esegue sul nodo. È anche noto come Provvisorio dello Chef.

Qui useremo Vagrant per gestire la VM. Vagrant può anche essere configurato con il provisioner come script Shell, Chef e Puppet per portare la VM nello stato desiderato. Nel nostro caso, useremo Vagrant per gestire le VM utilizzando VirtualBox e il client Chef come provisioner.

Step 1 - Scarica e installa VirtualBox da https://www.virtualbox.org/wiki/downlod

Step 2 - Scarica e installa Vagrant su http://downloads.vagrantup.com

Step 3 - Installa il plug-in Vagrant Omnibus per consentire a Vagrant di installare il client Chef sulla VM.

$ vagrant plugin install vagrant-omnibus

Creazione e avvio di Virtual

Step 1- Possiamo scaricare la scatola Vagrant richiesta dal repository vagrant Opscode. Scarica la casella opscode-ubuntu-12.04 dal seguente URLhttps://opscode-vmbento.s3.amazonaws.com/vagrant/opscode_ubuntu-12.04_provisionerless.box

Step 2 - Una volta che hai il file Vagrant, scarica il percorso necessario per modificare il file Vagrant.

[email protected]:~/chef-repo $ subl Vagrantfile 
Vagrant.configure("2") do |config| 
   config.vm.box = "opscode-ubuntu-12.04" 
   config.vm.box_url = https://opscode-vm-bento.s3.amazonaws.com/ 
   vagrant/opscode_ubuntu-12.04_provisionerless.box 
   config.omnibus.chef_version = :latest  
   config.vm.provision :chef_client do |chef| 
      chef.provisioning_path = "/etc/chef" 
      chef.chef_server_url = "https://api.opscode.com/ 
      organizations/<YOUR_ORG>" 
      chef.validation_key_path = "/.chef/<YOUR_ORG>-validator.pem"
      chef.validation_client_name = "<YOUR_ORG>-validator" 
      chef.node_name = "server" 
   end 
end

Nel programma precedente, è necessario aggiornare il nome <YOUR_ORG> con il nome dell'organizzazione corretto o richiesto.

Step 3- Il prossimo passo dopo la configurazione è, per ottenere la scatola vagabonda. Per questo, devi spostarti nella posizione in cui si trova la casella Vagrant ed eseguire il seguente comando.

$ vagrant up

Step 4 - Una volta che la macchina è in funzione, puoi accedere alla macchina utilizzando il seguente comando.

$ vagrant ssh

Nel comando precedente, vagrantfile è scritto in un Ruby Domain Specific Language (DSL) per configurare la macchina virtuale vagrant.

Nel file vagrant, abbiamo l'oggetto config. Vagrant utilizzerà questo oggetto di configurazione per configurare la VM.

Vagrant.configure("2") do |config| 
……. 
End

All'interno del blocco di configurazione, dirai a vagrant quale immagine VM usare, per avviare il nodo.

config.vm.box = "opscode-ubuntu-12.04" 
config.vm.box_url = https://opscode-vm-bento.s3.amazonaws.com/ 
   vagrant/opscode_ubuntu-12.04_provisionerless.box

Nel passaggio successivo, dirai a Vagrant di scaricare il plug-in omnibus.

config.omnibus.chef_version = :latest

Dopo aver selezionato la casella VM da avviare, configurare come eseguire il provisioning della casella utilizzando Chef.

config.vm.provision :chef_client do |chef| 
….. 
End

All'interno di questo, è necessario impostare le istruzioni su come collegare il nodo virtuale al server Chef. Devi dire a Vagrant dove devi memorizzare tutte le cose di Chef sul nodo.

chef.provisioning_path = "/etc/chef"