Chef - Client Setup

Damit der Chef-Knoten mit dem Chef-Server kommunizieren kann, müssen Sie den Chef-Client auf dem Knoten einrichten.

Chef Client

Dies ist eine der Schlüsselkomponenten des Chef-Knotens, der die Kochbücher vom Chef-Server abruft und auf dem Knoten ausführt. Es ist auch als Chef Provisioner bekannt.

Hier verwenden wir Vagrant, um die VM zu verwalten. Vagrant kann auch mit dem Provisioner wie Shell-Skript, Chef und Puppet konfiguriert werden, um die VM in den gewünschten Zustand zu versetzen. In unserem Fall verwenden wir Vagrant, um VMs mithilfe von VirtualBox und Chef Client als Provisioner zu verwalten.

Step 1 - Laden Sie VirtualBox von herunter und installieren Sie es https://www.virtualbox.org/wiki/downlod

Step 2 - Laden Sie Vagrant herunter und installieren Sie es unter http://downloads.vagrantup.com

Step 3 - Installieren Sie das Vagrant Omnibus-Plugin, damit Vagrant den Chef-Client auf der VM installieren kann.

$ vagrant plugin install vagrant-omnibus

Virtuelles Erstellen und Booten

Step 1- Wir können die erforderliche Vagrant-Box aus dem Opscode Vagrant Repo herunterladen. Laden Sie die Box opscode-ubuntu-12.04 von der folgenden URL herunterhttps://opscode-vmbento.s3.amazonaws.com/vagrant/opscode_ubuntu-12.04_provisionerless.box

Step 2 - Wenn Sie die Vagrant-Datei haben, laden Sie den Pfad herunter, den Sie zum Bearbeiten der Vagrant-Datei benötigen.

vipin@laptop:~/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

Im obigen Programm müssen Sie den Namen <YOUR_ORG> mit dem richtigen oder erforderlichen Organisationsnamen aktualisieren.

Step 3- Der nächste Schritt nach der Konfiguration ist das Aufstellen der Vagabundbox. Dazu müssen Sie an den Ort wechseln, an dem sich die Vagrant-Box befindet, und den folgenden Befehl ausführen.

$ vagrant up

Step 4 - Sobald der Computer hochgefahren ist, können Sie sich mit dem folgenden Befehl am Computer anmelden.

$ vagrant ssh

Im obigen Befehl wird vagrantfile in einer Ruby Domain Specific Language (DSL) zum Konfigurieren der virtuellen Vagrant-Maschine geschrieben.

In der Vagrant-Datei haben wir das Konfigurationsobjekt. Vagrant verwendet dieses Konfigurationsobjekt, um die VM zu konfigurieren.

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

Innerhalb des Konfigurationsblocks teilen Sie vagrant mit, welches VM-Image verwendet werden soll, um den Knoten zu starten.

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

Im nächsten Schritt werden Sie Vagrant anweisen, das Omnibus-Plugin herunterzuladen.

config.omnibus.chef_version = :latest

Konfigurieren Sie nach Auswahl der zu startenden VM-Box, wie die Box mit Chef bereitgestellt werden soll.

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

Darin müssen Sie Anweisungen zum Anschließen des virtuellen Knotens an den Chef-Server einrichten. Sie müssen Vagrant mitteilen, wo Sie alle Chef-Inhalte auf dem Knoten speichern müssen.

chef.provisioning_path = "/etc/chef"