Chef notes
CHEF NOTES
run cookbook locally: chef-client --local-mode recipes/default.rb
genrate cookbook: chef generate cookbook cookbooks/apache
add a node in chef: knife bootstrap 192.168.2.153 -N node-chef.myhypervisor.ca --ssh-user root
show node details: knife node show -l node-chef.myhypervisor.ca
find all attribute names ohai
search all nodes knife search 'platform:centos' knife search 'platform:centos' -a ipaddress knife search role 'role:apache' -a run_list knife search ":" -a recipes
add recipes to node: knife node run_list add fqdn.server.com 'recipe[test]'
add another recipe from the cookbook knife node run_list add fqdn.server.com 'recipe[test::test2]'
change recipe order (before) knife node run_list add fqdn.server.com -b 'recipe[test::test2]'
or after knife node run_list add fqdn.server.com -a 'recipe[test::test2]'
remove all knife node run_list remove fqdn.server.com 'recipe[test],recipe[test::test2]'
add knife node run_list add fqdn.server.com 'recipe[test],recipe[test::test2]'
upload changes knife cookbook upload recipe_name
create role knife role create web
edit role knife role edit web
add a role to a node knife node run_list set fqdn.domain.com "role[web]"
execute chef client from workstation knife ssh "role:web" "chef-client" -x root -P passwd
supermarket
- list: knife cookbook site list
- search: knife cookbook site search mysql
- show: knife cookbook site show mysql
- download: knife cookbook site download mysql
- install: knife cookbook site install mysql
testing
- docker_plugin: chef exec gem install kitchen-docker
- edit yaml: .kitchen.yml
- setup env: kitchen converge
- check test env: kitchen list
- verify: kitchen verify
check syntax ruby -c default.rb foodcritic default.rb
Install chef server (after RPM): chef-server-ctl reconfigure chef-server-ctl user-create dave dave g livegrenier@gmail.com 'password' --filename daveuser-rsa chef-server-ctl org-create DaveChef 'Daves Chef Server' --association dave chef-server-ctl org-create davechef 'Daves Chef Server' --association dave -filename davechef-validator.pem
Install web: chef-server-ctl chef-manage chef-server-ctl install chef-manage chef-server-ctl reconfigure