Application Containers are nothing but Linux Processes, and it requires sufficient compute resources to run. Configure the right size of CPU and Memory resources for Containers is a sort of necessary evil, mainly while Orchestrating them using Kubernetes/OpenShift.If the containers in a POD not having the compute resources configuration, it not only affects the resource sharing of the host but also impacts the Scheduling Priority and Quota Consumption.
In production clusters, `resource configuration` is one of the mandatory best practice in a Kubernetes based platform.
We know that the Linux Control Group (C-Group) configuration is a bit daunting task. But the OpenShift `deployment config` API provides a rather simple option to set the resources for the Containers in a POD.
The objective of this hands-on workshop is to learn the APIs and Procedures to set the CPU and Memory resources for a containerized application.
Expected Skill Level: The participants for the session should have the necessary hands-on experience in Docker and Kubernetes. Also, since the example tasks in the workshop are primarily using the command-line interface (CLI) to execute, the attendees need to have prior experience in Linux CLI.
1. All participant for the workshop should carry `laptop` with the functional wireless network interface; and is a mandatory requirement to attend the hands-on workshops.
2. To save time and avoid the client-side configuration requirements in the workshop session, a pre-configured VM needs to be deployed on your Laptops to execute the commands.
3. Attendees need to set up and test the Client VM on your laptop. You may follow the below steps to import and configure the Client VM. The VM should be ready before coming for the session. ( Please note that the One-hour window is not sufficient to set up the Client VM and complete the Workshop tasks)
3.1. Install `Virtualbox 6.0` or later on the laptop
3.2. Download the `Client VM` preinstalled with OopenShift client (OC) from the
URL :
https://bit.ly/devconf-rm-vm3.3. Install an SSH client on the Host Machine (e.g: putty)
3.4. Make sure that you could `SSH` the client VM from the Host Laptop using the SSH client.You may find the steps to configure `Port Forwarding` in the
URL:
https://vinothecloudone.blogspot.com/2019/07/how-to-enable-ssh-access-to-linux-vm.html3.5. Verify that; you could access the external URLs from the client VM terminal. (TIP: ping -c3 google.com)
1. APIs to Configure Resources in OpenShift.
2. Resources Management Concepts like `requests` and `limits` for CPU and MEMORY.
3. How the resource setting impacts Quality of Service (QoS) of the Pods.
4. View and Use the resource settings in Containerized Applications.5. How we can enforce the resource settings in a namespace.
NOTE: This workshop is limited to 40 attendees. FIRST COME, FIRST SERVE.