User Tools

Site Tools


services:satellite

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
services:satellite [2021/03/24 20:04]
djgalloway
services:satellite [2023/01/17 12:22]
akraitman [DO NOT UPGRADE TO SATELLITE 6.5]
Line 3: Line 3:
 We have a Red Hat Satellite server running on ''​satellite.front.sepia.ceph.com''​ which is a VM in [[services:​RHEV]]. We have a Red Hat Satellite server running on ''​satellite.front.sepia.ceph.com''​ which is a VM in [[services:​RHEV]].
  
-It is configured to sync RHEL7.4 and RHEL7.5 ​repos daily. ​ This allows us to subscribe RHEL testnodes to the Satellite to do upstream Ceph testing.+It is configured to sync repos daily. ​ This allows us to subscribe RHEL testnodes to the Satellite to do upstream Ceph testing ​on RHEL.
  
 **Web Login**: https://​satellite.front.sepia.ceph.com\\ **Web Login**: https://​satellite.front.sepia.ceph.com\\
Line 24: Line 24:
  
 # First get the list of available products # First get the list of available products
-hammer> product list --organization-id ​1+hammer> product list --organization-id ​5
  
 ----|----------------------------------------------------------------------------------|-------------|--------------|--------------|------------------ ----|----------------------------------------------------------------------------------|-------------|--------------|--------------|------------------
 ID  | NAME                                                                             | DESCRIPTION | ORGANIZATION | REPOSITORIES | SYNC STATE        ID  | NAME                                                                             | DESCRIPTION | ORGANIZATION | REPOSITORIES | SYNC STATE       
 ----|----------------------------------------------------------------------------------|-------------|--------------|--------------|------------------ ----|----------------------------------------------------------------------------------|-------------|--------------|--------------|------------------
-234 | Red Hat Enterprise Linux Server ​                                                 |             | Ceph         | 19           | Syncing Complete. +712 | Red Hat Enterprise Linux Server ​                                                 |             | Ceph         | 19           | Syncing Complete. 
-58  ​| Red Hat Enterprise Linux High Availability for RHEL Server ​                      ​| ​            | Ceph         | 3            | Syncing Complete.+746 | Red Hat Enterprise Linux High Availability for RHEL Server ​                      ​| ​            | Ceph         | 3            | Syncing Complete.
  
  
 # Next get all the repositories available for that product (This will take a LONG time to return) # Next get all the repositories available for that product (This will take a LONG time to return)
-hammer> repository-set list --organization-id ​--product-id ​234+hammer> repository-set list --organization-id ​--product-id ​712
 -----|-----------|--------------------------------------------------------------------------------- -----|-----------|---------------------------------------------------------------------------------
 ID   | TYPE      | NAME                                                                            ​ ID   | TYPE      | NAME                                                                            ​
Line 42: Line 42:
 2476 | yum       | Red Hat Enterprise Linux 7 Server - Supplementary (RPMs) ​                       ​ 2476 | yum       | Red Hat Enterprise Linux 7 Server - Supplementary (RPMs) ​                       ​
  
-hammer> repository-set list --organization-id ​--product-id ​58+hammer> repository-set list --organization-id ​--product-id ​746
 2762 | yum  | Red Hat Enterprise Linux High Availability (for RHEL 7 Server) (RPMs) ​           2762 | yum  | Red Hat Enterprise Linux High Availability (for RHEL 7 Server) (RPMs) ​          
  
  
 # Next, enable the new version of RHEL for those repos # Next, enable the new version of RHEL for those repos
-hammer> repository-set enable --id 2463 --product-id ​234 --organization-id ​--releasever 7.8 --basearch x86_64+hammer> repository-set enable --id 2463 --product-id ​712 --organization-id ​--releasever 7.8 --basearch x86_64
 Repository enabled. Repository enabled.
-hammer> repository-set enable --id 2456 --product-id ​234 --organization-id ​--releasever 7.8 --basearch x86_64+hammer> repository-set enable --id 2456 --product-id ​712 --organization-id ​--releasever 7.8 --basearch x86_64
 Repository enabled. Repository enabled.
-hammer> repository-set enable --id 2476 --product-id ​234 --organization-id ​--releasever 7.8 --basearch x86_64+hammer> repository-set enable --id 2476 --product-id ​712 --organization-id ​--releasever 7.8 --basearch x86_64
 Repository enabled. Repository enabled.
-hammer> repository-set enable --id 2762 --product-id ​58 --organization-id ​--releasever 7.8 --basearch x86_64+hammer> repository-set enable --id 2762 --product-id ​746 --organization-id ​--releasever 7.8 --basearch x86_64
 Repository enabled. Repository enabled.
 </​code>​ </​code>​
Line 59: Line 59:
 **SHORT VERSION FOR RHEL7.9** **SHORT VERSION FOR RHEL7.9**
 <​code>​ <​code>​
