cloudpods icon indicating copy to clipboard operation
cloudpods copied to clipboard

[bug]pxe纳管物理机异常

Open hjoisajdoijsaid opened this issue 1 year ago • 19 comments

微信图片_20240717160937 在cloudpod平台使用pxe方式纳管物理机时,输入ipmi的IP地址时提示未创建,但是我已经在子网内创建了相应网段的pxe类型的子网和物理机类型的子网,求解答

hjoisajdoijsaid avatar Jul 17 '24 08:07 hjoisajdoijsaid

@hjoisajdoijsaid 需要创建一个 IPMI 类型的子网,包含那个 ipmi 地址

zexi avatar Jul 17 '24 08:07 zexi

2 纳管时报错: { "__reason__": "self.sendIpmiNicInfo: SendNicInfo: {\"error\":{\"class\":\"BadRequestError\",\"code\":400,\"details\":\"addNetif: {\\\"error\\\":{\\\"class\\\":\\\"BadRequestError\\\",\\\"code\\\":400,\\\"data\\\":{\\\"fields\\\":[\\\"0.0.0.0\\\"],\\\"id\\\":\\\"IP %!s(MISSING) not attach to any wire\\\"},\\\"details\\\":\\\"IP 0.0.0.0 not attach to any wire\\\"}}\",\"request\":{\"body\":\"{\\\"host\\\":{\\\"ip_addr\\\":\\\"0.0.0.0\\\",\\\"link_up\\\":true,\\\"mac\\\":\\\"9c:c2:c4:20:14:b3\\\",\\\"mtu\\\":1500,\\\"nic_type\\\":\\\"ipmi\\\",\\\"...erve\\\":true,\\\"reset\\\":true}}\",\"headers\":{\"Content-Length\":\"168\",\"Content-Type\":\"application/json\",\"User-Agent\":\"yunioncloud-go/201708\",\"X-Auth-Token\":\"*\",\"X-Yunion-Parent-Id\":\"\",\"X-Yunion-Peer-Service-Name\":\"baremetal\",\"X-Yunion-Remote-Addr\":\"default-region:30888\",\"X-Yunion-Span-Id\":\"0\",\"X-Yunion-Span-Name\":\"\",\"X-Yunion-Strace-Debug\":\"true\",\"X-Yunion-Strace-Id\":\"f253eb17\"},\"method\":\"POST\",\"url\":\"https://default-region:30888/hosts/940d5bfd-ff38-4bd6-8fdc-4b152bc10aed/add-netif\"}}}", "__stage__": "OnSyncConfigComplete", "__status__": "error" } 总是卡在ipmi配置验证这一步,点同步状态状态就会变成运行中,但是一点验证ipmi配置就会报错

hjoisajdoijsaid avatar Jul 17 '24 08:07 hjoisajdoijsaid

2 纳管时报错: { "reason": "self.sendIpmiNicInfo: SendNicInfo: {"error":{"class":"BadRequestError","code":400,"details":"addNetif: {\"error\":{\"class\":\"BadRequestError\",\"code\":400,\"data\":{\"fields\":[\"0.0.0.0\"],\"id\":\"IP %!s(MISSING) not attach to any wire\"},\"details\":\"IP 0.0.0.0 not attach to any wire\"}}","request":{"body":"{\"host\":{\"ip_addr\":\"0.0.0.0\",\"link_up\":true,\"mac\":\"9c:c2:c4:20:14:b3\",\"mtu\":1500,\"nic_type\":\"ipmi\",\"...erve\":true,\"reset\":true}}","headers":{"Content-Length":"168","Content-Type":"application/json","User-Agent":"yunioncloud-go/201708","X-Auth-Token":"*","X-Yunion-Parent-Id":"","X-Yunion-Peer-Service-Name":"baremetal","X-Yunion-Remote-Addr":"default-region:30888","X-Yunion-Span-Id":"0","X-Yunion-Span-Name":"","X-Yunion-Strace-Debug":"true","X-Yunion-Strace-Id":"f253eb17"},"method":"POST","url":"https://default-region:30888/hosts/940d5bfd-ff38-4bd6-8fdc-4b152bc10aed/add-netif"}}}", "stage": "OnSyncConfigComplete", "status": "error" } 总是卡在ipmi配置验证这一步,点同步状态状态就会变成运行中,但是一点验证ipmi配置就会报错

@hjoisajdoijsaid 是不是物理机的 bmc 上没有配置这个 ip ?

zexi avatar Jul 17 '24 08:07 zexi

3 bmc可以通过10.64.31.98 这个IP登录

hjoisajdoijsaid avatar Jul 17 '24 08:07 hjoisajdoijsaid

