Due to network constraints I am not able to download the chef client. Hence I want to install chef-client on node manually and then do the remaining formalities of registration of node, transfer pem files etc. Can someone guide me the steps taken in this process?
I found a temporary solution…
I am keeping my chef-client msi on the nodes. And then I am running chef bootstrap command with –msi-url extension.
It would be great if someone can still redirect me to the manual steps.
Basically, the only two things you need on the node are a client.rb config, which is easy to create and save on the new node, and a client.pem private key. To create this private key use “knife client create (options) name”. And then to create the node with the run_list and attributes you can use “knife node create (options) name”. The client and node names need to be the same. Depending on you chef server version you might also need set the appropriate ACLs (give the client access to the node on the chef server). Google for “knife acl” on how to do this.
We have created an bootstrap script which downloads the client from an internal Omnitruck endpoint. After that install it drops the validation key, writes a client.rb and runs the client with attributes JSON for Policyfiles. We ended up writing a powershell script for Windows.
It all works out pretty well for us.
What “options” would I need to put here?
Please refer to the manual to find out about all the options that there are. I can not tell you which options apply to your setup in your environment. https://docs.chef.io/knife_client.html#create