Chef infra 以非root用户身份运行chef客户端
我想在我的linux机器上以测试用户的身份运行chef客户端。为此,我在client.rb文件中添加了缓存路径,该文件来自/etc/chef/client.rbChef infra 以非root用户身份运行chef客户端,chef-infra,Chef Infra,我想在我的linux机器上以测试用户的身份运行chef客户端。为此,我在client.rb文件中添加了缓存路径,该文件来自/etc/chef/client.rb cache_path "~/.chef/cache" 然后我从测试用户(非root用户)运行chef-client命令 Chef encountered an error attempting to create the client 如何设置缓存路径?是否需要在测试用户下移动client.rb、chef-validator.pe
cache_path "~/.chef/cache"
然后我从测试用户(非root用户)运行chef-client命令
Chef encountered an error attempting to create the client
如何设置缓存路径?是否需要在测试用户下移动client.rb、chef-validator.pem、client.pem、first-boot.json?首先,chef打算作为root用户运行。很多资源都假设它们是以root身份运行的,并且需要它。如果不作为root运行,则将失败 对于您的错误,您的测试用户无权在
/etc/chef
(默认位置)中写入文件,并且需要写入client.pem
节点证书
一些想法:
/etc/chef
的权限授予测试用户sudo
与测试用户一起运行chef客户端(需要在sudoers文件中输入)client.rb
文件,将client\u key
指向测试用户主目录/etc/chef
添加了缓存路径“/home/test/cache”。这也显示了同样的错误,它说我可以读取您告诉我要签名的请求,这是在这个位置/etc/chef写入client.rb文件所必需的。我是否应该在/home/test location中创建一个文件夹'chef',并将文件放在那里(client.pem、client.rb、validation.pem)。嘿,我授予了chmod 777对文件夹/etc/chef/中存在的所有文件的权限。现在,chef客户端从测试用户运行。这条路对吗?我没有在client.rb文件中添加cache_路径?那么它是如何工作的。我检查了文件夹/var/chef/cache的权限,它的全部都是“755”模式