【问题标题】:Puppet fill templates with ip addresses of newly spawned instances使用新生成实例的 IP 地址填充模板
【发布时间】:2014-12-02 13:42:11
【问题描述】:

我正在设置一个简单的 WSO2 应用程序服务器集群,其中包含一个主节点和一个工作节点。这是通过 python NovaClient API 在 OpenStack 云中生成实例来完成的。

生成实例后,我需要获取它们的 IP 地址并使用它们来填充我的模板值。但要复制模板值,实例必须启动并运行。

我使用 xml 配置文件成功地做到了这一点,并结合了暂停和恢复实例。 xml 文件包含填充 puppet 模板所需的所有变量值。

现在我必须在没有 xml 配置的情况下尝试它,并且只使用 puppet 配置文件。 我的配置信息应该在 puppet 文件中。

我在 /etc/puppet/modules/ 中有一个名为 appserver 的模块

我的方法应该是什么?

我应该将集群配置保存在 nodes.pp 文件本身中吗? 如果是这样,我如何将配置导入到 site.pp?

或者我应该将我的配置信息保存在 /modules/appserver/manifests 位置的 params.pp 文件中吗?

请善意指导这个场景。

/etc/puppet/manifests 中的当前 site.pp 文件

import 'appserver'
node 'appserver-mgr' {
    include appserver::config_mgr
}

node 'appserver-wkr' {
    include appserver::config_wkr
}

在/etc/puppet/modules/appserver/manifests/里面我有两个配置文件 config_mgr.pp config_wkr.pp

我没用过init.pp。

谢谢, 苏涵

【问题讨论】:

    标签: python wso2 puppet wso2as


    【解决方案1】:

    想想 puppet 中的模板。

    设置应在config_mgr.ppconfig_wkr.ppcontent => template("PATH/some.xml.erb")

    在erb文件中,输入<%= @ipaddress %>获取IP地址。

    参考: https://docs.puppetlabs.com/guides/templating.html

    【讨论】:

      猜你喜欢
      • 2014-09-14
      • 2019-09-03
      • 1970-01-01
      • 2021-11-27
      • 1970-01-01
      • 2012-05-03
      • 1970-01-01
      • 1970-01-01
      • 2012-03-03
      相关资源
      最近更新 更多