标签:inf 自动 str inspect pre 分析 图片 mem 包括
部分 SDN 交换机使用的 lldp 报文跟正常的 lldp 报文有些差异。要兼容这部分交换机,我们需要修改 inspector 的实现代码。
这里先简单介绍一下 lldp 报文结构, lldp 采用 TLV(type length value)方式存储数据。报文结构如下图所示:
TLV 的类型域的定义及分配如下图所示:
我们在 ironic 中使用的 local_link_connection 和报文的对应关系如下表:
TLV TYPE | TLV NAME | local link connection name |
---|---|---|
1 | chassis ID | switch_id |
2 | port_id | port_id |
再来介绍下 SDN 的 lldp 报文和普通的 lldp 报文有啥差异,首先不管是 SDN 的 lldp 还是普通交换的 lldp, 我们要收集的都是 chassis ID 和 port id,那有什么差异呢?这是因为 chassis ID 和 port id,还存在 subtype, 通过 subtype 可以定义不同的 chassis ID 和 port id 值。
先看看 chassis ID 报文结构:
chassis子类型所可能的取值如图所示:
再看看 port id 值
其子类型的可能取值如下图所示:
SDN 的 lldp 和普通 lldp 报文差异如下表所示:
SWITCH | TLV TYPE | TLV NAME | subtype | subtype value |
---|---|---|---|---|
SDN | 1 | chassis id | 7 | Locally assigned |
normal | 1 | chassis id | 4 | Mac Address |
SDN | 2 | port id | 2 | Port component |
normal | 2 | port id | 3 | Mac Address |
5 | Interface name | |||
7 | Locally assigned |
Inspection 1)BM的PXE网卡需要连接到INSPECTION NETWORK, 只使用一块网卡,不使用bond技术。 2)TOR需要周期性发送LLDP PDU, 发送间隔不得超过30秒,且LLDP PDU中需要包含chassis id, port id信息。
3)BM不支持任何封装技术,例如VLAN, VXLAN,这个阶段BM发送的报文为untag报文。 Provision 1)BM的PXE网卡需要连接到PROVISION NETWORK, 只使用一块网卡,不使用bond技术。 2)BM不支持任何封装技术,例如VLAN, VXLAN,这个阶段BM发送的报文为untag报文。
Inspection 裸金属上架自检阶段
当裸机完成硬件安装、网络连线等上架工作后,由管理员将裸机的信息录入到 Ironic 进行纳管,以此支持它的各项后续操作。该阶段中,根据需要可以应用 Ironic Inspector 的功能实现裸机硬件配置信息以及上联交换机信息的自动采集,即裸金属的自检。但基于具体 Drivers 实现的不同,Ironic Inspector 有时并不能完成全部的工作,仍需要人工录入。
自检阶段主要由 IPA 和 Ironic Inspector 共同完成,前者负责信息的采集和传输,后者负责信息的处理。IPA 采集的信息,包括 CPU 个数、CPU Feature Flag、Memory Size、Disk Size、网卡 IP、MAC 地址等,这些信息会被作为 Nova Scheduler 的调度因子。如果接入了 SDN 网络,还需要监听裸机业务网卡上收到的 LLDP(链路发现协议)报文。LLDP 报文由 SDN 控制器发出,包含了 Chassis ID 和 Port ID,用于标记交换机的端口信息,使得 SDN 控制器可以将指定的转发规则下发到指定的交换机端口上。
ironic + native vlan +SDN lldp
标签:inf 自动 str inspect pre 分析 图片 mem 包括
原文地址:https://www.cnblogs.com/dream397/p/12910944.html