如何使用 molecule-podman 分配静态 IP?

如何使用 molecule-podman 分配静态 IP?

由于生成的库存看起来像一对(见上文),我需要使用具有 IP 值而不是实例名称的instance name - ip变量来测试配方。ansible_host

因此生成的库存如下所示:

[all]
idm ansible_host=10.0.1.1
client1 ansible_host=10.0.1.2
[client]
client1 ansible_host=10.0.1.2

因此molecule.yml包含:

platforms:
  - name: idm
    image: quay.io/freeipa/freeipa-server:rocky-8-4.9.6
    pre_build_image: true
    privileged: false
    network: testing
    hostname: idm.org.test
    command: ipa-server-install -U --realm=ORG.TEST --domain=org.test --ds-password=IsASecret --admin-password=IsASecret --hostname=idm.org.test

  - name: client1
    image: quay.io/rockylinux/rockylinux
    pre_build_image: true
    privileged: false
    network: testing
    hostname: client1.org.test
    groups:
      - all
      - client

按照此配置,我能够将这两个实例放入同一个网络,但无法为它们分配静态 IP。此外,此处ansible_host将实例名称作为值 ( idm, client1)。

笔记:正如标题所写,我使用分子吊舱创建实例并测试

感谢您的帮助

此致

答案1

如果你需要静态 IP(你可以使用 dns,但你可能已经知道了,因为你的客户端似乎使用 idm.org.test),我认为你必须使用你自己的 create.yml 文件https://github.com/ansible-community/molecule-podman/blob/main/src/molecule_podman/playbooks/create.yml做这样的事。

因为我的理解是,当通过 podman 创建网络时,你无法控制很多参数。

相关内容