Bug 1505286
| Summary: | katello-agent disables repos when katello is unreachable | ||
|---|---|---|---|
| Product: | Red Hat Satellite | Reporter: | Beat Rubischon <brubisch> |
| Component: | katello-agent | Assignee: | Jonathon Turel <jturel> |
| Status: | CLOSED CANTFIX | QA Contact: | Katello QA List <katello-qa-list> |
| Severity: | high | Docs Contact: | |
| Priority: | high | ||
| Version: | 6.2.12 | CC: | bbuckingham, brubisch, cdonnell, cwelton, itewksbu, jturel |
| Target Milestone: | Unspecified | Keywords: | Triaged |
| Target Release: | Unused | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2018-01-10 16:58:38 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 1122832 | ||
|
Description
Beat Rubischon
2017-10-23 08:26:02 UTC
Beat, Your reproduction steps do not quite match what is documented on access.redhat.com To summarize what is written there: # yum update --downloadonly # katello-service stop # yum update Below those steps is this: "On a self-registered Satellite, add the --cacheonly option to install all updated packages directly from the yum cache. If a kernel update occurs, make a note to reboot after the upgrade is complete. Do not reboot at this point." It looks like you're missing the `--cacheonly` flag which it appears you can do on `yum update` and `yum repolist`. Please give it a try and let me know if it works. Hi Jonathon, luckily we got 6.2.13 today and I had to upgrade my self registered Satellite. First I listed the repos: [root@sat62 ~]# yum repolist ... !rhel-7-server-rpms/7Server/x86_64 Red Hat Enterprise Linux 7 17808 !rhel-7-server-satellite-6.2-rpms/x86_64 Red Hat Satellite 6.2 (for 888 !rhel-7-server-satellite-tools-6.2-rpms/x86_64 Red Hat Satellite Tools 6. 132 !rhel-server-rhscl-7-rpms/7Server/x86_64 Red Hat Software Collectio 9309 And followed the instructions to upgrade a self registered Satellite: [root@sat62 ~]# yum update --downloadonly [root@sat62 ~]# katello-service stop [root@sat62 ~]# yum update --cacheonly ... Complete! Uploading Enabled Repositories Report Loaded plugins: product-id, subscription-manager Unable to upload Enabled Repositories Report <-- note this error Once this error appeared, several repos are no longer enabled: [root@sat62 ~]# yum repolist ... !rhel-7-server-rpms/7Server/x86_64 Red Hat Enterprise Linux 7 Server (RPM 17813 repolist: 17813 Hope this helps. BTW, the rest of the upgrade completed successful this time: [root@sat62 ~]# satellite-installer --scenario satellite --upgrade ... Upgrade completed! [root@sat62 ~]# reboot Once the Satellite is back, the repositories are reenabled: [root@sat62 ~]# yum repolist ... !rhel-7-server-rpms/7Server/x86_64 Red Hat Enterprise Linux 7 17813 !rhel-7-server-satellite-6.2-rpms/x86_64 Red Hat Satellite 6.2 (for 914 !rhel-7-server-satellite-tools-6.2-rpms/x86_64 Red Hat Satellite Tools 6. 135 !rhel-server-rhscl-7-rpms/7Server/x86_64 Red Hat Software Collectio 9309 I don't know if this disabling is by intention or by accident, in any case it's confusing. I'll check with the customer if the update is stuck once again as it was when updating to 6.2.12 and provide feedback. Beat, That is good news! What you're seeing with respect to the repos being disabled is a feature of yum. If Satellite is not running at the time of `yum repolist` then yum will disable the repo (if it's coming from Satellite, or otherwise unreachable). It looks like it's only temporarily based on what you are saying about the reboot. The 'Unable to upload Enabled Repositories Report' message does not have anything to do with those repos being disabled. In other words I think everything is normal. Shall we close this BZ or do you think there is still some action to be taken? Hi Jonathon, I made some further experiments to better understand the behavior of the disabled repos. Basically it can't be yum by itself, /etc/yum.repos.d is the only source if a repo is enabled or not. In case you would disable a repo by itself, it would never remember it was on. So far I was not able to reproduce the issue on a RHEL server attached to CDN. killing the default route triggers plenty of errors, but no disabling of repos. It seems to be something special in Satellite. One way to keep the repos enabled when katello is off is to disable the enabled_repos_upload and subscription-manager plugins: [root@sat62 ~]# yum repolist --disableplugin=enabled_repos_upload --disableplugin=subscription-manager Loaded plugins: package_upload, product-id, search-disabled-repos repo id repo name status !rhel-7-server-rpms/7Server/x86_64 Red Hat Enterprise Linux 7 17881 !rhel-7-server-satellite-6.2-rpms/x86_64 Red Hat Satellite 6.2 (for 914 !rhel-7-server-satellite-tools-6.2-rpms/x86_64 Red Hat Satellite Tools 6. 135 !rhel-server-rhscl-7-rpms/7Server/x86_64 Red Hat Software Collectio 9312 repolist: 28242 Enabling one of the plugins will immediately disable the repos. So far I do not see an issue on clients attached to a Satellite. They might disable their repos when the Satellite is off, but reenable them whenever it comes back again. The only major issue is a self subscribed Satellite, when the first command after a "katello-service stop" is something else then "yum update --cacheonly" the upgrade will fail. But I see also a further issue, in case the following "satellite-installer" requests another package (probably the case for yStream updates) it will fail. From my point of view we might close this BZ, but we have to introduce a fundamental discussion about the supportability of self subscribed Satellites - there are several key issues which are currently unaddressed. I plan to investigate in this direction. Beat, thank you for all the details you provided. I maintain that the enabled_repos_upload error is a red herring. There isn't any code within that manages repo enablement. I also consulted a developer of the subscription-manager plugin who confirmed that the plugin would not be disabling any repos unless instructed to from the satellite via content overrides which would not be retrievable when the services are stopped. Going to close this bug as we agreed. Since this can't be fixed, can the documentation at least be updated with the changes as per https://access.redhat.com/solutions/3222091#comments otherwise everyone is going to hit this bug while following the documentation I went ahead and opened a doc bug, https://bugzilla.redhat.com/show_bug.cgi?id=1536843 |