Try   HackMD

RH354 "RHEL 8 New Features" notes in the margin

tags: red hat, rhel

Course description: RH354 RHEL 8 New Features for Experienced Linux Administrators

:memo: Table of contents

1. Previewing Red Hat Enterprise Linux 8

Release notes for Red Hat Enterprise Linux 8.0
Release notes for Red Hat Enterprise Linux 8.1
Release notes for Red Hat Enterprise Linux 8.2
Release notes for Red Hat Enterprise Linux 8.3
Release notes for Red Hat Enterprise Linux 8.4
Release notes for Red Hat Enterprise Linux 8.5

Red Hat Enterprise Linux Presents 24: What's New in RHEL 8.5

RED HAT BLOG SERIES: What's New in Red Hat Enterprise Linux 8.4

Red Hat KB: Red Hat Enterprise Linux Release Dates

Release General Availability Date redhat-release Errata Date* Kernel Version
RHEL 8.5 2021-11-09 2021-11-09 RHSA-2021:4356 4.18.0-348
RHEL 8.4 2021-05-18 2021-05-18 RHSA-2021:1578 4.18.0-305
RHEL 8.3 2020-11-03 2020-11-03 RHBA-2020:4495 4.18.0-240
RHEL 8.2 2020-04-28 2020-04-28 RHBA-2020:1758 4.18.0-193
RHEL 8.1 2019-11-05 2019-11-05 RHBA-2019:3543 4.18.0-147
RHEL 8 2019-05-07 - 4.18.0-80

To find your Red Hat Enterprise Linux release please:
$ cat /etc/redhat-release

To find your kernel version please:
$ uname -a

Red Hat Enterprise Linux 8 Life Cycle

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

WEBINAR on-demand recording from May 12, 2021: Expanded tools for containers and cloud workload management - what's new in Red Hat Enterprise Linux 8.4

Red Hat Developer Article: Red Hat Enterprise Linux 8 now generally available

2. Installing or Upgrading to Red Hat Enterprise Linux 8

Supported in-place upgrade paths for Red Hat Enterprise Linux
Red Hat Customer Portal Labs: Red Hat Enterprise Linux Upgrade Helper

Why does subscription-manager list return: "No Installed Products found" ?

Upgrading from RHEL 7 to RHEL 8: Known issues

YouTube Video: Red Hat Enterprise Linux 7 to 8 In-Place Upgrade Using Leapp

Developer documentation for Leapp
Leapp utility metadata in-place upgrades of RHEL for disconnected upgrades

Red Hat Blog: Boom! Booting RHEL from LVM snapshots
Upgrading from RHEL 7 to RHEL 8 with Leapp and BOOM
Migrate to and certify on Red Hat Enterprise Linux 8 with LEAPP
YouTube Video: Upgrade to Red Hat Enterprise Linux 8 with LEAPP
github: Leapp Framework actors: el7toel8

Convert2RHEL: How to convert from CentOS Linux and Oracle Linux to Red Hat Enterprise Linux:

YouTube Video: RHEL 8 Beta - Using Leapp and Boom to Upgrade to the RHEL 8 Beta

RedHat Developer Article: Getting Red Hat Developer Subscription: What RHEL users need to know

Get the software

  1. Join the Red Hat Developer Program and register at developers.redhat.com to get a subscription. Each system that runs Red Hat Enterprise Linux will need a subscription.
  2. Download Red Hat Enterprise Linux Server
  3. Install Red Hat Enterprise Linux Server using one of our guides. For Microsoft Windows, Apple Mac OS, or other Linux users, our guides cover creating a virtual machine (VM) with VirtualBox, Hyper-V, or installing on a physical system.
  4. After installation, you will be prompted to register your system with the Red Hat Customer Portal. This will attach your system to your subscription, which enables the system to download updates and additional software from Red Hat.

No-cost Red Hat Enterprise Linux Individual Developer Subscription: FAQs

RedHat KB: As a customer how does Red Hat support me when I use third party components?

Production Support Scope of Coverage
If we ship it, we

Support Do not support
Installation Modified RPMs
Usage Third-party software/drivers and uncertified hardware/hypervisors
Configuration Community projects upon which enterprise releases are based
Diagnosis Code development
Bug reports (dependent on product life cycle) System and network design
Bug fixes Implementation and development of security rules and policies
Red Hat Extras channel Red Hat Supplementary / Optional channels
Technology preview features
Packages included to satisfy dependencies or "incidental inclusions" when deployed as standalone items

Creating a Local Repository and Sharing With Offline Systems

Red Hat Insights Get started

3. Provisioning and Configuring Servers

www.server-world.info website with many simple step-by-step instructions how to configure RHEL/CentOS Server

