(twinkly intro music)
- In this video, we'll review the basics
of provisioning with Red Hat Satellite.
Satellite's able to provision to bare metal,
virtual, private, and public clouds.
Satellite has the ability to integrate
into existing infrastructure services
like DNS, DHCP, and identity platform,
automating what normally would be a multi-step process.
Satellite can also discover non-provisioned hosts.
So discovery is a means
to set up the networking infrastructure
so that when new systems are brought in,
you can simply turn them on,
and those servers will show up in Satellite
as new systems to manage.
In the demo, we'll focus on two use cases:
Provisioning of a virtual machine,
and discovery of a new host.
Satellite can provision in a lot of different ways.
During this module, we're going to focus on two methods.
Provision of a new virtual machine
via a compute resource,
and Discovery using a PXE boot.
We'll start with provisioning using a compute resource.
A compute resource in Satellite
is used to define information
about your compute resource provider,
such as RHEV, VMware, Amazon, or libvirt.
Creating a compute resource will enable you
to make APA calls to your resource provider
to provisioned hosts.
Using a compute resource, I can create a host
including a VM or a cloud instance.
In Satellite, we'll go to infrastructure,
compute resources.
As you can see, I already have created a provider, libvirt.
I'm using libvirt for ease of demo purposes.
I'll click "create compute resource" to give you a feel for the options.
Notice that as I choose the provider,
the options change to be specific to that provider.
(mouse clicking)
I'll cancel out of this
and take a quick look at the existing compute resource.
Note that since this is already running,
I have a bunch of virtual machines listed,
as well as some compute profiles.
Satellite by default includes the small,
medium, and large compute profile options,
but you need to configure the attributes to meet your needs.
Let's also take a look at the host group.
This will be relevant
for any provisioning method that you use.
A host group defines how a group of systems
can be commonly configured.
When we go to provision a host,
the host group will allow many of the settings
to be automatically completed
based on the host group settings.
I'll select RHEL7 Crash.
And notice here that we have a lot of options such as the content source.
This could be your Satellite or a capsule server.
How to deploy: In this case libvirt.
As well as your default compute profile.
To actually provision a host, the steps are simple.
Hosts. Create host.
We'll provide a name.
So my organization, my location,
and then select my host group.
You should notice that all the other fields
get inherited from that host group.
We can go through and select additional options,
or change some of the defaults if we like,
but generally speaking, it's not necessary.
Before I hit submit, I'm going to open up my libvirt window.
If you look at the list of host names,
notice that that host does not currently exist.
I'll select "Always on Top",
back to my Satellite UI,
and submit.
Notice on the libvirt screen,
the host name has appeared.
If I open the console for that new host,
I can see the host being provisioned
with very little effort on my part.
This will take a few minutes to complete,
so we're gonna let that run in the background
and we'll come back to it.
Next I want to talk about provisioning using Discovery.
There could be a few different reasons to use this method.
Maybe you have a bare metal system,
or maybe you have a separation of duties
where the VM admins create the VMs,
and the Linux admin just provisions and patches.
Using Discovery is helpful in these instances.
Discovery can be manual or automated.
For the purposes of today's demo,
I'm going to use virtual machines in libvirt.
I have a couple already created that I'll start up,
and I'll have Satellite discover them.
In addition to the host groups that we've already covered,
Satellite also has Discovery rules
that allow you to match the system facts
of discovered hosts to define how they are provisioned.
For example,
you might want to automatically provision hosts
with a high CPU count as hypervisors.
Or you might want to provision hosts
with large hard disks as database servers.
We'll click "Configure", "Discovery rules."
I already have a role created, so I'll select it
to show you the details.
In this example, we're going to match the BIOS vendor
and assign hosts with a BIOS vendor
of C BIOS to the RHEL7 Crash host group.
We'll also name the host
based on the last octet of the IP address.
I'll just cancel out of this.
Under "Administrator", "Settings", and then "Discovered",
I wanted to point out
that auto provisioning is set to no.
If it was set to yes,
then upon discovering a new host Satellite would import it
based on the Discovery rules
and provision the OS automatically
with no intervention from an admin.
For this demo, I do want to manually start the provisioning.
But I wanted to point out this setting
as I currently have it disabled.
So to provision I'm going to go back to libvert,
and I'm going to create a VM.
I'll select PXE boot, Linux, RHEL7.5,
give it two gig of RAM
and a 10 gig hard drive.
Give it a name.
I'm going to use the VLAN 127.
We'll click finish.
As soon as this starts, I'm actually going to power it down
because I do want to make one other configuration change.
In the boot options,
I want it to boot from the NIC first
because we will need to boot from network at least twice.
I will apply.
(mouse clicking)
And run this host.
Let me set this window to always be on top
so you can see it running.
Once this menu appears,
I'm going to select the Foreman Discovery Image.
And I'm just gonna let this run and not touch it.
(clock ticking)
So we've got the success page, which means
that Satellite has discovered the host
and we're ready for the next step.
Remember, if I'd enabled auto provisioning,
the next step would have gone on without me.
On Satellite, I'm going to go to "Hosts", "Discovered hosts",
and I can click right on the system name
to see all the details about the host.
At the top under "Select Action",
I can choose Auto Provision,
which will use my Discovery rules
to match and provision this host.
Notice that the host is starting the provisioning process
and is configuring the OS.
This will take several minutes to complete.
I can go on to the "Hosts", "All Hosts" page.
We can see that that new host is listed at the top.
And we match the host based on the Discovery rules
that we provided, so it's named host dash 118,
which is the last octet of the IP address.
We can of course change that host name later.
If I click into the host itself,
we'll see the build is pending installation
while this build completes.
(clock ticking)
And as you can see,
the installation process has completed.
And that didn't just install the OS for us.
It also applied any other software
that we had listed in that host group.
So it was part of the installation process,
it also registered this host as Satellite.
As you can see on the Satellite window,
the build was installed.
The configuration is up to date, but there is some security errata
that's ready to be installed. So we could go on
and patch the system like we showed you in an earlier video.
I do want to reopen up the first machine that we booted,
if you recall, in the beginning of this section.
We had also deployed using a compute resource,
host RHO53, so that one as well, you can see
has completed its installation.
So to recap this section,
we first discovered using a compute resource.
We created a brand new virtual machine on libvert.
Provisioned that with an OS,
and it's up and running.
We then did a bare metal type discovery
where we had a brand new,
in this case it was a virtual machine,
but could have been bare metal.
Could be a VM that your hypervisor or virtualization team
creates and hands over to you.
But we detected that using Discovery.
And we could have auto provisioned that entirely
end to end using the Discovery rules.
We did that a bit manually just to show you
what it looked like.
But that completes the provisioning portion.
And we'll see you in the next video.