-for id in 2463 2456 2476; do hammer -c /​etc/​hammer/​cli.modules.d/​foreman.yml repository-set enable --id $id --product-id ​234 --organization-id ​--releasever ​7.9 --basearch x86_64; done +RELEASEVER=7.9; ​for id in 2463 2456 2476; do hammer -c /​etc/​hammer/​cli.modules.d/​foreman.yml repository-set enable --id $id --product-id ​712 --organization-id ​--releasever ​$RELEASEVER ​--basearch x86_64; done 
-hammer -c /​etc/​hammer/​cli.modules.d/​foreman.yml repository-set enable --id 2762 --product-id ​58 --organization-id ​--releasever ​7.9 --basearch x86_64+hammer -c /​etc/​hammer/​cli.modules.d/​foreman.yml repository-set enable --id 2762 --product-id ​746 --organization-id ​--releasever ​$RELEASEVER ​--basearch x86_64
 </​code>​ </​code>​
  
Line 66: Line 66:
  
 <​code>​ <​code>​
-hammer> repository-set list --organization-id ​--product-id ​249+hammer> repository-set list --organization-id ​--product-id ​608
 -----|-----------|-------------------------------------------------------------------- -----|-----------|--------------------------------------------------------------------
 ID   | TYPE      | NAME                                                                ID   | TYPE      | NAME                                                               
Line 92: Line 92:
 -----|-----------|-------------------------------------------------------------------- -----|-----------|--------------------------------------------------------------------
  
-hammer> repository-set enable --organization-id ​--id 7416 --product-id ​249 --releasever 8.2 --basearch x86_64+hammer> repository-set enable --organization-id ​--id 7416 --product-id ​608 --releasever 8.2 --basearch x86_64
 Repository enabled. Repository enabled.
-hammer> repository-set enable --organization-id ​--id 7441 --product-id ​249 --releasever 8.2 --basearch x86_64+hammer> repository-set enable --organization-id ​--id 7441 --product-id ​608 --releasever 8.2 --basearch x86_64
 Repository enabled. Repository enabled.
  
-hammer> repository-set list --organization-id ​--product-id ​239+hammer> repository-set list --organization-id ​--product-id ​633
 -----|------|---------------------------------------------------------------- -----|------|----------------------------------------------------------------
 ID   | TYPE | NAME                                                            ID   | TYPE | NAME                                                           
Line 105: Line 105:
 7956 | yum  | Red Hat CodeReady Linux Builder for RHEL 8 x86_64 (Source RPMs) 7956 | yum  | Red Hat CodeReady Linux Builder for RHEL 8 x86_64 (Source RPMs)
 -----|------|---------------------------------------------------------------- -----|------|----------------------------------------------------------------
-hammer> repository-set enable --organization-id ​--id 7954 --product-id ​239 --releasever 8.2 --basearch x86_64+hammer> repository-set enable --organization-id ​--id 7954 --product-id ​633 --releasever 8.2 --basearch x86_64
 Repository enabled. Repository enabled.
  
 +</​code>​
 +
 +**SHORT VERSION FOR RHEL8.6**
 +<​code>​
 +RELEASEVER=8.6;​ hammer -c /​etc/​hammer/​cli.modules.d/​foreman.yml repository-set enable --organization-id 5 --id 7416 --product-id 608 --releasever $RELEASEVER;​ hammer -c /​etc/​hammer/​cli.modules.d/​foreman.yml repository-set enable --organization-id 5 --id 7441 --product-id 608 --releasever $RELEASEVER;​ hammer -c /​etc/​hammer/​cli.modules.d/​foreman.yml repository-set enable --organization-id 5 --id 7954 --product-id 633 --releasever $RELEASEVER
 </​code>​ </​code>​
  
Line 130: Line 135:
  
 ===== Errors and Fixes ===== ===== Errors and Fixes =====
