[tripleo, ironic] Error: Could not retrieve ... pxelinux.0
Hello:
I wanted to give the TripleO a try, so started follow our installation guide for Ussuri, and eventually made it to "openstack undercloud install". It fails with something like this:
Aug 28 10:10:53 undercloud puppet-user[48657]: Error: /Stage[main]/Ironic::Pxe/File[/var/lib/ironic/tftpboot/ipxe.efi]: Could not evaluate: Could not retrieve information from environment production source(s) file:/usr/share/ipxe/ipxe-x86_64.efi Aug 27 20:05:42 undercloud puppet-user[37048]: Error: /Stage[main]/Ironic::Pxe/Ironic::Pxe::Tftpboot_file[pxelinux.0]/File[/var/lib/ironic/tftpboot/pxelinux.0]: Could not evaluate: Could not retrieve information from environment production source(s) file:/tftpboot/pxelinux.0
Does anyone have an idea what it wants?
I added a couple of packages on the host system that provided the files mentioned in the message, but it made no difference. Ussuri is conteinerized anyway.
Since I'm very new to this, I have no clue where to look at all. The nearest task is a wrapper of some kind, so the install-undercloud.log looks like this:
2020-08-28 14:11:31.397 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] TASK [Run container-puppet tasks (generate config) during step 1 with paunch] *** 2020-08-28 14:11:31.397 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] Friday 28 August 2020 14:11:31 -0400 (0:00:00.302) 0:06:28.734 ********* 2020-08-28 14:11:32.223 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] changed: [undercloud] 2020-08-28 14:11:32.325 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] 2020-08-28 14:11:32.326 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] TASK [Wait for container-puppet tasks (generate config) to finish] ************* 2020-08-28 14:11:32.326 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] Friday 28 August 2020 14:11:32 -0400 (0:00:00.928) 0:06:29.663 ********* 2020-08-28 14:11:32.948 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] WAITING FOR COMPLETION: Wait for container-puppet tasks (generate config) to finish (1200 retries left). . . .
If anyone could tell roughly what is supposed to be going on here, it would be great. I may be able figure out the rest.
Greetings, -- Pete
I've seen this in the past if there is a mismatch between the host OS and the Containers. Centos7 host with centos8 containers or vice versa. Ussuri should be CentOS8 host OS and make sure you're pulling the correct containers. The Ironic containers have some pathing mismatches when the configuration gets generated around this. It used to be compatible but we broke it at some point when switching some of the tftp location bits.
Thanks, -Alex
On Fri, Aug 28, 2020 at 1:55 PM Pete Zaitcev zaitcev@redhat.com wrote:
Hello:
I wanted to give the TripleO a try, so started follow our installation guide for Ussuri, and eventually made it to "openstack undercloud install". It fails with something like this:
Aug 28 10:10:53 undercloud puppet-user[48657]: Error: /Stage[main]/Ironic::Pxe/File[/var/lib/ironic/tftpboot/ipxe.efi]: Could not evaluate: Could not retrieve information from environment production source(s) file:/usr/share/ipxe/ipxe-x86_64.efi Aug 27 20:05:42 undercloud puppet-user[37048]: Error: /Stage[main]/Ironic::Pxe/Ironic::Pxe::Tftpboot_file[pxelinux.0]/File[/var/lib/ironic/tftpboot/pxelinux.0]: Could not evaluate: Could not retrieve information from environment production source(s) file:/tftpboot/pxelinux.0
Does anyone have an idea what it wants?
I added a couple of packages on the host system that provided the files mentioned in the message, but it made no difference. Ussuri is conteinerized anyway.
Since I'm very new to this, I have no clue where to look at all. The nearest task is a wrapper of some kind, so the install-undercloud.log looks like this:
2020-08-28 14:11:31.397 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] TASK [Run container-puppet tasks (generate config) during step 1 with paunch] *** 2020-08-28 14:11:31.397 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] Friday 28 August 2020 14:11:31 -0400 (0:00:00.302) 0:06:28.734 ********* 2020-08-28 14:11:32.223 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] changed: [undercloud] 2020-08-28 14:11:32.325 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] 2020-08-28 14:11:32.326 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] TASK [Wait for container-puppet tasks (generate config) to finish] ************* 2020-08-28 14:11:32.326 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] Friday 28 August 2020 14:11:32 -0400 (0:00:00.928) 0:06:29.663 ********* 2020-08-28 14:11:32.948 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] WAITING FOR COMPLETION: Wait for container-puppet tasks (generate config) to finish (1200 retries left). . . .
If anyone could tell roughly what is supposed to be going on here, it would be great. I may be able figure out the rest.
Greetings, -- Pete
Dear Alex,
thanks for the reply. In my case, the undercloud is running on CenOS 8:
[stack@undercloud ~]$ cat /etc/redhat-release CentOS Linux release 8.2.2004 (Core)
What I'm trying to install is "upstream TripleO", if such a thing even exists. The packages are built for RHEL 8/CentOS 8, at least:
[stack@undercloud ~]$ rpm -qf /usr/bin/openstack python3-openstackclient-4.0.1-0.20200817052906.bff556c.el8.noarch [stack@undercloud ~]$ rpm -qf /usr/share/python-tripleoclient/undercloud.conf.sample python3-tripleoclient-12.3.2-0.20200820055917.c15d0d0.el8.noarch
I'm most curious about what a TripleO developer would do in this case. Surely there's a way to have some local repository of some yet unknown component, which I can then instrument or modify, and which is responsible for dealing with PXE. But what is it?
Yours, -- Pete
On Fri, 28 Aug 2020 14:00:11 -0600 Alex Schultz aschultz@redhat.com wrote:
I've seen this in the past if there is a mismatch between the host OS and the Containers. Centos7 host with centos8 containers or vice versa. Ussuri should be CentOS8 host OS and make sure you're pulling the correct containers. The Ironic containers have some pathing mismatches when the configuration gets generated around this. It used to be compatible but we broke it at some point when switching some of the tftp location bits.
Thanks, -Alex
On Fri, Aug 28, 2020 at 1:55 PM Pete Zaitcev zaitcev@redhat.com wrote:
Hello:
I wanted to give the TripleO a try, so started follow our installation guide for Ussuri, and eventually made it to "openstack undercloud install". It fails with something like this:
Aug 28 10:10:53 undercloud puppet-user[48657]: Error: /Stage[main]/Ironic::Pxe/File[/var/lib/ironic/tftpboot/ipxe.efi]: Could not evaluate: Could not retrieve information from environment production source(s) file:/usr/share/ipxe/ipxe-x86_64.efi Aug 27 20:05:42 undercloud puppet-user[37048]: Error: /Stage[main]/Ironic::Pxe/Ironic::Pxe::Tftpboot_file[pxelinux.0]/File[/var/lib/ironic/tftpboot/pxelinux.0]: Could not evaluate: Could not retrieve information from environment production source(s) file:/tftpboot/pxelinux.0
Does anyone have an idea what it wants?
I added a couple of packages on the host system that provided the files mentioned in the message, but it made no difference. Ussuri is conteinerized anyway.
Since I'm very new to this, I have no clue where to look at all. The nearest task is a wrapper of some kind, so the install-undercloud.log looks like this:
2020-08-28 14:11:31.397 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] TASK [Run container-puppet tasks (generate config) during step 1 with paunch] *** 2020-08-28 14:11:31.397 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] Friday 28 August 2020 14:11:31 -0400 (0:00:00.302) 0:06:28.734 ********* 2020-08-28 14:11:32.223 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] changed: [undercloud] 2020-08-28 14:11:32.325 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] 2020-08-28 14:11:32.326 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] TASK [Wait for container-puppet tasks (generate config) to finish] ************* 2020-08-28 14:11:32.326 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] Friday 28 August 2020 14:11:32 -0400 (0:00:00.928) 0:06:29.663 ********* 2020-08-28 14:11:32.948 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] WAITING FOR COMPLETION: Wait for container-puppet tasks (generate config) to finish (1200 retries left). . . .
If anyone could tell roughly what is supposed to be going on here, it would be great. I may be able figure out the rest.
Greetings, -- Pete
On Wed, Sep 2, 2020 at 12:10 PM Pete Zaitcev zaitcev@redhat.com wrote:
Dear Alex,
thanks for the reply. In my case, the undercloud is running on CenOS 8:
[stack@undercloud ~]$ cat /etc/redhat-release CentOS Linux release 8.2.2004 (Core)
What I'm trying to install is "upstream TripleO", if such a thing even exists. The packages are built for RHEL 8/CentOS 8, at least:
[stack@undercloud ~]$ rpm -qf /usr/bin/openstack python3-openstackclient-4.0.1-0.20200817052906.bff556c.el8.noarch [stack@undercloud ~]$ rpm -qf /usr/share/python-tripleoclient/undercloud.conf.sample python3-tripleoclient-12.3.2-0.20200820055917.c15d0d0.el8.noarch
I'm most curious about what a TripleO developer would do in this case. Surely there's a way to have some local repository of some yet unknown component, which I can then instrument or modify, and which is responsible for dealing with PXE. But what is it?
Since this is a puppet error, looking in puppet ironic for what to fix/address would be the first place to do this. Since we mount the puppet modules from the host system, you can debug by modifying the local modules under /usr/share/openstack-puppet/modules. In this particular error, it's trying to copy the ipxe file from /usr/share/ipxe/ in the container to a different folder. It seems like either the ipxe location has changed or the package is not installed in the container. You could launch an instance to inspect the contents of the container to troubleshoot. That being said, since we're not seeing this in any of the CI jobs, I wonder what your configuration(s) looks like and if you are pulling the correct containers/repos/etc.
Yours, -- Pete
On Fri, 28 Aug 2020 14:00:11 -0600 Alex Schultz aschultz@redhat.com wrote:
I've seen this in the past if there is a mismatch between the host OS and the Containers. Centos7 host with centos8 containers or vice versa. Ussuri should be CentOS8 host OS and make sure you're pulling the correct containers. The Ironic containers have some pathing mismatches when the configuration gets generated around this. It used to be compatible but we broke it at some point when switching some of the tftp location bits.
Thanks, -Alex
On Fri, Aug 28, 2020 at 1:55 PM Pete Zaitcev zaitcev@redhat.com wrote:
Hello:
I wanted to give the TripleO a try, so started follow our installation guide for Ussuri, and eventually made it to "openstack undercloud install". It fails with something like this:
Aug 28 10:10:53 undercloud puppet-user[48657]: Error: /Stage[main]/Ironic::Pxe/File[/var/lib/ironic/tftpboot/ipxe.efi]: Could not evaluate: Could not retrieve information from environment production source(s) file:/usr/share/ipxe/ipxe-x86_64.efi Aug 27 20:05:42 undercloud puppet-user[37048]: Error: /Stage[main]/Ironic::Pxe/Ironic::Pxe::Tftpboot_file[pxelinux.0]/File[/var/lib/ironic/tftpboot/pxelinux.0]: Could not evaluate: Could not retrieve information from environment production source(s) file:/tftpboot/pxelinux.0
Does anyone have an idea what it wants?
I added a couple of packages on the host system that provided the files mentioned in the message, but it made no difference. Ussuri is conteinerized anyway.
Since I'm very new to this, I have no clue where to look at all. The nearest task is a wrapper of some kind, so the install-undercloud.log looks like this:
2020-08-28 14:11:31.397 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] TASK [Run container-puppet tasks (generate config) during step 1 with paunch] *** 2020-08-28 14:11:31.397 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] Friday 28 August 2020 14:11:31 -0400 (0:00:00.302) 0:06:28.734 ********* 2020-08-28 14:11:32.223 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] changed: [undercloud] 2020-08-28 14:11:32.325 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] 2020-08-28 14:11:32.326 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] TASK [Wait for container-puppet tasks (generate config) to finish] ************* 2020-08-28 14:11:32.326 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] Friday 28 August 2020 14:11:32 -0400 (0:00:00.928) 0:06:29.663 ********* 2020-08-28 14:11:32.948 60599 WARNING tripleoclient.v1.tripleo_deploy.Deploy [ ] WAITING FOR COMPLETION: Wait for container-puppet tasks (generate config) to finish (1200 retries left). . . .
If anyone could tell roughly what is supposed to be going on here, it would be great. I may be able figure out the rest.
Greetings, -- Pete
participants (2)
-
Alex Schultz
-
Pete Zaitcev