top of page
Writer's picturePravin Mali

Scaling and Troubleshooting OpenShift 4 Applications Like a Pro



Alice is a software developer who has been tasked with managing an OpenShift 4 cluster that is running several applications for her organization. Her responsibilities include ensuring that the applications are running smoothly, monitoring the performance of the cluster, and troubleshooting any issues that arise.


To manage the OpenShift 4 cluster, Alice first logs in to the web console using her credentials. From there, she can view the status of the cluster, including the number of nodes and pods, as well as the resource utilization of each pod. She notices that one of the applications is experiencing increased traffic, which is causing the CPU usage to spike. To handle the increased load, she decides to scale the application horizontally by adding more replicas.


Using the OpenShift web console, Alice navigates to the deployment for the application and adds two more replicas to the deployment. She then monitors the resource utilization of the application and sees that the CPU usage has decreased, indicating that the additional replicas have successfully handled the increased traffic.


Next, Alice wants to ensure that the OpenShift 4 cluster is running optimally. She decides to configure monitoring using Prometheus and Grafana. She follows the instructions provided by Red Hat to set up Prometheus and Grafana, and then configures alerts to notify her when certain thresholds are exceeded, such as when CPU usage exceeds 90%.


Alice also sets up logging for the cluster, allowing her to view the logs of individual pods and troubleshoot any issues that arise. For example, when one of the applications crashes, she uses the OpenShift CLI to view the logs of the pod and identify the cause of the crash.

Finally, Alice decides to upgrade the OpenShift 4 cluster to the latest version to take advantage of new features and improvements. Before upgrading, she follows the upgrade instructions provided by Red Hat and tests the upgrade on a staging environment to ensure a smooth transition.


By effectively managing the OpenShift 4 cluster, Alice ensures that the applications are running smoothly and efficiently, reducing downtime and improving the cluster's overall performance.


Here are some of the commands Alice used to manage OpenShift 4 in the story:

  1. Scaling the application:

To add two more replicas to a deployment called myapp, Alice used the following command:

$ oc scale --replicas=2 deployment/myapp

2. Monitoring the cluster:


To install Prometheus and Grafana, Alice followed the instructions provided by Red Hat. Once installed, she used Prometheus to monitor the resource utilization of the OpenShift 4 cluster, including CPU and memory usage. She set up alerts to notify her when certain thresholds are exceeded, such as when CPU usage exceeds 90%.


3. Troubleshooting:


To view the logs of a specific pod, Alice used the oc logs command, as shown below :

$ oc logs myapp-1-abcde

This command will display the logs for the myapp-1-abcde pod, allowing her to identify any errors or issues that may be occurring.


4. Managing resources:


To set a resource request of 512MB of memory for an application deployment called myapp, Alice used the following command:

$ oc set resources deployment/myapp --requests=cpu=100m,memory=512Mi

5. Upgrading the cluster:


To upgrade the OpenShift 4 cluster to a newer version, Alice used the oc adm upgrade command, as shown below:rubyCopy code

$ oc adm upgrade

Before upgrading, she checks the release notes and follows the upgrade instructions provided by Red Hat to ensure a successful upgrade.


If you have any questions or would like to learn more about related topics, feel free to reach out or follow me on my social media channels:

  • Connect with me on LinkedIn

  • Follow me on Twitter

Stay tuned for more insightful articles on Kubernetes, OpenShift, containerization technologies, Automation and Devops.

7 views0 comments

Comments


bottom of page