-=== Unable to verify server'​s identity: [SSL: TLSV1_ALERT_UNKNOWN_CA] tlsv1 alert unknown ca (_ssl.c:​618) ===+==== Error: Loading repository '​rhel-8-for-x86_64-baseos-rpms'​ has failed ==== 
 +If RHEL clients are failing to perform yum/dnf transactions,​ check ''​dmesg -T''​ output on the Satellite server for OOM. 
 + 
 +<​code>​ 
 +[root@smithi077 ~]# dnf -v update 
 +Loaded plugins: builddep, changelog, config-manager,​ copr, debug, debuginfo-install,​ download, generate_completion_cache,​ groups-manager,​ kpatch, needs-restarting,​ playground, product-id, repoclosure,​ repodiff, repograph, repomanage, reposync, subscription-manager,​ uploadprofile 
 +Updating Subscription Management repositories. 
 +DNF version: 4.7.0 
 +cachedir: /​var/​cache/​dnf 
 +User-Agent: constructed:​ '​libdnf (Red Hat Enterprise Linux 8.6; generic; Linux.x86_64)'​ 
 +repo: using cache for: copr:​copr.fedorainfracloud.org:​ceph:​python3-asyncssh 
 +copr:​copr.fedorainfracloud.org:​ceph:​python3-asyncssh:​ using metadata from Tue 27 Jul 2021 07:25:39 PM UTC. 
 +repo: using cache for: epel 
 +epel: using metadata from Tue 09 Aug 2022 02:13:36 AM UTC. 
 +repo: using cache for: lab-extras 
 +lab-extras: using metadata from Thu 28 Jan 2021 11:16:50 PM UTC. 
 +Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) ​                                                                                                                                                                                       157 kB/s | 2.8 kB     ​00:​00 ​    
 +reviving: '​rhel-8-for-x86_64-appstream-rpms'​ can be revived - repomd matches. 
 +rhel-8-for-x86_64-appstream-rpms:​ using metadata from Mon 08 Aug 2022 05:07:41 AM UTC. 
 +Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) ​                                                                                                                                                                                           89 kB/s | 1.5 kB     ​00:​00 ​    
 +reviving: '​rhel-8-for-x86_64-baseos-rpms'​ can be revived - repomd matches. 
 +loading repo '​rhel-8-for-x86_64-baseos-rpms'​ failure: loading of MD_TYPE_PRIMARY has failed. 
 +Error: Loading repository '​rhel-8-for-x86_64-baseos-rpms'​ has failed 
 +</​code>​ 
 + 
 +After you resolve the OOM issue, you will need to resync the repository. ​ If BaseOS is the one that was failing: 
 +<​code>​ 
 +for id in $(hammer -c /​etc/​hammer/​cli.modules.d/​foreman.yml repository list | grep -i "​baseos"​ | awk '{ print $1 }'); do hammer -c /​etc/​hammer/​cli.modules.d/​foreman.yml repository synchronize --async --validate-contents true --id $id; done 
 +</​code>​ 
 + 
 +==== Unable to verify server'​s identity: [SSL: TLSV1_ALERT_UNKNOWN_CA] tlsv1 alert unknown ca (_ssl.c:​618) ​====
 <​code>​ <​code>​
 mv -f /​etc/​rhsm/​rhsm.conf.kat-backup /​etc/​rhsm/​rhsm.conf mv -f /​etc/​rhsm/​rhsm.conf.kat-backup /​etc/​rhsm/​rhsm.conf
Line 137: Line 172:
 yum reinstall http://​satellite.front.sepia.ceph.com/​pub/​katello-ca-consumer-latest.noarch.rpm yum reinstall http://​satellite.front.sepia.ceph.com/​pub/​katello-ca-consumer-latest.noarch.rpm
 </​code>​ </​code>​
 +
 +==== The DMI UUID of this host (00000000-0000-0000-0000-0CC47AD93748) matches other registered hosts ====
 +Satellite 6.4 and before didn't care if you reused a hostname and the UUID was never checked. ​ This was [[https://​access.redhat.com/​solutions/​4396951|introduced in 6.5]].
 +
 +An option to ignore this was [[https://​bugzilla.redhat.com/​show_bug.cgi?​id=1772199|added in 6.7]].
 +
 +<​code>​
 +[root@satellite ~]# grep uuid /​etc/​candlepin/​candlepin.conf ​
 +candlepin.use_system_uuid_for_matching=false
 +</​code>​
 +
 +Turns out this doesn'​t work.  So instead, I modified a file to throw a warning instead of an error if Candlepin detects a duplicate UUID.
 +<​code>​
 +# diff /​opt/​theforeman/​tfm/​root/​usr/​share/​gems/​gems/​katello-3.14.0.32/​app/​services/​katello/​registration_manager.rb.orig /​opt/​theforeman/​tfm/​root/​usr/​share/​gems/​gems/​katello-3.14.0.32/​app/​services/​katello/​registration_manager.rb
 +92c92,93
 +<         ​registration_error("​The DMI UUID of this host (%{uuid}) matches other registered hosts: %{existing}",​ uuid: host_uuid, existing: joined_hostnames(hosts))
 +---
 +> #        registration_error("​The DMI UUID of this host (%{uuid}) matches other registered hosts: %{existing}",​ uuid: host_uuid, existing: joined_hostnames(hosts))
 +>         ​Rails.logger.warn("​The DMI UUID of this host (%s) matches another host." % host_name)
 +</​code>​
 +
 +None of this actually ended up working so...
 +
 +====== Solved On SATELLITE 6.12 ======
 +
 +Despite this, in Jan 2023 we had to install a new Satellite instance, and it's version 6.12; this was chosen for allowing continued support, but initially suffered from the same issue. ​ A support case, https://​access.redhat.com/​support/​cases/#/​case/​03399123,​ was opened to deal with it and the solution was this - https://​github.com/​ceph/​ceph-cm-ansible/​pull/​717
 +https://​github.com/​ceph/​ceph-cm-ansible/​pull/​718
services/satellite.txt · Last modified: 2023/11/30 19:57 by dmick