Hi Vinicius ,
Yes, I do run makedhcp. :-)
Here is the partial raw output of the shell script that I have used
all the time.
-----------output begin --------------------
+ echo '172.16.10.7 is not in /etc/hosts and is unused'
172.16.10.7 is not in /etc/hosts and is unused
+ logger export IPPADDR=172.16.10.7
+ comm=
+ for var in "$@"
+ comm=' export'
+ for var in "$@"
+ comm=' export IPPADDR=172.16.10.7'
+ '[' comm == '' ']'
+ comm='export IPPADDR=172.16.10.7'
+ echo export IPPADDR=172.16.10.7
+ eval export IPPADDR=172.16.10.7
++ export IPPADDR=172.16.10.7
++ IPPADDR=172.16.10.7
+ break
+ logger nodeadd test-1 groups=rocky97 hosts.ip=172.16.10.7
+ comm=
+ for var in "$@"
+ comm=' nodeadd'
+ for var in "$@"
+ comm=' nodeadd test-1'
+ for var in "$@"
+ comm=' nodeadd test-1 groups=rocky97'
+ for var in "$@"
+ comm=' nodeadd test-1 groups=rocky97 hosts.ip=172.16.10.7'
+ '[' comm == '' ']'
+ comm='nodeadd test-1 groups=rocky97 hosts.ip=172.16.10.7'
+ echo nodeadd test-1 groups=rocky97 hosts.ip=172.16.10.7
+ eval nodeadd test-1 groups=rocky97 hosts.ip=172.16.10.7
++ nodeadd test-1 groups=rocky97 hosts.ip=172.16.10.7
++ echo 172.16.10.7
++ awk -F. '{$3+=4; OFS="."; print $1,$2,$3,$4}'
+ IB_ADDR=172.16.14.7
+ echo ' IB ADDR:---> 172.16.14.7'
IB ADDR:---> 172.16.14.7
++ echo 172.16.10.7
++ awk -F. '{$3+=6; OFS="."; print $1,$2,$3,$4}'
+ ROCE_ADDR=172.16.16.7
+ echo 'RoCE Address: 172.16.16.7'
RoCE Address: 172.16.16.7
++ echo 172.16.10.7
++ cut -d. -f1-3
+ getNetwork=172.16.10
+ [[ 172.16.10 == \1\7\2\.\1\6\.\1\0 ]]
+ _ipminetwork=172.16.12
++ echo 172.16.10.7
++ awk -F. '{print $4}'
+ ipmiLastOctet=7
++ echo 172.16.12.7
+ IPMI_ADDR=172.16.12.7
+ echo ' IPMI ADDR:---> 172.16.12.7'
IPMI ADDR:---> 172.16.12.7
+ chdef -t node -o test-1 nicips.ipmi=172.16.12.7
nichostnamesuffixes.ipmi=-ipmi
1 object definitions have been created or modified.
+ chdef -t node -o test-1 nicips.ib0=172.16.14.7
nichostnamesuffixes.ib0=-ib0
1 object definitions have been created or modified.
+ chdef -t node -o test-1 nicips.roce=172.16.16.7
nichostnamesuffixes.roce=-roce
1 object definitions have been created or modified.
+ [[ -z BC:24:11:1F:BF:8C ]]
+ [[ ! -z BC:24:11:1F:BF:8C ]]
+ validate_mac BC:24:11:1F:BF:8C
+ MAC_ADDR=BC:24:11:1F:BF:8C
++ echo BC:24:11:1F:BF:8C
++ egrep '^([0-9A-F]{2}:){5}[0-9A-F]{2}$'
egrep: warning: egrep is obsolescent; using grep -E
+ '[' BC:24:11:1F:BF:8C ']'
+ echo '--> INFO: MAC address input- BC:24:11:1F:BF:8C'
--> INFO: MAC address input- BC:24:11:1F:BF:8C
+ chdef test-1 mac=BC:24:11:1F:BF:8C
1 object definitions have been created or modified.
+ [[ ! -z '' ]]
+ chdef -t node test-1 netboot=xnba
1 object definitions have been created or modified.
+ logger makehosts test-1
+ comm=
+ for var in "$@"
+ comm=' makehosts'
+ for var in "$@"
+ comm=' makehosts test-1'
+ '[' comm == '' ']'
+ comm='makehosts test-1'
+ echo makehosts test-1
+ eval makehosts test-1
++ makehosts test-1
+ logger makedns test-1
+ comm=
+ for var in "$@"
+ comm=' makedns'
+ for var in "$@"
+ comm=' makedns test-1'
+ '[' comm == '' ']'
+ comm='makedns test-1'
+ echo makedns test-1
+ eval makedns test-1
++ makedns test-1
Handling test-1 in /etc/hosts.
Handling test-1-ipmi in /etc/hosts.
Handling test-1-roce in /etc/hosts.
Handling test-1-ib0 in /etc/hosts.
Getting reverse zones, this may take several minutes for a large cluster.
Completed getting reverse zones.
Updating zones.
Completed updating zones.
Updating DNS records, this may take several minutes for a large cluster.
Completed updating DNS records.
DNS setup is completed
+ echo '---> INFO: MAC address based install, skipping setting UUID'
---> INFO: MAC address based install, skipping setting UUID
+ logger makedhcp test-1
+ comm=
+ for var in "$@"
+ comm=' makedhcp'
+ for var in "$@"
+ comm=' makedhcp test-1'
+ '[' comm == '' ']'
+ comm='makedhcp test-1'
*+ echo makedhcp test-1+ eval makedhcp test-1++ makedhcp test-1*
+ prefix=' provmethod='
++ lsdef test-1
++ grep provmethod
+ provout=' provmethod=rocky9.7-x86_64-install-compute'
+ logger nodeset test-1 osimage=rocky9.7-x86_64-install-compute
+ comm=
+ for var in "$@"
+ comm=' nodeset'
+ for var in "$@"
+ comm=' nodeset test-1'
+ for var in "$@"
+ comm=' nodeset test-1 osimage=rocky9.7-x86_64-install-compute'
+ '[' comm == '' ']'
+ comm='nodeset test-1 osimage=rocky9.7-x86_64-install-compute'
+ echo nodeset test-1 osimage=rocky9.7-x86_64-install-compute
+ eval nodeset test-1 osimage=rocky9.7-x86_64-install-compute
++ nodeset test-1 osimage=rocky9.7-x86_64-install-compute
test-1: install rocky9.7-x86_64-compute
+ echo
+ echo 'IPPADDR : 172.16.10.7'
IPPADDR : 172.16.10.7
+ echo
------------- output end ------------------
Here is the reservation block from /etc/kea/kea-dhcp4.conf:
"reservations" : [
{
"hostname" : "test-1",
"hw-address" : "bc:24:11:1f:bf:8c",
"ip-address" : "172.16.10.6",
"next-server" : "172.16.10.4",
"option-data" : [
{
"data" : "test-1",
"name" : "host-name"
}
]
--imam
On Fri, Jul 31, 2026 at 9:13 AM Vinícius Ferrão <[email protected]>
wrote:
> Hi Imam,
>
> Have you run `makedhcp`?
>
> Check the other message I've sent, so we can guarantee that the MAC
> reservation was on Kea table.
>
> It looks like the reservation isn't there.
>
> If you didn't run `makedhcp`, did you never did that way? If yes this
> should be the regression.
>
> Regards,
>
> On 31 Jul 2026, at 13:00, Imam Toufique <[email protected]> wrote:
>
> Hi Vinícius,
>
> I did static mkdef setting.
>
> root@poc2-mgmt:~# lsdef -t node test-1
> Object name: test-1
> addkcmdline=R::consoleblank=0 R::intel_idle.max_cstate=0
> R::cgroup_enable=memory R::swapaccount=1
> arch=x86_64
> currchain=boot
> currstate=install rocky9.7-x86_64-compute
> groups=rocky97
> ip=172.16.10.6
> mac=BC:24:11:1F:BF:8C
> netboot=xnba
> nichostnamesuffixes.ipmi=-ipmi
> nichostnamesuffixes.roce=-roce
> nichostnamesuffixes.ib0=-ib0
> nicips.ib0=172.16.14.6
> nicips.ipmi=172.16.12.6
> nicips.roce=172.16.16.6
> os=rocky9.7
> postbootscripts=otherpkgs
>
> postscripts=syslog,remoteshell,syncfiles,setupntp,rcic-postscripts/postscript,confignetwork
> -s
> profile=compute
> provmethod=rocky9.7-x86_64-install-compute
>
> root@poc2-mgmt:~# tabdump networks
>
> #netname,net,mask,mgtifname,gateway,dhcpserver,tftpserver,nameservers,ntpservers,logservers,dynamicrange,staticrange,staticrangeincrement,nodehostname,ddnsdomain,vlanid,domain,mtu,comments,disable
>
> "poc_net","172.16.10.0","255.255.255.0","enp3s0f0","172.16.10.1",,"<xcatmaster>","172.16.10.4,8.8.8.8,128.200.192.202",,,"172.16.10.240-172.16.10.254","172.16.10.4-172.16.10.239",,,,,"local","1500",,
>
> "poc_ipmi","172.16.14.0","255.255.255.0",,"172.16.14.1",,,,,,"172.16.14.240-172.16.14.254","172.16.14.240-4.16.14.239",,,,,,,,
>
> "poc_ib","172.16.12.0","255.255.255.0",,"172.16.12.1",,,,,,"172.16.12.240-172.16.12.254","172.16.12.4-172.16.12.239",,,,,,,,
>
> "poc_roce","172.16.16.0","255.255.255.0",,"172.16.16.1",,,,,,"172.16.16.240-172.16.16.254","172.16.14.4-172.16.14.239",,,,,,,,
>
>
> root@poc2-mgmt:~# lsdef -t networks poc_net
> Error: [poc2-mgmt]:
> Type 'networks' is not a valid xCAT object type.
> root@poc2-mgmt:~# lsdef -t network poc_net
> Object name: poc_net
> domain=local
> dynamicrange=172.16.10.240-172.16.10.254
> gateway=172.16.10.1
> mask=255.255.255.0
> mgtifname=enp3s0f0
> mtu=1500
> nameservers=172.16.10.4,8.8.8.8,128.200.192.202
> net=172.16.10.0
> staticrange=172.16.10.4-172.16.10.239
> tftpserver=<xcatmaster>
>
> I have always used this way , with a script:
>
> for example, these are the basic commands I use:
>
> $ nodeadd test-1 groups=rocky97 hosts.ip=172.16.10.6
> $ chdef test-1 mac=BC:24:11:1F:BF:8C
> $ chdef -t node test-1 netboot=xnba
> $ makehosts test-1
> $ makedns test-1
>
> Yes, I see that the node does not use the IP assigned to it, which I
> suspect is not being passed to Anaconda.
> Thanks!
>
> On Fri, Jul 31, 2026 at 8:05 AM Vinícius Ferrão <[email protected]>
> wrote:
>
>> Hello Imam,
>>
>> The problem as I could see is that the VM has changed the IP address so
>> xcatd will not be able to manage the system.
>>
>> Now... why it changed the IP address?
>>
>> To find out, how did you tried to provision the node?
>>
>> 1. Using Genesis
>> 2. Static mkdef setting
>>
>> Can you send the output of the commands:
>>
>> 1. lsdef -t node <name-of-the-node>?
>> 2. tabdump networks
>>
>> Thanks,
>>
>>
>> On 31 Jul 2026, at 01:05, Vinícius Ferrão via xCAT-user <
>> [email protected]> wrote:
>>
>> Should not have been an issue, but we seen issues with some para
>> virtualized NICs.
>>
>> Let me tackle the issue. I will try to replicate it here.
>>
>> Sent from my iPhone
>>
>> On 31 Jul 2026, at 01:01, Imam Toufique <[email protected]> wrote:
>>
>>
>> HI there,
>>
>> Yes, the headnode is a physical server running Rocky 10.2 . Compute node
>> is a VM running in proxmox , using QEMU .
>>
>> Does this have anything to do with the VM ? I mean... I never had to
>> any issues with other versions of xcat.
>> --imam
>>
>>
>>
>> On Thu, Jul 30, 2026 at 8:52 PM Vinícius Ferrão via xCAT-user <
>> [email protected]> wrote:
>>
>>> Hi Imam,
>>>
>>> If I understood correctly you are with this setup:
>>>
>>> Headnode: Rocky 10.2
>>> Compute Node: Rocky 9.7
>>>
>>> You mentioned the first VM. Is it a virtualized xCAT install? If yes
>>> which hypervisor are you using? KVM with QEMU?
>>>
>>> Regards,
>>>
>>> On 31 Jul 2026, at 00:22, Imam Toufique <[email protected]> wrote:
>>>
>>> I need some help with new xcat build , as I did not have the following
>>> problems before...
>>>
>>> I installed the 2.18.0 in a inewly installed Rocky 10.2 system , set it
>>> up and this is what I got for my first VM build . The build was for Rocky
>>> Linux 9.7 .
>>>
>>> Here are the problems I am having:
>>>
>>> A. in /etc/httpd/conf.d/xcat.conf file, /install Directive is missing
>>> "Indexes" . See below. Without that , the VM would boot up , and then
>>> stall.
>>>
>>> <Directory "/install">
>>> Options FollowSymLinks Includes MultiViews
>>> AllowOverride None
>>> Require all granted
>>> </Directory>
>>>
>>> B. After ( hopefully ) fix of #A ( above ), build starts and get into
>>> postinstall. But, it does not finish , I can't tell what might be wrong
>>> here, as I never had to look for problems here in the past 8 years of
>>> running xcat.
>>>
>>> Here is the /var/log/xcat/xcat.log from the VM ( node ) that I built:
>>>
>>> [root@test-1 ~]# cat /var/log/xcat/xcat.log
>>> Running Kickstart Post-installation script...
>>> Thu Jul 30 19:56:18 PDT 2026 [info]: xcat.deployment: Executing
>>> post.xcat to prepare for firstbooting ...
>>> Thu Jul 30 19:56:27 PDT 2026 [info]: xcat.deployment: trying to download
>>> postscripts from 172.16.10.4...
>>> Thu Jul 30 19:56:28 PDT 2026 [info]: xcat.deployment: postscripts
>>> downloaded successfully
>>> Thu Jul 30 19:56:28 PDT 2026 [info]: xcat.deployment: trying to get
>>> mypostscript from 172.16.10.4...
>>> Thu Jul 30 19:58:35 PDT 2026 [info]: xcat.deployment: finished firstboot
>>> preparation, sending request to172.16.10.4:3002 for changing status...
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: flag update failed
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: flag update failed
>>> Thu Jul 30 08:02:42 PM PDT 2026 [info]: xcat.deployment: Running
>>> /xcatpost/mypostscript.post
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: Retrying flag update
>>> updateflag.awk: flag update failed
>>> Thu Jul 30 08:04:32 PM PDT 2026 [info]: xcat.deployment: /xcatpost/
>>> mypostscript.post return
>>> Thu Jul 30 08:04:32 PM PDT 2026 [info]: xcat.deployment:
>>> =============deployment ending====================
>>>
>>> Looks like it downloads all the postscripts and my postscripts are also
>>> there in /xcatpost directory.
>>>
>>> Here is how I added my postscripts ( just like I had done before in my
>>> production cluster ) .
>>>
>>> root@poc2-mgmt:/etc/httpd/conf.d# lsdef -t group rocky97
>>> Object name: rocky97
>>> addkcmdline=R::consoleblank=0 R::intel_idle.max_cstate=0
>>> R::cgroup_enable=memory R::swapaccount=1
>>> grouptype=static
>>> members=test-1
>>> netboot=xnba
>>> os=rocky9.7
>>> postscripts=setupntp,rcic-postscripts/postscript,confignetwork -s
>>> provmethod=rocky9.7-x86_64-install-compute
>>>
>>>
>>> My files are there:
>>>
>>> root@poc2-mgmt:/etc/httpd/conf.d# ls
>>> /install/postscripts/rcic-postscripts/postscript
>>> /install/postscripts/rcic-postscripts/postscript
>>>
>>> C. In my production version of xcat ( 2.17.0-snap202411131534.noarch )
>>> when node started to install , I was able to ping the node . On this
>>> version , the install starts , but I can't ping the node. The IP that is
>>> assigned to it , it does not use the IP , it uses the DHCP address and
>>> keeps using the DHCP address even after the node boots ( broken in the
>>> postscripts ).
>>>
>>> So, exameple:
>>>
>>> root@poc2-mgmt:/etc/httpd/conf.d# nslookup test-1
>>> Server: 127.0.0.1
>>> Address: 127.0.0.1#53
>>>
>>> Name: test-1.local
>>> Address: 172.16.10.6
>>>
>>> root@poc2-mgmt:/etc/httpd/conf.d#
>>> root@poc2-mgmt:/etc/httpd/conf.d#
>>> root@poc2-mgmt:/etc/httpd/conf.d# ping -c 3 test-1
>>> PING test-1 (172.16.10.6) 56(84) bytes of data.
>>> From poc2-mgmt (172.16.10.4) icmp_seq=1 Destination Host Unreachable
>>> From poc2-mgmt (172.16.10.4) icmp_seq=2 Destination Host Unreachable
>>> From poc2-mgmt (172.16.10.4) icmp_seq=3 Destination Host Unreachable
>>>
>>> --- test-1 ping statistics ---
>>> 3 packets transmitted, 0 received, +3 errors, 100% packet loss, time
>>> 2030ms
>>> pipe 3
>>>
>>> While looking at the node , it has the DHCP address:
>>>
>>> 2: ens18: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel
>>> state UP group default qlen 1000
>>> link/ether bc:24:11:1f:bf:8c brd ff:ff:ff:ff:ff:ff
>>> altname enp0s18
>>> inet *172.16.10.241/ <http://172.16.10.241/>*24 brd 172.16.10.255
>>> scope global dynamic noprefixroute ens18
>>> valid_lft 35688sec preferred_lft 35688sec
>>> inet6 fe80::be24:11ff:fe1f:bf8c/64 scope link noprefixroute
>>> valid_lft forever preferred_lft forever
>>> [root@test-1 ~]#
>>>
>>> the node does not have any ifcfg-xcat-interfaceX file in
>>> /etc/sysconfig/network-scripts/ directory.
>>>
>>> I must be missing something , not sure what I am missing. If someone
>>> from the current xCAT team can help shed some light into this , that would
>>> be great.
>>>
>>> thanks.
>>> _______________________________________________
>>> xCAT-user mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/xcat-user
>>>
>>>
>>> _______________________________________________
>>> xCAT-user mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/xcat-user
>>>
>>
>>
>> --
>> Regards,
>> *Imam Toufique*
>> *213-700-5485*
>>
>> _______________________________________________
>> xCAT-user mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/xcat-user
>>
>>
>>
>
> --
> Regards,
> *Imam Toufique*
> *213-700-5485*
>
>
>
--
Regards,
*Imam Toufique*
*213-700-5485*
_______________________________________________
xCAT-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xcat-user