简介
本文档介绍如何监控和排除从OpenStack平台导向器(OSPD)到Ultra-M中OpenStack计算节点的IP地址分配故障。
先决条件
要求
Cisco 建议您了解以下主题:
使用的组件
本文档中的信息基于Ultra 5.1.x版本。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
对于已部署的Ultra-M解决方案,正在使用Cisco UCS-C服务器。
在Ultra-M设置中,在云不足安装过程中,OSPD将IP地址分配给计算节点调配接口。
此接口用于预引导执行环境(在内省阶段)。
缩写
本文使用这些缩写
VNF |
虚拟网络功能 |
OSPD |
OpenStack平台导向器 |
DHCP |
动态主机配置协议 |
CIMC |
思科集成管理控制器 |
IPMI |
智能平台管理界面 |
PXE |
预引导执行环境 |
UCS |
思科统一计算系统 |
问题
在思科的Ultra-M解决方案中,在云不足安装过程中,OSPD将IP地址分配给计算节点调配接口。 此接口用于PXE引导(在内省阶段)。 如果此接口无法访问或IP地址分配不正确,内省将失败,整体云下安装也将失败。
解决方案
如果UCS在等待DHCP服务器提供DHCP服务时陷入引导状态,请按照以下步骤进行故障排除。
步骤1.确定UCS所连接的Catalyst端口并验证端口是否已启动并正在运行(show int gig x/x/x ->检查其是否已启动)。
步骤2.在内省运行时,验证交换机上的arp条目是否正确以及数据包的数量是否增加。
show int gig x/x/x | grep packet -> verify that the input/output packet increase (that means UCS is sending and receiving packets).
步骤3.如果步骤2的输出正常,请检查OSPD上的配置。池在基于5.1的版本的undercloud.conf中配置。
dhcp_start = 192.x.y.101
dhcp_end = 192.x.y.150
自6.0版起,dhcp的配置是vim-orch配置文件的一部分。
provisioning-network dhcp-ip-range start 192.x.y.101
provisioning-network dhcp-ip-range end 192.x.y.150
provisioning-network inspection-ip-range start 192.x.y.201
provisioning-network inspection-ip-range end 192.x.y.250
步骤4.现在,如果出现任何故障,您可以在/var/log/messages中进一步检查。
例如,如果是,您会看到以下内容:
"Dec 20 13:33:51 dnucs001-ospd dnsmasq-dhcp[5632]: DHCPDISCOVER(tap96912f54-41) 38:0e:4d:9c:ba:36 no address available"
这意味着OSPD无法将IP分配给UCS(内省过程将无法完成)。
请注意,OSPD希望DHCPDISCOVER作为第一条消息。如果在跟踪中看到仅收到BOOTP,则OSPD不会继续分配地址。如果UCS服务器和OSPD(非标准UltraM设计)之间有路由器,且面向UCS服务器的接口上未配置IP帮助地址OSPD-IP,则会出现这种情况。
C3750#show run inter vlan x
Building configuration...
Current configuration : 140 bytes
!
interface Vlan3
description CIMC/IPMI & OC External/VirtIO subnets
ip address 192.x.y.254 255.255.0.0
ip helper-address 192.x.y.1 <<<<<<<<<<< ADD THIS ONE POINTING AT OSPD's IP ADDRESS IN PROV/DHCP VLAN/SUBNET
end
步骤5.现在,进一步检查dhcp进程是否完全运行且运行正常,以及是否确实有可用的IP。
(注意RH漏洞:1301659)
[stack@bru-ospd-ultram-1 ~]$ systemctl list-units | grep dns openstack-ironic-inspector-dnsmasq.service loaded active running PXE boot dnsmasq service for Ironic Inspector
在详细信息中 — 查看分配给特定MAC的实际IP地址:
[stack@bru-ospd-ultram-1 ~]$ sudo systemctl status openstack-ironic-inspector-dnsmasq.service
● openstack-ironic-inspector-dnsmasq.service - PXE boot dnsmasq service for Ironic Inspector
Loaded: loaded (/usr/lib/systemd/system/openstack-ironic-inspector-dnsmasq.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2017-12-14 13:43:08 CET; 6 days ago
Process: 17511 ExecStart=/sbin/dnsmasq --conf-file=/etc/ironic-inspector/dnsmasq.conf (code=exited, status=0/SUCCESS)
Main PID: 17513 (dnsmasq)
CGroup: /system.slice/openstack-ironic-inspector-dnsmasq.service
└─17513 /sbin/dnsmasq --conf-file=/etc/ironic-inspector/dnsmasq.conf
Dec 14 15:31:53 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPREQUEST(br-ctlplane) 192.x.y.207 38:0e:4d:9c:97:c2
Dec 14 15:31:53 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPACK(br-ctlplane) 192.x.y.207 38:0e:4d:9c:97:c2
Dec 14 15:32:02 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPREQUEST(br-ctlplane) 192.x.y.206 38:0e:4d:9c:a4:46
Dec 14 15:32:02 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPACK(br-ctlplane) 192.x.y.206 38:0e:4d:9c:a4:46
Dec 14 15:32:17 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPREQUEST(br-ctlplane) 192.x.y.209 38:0e:4d:9c:9c:42
Dec 14 15:32:17 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPACK(br-ctlplane) 192.x.y.209 38:0e:4d:9c:9c:42
Dec 14 15:32:34 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPREQUEST(br-ctlplane) 192.x.y.208 38:0e:4d:9c:a3:6e
Dec 14 15:32:34 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPACK(br-ctlplane) 192.x.y.208 38:0e:4d:9c:a3:6e
Dec 14 15:32:39 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPREQUEST(br-ctlplane) 192.x.y.207 38:0e:4d:9c:97:c2
Dec 14 15:32:39 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPACK(br-ctlplane) 192.x.y.207 38:0e:4d:9c:97:c2
也可以通过 sudo journalctl -u openstack-iron-inspector-dnsmasq。
(根据RH文档:排除导向器问题)
[stack@bru-ospd-ultram-1 ~]$ sudo journalctl -u openstack-ironic-inspector-dnsmasq
-- Logs begin at Mon 2017-12-04 10:26:05 CET, end at Thu 2017-12-21 10:30:36 CET. --
Dec 12 18:02:19 bru-ospd-ultram-1.cisco.com systemd[1]: Starting PXE boot dnsmasq service for Ironic Inspector...
Dec 12 18:02:19 bru-ospd-ultram-1.cisco.com dnsmasq[1105]: dnsmasq: unknown interface br-ctlplane
Dec 12 18:02:19 bru-ospd-ultram-1.cisco.com systemd[1]: openstack-ironic-inspector-dnsmasq.service: control process exited, code=
Dec 12 18:02:19 bru-ospd-ultram-1.cisco.com systemd[1]: Failed to start PXE boot dnsmasq service for Ironic Inspector.
Dec 12 18:02:19 bru-ospd-ultram-1.cisco.com systemd[1]: Unit openstack-ironic-inspector-dnsmasq.service entered failed state.
Dec 12 18:02:19 bru-ospd-ultram-1.cisco.com systemd[1]: openstack-ironic-inspector-dnsmasq.service failed.
-- Reboot --
Dec 13 17:56:31 bru-ospd-ultram-1.cisco.com systemd[1]: Starting PXE boot dnsmasq service for Ironic Inspector...
Dec 13 17:56:31 bru-ospd-ultram-1.cisco.com dnsmasq[1108]: dnsmasq: unknown interface br-ctlplane
Dec 13 17:56:31 bru-ospd-ultram-1.cisco.com systemd[1]: openstack-ironic-inspector-dnsmasq.service: control process exited, code=
Dec 13 17:56:31 bru-ospd-ultram-1.cisco.com systemd[1]: Failed to start PXE boot dnsmasq service for Ironic Inspector.
Dec 13 17:56:31 bru-ospd-ultram-1.cisco.com systemd[1]: Unit openstack-ironic-inspector-dnsmasq.service entered failed state.
Dec 13 17:56:31 bru-ospd-ultram-1.cisco.com systemd[1]: openstack-ironic-inspector-dnsmasq.service failed.
Dec 14 13:43:08 bru-ospd-ultram-1.cisco.com systemd[1]: Starting PXE boot dnsmasq service for Ironic Inspector...
Dec 14 13:43:08 bru-ospd-ultram-1.cisco.com dnsmasq[17513]: started, version 2.66 DNS disabled
Dec 14 13:43:08 bru-ospd-ultram-1.cisco.com dnsmasq[17513]: compile time options: IPv6 GNU-getopt DBus no-i18n IDN DHCP DHCPv6 no
Dec 14 13:43:08 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCP, IP range 192.x.y.201 -- 192.x.y.250, lease time 2m
Dec 14 13:43:08 bru-ospd-ultram-1.cisco.com systemd[1]: Started PXE boot dnsmasq service for Ironic Inspector.
Dec 14 15:26:56 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPDISCOVER(br-ctlplane) 84:3d:c6:99:2e:de
Dec 14 15:26:56 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPOFFER(br-ctlplane) 192.x.y.201 84:3d:c6:99:2e:de
Dec 14 15:26:59 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPDISCOVER(br-ctlplane) 84:3d:c6:98:d3:78
Dec 14 15:26:59 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPOFFER(br-ctlplane) 192.x.y.202 84:3d:c6:98:d3:78
Dec 14 15:26:59 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPREQUEST(br-ctlplane) 192.x.y.201 84:3d:c6:99:2e:de
Dec 14 15:26:59 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPACK(br-ctlplane) 192.x.y.201 84:3d:c6:99:2e:de
Dec 14 15:27:02 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPDISCOVER(br-ctlplane) 84:3d:c6:10:25:92
Dec 14 15:27:02 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPOFFER(br-ctlplane) 192.x.y.203 84:3d:c6:10:25:92
Dec 14 15:27:02 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPREQUEST(br-ctlplane) 192.x.y.202 84:3d:c6:98:d3:78
Dec 14 15:27:02 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPACK(br-ctlplane) 192.x.y.202 84:3d:c6:98:d3:78
Dec 14 15:27:02 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPREQUEST(br-ctlplane) 192.x.y.203 84:3d:c6:10:25:92
Dec 14 15:27:02 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPACK(br-ctlplane) 192.x.y.203 84:3d:c6:10:25:92
Dec 14 15:27:06 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPDISCOVER(br-ctlplane) 84:3d:c6:98:cd:24
Dec 14 15:27:06 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPOFFER(br-ctlplane) 192.x.y.204 84:3d:c6:98:cd:24
Dec 14 15:27:09 bru-ospd-ultram-1.cisco.com dnsmasq-dhcp[17513]: DHCPDISCOVER(br-ctlplane) 84:3d:c6:98:d0:f0
[stack@bru-ospd-ultram-1 ~]$