Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 11

===========================================================================

= HISTORY =
= for foundation-based RED HAT ENTERPRISE LINUX 8.x SERVER =
= Version: 8.x-7 16-Nov-2021 (List of announcements.) =
===========================================================================

===========================================================================

On March 9, 2022: New Foundation Release - fix RHEL 8.5 support

Hey everyone,

The timing of this release is to fix exam support for RHEL 8.5. We are
shifting to RHEL 8.5 as "Best" and are only going to release updates to
RHEL 8.5, before our shift to RHEL 9.

I am also taking the opportunity to make available an update to rht-usb


to have it be more apparent when there have been problems with things
like usbadd/usbupdate. Historically, there appear to have been instances
of failures that still said usbadd/usbupdate completed.

rhci-foundation
- rhci-foundation.iso - fix exam support for RHEL 8.5
- update to latest firefox and ansible

foundation{,0}-config/rht-usb
- rht-usb - add better error reporting to usbadd and elsewhere
- autocall usbmkboot/usbmkmenu as needed
- deprecate gpthybrid partitioning

Documentation
- ClassPrep.txt - reflect current rht-usb best practices
- ClassroomSetup.txt - add UEFI menu

--Rob

===========================================================================

On November 16, 2021: New Foundation Release - add RHEL 8.5 support

Hey everyone,

The timing of this release is to add support for RHEL 8.5. We are leaving
RHEL 8.4 as "Best" on Instructor Central, but obviously conform to what
Certification or Curriculum may require for a given exam or course. This
release continues to update RHEL 8.2, 8.3, 8.4, and now 8.5. The next
release will likely drop 8.3.

rhci-foundation
- rhci-foundation.iso - add support for RHEL 8.5
- update to latest firefox and ansible
- add SKU starting with TL

Documentation
- ClassRHAPrep.txt - improve background information

--Rob

===========================================================================
On September 22, 2021: New Foundation Release - better virt support

Hey everyone,

This release adds some missing documentation around the standalone


installation of the hybrid foundation0/foundation1 system for testing
purposes. This also had me adding some VMWare support files to the
default package set for foundation0. The "System Not Registered" nag
on the physical foundationX systems has been hidden.

We have also dropped updating RHEL 8.0. This release is updating RHEL
8.2, 8.3, and 8.4.

rhci-foundation
- rhci-foundation.iso - add open-vm-tools to f0
- update to latest firefox and ansible
- hide registration nag

Documentation
- ClassroomTroubleshooting.txt - add standalone references
- ClassRHAPrep.txt - add background information
- add pointers to standalone

--Rob

===========================================================================

On September 1, 2021: New Foundation Release - ILT rampup

Hey everyone,

The timing of this release is to address a "latest" examserver caveat


that was introduced in RHEL 8.3. A package that had been installed by
default for a very long time was suddenly no longer installed by default
and was not addressed as a requirement for exam packages until recently.
This update now installs the missing package (python3-newt) by default
and should work with older exam packages.

We also had received reports of some deprecation warning messages that


were surprising some folks in the field, and when an install does not
succeed were misdirecting their troubleshooting efforts. This release
eliminates those deprecation warnings.

rhci-foundation
- rhci-foundation.iso - shift ks,repo->inst.ks,repo (SETUP-249)
- add python3-newt to examserver install (CTCDI-8)

foundation{,0}-config/rht-usb
- rht-wipeclassroom - shift ks,repo->inst.ks,repo (SETUP-249)

--Rob

===========================================================================

On July 19, 2021: New Foundation Release - field fixes

Hey everyone,
The timing of this release so soon after the last one is to address a
couple of Jira reports.

First, it would appear that the classroom VM is suffering from a periodic


race condition which is partially breaking the DNS named service. The
problem appears to manifest itself on the first boot of the classroom VM.
A solution is to restart the named service or simply reboot the classroom
VM. To the former, this release adds an option to the rht-f0finish command
to incorporate this workaround.

$ rht-f0finish --named

will perform a "systemctl restart named" just prior to running the


