当前位置:  开发笔记 > 编程语言 > 正文

如何使用基于puppet的引导在EC2实例中设置主机名

如何解决《如何使用基于puppet的引导在EC2实例中设置主机名》经验,为你挑选了0个好方法。

我正在尝试使用EC2实例在AWS中构建一个木偶管理基础架构(非企业).使用puppetlabs-aws模块我可以通过方便的方式创建机器.接下来是在每个节点上进行本地设置,最重要的是设置唯一的主机名.我怎样才能做到这一点?

我知道的一种方法是通过user_data参数提供脚本.这将是很好的,但为了可用,我需要能够参数化该脚本,以避免为每个代理重复一次脚本.

是否有意义?我真的很感激一种实现这一目标的便捷方式,因为我想以编程方式启动新实例.任何建议都将被考虑.

更新

举一个我的问题的例子,考虑我的配置木偶清单的这个片段:

ec2_instance { 'backend':
  ensure => present,
  name => 'backend',
  region => 'us-west-2',
  image_id => 'ami-f0091d91',
  instance_type => 't2.micro',
  key_name => 'mykey',
  security_groups => ['provision-sg'],
  user_data => template('configure.erb'),
}

ec2_instance { 'webfront':
  ensure => present,
  name => 'webfront',
  region => 'us-west-2',
  image_id => 'ami-f0091d91',
  instance_type => 't2.micro',
  key_name => 'mykey',
  security_groups => ['provision-sg'],
  user_data => template('configure.erb'),
}

这将确保两个实例启动并运行.请注意user_data => template('configure.erb')引用模板脚本,该脚本在创建后在实例上执行.如果我只知道决定依据的数据,我可以在这里设置主机名(或我想要的任何东西).我可以在实例描述中添加标签,但configure.erb据我所知,从脚本中无法读取.

无论如何,设置主机名只是我解决根本问题的想法.可能还有其他更方便的方法.我想要的只是让这两个实例代表木偶大师的不同节点类型的方法.

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有