3.3.3. 将 ironic 服务 pod 附加到 baremetal 网络


为每个隔离网络创建一个 NetworkAttachmentDefinition (net-attach-def)自定义资源(CR),以将服务 pod 附加到网络。

流程

  1. 在工作站上为裸机网络创建一个 NetworkAttachmentDefinition (net-attach-def) CR 文件,以将 ironic 服务 pod 附加到网络,如 baremetal-net-attach-def.yaml
  2. NetworkAttachmentDefinition CR 文件中,为 baremetal 网络配置 NetworkAttachmentDefinition 资源,以将 ironic 服务部署 pod 附加到网络。从 为裸机置备服务准备 RHOCP, 选择与您的网络拓扑匹配的配置:

    • 选项 1: Bridge on dedicated interface - 如果您在 nncp CR 中的专用接口上配置了 Linux 网桥。

      apiVersion: k8s.cni.cncf.io/v1
      kind: NetworkAttachmentDefinition
      metadata:
        labels:
          osp/net: ironic
          osp/net-attach-def-type: standard
        name: ironic
        namespace: openstack
      spec:
        config: |
          {
            "cniVersion": "0.3.1",
            "name": "ironic",
            "type": "bridge",
            "bridge": "ironic",
            "ipam": {
              "type": "whereabouts",
              "range": "172.20.1.0/24",
              "range_start": "172.20.1.30",
              "range_end": "172.20.1.70"
            }
          }
      • spec.config.bridge 定义 nncp CR 中定义的网桥接口名称。
      • spec.config.ipam 定义从范围 .30 - .70 中分配 IP 到创建的 pod 的 whereabouts CNI IPAM 插件。
      • spec.config.range_startspec.config.range_end 定义 IP 地址池范围。这个范围不得与 MetalLB IPAddressPool 范围和 NetConfig allocationRange 重叠。
    • 选项 2:共享接口上的 VLAN - 如果您在 nncp CR 的共享接口上配置了 VLAN 接口,请使用此配置。

      apiVersion: k8s.cni.cncf.io/v1
      kind: NetworkAttachmentDefinition
      metadata:
        labels:
          osp/net: ironic
          osp/net-attach-def-type: standard
        name: ironic
        namespace: openstack
      spec:
        config: |
          {
            "cniVersion": "0.3.1",
            "name": "ironicnet",
            "type": "macvlan",
            "master": "ironic",
            "mtu": 1442,
            "ipam": {
              "type": "whereabouts",
              "range": "172.20.1.0/24",
              "range_start": "172.20.1.30",
              "range_end": "172.20.1.70"
            }
          }
      • spec.config.type 使用 macvlan 进行 VLAN 配置。
      • spec.config.master 定义 nncp CR 中定义的 VLAN 接口名称。
      • spec.config.mtu 必须与 nncp CR 中配置的 MTU 匹配。
      • spec.config.ipam 定义从范围 .30 - .70 中分配 IP 到创建的 pod 的 whereabouts CNI IPAM 插件。
      • spec.config.range_startspec.config.range_end 定义 IP 地址池范围。这个范围不得与 MetalLB IPAddressPool 范围和 NetConfig allocationRange 重叠。
  3. 在集群中创建 NetworkAttachmentDefinition CR:

    $ oc apply -f baremetal-net-attach-def.yaml
  4. 验证 NetworkAttachmentDefinition CR 是否已创建:

    $ oc get net-attach-def -n openstack
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部