4 这个是bmc的配置 是少配置啥或者配置错了嘛

hjoisajdoijsaid avatar Jul 17 '24 08:07 hjoisajdoijsaid

*名称 *IPMI地址 *IPMI用户名 *IPMI密码 管理口MAC地址 管理口IP地址
SYM206-CPU-B1211-Node098 10.64.31.98 admin xxxxxxx 9c:c2:c4:4b:63:73 10.64.25.98

hjoisajdoijsaid avatar Jul 17 '24 08:07 hjoisajdoijsaid

4 这个是bmc的配置 是少配置啥或者配置错了嘛

@hjoisajdoijsaid 应该是有张网卡设置了 0.0.0.0 的 ip 导致的,看下其他网卡的 ip 设置?

zexi avatar Jul 17 '24 09:07 zexi

5

在bmc确实查看到有另一张网卡是0.0.0.0,但是我配置的时候指定了10.64.31.98,为何会找到0.0.0.0这个IP呢;这个有什么解决方案吗

hjoisajdoijsaid avatar Jul 17 '24 09:07 hjoisajdoijsaid

5 在bmc确实查看到有另一张网卡是0.0.0.0,但是我配置的时候指定了10.64.31.98,为何会找到0.0.0.0这个IP呢;这个有什么解决方案吗

@hjoisajdoijsaid 请问部署的是 v3.11.5 版本吗?我记得好像处理过 0.0.0.0 这个 ip 的情况

zexi avatar Jul 17 '24 12:07 zexi