rht-verify-classroom where instructors were seeing the intermittent
failures of looking up "some" bastionX entries. This new option, which can
be abbreviated as -n, can be used in conjunction with any of the other
options.

Second, there has been a long standing desire to surmise what hardware
level some machines may be operating at. rht-verify-f0 will now report the
"apparent" hardware level as part of the summary of hardware settings. We
also have introduced an rht-check-fX utility which can produce that same
output but can also be used to confirm checksums of qcow2 files of VMs.

$ rht-check-fX # will perform time-consuming qcow2 checks


$ rht-check-fX --novms # will perform just hardware checks
$ rht-check-fX --level 3 # will "fail" if hardware is less than III
$ rht-check-fX --verbose # produces more detailed output

These settings can be used together, for example, to just tell us if the
hardware meets level 3 with no qcow2 checks by passing both options, -n and
-l 3.

Lastly, with use of rclone becoming more prevalent for replicating data
to places like S3-style object storage, there was a request to make a
pair of verbs for rht-usb similar to rsyncput and rsyncget. Those have
been replicated to now additionally have rcloneput and rcloneget which
assumes that you already have rclone properly configured and can specify
the provider:bucketname.

foundation{,0}-config/rht-usb
- rht-f0finish - add -n to restart named on classroom VM
- rht-verify-f0 - add hardware level information to output
- rht-check-fX - add hardware level information to output and -l option
- rht-usb - add rclone{get,put} verbs

Documentation
- ClassroomTroubleshooting.txt - add rht-check-fX references
- ClassPrep.txt - add references to rht-usb rclone{get,put} verbs
- ClassroomSetup.txt - add references to --named in rht-f0finish

--Rob

===========================================================================

On July 14, 2021: New Foundation Release - adding 8.4 support

Hey everyone,
The primary timing of this release is to add support for RHEL 8.4. While we
had retired RHEL 8.1 support in the last release, this one continues to
support RHEL 8.0, 8.2, 8.3, and now 8.4. That will likely be scaled back in
the coming months. Currently we continue to declare 8.2 "Best" for now, but
would really like to move that forward also.

Travis has made available a newer Foundation archive which he has shifted to
a gzip-compressed tarball updating for the new ansible being distributed.

There are also some cleanup updates to rht-usb that I discovered.

rhci-foundation
- rhci-foundation.iso - add support for RHEL 8.4
- new dependencies for updated firefox
foundation{,0}-config/rht-usb
- rht-usb - miscellaneous cleanup

--Rob

===========================================================================

On December 8, 2020: New Foundation Release - adding 8.3 support

Hey everyone,

The primary timing of this release is to add support for RHEL 8.3. Be aware
that this version required us to make some changes to timezone/lang/keyboard
support at the physical layer. We have done some initial testing of the
previous versions, but please keep an eye out and let us know if something is
not working.

We also are retiring RHEL 8.1 support. So, for now, we are supporting RHEL
8.0, 8.2, and 8.3, intending that 8.2 is declared "Best" for now.

Travis has made available a newer Foundation archive which he has shifted to
a gzip-compressed tarball updating for the new ansible being distributed.

There are also some updates to rht-usb that I personally needed. One such is
that _verify related commands now provide a summary of failures at the end of
output rather than forcing you to scroll through the "above" output. Hope
that is helpful to others, and don't forget to try out verifynewer and
usbverifynewer.

rhci-foundation
- rhci-foundation.iso - add support for RHEL 8.3 (SETUP-239)
- new dependencies for updated firefox
- obtain signed rpm for sshpass
foundation{,0}-config/rht-usb
- rc.local-foundation0 - fix /root/anaconda-ks.cfg scraping for RHEL 8.3
- rht-usb - _verify related verbs now provide summary (SETUP-235)

--Rob

===========================================================================

On September 23, 2020: New Foundation Release - adding 8.2 VMs

Hey everyone,
Turns out that new 8.2 VMs are expecting to use UEFI to boot rather than
MBR. Thanks to Artur for finding this and updating keyboard library
routines.

A few minor pending updates to rht-usb:


- usbverifynewer will operate like verifynewer for recent changes
- --yes as an option for automating rht-usb

foundation{,0}-config/rht-usb
- rhttool.shlib - support UEFI VMs (SETUP-234)
- rht-usb - usbverifynewer like verifynewer (SETUP-231)
- add --yes to avoid prompts for automation

--Rob

===========================================================================

On May 5, 2020: New Foundation Release - closing old Jiras and RHEL 8.2

Hey everyone,

In addition to adding support for RHEL 8.2, this release is also based on
suggestions from the field.

First, we are disabling the use of the sync mount option with the USB. This
has two effects: 1) writing to your USB should *appear* ten-fold faster! but,
2) when you unmount the USB, it may take a fair amount of time to finish
writing to the USB. If you do not have a physical view (a light) that lets
you know when the USB device is being written to, please take extra care in
how quickly you can remove the USB device from your "instructor laptop/cache"
since it may still be writing from RAM....

Second, we added a new verb to rht-usb called verifynewer. You pass one of
three possible arguments: today, yesterday, or YYYY-MM-DD. It will do a full
verify of all icmf manifests in your cache whose modification date matches
or is newer than the argument specified. The idea is to allow those of you
with supersized caches to just do a verify of the most recently downloaded
manifests and artifacts.

Third, we seem to have resolved the timezone problem for US/Eastern (all
other timezones seemed OK) with an ingenuous solution offered in the
bugzilla we opened: https://bugzilla.redhat.com/show_bug.cgi?id=1665428

Fourth, we updated some things for the examserver - yay, my new role - but
should not affect curriculum deliveries. Specifically, we are improving the
ability for folks delivering multiple exams on the same day to "repurpose"
their examserver. There were some problems historically if the version of
RHEL for RHCIfoundation matched the version of RHEL of the exam.

foundation{,0}-config/rht-usb
- rht-usb - remove sync option from mount/remount (SETUP-194)
- stop adding exams to the menu
- allow release variable to be numeric only (SETUP-230)
- verifynewer verb to check only "new" manifests

