Version: $ openshift-install version 4.8 (current master Platform: OpenStack / IPI What happened? When doing a disconnected install, using HTTP proxy to reach external networks, the bootstrap ignition shim isn't aware of the Proxy env, and tries to reach the OpenStack Glance server without proxy; which is problematic in disconnected environment. What did you expect to happen? The traffic to reach Glance should go through the proxy. How to reproduce it (as minimally and precisely as possible)? Run the deployment with: proxy: httpProxy: http://your-proxy Bootstrap will not reach ignition file via the proxy.
Verified in 4.8.0-0.nightly-2021-05-07-011724 on top of OSP 13.0.15 (2021-03-24.1) with TLS (and self-signed cert) in public endpoints enabled. A squid proxy has been deployed and configured in install-config.yaml: proxy: httpProxy: "http://dummy:dummy@10.46.22.225:3128" httpsProxy: "https://dummy:dummy@10.46.22.225:3130" noProxy: oauth-openshift.apps.ostest.shiftstack.com In OCP 4.8, as the cacert param from the clouds.yaml is considered instead of system wide CA trust bundle, the cacert param in clouds.yaml needs to point to a pem file that includes both proxy's CA cert and Openstack's CA cert. On the other hand, the proxy has Openstack's CA cert in it's trusted bundle. 10.46.22.225 is the proxy's IP 10.46.22.204:13292 is Openstack Glance API endpoint 10.46.22.227 is the bootstrap VM's IP $ openstack server list +--------------------------------------+------------------------+--------+----------------------------------------------------+---------------------------------------+-----------+ | ID | Name | Status | Networks | Image | Flavor | +--------------------------------------+------------------------+--------+----------------------------------------------------+---------------------------------------+-----------+ |... | 1c105c2c-715e-4eb9-a273-b62e50fb8a88 | ostest-jkdd4-bootstrap | ACTIVE | ostest-jkdd4-openshift=10.196.3.155, 10.46.22.227 | ostest-jkdd4-rhcos | m4.xlarge | |... +--------------------------------------+------------------------+--------+----------------------------------------------------+---------------------------------------+-----------+ The bootstrap VM shows this message when booting up: [ 10.238539] ignition[710]: GET https://10.46.22.204:13292//v2/images/3f617377-5b30-4a6f-a8dc-ce7cdefce4fe/file: attempt #1 [ 12.489092] ignition[710]: GET result: OK And the access.log squid file shows: 1620815018.229 1303 10.46.22.227 TCP_TUNNEL/200 290642 CONNECT 10.46.22.204:13292 - HIER_DIRECT/10.46.22.204 - which means the tunnel between the bootstrap (10.46.22.227) and OSP glance endpoint (10.46.22.204:13292) has been stablished. I've run additional comprobations by stopping the proxy server when the bootstrap VM is booting up, and got this messages from the VM: [ 10.167655] ignition[708]: GET https://10.46.22.204:13292//v2/images/0cbba449-71ba-49ec-a86b-b6cbf4e7c40f/file: attempt #1 [ 10.253845] ignition[708]: GET error: Get "https://10.46.22.204:13292//v2/images/0cbba449-71ba-49ec-a86b-b6cbf4e7c40f/file": proxyconnect tcp: dial tcp 10.46.22.225:3130: connect: connection refused [ 10.454077] ignition[708]: GET https://10.46.22.204:13292//v2/images/0cbba449-71ba-49ec-a86b-b6cbf4e7c40f/file: attempt #2 [ 10.460508] ignition[708]: GET error: Get "https://10.46.22.204:13292//v2/images/0cbba449-71ba-49ec-a86b-b6cbf4e7c40f/file": proxyconnect tcp: dial tcp 10.46.22.225:3130: connect: connection refused [ 10.856208] ignition[708]: GET https://10.46.22.204:13292//v2/images/0cbba449-71ba-49ec-a86b-b6cbf4e7c40f/file: attempt #3 [ 10.862020] ignition[708]: GET error: Get "https://10.46.22.204:13292//v2/images/0cbba449-71ba-49ec-a86b-b6cbf4e7c40f/file": proxyconnect tcp: dial tcp 10.46.22.225:3130: connect: connection refused [ 11.658310] ignition[708]: GET https://10.46.22.204:13292//v2/images/0cbba449-71ba-49ec-a86b-b6cbf4e7c40f/file: attempt #4 [ 11.663929] ignition[708]: GET error: Get "https://10.46.22.204:13292//v2/images/0cbba449-71ba-49ec-a86b-b6cbf4e7c40f/file": proxyconnect tcp: dial tcp 10.46.22.225:3130: connect: connection refused [ 13.260938] ignition[708]: GET https://10.46.22.204:13292//v2/images/0cbba449-71ba-49ec-a86b-b6cbf4e7c40f/file: attempt #5 [ 13.267148] ignition[708]: GET error: Get "https://10.46.22.204:13292//v2/images/0cbba449-71ba-49ec-a86b-b6cbf4e7c40f/file": proxyconnect tcp: dial tcp 10.46.22.225:3130: connect: connection refused which means 1. the GET request is towards OSP glance API (10.46.22.204), so it's transparent proxy 2. the proxy is correctly configured as it fails with the connection refused from the proxy (10.46.22.225)
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Moderate: OpenShift Container Platform 4.8.2 bug fix and security update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2021:2438