Red Hat Developer Blog: Introducing Application Streams in RHEL 8

RHEL 8 Docs: Installing, managing, and removing user-space components

RHEL 8 yum cheat sheet

RHEL 8 Repositories:

  • BaseOS - primarily core operating system packages with support for the lifetime of the OS
  • Appstream - user-space applications and components, including numerous Application Streams
  • CodeReady Builder- additional libraries and tools for developers
  • Supplementary - 3rd party support only

Terms and terminology:
For even more information about Application Streams and modules, see
Introducing Application Streams in RHEL 8.

  • Application Stream (or simply stream) - refers to content. PHP 7.2 is an application stream. PHP 7.3 is an application stream.
  • Module - is the packaging format. PHP is packaged as a module.
  • Module Stream - different versions of a component packaged as a module. PHP 7.2 is an application stream packaged in a module stream.
  • appstream - is the name of the RHEL 8 repo where you can find Application Streams.

FINDING AND EXPLORING MODULES

Command Explanation
yum module list list all modules
yum module list installed list installed modules
yum module provides package find which module provides a package
yum module info module examine details of a module
yum module info profile module:stream list packages installed by profiles of a module
yum module list module display the current status of a module

WORKING WITH MODULES

Command Explanation
yum module enable module:stream enable a specific stream without installing packages
yum module install module:stream/profile install a specific stream
yum module remove module && yum module disable module disable a module stream and remove all packages provided by it

dnf docs: Changes in DNF CLI compared to YUM
What is the difference between DNF and YUM?

https://cockpit-project.org/

Fedora Magazine: Cockpit and the evolution of the Web User Interface
Managing user accounts with Cockpit

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

RHEL 8 Docs: Managing systems using the RHEL 8 web console

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

RHEL 8 Docs: Composing a customized RHEL system image

Lorax is used to build the Anaconda Installer boot.iso
Using Composer on RHEL 7.5 with mirrored repositories

RedHat KB: Red Hat Enterprise Linux (RHEL) System Roles

GitHub project: linux-system-roles
Ansible Galaxy: Linux System Roles

Ansible Doc: Roles
Red Hat Enterprise Linux Presents automation with RHEL System Roles

4. Adapting to Core System Changes

https://wayland.freedesktop.org/

X11 Wayland

https://wiki.gnome.org/Initiatives/Wayland

Habr: Что придет на замену X Window System?
Habr: Wayland на замену X Window System
Youtube Video: My name is Wayland
Сказ о том, как Mir превратился в Wayland-композитор
How to debug Wayland problems: Known issues, frequent complaints, fundamental changes
FedoraProject Wiki: Wayland features Wayland Desktop features progress

Boycott Wayland! It breaks everything! BIG discussion about Wayland new features and unsolved issues

Reference wayland-server and standard desktop APIs

tigerVNC github issue: TiverVNC do not support Wayland till now since 2015

RedHat KB: How to configure Virtual Network Computing (VNC) in Red Hat Enterprise Linux 7/8 - 8.2?
Are there any changes to the default vncserver configuration in RHEL8.3?

Enable GNOME 3 Looking Glass.
Looking Glass is GNOME Shell's integrated debugger and inspector tool
gsettings set org.gnome.shell development-tools true

RHEL8 Docs: chronyc sources -v explained

RHEL8 Docs:

[student@workstation ~]$ python
bash: python: command not found...

Red Hat Blogs: What, no Python in Red Hat Enterprise Linux 8?
Python Developer Guide: The "python" Command on Unix-Like Systems
Red Hat Blogs: Python in RHEL 8

Sunsetting Python 2. PSF support end date: 1 January 2020
Porting Python 2 Code to Python 3

Python 3 support on Red Hat Enterprise Linux (RHEL) 7

"Python 2.7 package in RHEL 8 support end at June 2024"
RedHat KB: How is Python 2 supported in RHEL after 2020?

Optional (and not required for ansible) way to enable python command

[student@workstation ~]$ alternatives --list
python                	auto  	/usr/libexec/no-python
python3               	auto  	/usr/bin/python3.6

[student@workstation ~]$ alternatives --display python
python - status is auto.
 link currently points to /usr/libexec/no-python
/usr/libexec/no-python - priority 404
 slave unversioned-python: (null)
 slave unversioned-python-man: /usr/share/man/man1/unversioned-python.1.gz
/usr/bin/python3 - priority 300
 slave unversioned-python: /usr/bin/python3
 slave unversioned-python-man: /usr/share/man/man1/python3.1.gz
