Satellite 6.6 on-demand packages failing to download
hi all,
satellite 6.6.3
test server rhel 8.1
I am testing RH Satellite 6.6 and configured 3x repositories:
rhel 8 baseos
rhel 8 appstream
satellite 6.6. tools
I am trying to install a katello-agent on a rhel8.1 test server to be managed by satellite; but I am getting 404 code. (in fact any package I try I get the same error message
My Satellite 'Default Repository download policy is set to "on-demand"' therefore it will pull file from rh cdn 'upon request'
On my Satellite server, therefore, I can not see the dir /var/lib/pulp/content/units/rpm being created ....
I would like to understand how to tshoot this issue, which seems to be between my Satellite server and rh cdn.
Comments, suggestions appreciated.
Responses
Hello,
/var/lib/pulp/content/units/rpm
would get the package even after it is downloaded "on demand". Once the request comes from a client, you should see in /var/log/httpd/foreman-ssl_access_ssl.log
logs like:
1.2.3.4 - - [04/Oct/2020:16:26:30 +0200] "GET /streamer/var/lib/pulp/content/units/rpm/2a/f09784333edd6f37518190677ee2e76854d2d8d96826f9cd048742a2818fe0/sos-3.8-6.el7.noarch.rpm?policy=........%3D%3D HTTP/1.1" 503 299 "-" "urlgrabber/3.10 yum/3.4.3"
1.2.3.4 - - [04/Oct/2020:16:26:30 +0200] "GET /pulp/repos/RedHat/Library/content/dist/rhel/server/7/7Server/x86_64/os/Packages/s/sos-3.8-6.el7.noarch.rpm HTTP/1.1" 302 - "-" "urlgrabber/3.10 yum/3.4.3"
where the 302
return code means redirect to squid
. I suspect there is some issue with this service (though it usually means 503 response, not 404..), so worth checking squid
and e.g. /var/log/squid/access.log
.
The 404 might suggest wrongly published pulp
repository with repo metadata pointing the package to a wrong location. Here it is worth checking:
cd /var/lib/pulp/published/yum/https/
# copy below argument from the above httpd log entry
file repos/RedHat/Library/content/dist/rhel/server/7/7Server/x86_64/os/Packages/s/sos-3.8-6.el7.noarch.rpm
The file should be broken symbolic link to /var/lib/pulp/content/units/rpm/
- which is fine. The destination will be filled by squid
on the first package request.
If the file does not exist, then the client attempts to fetch something outside the repo - worth checking what repo it is, where it is published and if the published dir has proper content.