如何在傀儡企业整体安装中更改主端口
how to change the masterport in a puppet-enterprise monolithic installation
直到现在我一直在使用puppet-enterprise 3.8.6,我终于可以升级到最新版本(2018.1.3)。
在 Puppet 3.8.6 中,我能够通过
更改主端口
- 设置puppet_enterprise::puppet_master_port参数,
- 执行傀儡代理(失败),
- 停止所有 puppet 服务,
- 手动查找 /etc/puppetlabs 和 /opt/puppetlabs 下仍然包含 8140 的配置文件,并在所有地方用新端口值替换该值,
- 重新启动所有 Puppet 服务并
- 再次执行傀儡代理
这既不好也不容易也不快,但它奏效了。
当我尝试使用最新版本执行此操作时,我在第 6 步发现仍然有一些地方的值被还原并且代理失败,特别是:
puppet:~ # find /etc/puppetlabs/ -name "*.conf" -o -name "*.yaml" | xargs grep 8140
/etc/puppetlabs/console-services/conf.d/console.conf: "url": "https://puppet:8140"
/etc/puppetlabs/client-tools/services.conf: "port": 8140,
/etc/puppetlabs/client-tools/services.conf: "status_url": "https://puppet:8140/status",
/etc/puppetlabs/client-tools/services.conf: "url": "https://puppet:8140/"
我发现这些文件分别由 类 trapperkeeper/console_services.pp
和 cli_config.pp
管理,错误的端口值来自“service_port
" 参数,我不明白从哪个 hiera 值读取,但它不默认为 puppet_enterprise::puppet_master_port
参数。
关于如何将 service_port
参数设置为新值的任何提示?或者,有没有更好的方法来更改主端口?
非常感谢
迈克尔
更新:
我现在明白参数 service_port
是一个局部变量,以及 status_port
,它们是在迭代中从 class_parameters
读取的。
相关参数在上面几行设置为Puppet_enterprise::Profile::Master::ssl_listen_port
,默认为puppet_enterprise::puppet_master_port
。所以我还是不明白为什么它不起作用。
最后我设法 运行 傀儡代理,很快将流量从旧端口重定向到新端口,其中:
socat tcp-listen:8140,reuseaddr,fork tcp:localhost:<newport>
直到现在我一直在使用puppet-enterprise 3.8.6,我终于可以升级到最新版本(2018.1.3)。
在 Puppet 3.8.6 中,我能够通过
- 设置puppet_enterprise::puppet_master_port参数,
- 执行傀儡代理(失败),
- 停止所有 puppet 服务,
- 手动查找 /etc/puppetlabs 和 /opt/puppetlabs 下仍然包含 8140 的配置文件,并在所有地方用新端口值替换该值,
- 重新启动所有 Puppet 服务并
- 再次执行傀儡代理
这既不好也不容易也不快,但它奏效了。
当我尝试使用最新版本执行此操作时,我在第 6 步发现仍然有一些地方的值被还原并且代理失败,特别是:
puppet:~ # find /etc/puppetlabs/ -name "*.conf" -o -name "*.yaml" | xargs grep 8140
/etc/puppetlabs/console-services/conf.d/console.conf: "url": "https://puppet:8140"
/etc/puppetlabs/client-tools/services.conf: "port": 8140,
/etc/puppetlabs/client-tools/services.conf: "status_url": "https://puppet:8140/status",
/etc/puppetlabs/client-tools/services.conf: "url": "https://puppet:8140/"
我发现这些文件分别由 类 trapperkeeper/console_services.pp
和 cli_config.pp
管理,错误的端口值来自“service_port
" 参数,我不明白从哪个 hiera 值读取,但它不默认为 puppet_enterprise::puppet_master_port
参数。
关于如何将 service_port
参数设置为新值的任何提示?或者,有没有更好的方法来更改主端口?
非常感谢
迈克尔
更新:
我现在明白参数 service_port
是一个局部变量,以及 status_port
,它们是在迭代中从 class_parameters
读取的。
相关参数在上面几行设置为Puppet_enterprise::Profile::Master::ssl_listen_port
,默认为puppet_enterprise::puppet_master_port
。所以我还是不明白为什么它不起作用。
最后我设法 运行 傀儡代理,很快将流量从旧端口重定向到新端口,其中:
socat tcp-listen:8140,reuseaddr,fork tcp:localhost:<newport>