►
Description
A show that features the people and technology that make Red Hat® Enterprise Linux® into the world’s leading enterprise Linux platform.
A
A
A
B
Well,
I
I
wanted
to
remind
everyone
that
brian
is
the
experienced
product
manager
for
the
red
hat
developer.
Experience
on
rel
and
brian
welcome
back.
Thank.
B
We
were
talking
about
developer,
sku
or
developer
program
for.
B
Yeah,
but
this
time
we're
to
be
talking
about
application
streams,
which
is
another
developer,
related
product
experience
with
row,
so
to
get
started
off.
Why
don't
we
just
talk
about
what
application
streams
are.
C
Sure
sure
so,
application
streams
are
really
a
concept
that
we
introduced
in
rel.
Eight,
it's
the
way
we
deliver
new
versions
of
things
in
in
rel
and
by
things
I
mean
runtime
languages
like
python,
perl,
ruby.
C
It's
the
way
we
deliver
different
versions
of
web
servers
like
apache,
httpd
and
genex,
and
the
way
we
deliver
new
versions
of
of
some
of
our
compilers
in
rel.
C
Now
we
have
gcc,
which
we've
had
essentially
forever
as
the
system
compiler,
but
we
also
offer
llvm
with
a
clang
front
end
we
offer
rust
and
we
offer
go,
go
compilers,
go
being
the
compiler
we
use
for
building
all
our
container
tools,
whether
it
be
you
know,
podman
scd,
it's
the
way
you
build
kubernetes,
for
example,
so,
through
application
streams
we
provide
different
versions
of
all
the
things
I
mentioned.
C
Our
users
can
then
select
the
right
tools
for
their
developers
so
depending
on
whether
you
have
a
legacy
application
and
we're
actually
just
just
talking
about
legacy,
applications,
those
that
that
last
for
for
a
long
time,
certainly
rel
with
it's
it's
ten
plus
year
life
cycle.
You
can
have
an
application
that
you
that
you
support
for
that,
that
full
life
cycle
and
or
you
know
the
ability
to
have
shorter
life
cycle
applications
as
well
and
constantly
update.
So
so
you
have
a
lot
of
choices.
B
And
this
is
to
address,
I
think,
the
reputation
that
red
hat
enterprise
linux
has
of
you
get
something
and
that's
what
you
get
for
10
years.
C
So
rel
is
an
enterprise
class
operating
system,
so
we
do
want
to
make
sure
everything's
been
tested
and
and
fully
secure
before
we
we
deploy
it.
So
that's
why
we
we
tend
to
offer
the
long-term
stable
releases,
but
as
soon
as
they're
available
upstream,
we
package
them
up
and
we
put
them
into
rel
as
an
application
stream.
B
C
C
It's
also
the
name
of
the
of
the
channel
red
hat
software
collections
is
the
channel
where,
where
we
deliver
the
the
new
content,
so
in
in
rel7,
we
we
kind
of
use
that
term
for
for
different
things
in
rel
eight,
because
we
continue
to
offer
software
collections
as
a
packaging,
and
we've
introduced
a
new
packaging
type
that
we
call
modules.
C
We've
actually
used
the
term
application
streams
to
be
independent
of
the
packaging
type.
So
when
we
say
application
streams,
we
mean
the
concept
of
delivering
different
versions
of
different
things
in
rel,
as
opposed
to
packaging
packaging
may
be
a
traditional
rpm,
it
might
be
a
module
or
it
might
be
a
software
collection.
C
B
Well,
I
think
that
brings
up
another.
I
think
common
question,
which
is
modules,
so
not
every
application
stream
is
packaged
as
a
module,
but
modules
are
often
packaged
as
application
streams.
C
Right
so
modules
are
are
of
the
new
way
to
to
package
things
within
rel
software
collections
were
really
good
way
to
package
things.
They
had
a
disadvantage,
though,
in
that
they
were
separately
name
spaced
in
the
you
know,
the
op
directory
path.
C
So
if
you
were
just
installing
a
runtime
language
and
writing
your
own
application,
that
was
perfectly
fine,
but
if
you
were
deploying
third-party
applications
and
using
different
tools,
you
know
picking
a
little
of
this
and
a
little
of
that
you
had
to
provide
the
various
aliases
to
properly
configure
your
application
to
find
the
software
collections
where
they
reside.
That's
a
little
bit
complicated,
but
it
was
in
order
to
allow
us
to
bundle
things
in
a
nice
unit
in
in
rel,
seven
and
six.
C
C
That
was
a
problem
we
wanted
to
fix
in
relate,
so
we
invented
the
concept
of
modules
and,
like
software
collections
modules,
deal
with
the
unique
dependencies
for
a
particular
version
of
something
you
know
the
version
of
python
and
all
the
dependencies
it
needs,
but
they
but
modules
put
everything
in
the
traditional
location,
so
the
user
been
python
instead
of
opt
using
python.
Like
software
collections
did
so
it
worked
really
well
out
of
the
box
with
with
third-party
applications
and
tooling
the
downside
to
modules.
C
Is
you
can't
deploy
multiple
versions
of
the
same
extreme
or
the
same
type?
In
other
words,
you
can't
deploy
two
versions
of
php
on
the
same
system
without
a
conflict.
Well,
you
could
with
software
collections,
but
nowadays
you
know
in
rel
in
route
8
we
natively
support
containers
and
that's
a
much
more
efficient
way
to
to
package
multiple
versions
of
things
on
a
particular
system.
C
C
B
And
then
you
mentioned
containerization
so
before
before
our
show.
Today,
we
were
talking
about
if
I
had
like
two
node.js
applications,
but
one
required
node.js
12
and
the
other
one
required
no
gs14.
C
Yeah
exactly
node
is
a
good
example.
We
have
node
10,
1214
and
very
soon
now
16
available,
both
as
modules
to
install
directly
on
rail
and
as
pre-built
containers
in
our
red
hat
container
catalog.
So
it's
it's
really
easy.
If
you
had
an
application
that
you
wanted
to
use
with
node.js
just
download
or
pull
that
that
particular
container
build
your
app
on
top
of
that
on
top
of
that
layered
container
image
and
run
it
and
then
do
the
same
with
14.
D
C
Yeah
good
thing
you
mentioned
ubi
ubi
is
the
the
way
we
deliver
rel
in
a
container-based
image.
It's
essentially
rel
packages,
but
ubi
is
the
universal
base
image
and
it's
much
more
flexible
in
terms
of
distribution
terms
than
rel
is
so
you
can.
C
You
can
deploy
your
ubi
based
container
anywhere
and
only
if
you're,
installing
it
on
a
a
licensed
rail
host,
whether
it
be
rel
or
openshift.
Do
you
need
to
to
worry
about
subscriptions?
You
can
run
it
yeah
in
lots
of
places
with,
without
going
through
the
whole
relevant
entitlement
effort.
B
C
That's
right:
every
six
weeks
we
do
what
we
call
a
batch
release,
which
is
a
update
of
security
and
bug
fixes,
and
when
we
do
that,
we
rebuild
all
the
containers.
If
a
cve
security
vulnerability
happens,
you
know
in
between
those
six
week
boundaries
and
it's
critical.
We
will
asynchronously
rebuild
that
container
and
make
it
available
immediately.
C
Exactly
yeah,
we
we
recommend
that
everybody
visit
that
that
life
cycle
underpaint
that
life
cycle
page
to
understand
what
we
make
available
and
for
how
long.
We
support
each
version.
Each
application
stream.
B
C
We
have
a
five
year,
support
life
cycle
and
some
of
the
the
databases
in
in
real.
We
support
for
the
full
life.
So
it's
a
minimum
of
five
years.
It
can
be
the
full
life
of
realm
and
that's
all
in
that
life
cycle
page.
So
we
recommend
that
you
take
a
look
at
that
and
depending
on
the
life
of
your
application
and
whether
you
update
it
frequently
or
or.
D
B
Okay,
so
earlier
we
were
talking
about
software
collections
and
how
you
can
there
are
still
a
few
packages
that
are
done
in
the
same
way
that
software
collections
was
so
right.
C
Gcc
toolset
yeah
and
the
reason
for
that
is
that
developers
who
use
a
compiler
like
like
gcc,
normally
have
multiple
projects
that
they
work
on
they're
working
on
their
their
latest
project,
which
is
hopefully
using
a
you
know
the
latest
version
of
the
compiler
and
then
someone
comes
and
says
hey.
You
know
we
found
this
bug
or
you
know
we
have
this
want
to
make
this
feature
change
to
this.
This
old
application.
C
That's
been
in
production
for
a
few
years,
so
on
their
same
system,
they
they
want
to
be
able
to
install
the
the
tool
set
necessary
to
to
make
those
updates.
So
we
find
that
you
know
the
gcc
toolset
is
one
where,
where
we
need
to
support
multiple
versions
on
the
same
machine,
so
we
we
default
back
to
software
collections
for
that.
For
that
case,.
B
And
for
something
like
like
python
right,
so
I
know
that
we
included
python27
for
some
of
the
automation
stuff,
but
the
most
of
the
applications
on
rail
8
run
on
python
3..
So
we
allow
them
both
to
be
installed
simultaneously.
How
do
we
determine
which
one
gets
used
when
somebody
uses
user
pin
python.
C
So
there's
there's
a
couple
different
ways:
the
native
python
or
what
we
call
the
system
python
in
rel8
is
python36.
C
So
if
you,
if
you
just
invoke
python,
that's
that's
what
you
get
and
that's
what
all
the
system
tooling
is
built
on.
You
can
install
version
27
for
python,
2
compatibility,
it's
actually
installed
as
a
module
on
rail
eight
and
you
can.
You
would
invoke
that
by
specifying
python
two.
So
python
generally
refers
to
to
the
system
version
and
then
python,
2
or
python
3
for
the
newer
version.
C
Now,
if
that
doesn't
work
for
you
because
of
some
application
compatibility
issues
on
developers.redhat.com,
we
have
a
lot
of
content
related
to
python
and
it
we
have
descriptions
of
how
all
this
works
and
if
you
have
a
particular
application,
that's
looking
for
something
in
a
particular
way.
We
have
instructions
on
how
to
do.
C
That's
a
really
good
point.
I
think
I
would
encourage
anyone
who
has
python
scripts
or
a
python
built
application
or
whatever
to
to
go
to
developers.redhat.com
just
do
a
search
on
python
and
look
at
all
the
materials
we
have
on
python,
because
it
could
be
very,
very
helpful
and
you
know
for
well.
I
guess
at
the
turn
of
of
last
year,
when
python
2
upstream
went
officially
unsupported
every
day,
questions
would
come
in
it's
like,
oh
no.
What
do
I
do
you
know?
I
have
this
python
happen
that
python
app.
C
Do
I
convert
it
to
python
3.
Do
I
try
to
install
python
2?
How
do
I
get
over
this
hump?
So
we
wrote
lots
of
articles.
You
know,
depending
on
what
you
want
to
do.
You
know
it's
a
python
2
app
and
it's
only
going
to
be
around
for
another
year.
Install
python!
2,
don't
worry
about
it.
You
know.
If
it's
going
to
be
something
long-term
that
that
you
need
to
maintain.
C
Well,
you
probably
ought
to
think
about
porting
it
to
python
3
and
we
have
you
know,
helpful
guides
and
including
hints
and
things
on
on
what
to
do
and
what
to
look
out
for
so
you
know
python.
I
think
python
continues
to
be,
if
not
the
top.
You
know
certainly
one
of
the
top
five
subjects
on
developers.redhat.com
that
people
people
look
for,
and
I
don't
think
that's
going
to
change.
A
C
So
rel9
is
available
now
for
some
of
our
hardware
partners.
They're
already
testing
on
on
the
early
builds
we'll
make
the
beta
available
in
a
couple
months.
Scott,
you
probably
know
the
exact
date.
I
can't
remember
off
top
of
my
head,
but
it's
it's
coming
soon
and
and
we'd
like
we'd,
like
people
to
to
start
testing
on
real
nine.
If
you're
familiar
with
application,
streams
and
modules,
when
you
get
to
real
nine
things,
will
work
pretty
much
the
same.
C
But
when
you
add
new
versions
or
update
to
new
versions,
we
will
still
use
modules
for
those.
So
certainly
as
you
move
from
relay
to
row,
9
still
using
modules
still
work
pretty
much
the
same
way,
we'd
like
to
think
that
we
continually
make
them
easier
to
use.
I
I
hope
everybody
finds
that's
the
case,
but
we're
we're
continuing
to
to
try
to
improve
the
usability
of
rel
in
general
and
certainly
modules
in
particular,.
B
So
if
I
did
know
a
day
for
rail
nine
beta,
you
would
never
know
but
we're
on
this
kind
of
published
release
cycle
now.
So
we
should
be
expecting
row
nine
in
the
early
part
or
the
I
guess
spring
for
our
northern.
D
A
C
We
are,
we
have
a
number
of
application
stream
updates.
I
think
the
big
one
is
python.
Three
nine,
which
is
available
in.
D
C
Four
and
there's
several
new
database
databases
available
in
python,
I
wanna
say
python:
postgres13
is
available.
B
B
C
No
actually
not
php
python39,
as
I
said,
and
red
six
yeah.
Those
are
the
big
new
versions
of
application
streams
in
in
eight
four.
B
D
C
Then,
when
they
do,
we
try
to
take
that
and
put
it
in
the
rail
into
the
in
the
next
version
and
since
the
annual
upstream
and
we
do
six
month,
releases
you're
gonna
skip
one.
You
know
tracking
every
upstream.
B
Right
and
in
eight
three,
we
did
like
a
a
newer
version
of
git.
I
I
don't
remember
whether
they're.
B
B
C
So
yeah
yeah
we
we
try
to
stay
fairly
close
on
git,
but
it's
not
something
where
most
people
want
to
be
on
the
absolute
latest
release.
So
you
know
I
mean
making
sure
it's
stable
first
makes
makes
a
lot
of
sense.
C
You
know
we
have.
We
have
the
very
fast
moving
packages.
Node.Js
and
nginx
are
the
two
best
examples
that
that
move
very
quickly
add
a
lot
of
new
features
upstream,
so
we
tend
to
get
those
out
out
fast,
others,
you
know
we're
a
little
slower
and
databases
we
strive
to.
We
try
to
stay
pretty
close
with,
although
most
people
are
not
enthusiastic
about
updating
a
version
of
their
database
unless
they
have
to
it's
a
lot
of
work.
B
Yeah,
it
is
in
fact
the
the
lab
that
we'll
go
through
here
at
the
end,
that's
the
exemplar
module
to
go
through
and
when
I
first
wrote
it,
there
was
a
whole
pile
of
paper.
They're,
like
you,
can't
just
update
your
database.
It's
like
okay,.
D
B
C
C
Right
right,
yeah
that
problem
in
the
early
days
of
openshift,
because
it
was
so
easy
to
you
know
just
you
know
installing
a
new
container
to
upgrade
your
database
yeah.
I
want
the
latest
version
and
like
oh
what
what
what
just
happened
right,
because
they
didn't
go
through
the
proper
upgrade
the
process
of
their
of
their
data.
C
So
yeah
databases
that
and
that's
one
reason
why
even
upstream
they're
very
long
life
cycles
because
yeah
it's
not
something
people
like
to
do.
B
C
So
the
important
one
is
to
be
very
careful
when
you
go
from
one
version
to
another:
we're
trying
very
hard
application
by
application
to
make
sure
we
we
cover
the
upgrade
process,
but
we
have
a
well-documented
process
for
upgrading
modules
in
rel
eight.
You
know,
please
follow
it
and
you
know
to
upgrade
you.
You
would
typically
enable
the
the
the
newer
version
or
install
the
new
version
enable
the
new
version
and
then
start
to
start
using
it,
but
be
be
very
careful.
C
So
please
follow
the
module
rules.
We've
made
modules
very
sticky
too,
so
that
people
don't
accidentally
update.
I
mean
you
mentioned
the
problems
with
databases,
but
there
can
be
problems
with
incompatibility
and
config
files
in
phd
and
apache,
and
things
like
that
as
well.
So
please,
please,
follow
the
rules
and
and
make
sure
you
account
for
those
cases
and
we've
tried
to
I
say
by
making
them
sticky,
you
have
to
deliberately
upgrade
a
module
just
by
updating
a
version
of
rel
or
updating
your
your
system.
C
You
don't
get
a
new
version
of
a
module.
You
have
to
explicitly
ask
for
it
and
that's
because
there
are
incompatibilities
so
so
please
follow
the
rules.
When
you
do
your
updates
and.
B
So
you
couldn't
just
reference
the
version
tag
anymore
and
have
that
do
the
do
the
activity
you
actually
had
to
move
the
enabled
flag
to
the
version.
C
C
C
So
if
you,
if
you're
scripting
it
and
and
you
want
to
use
a
common
script-
that
that
might
be
the
easier
way
to
do
it,
but
if
you're
doing
it
through
the
cli,
I
would
recommend
using
the
the
module
enable
and
making
sure
you
follow
the
process.
B
So
if
we
want,
we
can
switch
over
to
like
actually
hands-on
keyboard
working
with
them.
Let
me
share
my
screen.
D
D
B
So
here
we
work
specifically
with
modules,
so
we
were
talking
about
postgresql
earlier
and
that's
the
module
that
that
I
wrote
this
lab
to
work
with,
and
you
can
see
that
in
this
8.3
system
we're
shipping
postgres
96
postgres
10,
which
is
flagged
as
the
default
and
post
press
12
and
when
8.4
becomes
available
and
we
upgrade
these
systems
to
84.
Then
you'll
also
see
postgres
13
in
this
list.
B
B
And
then,
if
you
didn't
say
which
one
you
wanted,
you
would
get
the
default
which
in
this
system
is
postgres
10..
So
if
you
wanted
a
different
one
like
12
or
96,
you'd
have
to
use
this
tag
version
information
to
tell
it
which
one
you
explicitly
want
and
because
no
modules
are
installed
after
it
goes
ahead
and
completes
this.
It
will
mark
that
version
of
postgres
as
the
enabled
version
on
the
machine.
B
Okay
right
so
right,
there
he's
been
marked
as
the
enabled
version.
So
brian
was
talking
earlier
about
how
the
the
application
stream
is
sticky.
So
if
I
did
something
like
young
update.
B
Like
this,
it's,
oh
maybe
I
have
the
wrong
thing.
There.
D
B
All
right,
so
I'm
using
the
right
words.
It's
just
like
not
able
to
find
it
because
it's
not
enabled
so
what
I
need
to
do
is
remove
96.
A
B
B
The
data
so
that
when
you
upgraded
the
the
rpms
you
get
that
re-imported
back
and
you
don't
pick
up
any
changes
from
that
import
that
match
the
new
version.
B
The
database
you've
installed
all
right
so
here
in
this
example
we're
just
doing
the
package
transactions
we're
not
doing
all
the
system,
administratory
bits
that
you'd
want
to
do
in
order
to
make
sure
that
you
didn't
have
any
problems
with
the
data
that
you
had
stored
in
set
database
with
something
like
node,
it's
less
less
problematic,
because
there's
less
stuff
hanging
around
in
the
on
the
system
around
it
all
right.
C
A
B
B
Those
are
disabled
ones,
okay,
so
I'm
going
to
let's
say
I
want
to
go
to
not
10
to
12.
B
B
And
brian
one
other
question,
I
think
I
know
the
answer,
but
the
profiles
that
are
specified
for
postgres.
It
defaults
to
the
server
profile.
But
what
does
the.
C
Profile
mean
so
the
profile
is
the
set
of
packages
that
get
installed
when
a
when
a
profile
is
selected.
So
if
you
just
wanted
the
client
packages,
there's
a
client
profile
for
postgres
that
includes
the
connectors
for
the
various
languages
for
postgres
server
is
another
profile
to
actually
install
the
server
itself.
So
not
all
systems
want
to
have
the
server
some
you
just
may
want
to
install
the
clients.
C
So
that's
typically,
what
we
do
is
client
and
server
for
databases,
other
things
like
identity
management
and
such
have
much
more
complicated
profiles,
but
the
profile
is
a
set
of
packages
for
a
specific
use
case
that
that
makes
it
easier
to
to
do
the
install
just
the
way
you
want
it.
B
And
just
we've
been
specifying
the
postgres
module
each
time,
which
is
why,
when
I
do
my
list,
I
only
see
the
postgres
ones,
but
if
I
take
off
that
additional
parameter,
it'll
then
essentially
be
a
wild
card.
Show
me
all
the
modules
that
they've
produced
in
the
versions
right
so
like
there's
several
different
versions
of
ruby
offered
through
once
again,
there
are
several
different
versions
of
ruby
offered
through
application
streams.
B
You
know
we
were
talking
about
python
earlier
and
there's
two
seven
and
three
six,
which
is
this
the
standard
one
and
then
three
eight
is
also
distributed
to
new
versions
of
php
a
couple
different
versions
of
pearl.
I
know
short
told
you
we're
going
back
to
pearl.
That's
what.
A
I
work
for
a
newsletter
company
and
their
entire
cms
was
written
in
pearl,
and
while
it
was
interesting
and
unique-
and
you
know
efficient
for
pearl,
it
was
still
very
hard
to
like
debug
or
troubleshoot.
Anything
right
like
the
typical
pearl
problems.
Still
right,
you
know,
even
with
a
multi-year
program
was
like.
Why
is
this
like
this?
Oh
it's
because
of
this
other
thing
over
here
somewhere
right,
yeah.
B
I
I
wrote
a
piece
of
code
in
a
weekend
when
I
first
started
at
red
hat.
B
Well,
I
wrote
in
pearl
because
that's
what
I
knew
and
ready
to
do
like
file,
I
o
and
stuff
yeah
and
then
17
years
later
I
found
out
it
was
still
production
because
somebody
was
like
hey.
I
saw
that
you
originally
wrote
this.
I
need
to
do
something
slightly
different.
B
Can
you
make
it
do
this
because
we
can't
figure
it
out:
wow,
okay,
cool,
yes,
so
notice,
as
brown
was
talking
about
nginx
right,
a
couple,
different
versions
there
and
on
and
on
and
then
we
said
that
there
were
some
packages
that
are
application
streams,
but
that
aren't
managed
as
modules.
So
I
think
brian
you
said:
apache
was
one
of
those.
C
Apache
actually
relate
is
a
module.
Oh.
C
But
yeah
like
we
talked
about
gcc,
so
it
is
an
application
stream.
Gcc
toolset
is
an
application
stream,
although
it's
not
packaged
as
a
module.
B
That's
not
gonna
work
either
nevermind.
My
my
regex
fuel
is
just
garbage
today.
B
B
A
B
Well,
so
I
still
need
a
zero
through
nine
for
for
ten
but
yeah
at
least
one
zero
through
nine,
maybe
more
than
one
zero.
Three
right,
yeah.
D
D
B
A
A
A
A
B
C
Think
you're
welcome,
certainly.
A
Yeah
really
appreciate
you
coming
on,
and
that
is
all
for
the
channel
today.
I
am
actually
turning
everything
off
here
and
then
running
to
go.
Get
my
second
vaccine
shot,
so
stay
safe
out
there
and
get
vaccinated.
If
you
can,
please.