希望在我的环境中安装 Foreman 以进行 puppet 部署。我最初使用默认设置运行 foreman-installer,并不关心 SSL 证书和 URL 是否为 server01.example.com
我更希望它使用像 puppet.example.com 这样的 cname,它更具描述性,并且是默认的 puppet 代理设置。它应该使未来的 foreman/puppet 迁移更容易,能够复制证书目录并更改 cname 记录。
我知道我可以使用 foreman-install -i 以交互方式更改所有设置,但以这种方式更改记录会导致文档质量不佳。我试图找到正确的选项以按照我想要的方式进行此设置,但它不起作用。
以下是我正在使用的命令和选项:
sudo foreman-installer --foreman-foreman-url=https://puppet.example.com:8443 \
--foreman-proxy-registered-name=puppet.example.com \
--puppet-server-foreman-ssl-key=/var/lib/puppet/ssl/private_keys/puppet.example.com.pem \
--foreman-proxy-ssl-cert=/var/lib/puppet/ssl/certs/puppet.example.com.pem \
--foreman-proxy-foreman-base-url=https://puppet.example.com \
--foreman-proxy-ssl-cert=/var/lib/puppet/ssl/certs/puppet.example.com.pem \
--foreman-proxy-ssl-key=/var/lib/puppet/ssl/private_keys/puppet.example.com.pem \
--puppet-server-foreman-url=https://puppet.example.com \
--foreman-proxy-registered-proxy-url=https://puppet.example.com:8443`
运行该命令后,它尝试启动 foreman-proxy 服务并失败。它正在寻找名为 /var/lib/puppet/ssl/private_keys/puppet.example.com.pem 的私钥,但那里的密钥是 /var/lib/puppet/ssl/private_keys/server01.example.com.pem。它仍在使用 FQDN 来创建证书。
我怎样才能按我想要的方式获得此设置?
答案1
根据我的经验,某些安装程序设置不能仅通过再次运行 foreman-installer 来重写,例如主机名。您需要恢复安装程序文件,当您再次运行安装程序时,它将使用新数据(主机名、fqdn……)
用以下内容覆盖 /etc/foreman/foreman-installer-answers.yaml默认文件再次运行foreman-installer
,它将使用新的主机名