当Foreman在OpenStack中创build虚拟机时,在Foreman中复制主机logging

我设法连接Foreman和OpenStack,以便我可以使用Foreman Web界面在OpenStack中创build虚拟机。 我正在使用cloud-init或Foreman如何调用用户数据configuration模板来configuration新创build的实例。

为了testing目的,我正在使用这个云configuration脚本:

#cloud-config: users: - name: danil groups: sudo shell: /bin/bash sudo: ['ALL=(ALL) NOPASSWD:ALL'] chpasswd: list: | danil:<hidden> root:<hidden> expire: False runcmd: - apt-get install -y puppet - sed -i -e 's/\[main\]/\[main\]\nserver=foreman.domain.com/' /etc/puppet/puppet.conf - puppet agent --test - puppet agent --enable - puppet agent --test

我正在添加一个新的主机,在虚拟机启动后,我可以看到它是一个名为new-host.domain.com的主机,型号名称为OST2,这是我在Foreman中用于OpenStack计算资源的名称。 在该主机内部,我可以执行一些基本的任务,例如closuresVM,删除它等等。

云configuration脚本完成它的工作,即它安装木偶,并通过Foreman智能代理由puppetpipe理这个虚拟机。 只要puppet完成主机初始化,我会看到名为“new-host”的重复主机。 在那个重复的主机的情况下,它有型号名称“OpenStack Nova”。 它可以通过puppet来pipe理,但是没有任何可用于new-host.domain.com的OpenStack任务在那里。

换句话说,我有两个相同的主机logging。 一个logging可以用来pipe理一个虚拟机,另一个logging可以用木偶来帮助pipe理操作系统的configuration。

有什么办法可以合并这两个logging,以避免这些重复logging?

对应于新创build的VM new-host.domain.com的YAML是:

classes: {} parameters: puppetmaster: puppet.domain.com hostgroup: Provision from puppet.domain.com root_pw: <hidden> puppet_ca: puppet.domain.com foreman_env: production owner_name: Admin User owner_email: [email protected] foreman_subnets: [] foreman_interfaces: - mac: ip: 172.21.82.102 type: Interface name: new-host.vccap.de attrs: {} virtual: false link: true identifier: '' managed: true primary: true provision: true subnet: environment: production

谢谢你的回复!

最好的祝福,

DANIL

感谢m0dlx为我的问题提供了一个可操作的答案。 我还发现有用的Provisioning模板,Foreman安装中也可以解决这个问题。 模板被称为“kickstart用户数据”,是为Fedora和CentOS制作的,但是稍微改动也适合Ubuntu。