Amazon web services 设置EC2实例AWS主机名的厨师配方

Amazon web services 设置EC2实例AWS主机名的厨师配方,amazon-web-services,amazon-ec2,chef-infra,hostname,chef-recipe,Amazon Web Services,Amazon Ec2,Chef Infra,Hostname,Chef Recipe,我想编写一个厨师食谱,将EC2实例的主机名设置为: AWSRegionInstanceTyperandomNo 如awsedev001 我如何在厨师食谱中做到这一点?我们有什么食谱吗 请帮助在常规Unix环境中,您将如何做到这一点 您应该首先将完整的FQDN添加到/etc/hostname以实现持久性: 文件'/etc/hostname'do 内容“hostname.example.com” 结束 然后为当前运行的操作系统设置主机名: 执行“hostname.example.com”do 如

我想编写一个厨师食谱,将EC2实例的主机名设置为:

AWSRegionInstanceTyperandomNo
awsedev001

我如何在厨师食谱中做到这一点?我们有什么食谱吗


请帮助

在常规Unix环境中,您将如何做到这一点

您应该首先将完整的FQDN添加到
/etc/hostname
以实现持久性:

文件'/etc/hostname'do
内容“hostname.example.com”
结束
然后为当前运行的操作系统设置主机名:

执行“hostname.example.com”do
如果'hostname-eq“hostname.example.com”
结束


这是一个简单的厨师食谱示例,但可以使其更复杂以满足您的需要。您可能还需要查看AWS中的。

,以便更改需要编辑的主机名

/etc/sysconfig/network

NETWORKING=yes
HOSTNAME=ip-172-16-1-23.ec2.internal
NOZEROCONF=yes
编辑第二行后,您可以重新启动并设置

你可以使用社区网站上的食谱

在cookbook metadata.rb中,只需声明:

depends "chef_hostname"
然后在配方代码中使用主机名资源设置主机名:

hostname "foo.example.com"
或:


我已经根据我的要求修改了我的问题。请帮助我如何做到这一点我对chef很陌生不知道如何做到这一切我有一个疑问我应该为chef安装一个单独的ruby还是应该使用chef附带的ruby?请不要在同一个帖子上问多个问题。
hostname node.name