Learn to set up Chef on Ubuntu…
Chef is a configuration administration instrument primarily based on ruby. It’s used to automate the administration of configurations throughout all nodes within the cluster and keep consistency. There are three important elements of Chef.
- Chef server
- Workstation
- Nodes
All configurations are managed from workstations and later forwarded to the boss server. Chef server is the centralized storage of all infrastructure configurations. Knife is a workstation command-line utility used to work together with Chef Server. Nodes run boss purchasers that request configuration info from the boss server.
That is what a typical Chef structure appears like:
Now let’s go forward and arrange chef Server, Workstation and Node (Chef Shopper).
Atmosphere particulars
I’m utilizing 3 Ubuntu 18.04 programs. One will act because the chief server, and the following will probably be a workstation, and a 3rd system would be the node.
Chef server
- Hostname: chief geekflare
- IP deal with: 192.168.0.107
Workstation
- Hostname: workstation
- IP deal with: 192.168.0.108
Node
- Hostname: consumer node
- IP deal with: 192.168.0.109
Earlier than I begin the set up, I’ve to /and many others/hosts file of all programs in order that they will resolve one another. Edit the /and many others/hosts
file on all programs, as proven beneath.
geekflare@chef-bestnich:~$
127.0.0.1 localhost
127.0.1.1 geekflare
192.168.0.107 chef-geekflare
192.168.0.108 chef-workstation
192.168.0.109 client-node
I’ll run the command beneath on all three programs to replace them.
geekflare@chef-bestnich:~$ sudo apt replace
[sudo] password for bestnich:
Hit:1 http://safety.ubuntu.com/ubuntu cosmic-security InRelease
Get:2 https://obtain.docker.com/linux/ubuntu bionic InRelease [64.4 kB]
Hit:3 http://ppa.launchpad.web/ansible/ansible/ubuntu cosmic InRelease
Hit:4 http://us.archive.ubuntu.com/ubuntu cosmic InRelease
Get:5 https://obtain.docker.com/linux/ubuntu bionic/steady amd64 Packages [9,594 B]
Hit:6 http://us.archive.ubuntu.com/ubuntu cosmic-updates InRelease
Hit:7 http://us.archive.ubuntu.com/ubuntu cosmic-backports InRelease
Get:8 http://apt.puppetlabs.com bionic InRelease [85.3 kB]
Get:9 http://apt.puppetlabs.com bionic/puppet6 amd64 Packages [32.4 kB]
Fetched 192 kB in 2s (84.6 kB/s)
Studying package deal lists... Achieved
Constructing dependency tree
Studying state info... Achieved
233 packages may be upgraded. Run 'apt listing --upgradable' to see them.
Chef server set up
Chef Server is a part within the structure that connects workstations and nodes. When the configurations are edited/modified on a workstation, they’re pushed to the chief server, and all nodes pull these configuration adjustments from the chief server.
Now let’s run the command beneath to obtain the chef-server package deal.
geekflare@chef-bestnich:~$ wget https://packages.chef.io/recordsdata/steady/chef-server/13.0.17/ubuntu/18.04/chef-server-core_13.0.17-1_amd64.deb
--2019-10-23 04:04:35-- https://packages.chef.io/recordsdata/steady/chef-server/13.0.17/ubuntu/18.04/chef-server-core_13.0.17-1_amd64.deb
Saving to: ‘chef-server-core_13.0.17-1_amd64.deb’
chef-server-core_13 100%[===================>] 240.58M 1.33MB/s in 6m 16s
2019-10-23 04:10:51 (656 KB/s) - ‘chef-server-core_13.0.17-1_amd64.deb’ saved [252269838/252269838]
Now you want to run the next command: set up the chef server.
geekflare@chef-bestnich:~$ sudo dpkg -i chef-server-core_*.deb
chef-server-ctl
is a command line utility in chef server. I’ll use this utility to start out the chief server companies.
geekflare@chef-bestnich:~$ sudo chef-server-ctl reconfigure
Operating handlers:
Operating handlers full
Chef Infra Shopper completed, 481/1028 sources up to date in 04 minutes 08 seconds
Chef Server Reconfigured!
You’ll be able to test the standing of the companies which might be began utilizing the command beneath.
geekflare@chef-bestnich:~$ sudo chef-server-ctl standing
run: bookshelf: (pid 2452) 822s; run: log: (pid 29553) 951s
run: nginx: (pid 2318) 826s; run: log: (pid 30216) 908s
run: oc_bifrost: (pid 2296) 827s; run: log: (pid 29240) 996s
run: oc_id: (pid 2304) 826s; run: log: (pid 29308) 979s
run: opscode-erchef: (pid 2511) 822s; run: log: (pid 29707) 946s
run: opscode-expander: (pid 2416) 822s; run: log: (pid 29412) 958s
run: opscode-solr4: (pid 2393) 824s; run: log: (pid 29358) 964s
run: postgresql: (pid 2264) 827s; run: log: (pid 28769) 1021s
run: rabbitmq: (pid 3183) 792s; run: log: (pid 30476) 902s
run: redis_lb: (pid 30011) 926s; run: log: (pid 30010) 926s
Create consumer and group
Chef server connects workstation and consumer nodes. To hyperlink them, I create an administrator and organizer with their non-public keys.
First, create a .chef folder to retailer the keys.
geekflare@chef-bestnich:~$ mkdir .chef
Now I’ll use chef-server-ctl
to create a consumer. Within the command beneath chefadmin
is the consumer, Chef is the primary identify, GeekFlare is the final identify, [email protected] is the e-mail deal with, geekflare is the password, chefadmin.pen is the RSA key.
geekflare@chef-bestnich:~$ sudo chef-server-ctl user-create chefadmin Chef GeekFlare [email protected] 'geekflare' --filename ~/.chef/chefadmin.pem
Let’s run a command to test the listing of customers on the chef server.
geekflare@chef-bestnich:~$ sudo chef-server-ctl user-list
chefadmin
pivotal
Now I’ll use chief-server-ctl to create a company. Within the command beneath, chef-org is the identify of the group, Geekflare Chef Infrastructure is the complete identify of the group, chefadmin is the consumer we simply created, chef-org.pem is the RSA key.
geekflare@chef-bestnich:~$ sudo chef-server-ctl org-create chef-org "Geekflare Chef Infrastructure" --association_user chefadmin --filename ~/.chef/chef-org.pem
Let’s run a command to test the listing of organizations on the boss server.
geekflare@chef-bestnich:~$ sudo chef-server-ctl org-list
chef-org
I’ve totally put in the chef server, let’s go forward and set up the workstation the place all of the configurations are made.
Workstation
Workstation is the place customers create cookbooks. Cookbooks are nothing however the models of configuration created to carry out particular duties.
Let’s run the command beneath to obtain the chef workstation package deal.
geekflare@chef-workstation:~$ wget https://packages.chef.io/recordsdata/steady/chef-workstation/0.2.43/ubuntu/18.04/chef-workstation_0.2.43-1_amd64.deb
--2019-10-23 05:37:41-- https://packages.chef.io/recordsdata/steady/chef-workstation/0.2.43/ubuntu/18.04/chef-workstation_0.2.43-1_amd64.deb
Resolving packages.chef.io (packages.chef.io)... 151.101.194.110, 151.101.130.110, 151.101.66.110, ...
Connecting to packages.chef.io (packages.chef.io)|151.101.194.110|:443... related.
HTTP request despatched, awaiting response... 200 OK
Size: 129713682 (124M) [application/x-debian-package]
Saving to: ‘chef-workstation_0.2.43-1_amd64.deb’
chef-workstation_0.2.43-1_ 100%[=======================================>] 123.70M 2.37MB/s in 4m 25s
2019-10-23 05:42:18 (477 KB/s) - ‘chef-workstation_0.2.43-1_amd64.deb’ saved [129713682/129713682]
Let’s run the dpkg command to put in a workstation on the ubuntu system.
geekflare@chef-workstation:~$ sudo dpkg -i chef-workstation_*.deb
Choosing beforehand unselected package deal chef-workstation.
(Studying database ... 273360 recordsdata and directories at present put in.)
Making ready to unpack chef-workstation_0.2.43-1_amd64.deb ...
Unpacking chef-workstation (0.2.43-1) ...
Establishing chef-workstation (0.2.43-1) ...
To run the experimental Chef Workstation App, use your
platform's package deal supervisor to put in these dependencies:
libgconf-2.so.4 => not discovered
You'll be able to then launch the App by operating 'chef-workstation-app'.
The App will then be out there within the system tray.
Thanks for putting in Chef Workstation!
Yow will discover some tips about getting began at https://chef.sh/
I’ll now run a command to create a chef repository that may include all cookbooks and different recordsdata.
geekflare@chef-workstation:~$ chef generate repo chef-repo
Recipe: code_generator::repo
* listing[/home/geekflare/chef-repo] motion create
- create new listing /house/geekflare/chef-repo
* template[/home/geekflare/chef-repo/LICENSE] motion create_if_missing
- create new file /house/geekflare/chef-repo/LICENSE
- replace content material in file /house/geekflare/chef-repo/LICENSE from none to 3c525c
(diff output suppressed by config)
* cookbook_file[/home/geekflare/chef-repo/.chef-repo.txt] motion create_if_missing
- create new file /house/geekflare/chef-repo/.chef-repo.txt
- replace content material in file /house/geekflare/chef-repo/.chef-repo.txt from none to 2bed28
(diff output suppressed by config)
* cookbook_file[/home/geekflare/chef-repo/README.md] motion create_if_missing
- create new file /house/geekflare/chef-repo/README.md
- replace content material in file /house/geekflare/chef-repo/README.md from none to 2b4f46
(diff output suppressed by config)
* cookbook_file[/home/geekflare/chef-repo/chefignore] motion create_if_missing
- create new file /house/geekflare/chef-repo/chefignore
- replace content material in file /house/geekflare/chef-repo/chefignore from none to 9e2ffd
(diff output suppressed by config)
* remote_directory[/home/geekflare/chef-repo/cookbooks] motion create_if_missing
- create new listing /house/geekflare/chef-repo/cookbooks
Recipe: code_generator::repo
* cookbook_file[/home/geekflare/chef-repo/cookbooks/README.md] motion create_if_missing
- create new file /house/geekflare/chef-repo/cookbooks/README.md
- replace content material in file /house/geekflare/chef-repo/cookbooks/README.md from none to 54b03d
(diff output suppressed by config)
* execute[initialize-git] motion run
- execute git init .
* template[/home/geekflare/chef-repo/.gitignore] motion create_if_missing
- create new file /house/geekflare/chef-repo/.gitignore
- replace content material in file /house/geekflare/chef-repo/.gitignore from none to 11e5ee
(diff output suppressed by config)
Now I will create /chef-repo/.chef
listing, which shops all blade configurations and the RSA keys.
geekflare@chef-workstation:~$ mkdir ~/chef-repo/.chef
geekflare@chef-workstation:~$ cd chef-repo/
Now let’s generate an RSA key pair. We generate this key to authenticate the workstation and entry the boss server.
geekflare@chef-workstation:~/chef-repo$ ssh-keygen -b 4096
Producing public/non-public RSA key pair.
Enter file by which to save lots of the important thing (/house/geekflare/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter similar passphrase once more:
Your identification has been saved in /house/geekflare/.ssh/id_rsa.
Your public key has been saved in /house/geekflare/.ssh/id_rsa.pub.
The important thing fingerprint is:
SHA256:oK/ZyLn+AOMj97F5Z0e1K5o1bxChyKx3ms4HvK06DxI geekflare@chef-geekflare
The important thing's randomart picture is:
+---[RSA 4096]----+
| |
| . |
| o.. . . |
| .+.. . . |
| E .o S o . |
| . +..+ . o . |
|. = +..B .o. . |
| o =.&= =oooo |
| .&OB=oo o. |
+----[SHA256]-----+
Now copy the important thing to the boss server from the workstation.
geekflare@chef-workstation:~/chef-repo$ sudo ssh-copy-id [email protected]
/usr/bin/ssh-copy-id: INFO: Supply of key(s) to be put in: "/house/geekflare/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: making an attempt to log in with the brand new key(s), to filter out any which might be already put in
/usr/bin/ssh-copy-id: INFO: 1 key(s) stay to be put in -- in case you are prompted now it's to put in the brand new keys
[email protected]'s password:
Variety of key(s) added: 1
Now attempt logging into the machine, with: "ssh '[email protected]'"
and test to ensure that solely the important thing(s) you needed have been added.
Now I copy the .pem recordsdata (chefadmin.pem and chef-org.pem) from the chef server to the workstation.
geekflare@chef-workstation:~/chef-repo$ scp [email protected]:~/.chef/*.pem ~/chef-repo/.chef/
chefadmin.pem 100% 1674 105.1KB/s 00:00
chef-org.pem 100% 1674 103.0KB/s 00:00
Confirm that .pem recordsdata have been efficiently copied to the workstation.
geekflare@chef-workstation:~/chef-repo$ ls ~/chef-repo/.chef
chefadmin.pem chef-org.pem
Create model administration
Many adjustments and edits occur in cookbooks (configuration models) whereas engaged on a workstation, so a model management system is required to maintain monitor of those adjustments. So let’s go forward and create a model management system with Git on the workstation. I’ll create a git repository within the chief repo listing. I will add a username and e mail deal with to configure git
geekflare@chef-workstation:~$ git config --global consumer.identify geekflare
geekflare@chef-workstation:~$ git config --global consumer.e mail [email protected]
Let’s add the .chef folder to the .gitignore file.
geekflare@chef-workstation:~$ echo ".chef" > ~/chef-repo/.gitignore
Now I’ll run add and commit git instructions from a chef repo listing.
geekflare@chef-workstation:~$ cd ~/chef-repo
geekflare@chef-workstation:~/chef-repo$ git add .
geekflare@chef-workstation:~/chef-repo$ git commit -m "preliminary commit"
[master (root-commit) 99c8c11] preliminary commit
16 recordsdata modified, 359 insertions(+)
create mode 100644 .chef-repo.txt
create mode 100644 .gitignore
create mode 100644 LICENSE
create mode 100644 README.md
create mode 100644 chefignore
create mode 100644 cookbooks/README.md
create mode 100644 cookbooks/instance/README.md
create mode 100644 cookbooks/instance/attributes/default.rb
create mode 100644 cookbooks/instance/metadata.rb
create mode 100644 cookbooks/instance/recipes/default.rb
create mode 100644 data_bags/README.md
create mode 100644 data_bags/instance/example_item.json
create mode 100644 environments/README.md
create mode 100644 environments/instance.json
create mode 100644 roles/README.md
create mode 100644 roles/instance.json
Examine the standing.
geekflare@chef-workstation:~/chef-repo$ git standing
On department grasp
nothing to commit, working tree clear
Generate your first cookbook
Now the WorkStation set up is full and you can begin creating cookbooks on the WorkStation. Strive producing a pattern cookbook on the WorkStation and see if it generates efficiently.
I’ll run the command beneath to generate a cookbook.
geekflare@chef-workstation:~$ Chef generate cookbook geekflare_cookbook
Producing cookbook geekflare_cookbook
- Guaranteeing right cookbook file content material
- Committing cookbook recordsdata to Git
- Guaranteeing supply configuration
- Guaranteeing right supply construct cookbook content material
- Including supply configuration to function department
- Including construct cookbook to function department
- Merging supply content material function department to grasp
Your cookbook is prepared. Sort `cd geekflare_cookbook` to enter it.
There are a number of instructions you may run to get began domestically creating and testing your cookbook.
Sort `supply native --help` to see a full listing.
Why not begin by writing a take a look at? Exams for the default recipe are saved at:
take a look at/integration/default/default_test.rb
Should you'd want to dive proper in, the default recipe may be discovered at:
recipes/default.rb
Generate chef repo after which go to a chef repo listing
geekflare@chef-workstation:~$ Chef generate app chef-repo
WARNING: The command 'chef generator app' is deprecated and will probably be faraway from the following main launch of Chef DK / Workstation (April 2019)
Recipe: code_generator::app
* listing[/home/geekflare/chef-repo] motion create (updated)
* template[/home/geekflare/chef-repo/.kitchen.yml] motion create
- create new file /house/geekflare/chef-repo/.kitchen.yml
- replace content material in file /house/geekflare/chef-repo/.kitchen.yml from none to ceae09
(diff output suppressed by config)
* listing[/home/geekflare/chef-repo/test/integration/default] motion create
- create new listing /house/geekflare/chef-repo/take a look at/integration/default
* template[/home/geekflare/chef-repo/test/integration/default/default_test.rb] motion create_if_missing
- create new file /house/geekflare/chef-repo/take a look at/integration/default/default_test.rb
- replace content material in file /house/geekflare/chef-repo/take a look at/integration/default/default_test.rb from none to 0f757b
(diff output suppressed by config)
* template[/home/geekflare/chef-repo/README.md] motion create
- replace content material in file /house/geekflare/chef-repo/README.md from 2b4f46 to 6401b8
(diff output suppressed by config)
* listing[/home/geekflare/chef-repo/cookbooks] motion create (updated)
* listing[/home/geekflare/chef-repo/cookbooks/chef-repo] motion create
- create new listing /house/geekflare/chef-repo/cookbooks/chef-repo
* template[/home/geekflare/chef-repo/cookbooks/chef-repo/metadata.rb] motion create
- create new file /house/geekflare/chef-repo/cookbooks/chef-repo/metadata.rb
- replace content material in file /house/geekflare/chef-repo/cookbooks/chef-repo/metadata.rb from none to e30be3
(diff output suppressed by config)
* cookbook_file[/home/geekflare/chef-repo/cookbooks/chef-repo/chefignore] motion create
- create new file /house/geekflare/chef-repo/cookbooks/chef-repo/chefignore
- replace content material in file /house/geekflare/chef-repo/cookbooks/chef-repo/chefignore from none to 9e2ffd
(diff output suppressed by config)
* cookbook_file[/home/geekflare/chef-repo/cookbooks/chef-repo/Berksfile] motion create
- create new file /house/geekflare/chef-repo/cookbooks/chef-repo/Berksfile
- replace content material in file /house/geekflare/chef-repo/cookbooks/chef-repo/Berksfile from none to 15e000
(diff output suppressed by config)
* listing[/home/geekflare/chef-repo/cookbooks/chef-repo/recipes] motion create
- create new listing /house/geekflare/chef-repo/cookbooks/chef-repo/recipes
* template[/home/geekflare/chef-repo/cookbooks/chef-repo/recipes/default.rb] motion create
- create new file /house/geekflare/chef-repo/cookbooks/chef-repo/recipes/default.rb
- replace content material in file /house/geekflare/chef-repo/cookbooks/chef-repo/recipes/default.rb from none to f56ecb
(diff output suppressed by config)
* listing[/home/geekflare/chef-repo/cookbooks/chef-repo/spec/unit/recipes] motion create
- create new listing /house/geekflare/chef-repo/cookbooks/chef-repo/spec/unit/recipes
* cookbook_file[/home/geekflare/chef-repo/cookbooks/chef-repo/spec/spec_helper.rb] motion create_if_missing
- create new file /house/geekflare/chef-repo/cookbooks/chef-repo/spec/spec_helper.rb
- replace content material in file /house/geekflare/chef-repo/cookbooks/chef-repo/spec/spec_helper.rb from none to 1f80e1
(diff output suppressed by config)
* template[/home/geekflare/chef-repo/cookbooks/chef-repo/spec/unit/recipes/default_spec.rb] motion create_if_missing
- create new file /house/geekflare/chef-repo/cookbooks/chef-repo/spec/unit/recipes/default_spec.rb
- replace content material in file /house/geekflare/chef-repo/cookbooks/chef-repo/spec/unit/recipes/default_spec.rb from none to 666a01
(diff output suppressed by config)
* execute[initialize-git] motion run
- execute git init .
* cookbook_file[/home/geekflare/chef-repo/.gitignore] motion create
- replace content material in file /house/geekflare/chef-repo/.gitignore from 25558e to edcd62
(diff output suppressed by config)
Configure Knife
Knife is a command line utility that means that you can handle nodes, cookbooks and recipes. To configure Knife, create a config.rb file and place the contents beneath within the file. These are blade configurations.
geekflare@chef-workstation:~$ sudo gedit ~/chef-repo/.chef/config.rb
current_dir = File.dirname(__FILE__)
log_level :information
log_location STDOUT
node_name 'chefadmin'
client_key "chefadmin.pem"
validation_client_name 'chef-org-validator'
validation_key "chef-org-validator.pem"
chef_server_url 'https://chef-geekflare/organizations/chef-org'
cache_type 'BasicFile'
cache_options( :path => "#{ENV['HOME']}/.chef/checksums" )
cookbook_path ["#{current_dir}/../cookbooks"]
Now go to a chef repo listing and replica SSL certificates.
geekflare@chef-workstation:~$ cd chef-repo
geekflare@chef-workstation:~/chef-repo$ knife ssl fetch
WARNING: Certificates from chef-geekflare will probably be fetched and positioned in your trusted_cert
listing (/house/geekflare/chef-repo/.chef/trusted_certs).
Knife has no means to confirm these are the proper certificates. You must
confirm the authenticity of those certificates after downloading.
Including certificates for chef-geekflare in /house/geekflare/chef-repo/.chef/trusted_certs/chef-geekflare.crt
Run the command beneath to confirm that config.rb is ready up appropriately.
geekflare@chef-workstation:~/chef-repo$ knife consumer listing
chef-org-validator
Bootstrap a node
Bootstrap runs from the workstation machine and installs the chef consumer on the nodes. The nodes can then learn configurations from the boss server by utilizing the consumer node’s consumer and password as well a node.
I’ll now boot a node with IP deal with 192.168.0.109, username geekflare and password geekflare.org.
geekflare@chef-workstation:~/chef-repo/.chef$ knife bootstrap 192.168.0.109 -x geekflare -P geekflare.org --node-name geekflare-client-1
Creating new consumer for geekflare-client-1
Creating new node for geekflare-client-1
Connecting to 192.168.0.109
192.168.0.109 -----> Putting in Chef Omnibus (-v 14)
192.168.0.109 downloading https://omnitruck-direct.chef.io/chef/set up.sh
192.168.0.109 to file /tmp/set up.sh.9250/set up.sh
192.168.0.109 making an attempt wget...
192.168.0.109 ubuntu 18.10 x86_64
192.168.0.109 Getting info for chef steady 14 for ubuntu...
192.168.0.109 downloading https://omnitruck-direct.chef.io/steady/chef/metadata?v=14&p=ubuntu&pv=18.10&m=x86_64
192.168.0.109 to file /tmp/set up.sh.9261/metadata.txt
192.168.0.109 making an attempt wget...
192.168.0.109 sha1 534bae390bde3bd9d93bef99335f62246624f32b
192.168.0.109 sha256 94bc60b3a97ddadf77a70c7678ec77a676942c74f8152a2c70a0f5b68e22a42e
192.168.0.109 url https://packages.chef.io/recordsdata/steady/chef/14.14.25/ubuntu/18.04/chef_14.14.25-1_amd64.deb
192.168.0.109 model 14.14.25
192.168.0.109 downloaded metadata file appears legitimate...
192.168.0.109 downloading https://packages.chef.io/recordsdata/steady/chef/14.14.25/ubuntu/18.04/chef_14.14.25-1_amd64.deb
192.168.0.109 to file /tmp/set up.sh.9261/chef_14.14.25-1_amd64.deb
192.168.0.109 making an attempt wget...
192.168.0.109 Evaluating checksum with sha256sum...
192.168.0.109 Putting in chef 14
192.168.0.109 putting in with dpkg...
192.168.0.109 Choosing beforehand unselected package deal chef.
(Studying database ... 204803 recordsdata and directories at present put in.)
192.168.0.109 Making ready to unpack .../chef_14.14.25-1_amd64.deb ...
192.168.0.109 Unpacking chef (14.14.25-1) ...
192.168.0.109 Establishing chef (14.14.25-1) ...
192.168.0.109 Thanks for putting in Chef Infra Shopper! For assist getting began go to https://study.chef.io
192.168.0.109 Beginning the primary Chef Shopper run...
192.168.0.109 Beginning Chef Shopper, model 14.14.25
192.168.0.109 resolving cookbooks for run listing: []
192.168.0.109 Synchronizing Cookbooks:
192.168.0.109 Putting in Cookbook Gems:
192.168.0.109 Compiling Cookbooks...
192.168.0.109 [2019-10-23T10:52:57-04:00] WARN: Node geekflare-client-1 has an empty run listing.
192.168.0.109 Converging 0 sources
192.168.0.109
192.168.0.109 Operating handlers:
192.168.0.109 Operating handlers full
192.168.0.109 Chef Shopper completed, 0/0 sources up to date in 07 seconds
I’ll now listing all of the nodes which have began up
geekflare@chef-workstation:~/chef-repo/.chef$ knife node listing
geekflare-client-1
Run the command beneath to get the main points of the node.
geekflare@chef-workstation:~/chef-repo/.chef$ knife node present geekflare-client-1
Node Identify: geekflare-client-1
Atmosphere: _default
FQDN: client-node
IP: 192.168.0.109
Run Record:
Roles:
Recipes:
Platform: ubuntu 18.10
Tags:
Now the setup is prepared!
We now have efficiently put in a chef server, workstation and a node on Ubuntu. You’ll be able to go forward and begin creating recipes and cookbooks in Chef for infrastructure configuration administration.
Should you’re an absolute newbie, then you may additionally get pleasure from taking this Udemy course.