OpenShift Hands-On Lab - Getting Familiarized With OpenShift
OpenShift Learning Path for Cloud and DevOps Engineers
Table of contents
- 📝Introduction
- 📝Set Up CodeReady Containers (For those who choose to run it locally)
- 📝Set Up an OpenShift Sandbox (For those who choose to run it online on the Cloud. This was my choice).
- 📝Log In to the Cluster (Option 1)
- 📝Log In to the Cluster (Option 2)
- 📝Get Help for the oc Command
- 📝View the Test Project Resources
- 📝Delete the Route from the Test Project
📝Introduction
In this lab, we will be getting familiar with logging into OpenShift, and learning some of the basic commands to get help and information about the current project.
These are the objectives of this lab:
Log In to the Cluster
Get Help for the
oc
CommandView the Test Project Resources
Delete the Route from the Test Project
📌Note: Due to resource limitations in my Cloud Playground environment, I used the Red Hat free online resources available for this lab.
To complete this lab, you must first register for a Red Hat Developer login on the Red Hat login page.
Once registered, you may complete the lab steps using Red Hat's CodeReady Containers or the Red Hat-provided OpenShift sandbox.
Solutions for CodeReady Containers and the Red Hat OpenShift sandbox can be used in this lab. However, I decided to use the free Red Hat-provided OpenShift sandbox available for 30 days.
📝Set Up CodeReady Containers (For those who choose to run it locally)
📌Note: CodeReady Containers has specific hardware and operating system requirements. To ensure your environment is compatible, see Red Hat's minimum system requirements for CodeReady Containers.
Navigate and log in to your Red Hat Developer account.
Under the Local tab, select your OS and click Download CodeReady Containers.
Click Copy Pull Secret for later use.
Install CodeReady Containers.
📌*Note: For OS-specific installation instructions, see [Red Hat's CodeReady Containers installation guide](access.redhat.com/documentation/en-us/red_h..).*
Open a terminal session and set up CodeReady Containers:
crc setup
When prompted, enter
yes
to enable telemetry data collection orno
to disable telemetry data collection.Start the VM:
crc start
📌Note: The cluster takes a minimum of 4 minutes to start before serving a request.
When prompted, paste in the previously copied pull request and press Enter.
Print the command needed to add the cached
oc
executable to your$PATH
:crc oc-env
Run the printed command.
Log in as the developer user:
oc login -u developer https://api.crc.testing:6443
📝Set Up an OpenShift Sandbox (For those who choose to run it online on the Cloud. This was my choice).
To log in through the web UI directly, navigate to the Red Hat CodeReady Containers page and log in to your Red Hat Developer account with the credentials you created.
Select Try OpenShift in our free sandbox.
Click Launch your Developer Sandbox for Red Hat OpenShift.
To confirm your account, enter a valid phone number and click Send Code.
Enter the verification code you received and click Verify Code.
Click Start using your sandbox.
Under Log in with, click DevSandbox.
Select the I have read and agree to the Red Hat OpenShift Online Services Agreement and click SUBMIT.
At the top right, click the shell icon (>_).
Leave the default project selected and click Start. Note: You will not be able to create new projects in the sandbox. For any steps in the lab stating you need to create a new project, skip that step and ensure you use one of the existing projects: <username>-dev, or <username>-stage.
📌Note: Type
q
to exit a menu or log.
📝Log In to the Cluster (Option 1)
📌Note: This section only applies to students using CodeReady Containers. Otherwise, skip to the next objective.
Log in to the cluster:
oc login -u developer https://api.crc.testing:6443
In a new browser, log in to the cluster using the console URL.
Use the
developer
credentials to log in.
📝Log In to the Cluster (Option 2)
📌Note: To complete a login using oc
in OpenShift sandbox, click on the shell (>_) icon. Alternatively, you can download the binary and log in from a remote system (e.g. VSCode). Please review the Using Red Hat OpenShift Sandbox video detailing the necessary steps for that process.
📝Get Help for the oc
Command
If you are using CodeReady Containers, run the following script to populate the project with resources:
curl -L https://github.com/linuxacademy/Red-Hat-Certified-Specialist-in-Containers-and-Kubernetes/raw/main/oc-ruby-setup-crc.sh | bash
If you are using the OpenShift sandbox, run the following script to populate the project with resources:
curl -L https://github.com/linuxacademy/Red-Hat-Certified-Specialist-in-Containers-and-Kubernetes/raw/main/oc-ruby-setup-rhsb.sh | bash
Clear your screen:
clear
Request help for the
oc
command (If you are using OpenShift sandbox, remember to typeq
to exit a menu):oc --help | less
Request help for the
oc delete
subcommand (If you are using OpenShift sandbox, remember to typeq
to exit a menu):oc delete --help | less
📝View the Test Project Resources
Get an overview of the current project that the client created on this cluster:
oc status --suggest
Clear your screen:
clear
Take a look at all the resources the project contains:
oc get all | less
Look at the
pods
:oc get pods
Obtain more information on the
Running
pod:oc describe pod <POD_NAME> | less
Look at the
pods
:oc get pods
Take a look at the same pod (
Running
) inYAML
(orJSON
) format:oc get pod <POD_NAME> -o yaml | less
clear
your screen.
📝Delete the Route from the Test Project
Pull up the routes:
oc get routes
Delete the route from this project:
oc delete route <ROUTE_NAME>
Verify the route has been deleted:
oc get routes
These are a quick preview of OpenShift GUI where we can manage the resources, however, we will cover it at other labs.
📌Note - At the end of each hands-on Lab, always clean up all previous resources created to avoid being charged if you used a Cloud Provider to provision them.
Congratulations — you have completed this hands-on lab covering the basics of getting familiar with logging into OpenShift, and learning some of the basic commands to get help and information about the current project.
Thank you for reading. I hope you understood and learned something helpful from my blog.
Please follow me on CloudDevOpsToLearn and LinkedIn, franciscojblsouza