rhci-foundation
- rhci-foundation.iso - add support for RHEL 8.2
- update to latest firefox
- foundation8.ks - force rtc to UTC (SETUP-225)
- add support for new AD SKU
- rsync dvd contents to avoid removal by exam cleanup
- add bogus timezone (BZ #1665428)

--Rob

===========================================================================

On March 18, 2020: New Foundation Release - field requests

Hey everyone,

So this release is all based on suggestions from the field.

First, we are preinstalling some things on the foundation systems, like


ansible and gnome-tweaks.

Second, the changing urls for roster and survey can be accommodated by
passing a URL to rht-pushdesktop (as before - recent regression).

Thirdly, we have updated to the latest security release of Firefox.

Lastly, we are now distributing a zip file of contributions from


instructors. The file is called Foundation<date>.zip and is found in
/home/kiosk and should be extracted there. Look for readme.pdf from
inside the zip. Kudos to Travis for the initial set of contributions.

foundation{,0}-config/rht-usb
- rht-pushdesktop - fix the documented use of passing a manual URL
- add gnome-tweaks as pre-req to foundation-config.spec
- add ansible as pre-req to foundation-config.spec
- rht-usb - add support for squashfs loopback mounting

rhci-foundation
- rhci-foundation.iso - update Firefox
- pre-install more rpms for examserver

Foundation.zip
- set of ansible playbooks for customizatiion of physical systems

--Rob

===========================================================================

On December 30, 2019: New Foundation Release - fix rht-usb

Hey everyone,

So this release is all about fixing some things to operate with Fedora!!!

rht-usb is supposed to work with RHEL and Fedora.

Also Python 2.7 is set to sunset on January 1, 2020.

foundation{,0}-config/rht-usb
- rht-usb - drop python 2 support
- rht-usb - fix usbmkboot

--Rob
===========================================================================

On November 21, 2019: New Foundation Release - Add RHEL 8.1

Hey everyone,

So the primary reason for this release is to introduce RHEL 8.1 to the mix
for hardware enablement (and perhaps smooth some rough RHEL 8.0 edges).

We have added qrencode to the package set for RHEL 8 based foundation0. Per
a suggestion from the field, you can generate a QR code of the roster or
survey and put it on the screen for your students with:

[f0 ~]$ qrencode -s 10 -o roster.png http://some/long/url&with-a-code-in-it

Then display the roster.png (in this case) on the projector for students to
take a picture with their phones.

Lastly, we are taking another pass at gpt partitioning and the USB device
for UEFI systems. Take a look at ClassPrep.txt for more information.

The original design attempted to generate hybrid partitioning that would


hopefully work across UEFI and Legacy BIOS. You have spoken that it was
partially unsuccessful in that it broke several UEFI systems.

We now have three partitioning designs/arguments to usbmkpart: msdos,


gpthybrid|gpt, and gptefi. The first is the original/traditional single
partition that is used by Legacy BIOS systems. The second can be called
by either specifying gpthybrid or gpt and implements the three gpt
partition design that was supposed to work on all UEFI and some Legacy
systems (but apparently was not as universal as we had hoped). The third
is a new partition scheme that should work universally across all UEFI
systems but is not supported for Legacy BIOS.

Hopefully this new partition scheme will have better universal support of
UEFI systems for everyone.

--Rob

rhci-foundation
- rhci-foundation.iso - add build target for RHEL 8.1

foundation{,0}-config/rht-usb
- rht-f0finish - fix --secure updating EFI Grub password (SETUP-226)
- rht-usb - add gptefi vs. gpthybrid support
- qrencode dependency added to foundation0-config

redhat-training-{roster,survey}
- WARNING: these will be retired with a subsequent release

Documentation
- ClassPrep.txt - add gptefi vs. gpthybrid support
- History.txt - this announcement

===========================================================================

On July 24, 2019: New Foundation Release - RHEL 8.0 bugfix release
Hey everyone,

As with every major release, there will be a few nits to be resolved. This
is an update to provide/fix those nits. The majority are thanks to the
instructor reports filed at https://training-feedback.redhat.com.

As always, please keep those reports coming to Jira.

--Rob

rhci-foundation
- foundation.ks - add support for LE course codes
- actual failure when RHCIfoundation deploy fails (SETUP-217)

foundation{,0}-config/rht-usb
- rht-usb - non en_US failing partition lookup (SETUP-218)
- offer zero disk as part of usbmkpart (SETUP-217)
- additionally use wipefs besides sgdisk for usbmkpart
- rhttool.shlib - correct username for sshpass (SETUP-210)
- rht-check-fX - clean up output
- rht-vmview - tab complete VMNAMEs (SETUP-219)
- rht-verify-f0 - display more CPU information (SETUP-220)
- pxelinux.cfg/ - change local drive boot to use chain.c32 (SETUP-221)
- rht-switchgnome - new "-t light" will change terminal theme (SETUP-209)

redhat-training-{roster,survey}
- additional questions on survey
- additional courses added to list

Documentation
- History.txt - this announcement
- ClassroomTroubleshooting.txt - new entry for local boot in PXE config
- new video tip from Petros (SETUP-222)

===========================================================================

On May 30, 2019: New Foundation Release - RHEL 8.0 first GA release

Hey everyone,

Apologies, but this will be long as we introduce a RHEL 8.0 GA release of


RHCIfoundation. We are also updating the RHEL 7.5 and 7.6 RHCIfoundation
releases at the same time. In the not too distant future, we will retire
those RHEL 7 versions of RHCIfoundation.

RHEL 8.0 GA vs. 8.0beta vs. 7.x

WARNING - do not mix GA and beta. If the courseware is using RHEL 8.0beta,
then you need to use RHCIfoundation on RHEL 8.0beta too. In order to use
the GA version of RHCIfoundation, all courseware must be on RHEL 8 GA.
This means for both your USB media and for foundation0. rht-usb usbvalidate
and rht-verify-f0 will both test for this and issue an appropriate message.
Do not mix GA and beta.

A RHEL 8 form of RHCIfoundation can serve up courseware that is using


RHEL 7. However the converse is not true. If your courseware is running
RHEL 8, then you must have RHEL 8 physically with RHCIfoundation. This
is due to libvirt drivers needed by the RHEL 8 virtual machines that is
not available on RHEL 7. rht-verify-f0 should issue a warning about the
minimum UCF release not being met.

The only supported versions of RHCIfoundation at this point are running


RHEL 7.5, 7.6, 8.0beta, and 8.0.

RH124-RHEL70 and RH124-RHEL8.0

We expect for a period of time and depending on region that the RHEL 7.0
versions of the RHCE curriculum will continue to be taught. To reiterate,
you can run the RHEL 7.0 curriculum on a RHEL 8.0 RHCIfoundation. If you
have placed both technology versions on your USB, unfortunately, the
kickstart will default to installing the RHEL 7.0 version rather than the
RHEL 8.0 version when you specify "f0 rh124" at the boot: prompt. When
the course code is all that is specified, you will end up with the greater
version. Unfortunately, when the RHCE curriculum was developed, the use of
a decimal point in version numbers was not allowed. Consequently, RHEL70
is greater than RHEL8.0. In order to choose a lesser version, you should
specify the technology version, "f0 rh124-rhel8.0" at the boot: prompt.

UEFI Support

One new feature is official support of UEFI/gpt for booting both via the
optical rhci-foundation.iso *and* through the USB. Check out the updated
ClassPrep.txt. There is a new *mandatory* usbmkpart verb for rht-usb as
the UEFI/gpt booting (usbmkboot) requires a very particular partition
layout set by usbmkpart. Be forewarned though, not all Legacy BIOSes will
agree to boot properly from a gpt-partitioned device, so consider keeping
an msdos-partitioned USB boot device around for installing on Legacy
BIOSes.

Associated with the official support for UEFI/gpt USB booting, we have
added a verb to rht-usb called usbmkmenu which will (re-)generate the
grub-based submenu used by UEFI with the needed argument to install each
of the course-technology pairs found on the USB media. You will want to
re-run the usbmkmenu with each course manifest added or updated.

Classroom Lab Environment v3

You may notice a new standard VM called bastion that has been introduced
in newer courses. This VM has taken away from workstation the necessary
services that connected our private VM network (CLEv2) to our classroom
network (CLEv1). As an instructor or student, this essentially means that
bastion has to always be running, and while it has the traditional student
passwords, we will not be asking students to perform any operations there.

We are beginning to introduce new methods of remote access for the


instructor in the form of a new ssh backdoor. "ssh -p 53009 b7" will
connect to 172.25.250.9 (workstation) on the other side of the bastion
VM of foundation7. For now, the key is the master instructor key that is
preconfigured on foundation0 and classroom. In essence, you will specify
a port of 53000 plus the last octet of the private IP, so 53011 would
connect to serverb, etc.

Python 2 vs. Python 3

While we are aware that python2 is being end-of-life on January 1, 2020,


our ongoing support of RHEL 7 has required us to continue to support it.
The RHCIfoundation is now shipping two versions of rht-usb dubbed 8 and 7.
- rht-usb-8* is python3 (tested with 3.4 and 3.6)
- rht-usb-7* is python2 (tested with 2.7)

Idiosyncracies in RHEL 8

As with any new release, there will be some adjustments that we need to
get used to. RHEL 8.0 is no different.

UEFI physical installation booting is generating a number of tpm errors:


error: ../../grub-core/kern/efi/tpm.c:255 Unknown TPM error.
These can be safely ignored, and as prompted, you can press any key or if
you wait long enough the install will continue.

The manual selection of timezone is a little wonky for folks who are in
the US/Eastern timezone. It defaults to New York but shows an exclamation
mark. If you are not in the US/Eastern timezone, just pick your timezone
as normal. If you are in the US/Eastern timezone, you need to clear that
exclamation point. Personally, I click on Chicago, Done, then go back in
and select New York, Done. Alternatively, choosing a city other than New
York in the US/Eastern timezone also works. This is a known bug but did not
make RHEL 8.0 GA. (https://bugzilla.redhat.com/show_bug.cgi?id=1665428)

Desktop icons have further disappeared along with the Applications-Menu.


The new, new way is to open "All" Applications by clicking Activities (or
the Super Key), then the tiled nine boxes (Show Applications) and find the
"Education" group which contains the normal set of icons. These icons and
group continue to be created by rht-setcourse (on f0) and rht-pushcourse
(on fX).

Defaulting to Wayland

Wayland has introduced a new security model to the graphical underpinnings


of Gnome. Many of our traditional methods of remote access and screen
sharing may no longer work. While we are defaulting to using Wayland at
the physical layer, some hardware found in the field may be "falling back"
to use Xorg where our traditional methods continue to work.

One key twist with Wayland is that we can no longer launch virt-viewer as
root. To launch successfully as kiosk, we need more information specified:
f0$ virt-viewer -c 'qemu:///system' workstation
This also broke the way we did things with rht-vmctl, so we had to add a
new utility, rht-vmview:
f0$ rht-vmview view workstation
If you try to launch virt-viewer or rht-vmview as root, you will be
rejected! Oh, and, fyi, xhost didn't play nice for me (total lack of
consistency) so that is why we are where we are....

We are also seeing an annoying message with virt-viewer related to "wants


to inhibit shortcuts" if you are running Wayland (but not Xorg). Simply
click through to continue using virt-viewer.

There is a new utility called rht-switchgnome which can be used to shift


usage between Wayland and Xorg. --status will display current usage and
configuration. --configure <wayland|xorg> will shift the preference for
next reboot. Be aware that even though we are defaulting to Wayland,
certain video hardware chipsets may fall back to Xorg by default, so use
--status to see what is currently in use.

More details can be found in the list below. Keep those Jira reports
coming!
Happy teaching!

--Rob

rhci-foundation
- foundation.ks - shift repo definitions for 8.x
- adjust for new package names
- remove cockpit motd and issue
- add tmux
- destroy now using BLS entries in Grub2
- updates/ - add ansible/sshpass
- add perl requirements for exam

foundation{,0}-config/rht-usb
- rht-usb - is now python3-based
- adds support for return codes
- remove now also deletes source artifacts
- usbmkpart creates both msdos/gpt partitioning (new)
- usbmkboot now addes UEFI boot code to ESP partition
- usbmkmenu added to update grub-based menus
- close pyyaml security hole (https://msg.pyyaml.org/load)
- additional validation of manifest files
- rht-vmctl - add restart verb (stop/start)
- speed up poweroff (speeds up reset too)
- support for dynamic number of privbr bridges
- rht-verify-f0 - adapt to death of brctl
- new --devel option for curriculum devels (force rc=0)
- rht-check-fX - new utility to verify student fX systems
- rht-external - adapt to death of brctl
- make idempotent
- rht-showstate - add --log to show entire log of systems
- add --test to run virt test on systems
- works with unset RHT_COURSE
- rht-wipeclassroom - works with unset RHT_COURSE
- rht-movebr0 - adapt to death of brctl
- rht-discover - support Ctrl-C abort
- rht-vmsetkeyboard - switch to use sshpass
- rht-switchgnome - new utility to change Gnome display server
- rhttool.shlib - explicit use of qemu:///system
- switch rhttool-installkey.py to sshpass
- rht-vmctl - deprecate view and viewstart verbs
- rht-vmview - new utility for kiosk to view consoles
- pxelinux.cfg - replace deprecated networking options
- grub.cfg - wait forever on UEFI PXE boot (SETUP-215)
- register.sh - make function as a log rather then just last entry

Documentation
- History-7.x.txt - contains 7.x announcements
- History.txt - reset to just 8.x announcements
- ClassPrep.txt - document process of UEFI/gpt USB preparation
- clarify process of Legacy/msdos USB preparation
- ClassroomTroubleshooting.txt - add references to rht-usb usbmkpart
- add references to rht-switchgnome

===========================================================================

You might also like