Current `best' version is /usr/libexec/no-python.

[student@workstation ~]$ file /usr/libexec/no-python
/usr/libexec/no-python: Bourne-Again shell script, ASCII text executable
[student@workstation ~]$ man unversioned-python

## Select one option

# Interactively select what the `python` command runs.
[student@workstation ~]$ alternatives --config python   

# Configure the `python` command to run Python 3
# Note: this is non-standard behavior according to [PEP 394].
[student@workstation ~]$ alternatives --set python /usr/bin/python3 


# Configure the `python` command to run Python 2
# Note: please review the support lifecycle of python2 before relying on it
[student@workstation ~]$ alternatives --set python /usr/bin/python2 

# Undo configuration changes and revert to the default (missing `python` command)
[student@workstation ~]$ alternatives --auto python

Python2 vs Python3 | Syntax and performance Comparison

Python in RHEL 8

5. Implementing Storage Using New Features

Manage storage using the Stratis local storage management system and use VDO volumes to optimize storage space in use.

Stratis Project

https://opensource.com/article/18/4/stratis-easy-use-local-storage-management-linux
https://opensource.com/article/18/4/stratis-lessons-learned

RHEL8 Docs: Managing file systems: Chapter 17. Managing layered local storage with Stratis

Red hat Interactive Lab: Stratis

RHEL8 Docs: Deduplicating and Compressing storage

KVM

https://www.redhat.com/en/blog/introducing-virtual-data-optimizer-reduce-cloud-and-premise-storage-costs

Red hat Interactive Lab: VDO

https://www.opennet.ru/opennews/art.shtml?num=51828

6. Managing Containers with the New Runtime

Open Container Initiative

Expanded tools for containers and cloud workload management - what's new in Red Hat Enterprise Linux 8.4

Getting Started with Podman
Getting Started with Podman

Getting started with Buildah

image build example using Buildah commands

#!/usr/bin/env bash

set -o errexit

# Create a container
container=$(buildah from fedora:28)

# Labels are part of the "buildah config" command
buildah config --label maintainer="Chris Collins <collins.christopher@gmail.com>" $container

# Grab the source code outside of the container
curl -sSL http://ftpmirror.gnu.org/hello/hello-2.10.tar.gz -o hello-2.10.tar.gz

buildah copy $container hello-2.10.tar.gz /tmp/hello-2.10.tar.gz

buildah run $container dnf install -y tar gzip gcc make
Buildah run $container dnf clean all
buildah run $container tar xvzf /tmp/hello-2.10.tar.gz -C /opt

# Workingdir is also a "buildah config" command
buildah config --workingdir /opt/hello-2.10 $container

buildah run $container ./configure
buildah run $container make
buildah run $container make install
buildah run $container hello -v

# Entrypoint, too, is a “buildah config” command
buildah config --entrypoint /usr/local/bin/hello $container

# Finally saves the running container to an image
buildah commit --format docker $container hello:latest

cri-o lightweight container runtime for kubernetes

7. Implementing Enhanced Networking Features

RedHat Developer Blog: iptables: The two variants and their relationship with nftables

firewalld
firewalld: A service daemon with D-Bus interface


- firewalld structure -

RedHat Developer Blog: If You Like Bonding, You Will Love Teaming
RHEL7 Docs: Comparison between bonding and teaming

8. Adapting to Virtualization Improvements

What Is the Difference between QEMU and KVM?

KVM & Qemu

www.linux-kvm.org FAQ

RedHat KB: How can I view, create, and remove SCSI persistent reservations and keys?

Intel® 82Q35 Graphics and Memory Controller chipset

Windows inside RHEL 8 KVM
Github Repo: KVM/QEMU Windows guest drivers (virtio-win)

RHEL8 CHAPTER 17. INSTALLING AND MANAGING WINDOWS VIRTUAL MACHINES

RHEL 8 inside Hyper-V
поддерживаемые CentOS и Red Hat Enterprise Linux виртуальные машины в Hyper-V

KVM GPU Passthrough:

RHEL 8 WorkShop

Workshop Description
This workshop will cover the features, specifications and improvements that comprise the release of Red Hat Enterprise Linux Version 8 (RHEL 8).

  • Exercise 1.0 - Welcome to RHEL!
  • Exercise 1.1 - What's New in RHEL 8
  • Exercise 1.2 - Tour of the Web Console
  • Exercise 1.3 - Managing Updates Using the Web Console
  • Exercise 1.4 - Configuring Terminal Session Recording
  • Exercise 1.5 - Managing Cryptographic Policies
  • Exercise 1.6 - Managing Software in an Application Stream
  • Exercise 1.7 - OpenSCAP Security Compliance Scanning
  • Exercise 1.8 - Introduction to using buildah, podman and skopeo to work on containers
  • Exercise 1.9 - System Roles with Ansible