Skip to content

Commit a6fcd25

Browse files
bangelicaneta-petrova
authored andcommitted
Change disconnected upgrade steps (#4164)
(cherry picked from commit 3155b0d)
1 parent f188c9d commit a6fcd25

File tree

1 file changed

+52
-81
lines changed

1 file changed

+52
-81
lines changed

guides/common/modules/proc_upgrading-a-disconnected-project-server.adoc

Lines changed: 52 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -44,107 +44,77 @@ This prevents the upgrade process from overwriting your DNS and DHCP configurati
4444
----
4545
# rm /etc/yum.repos.d/*
4646
----
47-
. Obtain the latest ISO files by following the {InstallingServerDisconnectedDocURL}downloading-the-binary-dvd-images_satellite[Downloading the Binary DVD Images] procedure in _{InstallingServerDisconnectedDocTitle}_.
4847

49-
. Create directories to serve as a mount point, mount the ISO images, and configure the `rhel8` repository by following the {InstallingServerDisconnectedDocURL}configuring-the-base-operating-system-with-offline-repositories_satellite[Configuring the base operating system with offline repositories] procedure in _{InstallingServerDisconnectedDocTitle}_.
48+
. Export the required repositories from your connected {ProjectServer} to your disconnected {ProjectServer}:
49+
.. Ensure that the following repositories are synchronized on your connected server:
5050
+
51-
Do not install or update any packages at this stage.
52-
53-
. Configure the {Project} {ProjectVersion} repository from the ISO file.
54-
55-
.. Copy the ISO file's repository data file for the {ProjectName} packages:
56-
+
57-
[options="nowrap"]
58-
----
59-
# cp /media/sat6/Satellite/media.repo /etc/yum.repos.d/satellite.repo
60-
----
61-
62-
.. Edit the `/etc/yum.repos.d/satellite.repo` file:
63-
+
64-
----
65-
# vi /etc/yum.repos.d/satellite.repo
66-
----
67-
68-
... Change the default `InstallMedia` repository name to `{Project}-{ProjectVersion}`:
51+
* {RepoRHEL9BaseOS}
52+
* {RepoRHEL9AppStream}
53+
* {RepoRHEL9ServerSatelliteServerProjectVersion}
54+
.. List the repositories to identify their IDs:
6955
+
70-
[options="nowrap" subs="+quotes,attributes"]
56+
[options="nowrap" subs="+quotes"]
7157
----
72-
[{Project}-{ProjectVersion}]
58+
$ hammer repository list \
59+
--organization-label _My_Organization_Label_
7360
----
74-
75-
... Add the `baseurl` directive:
76-
+
77-
[options="nowrap"]
78-
----
79-
baseurl=file:///media/sat6/Satellite
80-
----
81-
82-
. Configure the {ProjectName} Maintenance repository from the ISO file.
83-
84-
.. Copy the ISO file's repository data file for {ProjectName} Maintenance packages:
8561
+
86-
[options="nowrap"]
87-
----
88-
# cp /media/sat6/Maintenance/media.repo /etc/yum.repos.d/satellite-maintenance.repo
89-
----
90-
91-
.. Edit the `/etc/yum.repos.d/satellite-maintenance.repo` file:
62+
Run this command once for each of the three repositories listed above.
63+
.. Ensure that the repositories are synchronized on your connected server with the download policy set to `immediate`.
64+
.. Export each repository in a syncable format by using its repository ID:
9265
+
93-
[options="nowrap"]
94-
----
95-
# vi /etc/yum.repos.d/satellite-maintenance.repo
96-
----
97-
98-
... Change the default `InstallMedia` repository name to `{Project}-Maintenance`:
99-
+
100-
[options="nowrap" subs="+quotes,attributes"]
101-
----
102-
[{Project}-Maintenance]
103-
----
104-
105-
.. Add the `baseurl` directive:
106-
+
107-
[options="nowrap"]
66+
[options="nowrap" subs="+quotes,verbatim,attributes"]
10867
----
109-
baseurl=file:///media/sat6/Maintenance/
68+
$ hammer content-export complete repository \
69+
--id=_Repo_ID_ --format=syncable
11070
----
71+
.. Copy the exported directories to the disconnected {ProjectServer}.
11172

112-
ifdef::katello,satellite,orcharhino[]
113-
. If you use {advisorengine} in your environment, update to the latest images:
114-
* To update using the {Project} installation ISO image, set up containers on your {ProjectServer}:
73+
. On the disconnected server, stop all {Project} services:
11574
+
116-
[options="nowrap", subs="+quotes,verbatim,attributes"]
117-
----
118-
# /media/sat6/containers/setup_containers
119-
----
120-
* Alternatively, to update by transferring the latest image from a connected system to a disconnected {ProjectServer}, follow these steps:
121-
... On the connected system, export the container image:
122-
+
123-
[options="nowrap", subs="+quotes,verbatim,attributes"]
124-
----
125-
# skopeo copy containers-storage:registry.redhat.io/satellite/iop-advisor-engine-rhel9:{ProjectVersion} \
126-
oci-archive:/tmp/iop-advisor-engine.tar
75+
[options="nowrap" subs="+quotes,verbatim,attributes"]
12776
----
128-
... Transfer the `iop-advisor-engine.tar` file to the disconnected {ProjectServer}.
129-
... On the disconnected {ProjectServer}, import the container image:
130-
+
131-
[options="nowrap", subs="+quotes,verbatim,attributes"]
77+
# {foreman-maintain} service stop
13278
----
133-
# skopeo copy oci-archive:/tmp/iop-advisor-engine.tar \
134-
containers-storage:registry.redhat.io/satellite/iop-advisor-engine-rhel9:{ProjectVersion}
79+
. On the disconnected server, enable access to the exported content by configuring a repository:
80+
.. Identify the location of the copied exported directories from the syncable export on the connected server.
81+
.. Create the `/etc/yum.repos.d/upgrade.repo` file and update the `baseurl` directive to point to that location:
82+
+
83+
[source, none, options="nowrap" subs="attributes"]
84+
----
85+
[{RepoRHEL9BaseOS}]
86+
--name=Red Hat Enterprise Linux 9 for x86_64 - BaseOS (RPMs) \
87+
--metadata_expire=-1 \
88+
--gpgcheck=0 \
89+
--cost=500 \
90+
--baseurl=file:///_Export_Baseos_Location_/content/dist/rhel9/9/x86_64/baseos/os \
91+
[{RepoRHEL9AppStream}]
92+
--name=Red Hat Enterprise Linux 9 for x86_64 - AppStream (RPMs) \
93+
--mediaid=None \
94+
--metadata_expire=-1 \
95+
--gpgcheck=0 \
96+
--cost=500 \
97+
--baseurl=file:///_Export_Appstream_Location_/content/dist/rhel9/9/x86_64/appstream/os \
98+
[{Project}]
99+
--name={Project} \
100+
--mediaid=None \
101+
--metadata_expire=-1 \
102+
--gpgcheck=0 \
103+
--cost=500 \
104+
--baseurl=file:///_Export_Location_/content/dist/layered/rhel9/x86_64/{project-context}/{ProjectVersion}/os/
135105
----
136-
endif::[]
137106
. Upgrade the {foreman-maintain} utility to its latest version:
138107
+
139108
[options="nowrap" subs="attributes"]
140109
----
141-
# {foreman-maintain} self-upgrade --maintenance-repo-label {Project}-Maintenance
110+
# {foreman-maintain} self-upgrade --maintenance-repo-label={Project}
142111
----
143112
. Determine whether your system is ready for {Project} upgrade:
144113
+
145-
[options="nowrap" subs="attributes"]
114+
[options="nowrap" subs="+quotes,verbatim,attributes"]
146115
----
147-
# {foreman-maintain} upgrade check --whitelist="repositories-validate,repositories-setup"
116+
# {foreman-maintain} upgrade check --whitelist="repositories-validate,repositories-setup" \
117+
--target-version={ProjectVersion}
148118
----
149119
+
150120
Review the results and address any highlighted error conditions before performing the upgrade.
@@ -158,9 +128,10 @@ These changes are applied to the `/etc/foreman-maintain/foreman-maintain-hammer.
158128
Because of the lengthy upgrade time, consider using a utility such as `tmux`.
159129
For more information, see xref:following_the_progress_of_the_upgrade_upgrading-disconnected[].
160130
+
161-
[options="nowrap" subs="attributes"]
131+
[options="nowrap" subs="+quotes,verbatim,attributes"]
162132
----
163-
# {foreman-maintain} upgrade run --whitelist="repositories-validate,repositories-setup"
133+
# {foreman-maintain} upgrade run --whitelist="repositories-validate,repositories-setup" \
134+
--target-version={ProjectVersion}
164135
----
165136
+
166137
If the script fails due to missing or outdated packages, you must download and install these separately.

0 commit comments

Comments
 (0)