版本如下: ocadm version: version.Info{Major:"0", Minor:"0", GitVersion:"v3.11.3-20240423.1", GitBranch:"tags/v3.11.3-20240423.1", GitCommit:"f8d30d14", GitTreeState:"clean", BuildDate:"2024-04-23T10:57:25Z", GoVersion:"go1.18.3", Compiler:"gc", Platform:"linux/amd64"} 我尝试修改bmc得配置将bmc原来的2张卡走单卡得情况该成走bond从而避免去找0.0.0.0,但是现在报mac地址无效 2 { "reason": "self.sendIpmiNicInfo: SendNicInfo: {"error":{"class":"InputParameterError","code":400,"details":"validateHostNetif: Invaild mac address : InputParameterError","request":{"body":{"host":{"link_up":true,"mac":"","mtu":1500,"nic_type":"ipmi","rate":100,"reset":true}},"headers":{"Content-Length":"87","Content-Type":"application/json","User-Agent":"yunioncloud-go/201708","X-Auth-Token":"*","X-Yunion-Parent-Id":"","X-Yunion-Peer-Service-Name":"baremetal","X-Yunion-Remote-Addr":"default-region:30888","X-Yunion-Span-Id":"0","X-Yunion-Span-Name":"","X-Yunion-Strace-Debug":"true","X-Yunion-Strace-Id":"c3357a80"},"method":"POST","url":"https://default-region:30888/hosts/86a665a3-cbc6-4c7e-8149-16eb087ab83d/add-netif"}}}", "stage": "OnSyncConfigComplete", "status": "error" } 机器得mac地址: 3

hjoisajdoijsaid avatar Jul 18 '24 04:07 hjoisajdoijsaid

4 baremetal得log

hjoisajdoijsaid avatar Jul 18 '24 06:07 hjoisajdoijsaid

/ # /opt/yunion/bin/baremetal-agent -v [I 240718 06:59:01 loader.init.0(loader.go:28)] Redfish drivers loaded! [I 240718 06:59:01 procutils.WaitZombieLoop(zombie_others.go:36)] My pid is not 1 and no need to wait zombies Yunion cloud version: { "major": "0", "minor": "0", "gitVersion": "v3.11.3", "gitBranch": "release/3.11", "gitCommit": "3ffea07d31", "gitTreeState": "dirty", "buildDate": "2024-04-24T02:53:53Z", "goVersion": "go1.18.2", "compiler": "gc", "platform": "linux/amd64" baremetal调用栈信息.txt 上面是baremetal得堆栈信息

hjoisajdoijsaid avatar Jul 18 '24 07:07 hjoisajdoijsaid

4 baremetal得log

@hjoisajdoijsaid 这个报错是 redfish 探测失败了,就需要在创建的时候把 pxe 启动的网卡 mac 填上,这样再试试?

zexi avatar Jul 18 '24 11:07 zexi

*名称 *IPMI地址 *IPMI用户名 *IPMI密码 管理口MAC地址 管理口IP地址 SYM206-CPU-B1211-Node098 10.64.31.98 admin xxxxxxx 9c:c2:c4:4b:63:73 10.64.25.98

这个是导入的模板

填过了,就是上面这个 pxe启动的网卡mac是指控制节点的mac还是要纳管物理机的mac

hjoisajdoijsaid avatar Jul 18 '24 11:07 hjoisajdoijsaid

@hjoisajdoijsaid 看报错还是创建 mac 地址为空,试试把这台机器删掉,然后不要用批量导入的模式,手动填表单试试。

zexi avatar Jul 18 '24 11:07 zexi

@hjoisajdoijsaid 看报错还是创建 mac 地址为空,试试把这台机器删掉,然后不要用批量导入的模式,手动填表单试试。

都试过,都是同样的报错

hjoisajdoijsaid avatar Jul 19 '24 02:07 hjoisajdoijsaid

界面上提示的这个获取IP地址0.0.0.0,以及非法的mac地址这2个问题; 针对这两个问题想问一下: baremetal是如何获取bmc 的mac地址和IP地址的,以及是如何获取服务器的mac地址的,为何我指定了bmc的IP他获取的是0.0.0.0,指定服务器的mac地址后他获取的却是空值

hjoisajdoijsaid avatar Jul 19 '24 02:07 hjoisajdoijsaid

界面上提示的这个获取IP地址0.0.0.0,以及非法的mac地址这2个问题; 针对这两个问题想问一下: baremetal是如何获取bmc 的mac地址和IP地址的,以及是如何获取服务器的mac地址的,为何我指定了bmc的IP他获取的是0.0.0.0,指定服务器的mac地址后他获取的却是空值

感觉那个 0.0.0.0 的 ip 地址是通过 ipmitool lan print 获取的,可以通过执行下面的命令看下实际是多少:

@hjoisajdoijsaid 执行这个 ipmitool 命令看下配置:

# 其中 xxxx 是机器 bmc 登录的密码
ipmitool -I lanplus -H 10.64.31.98 -p 623 -U admin -P xxxx lan print

然后那个 mac 地址,在物理机不支持 redfish api 的情况下是要手动填写的。

zexi avatar Jul 19 '24 06:07 zexi

界面上提示的这个获取IP地址0.0.0.0,以及非法的mac地址这2个问题; 针对这两个问题想问一下: baremetal是如何获取bmc 的mac地址和IP地址的,以及是如何获取服务器的mac地址的,为何我指定了bmc的IP他获取的是0.0.0.0,指定服务器的mac地址后他获取的却是空值

感觉那个 0.0.0.0 的 ip 地址是通过 ipmitool lan print 获取的,可以通过执行下面的命令看下实际是多少:

@hjoisajdoijsaid 执行这个 ipmitool 命令看下配置:

# 其中 xxxx 是机器 bmc 登录的密码
ipmitool -I lanplus -H 10.64.31.98 -p 623 -U admin -P xxxx lan print

然后那个 mac 地址,在物理机不支持 redfish api 的情况下是要手动填写的。

[root@SYM206-CPU-B1211-Node095 ~]# ipmitool -I lanplus -H 10.64.31.98 -p 623 -U admin lan print Password: Set in Progress : Set Complete Auth Type Support : MD5 Auth Type Enable : Callback : MD5 : User : MD5 : Operator : MD5 : Admin : MD5 : OEM : MD5 IP Address Source : Static Address IP Address : 10.64.31.98 Subnet Mask : 255.255.255.0 MAC Address : 9c:c2:c4:20:14:b2 SNMP Community String : AMI IP Header : TTL=0x40 Flags=0x40 Precedence=0x00 TOS=0x10 BMC ARP Control : ARP Responses Enabled, Gratuitous ARP Disabled Gratituous ARP Intrvl : 0.0 seconds Default Gateway IP : 10.64.31.254 Default Gateway MAC : d4:31:27:d0:a9:ae Backup Gateway IP : 0.0.0.0 Backup Gateway MAC : 00:00:00:00:00:00 802.1q VLAN ID : Disabled 802.1q VLAN Priority : 0 RMCP+ Cipher Suites : 0,1,2,3,6,7,8,11,12,15,16,17 Cipher Suite Priv Max : caaaaaaaaaaaXXX : X=Cipher Suite Unused : c=CALLBACK : u=USER : o=OPERATOR : a=ADMIN : O=OEM Bad Password Threshold : 3 Invalid password disable: yes Attempt Count Reset Int.: 200 User Lockout Interval : 300 这个是命令回显看起来是拿到eth0的网卡mac 9c:c2:c4:20:14:b2 和IP; 3 图片

mac地址是手动填写了的,模板和手动填都试过都行不通,看浏览器f12的提交的请求我输入的mac也确实传递过去了

hjoisajdoijsaid avatar Jul 19 '24 07:07 hjoisajdoijsaid