Showing posts fromOpenshift
Configure Haproxy as a load balancer for Openshift 4.16
- 07 Feb, 2025
I set up an OpenShift 4.16 cluster using UPI on top of VMware. The cluster has 3 Masters, 3 Worker Nodes, and 3 InfraNodes. The infra nodes were necessary to install IBM Storage Fusion. After the setup, I needed to create a load balancer in front of the OpenShift cluster. There are several options, and one of them is HAProxy. I just installed an RHEL 9 server, added 3 ips to the network card and setup the haproxy. Prerequisites - A system running RHEL 9 - Root or sudo privileges - A basic understanding of networking and load balancing Step 1: Install HAProxy First, update your system packages: sudo dnf update -y Then, install HAProxy using the package manager: sudo dnf install
Configure Haproxy as a load balancer for Openshift 4.16Read MoreCPU Throttling in Kubernetes
- 28 Nov, 2024
In the context of a Kubernetes cluster, CPU throttling still refers to the process of limiting the amount of CPU time a container or pod can use, but it's slightly different than throttling within an individual CPU or device, as Kubernetes manages resources at the container level. Here’s a breakdown of how CPU throttling works in a Kubernetes environment: 1. CPU Resources in Kubernetes Kubernetes allows you to specify how much CPU a container can request and how much it is allowed to consume. This is done through resource requests and limits: - CPU Request: The minimum CPU resource that the container is guaranteed to have. - CPU Limit: The maximum CPU resource the container can use. Ku
CPU Throttling in KubernetesRead MoreCreate an application from OpenShift Template
- 21 Dec, 2021
Openshift comes with a set of default templates, you can use oc get templates -n openshift to show them Each template contains specifc sections - The objects section: defines a list of resources that will be created - The parameters section: defines parameters that are used in the template objects 1 - Inspect the template file for the parameters I export the postgresql-ephemeral to a yaml file using : oc get template postgresql-ephemeral -o yaml -n openshift > postgresql.yaml Then inspect the yaml file oc process --parameters -f 2 - Create the application using oc process oc process -f postgresql.yaml -l app=mydb -p DATABASESERVICENAME=dbservice -p POSTGRESQLUSER=dbuser \ -p POS
Create an application from OpenShift TemplateRead MoreCreate VM templates on KVM
- 07 Nov, 2021
Continuing with the preparation of my lab I have installed a vm with RHEL 8.4 updated and from there I will create a template. To create a template and use it later in the KVM the steps are as follows: obs: My host is an Ubuntu 20.04 Install the tools to work with guests: sudo apt install libguestfs-tools List the vms: virsh list --all Prepare the rhel8-2 virtual machine to be a template sudo virt-sysprep -d rhel8-2 Rename the vm to be a template sudo virsh domrename rhel8-2 rhel8-Template Open the VM Manager (virt-manager), and then select the rhel-Template. Right-click on it and select the Clone option, which will open the Clone Virtual Machine window.
Create VM templates on KVMRead MoreError when login using CP4Data CLI command line
- 06 Mar, 2023
Today i got the following error when i try to run the command :
./cpd-cli manage login-entitled-registry ${IBMENTITLEMENTKEY}
Run command: podman run -d --name olm-utils-play --env CMD\PREFIX=manage -v /opt/cpd-cli-linux-EE-12.0.2-39/cpd-cli-workspace/olm-utils-workspace/work:/tmp/work icr.io/cpopen/cpd/olm- utils:latest\ERROR\ 2023-03-06T12:41:55.991666Z Command exception: Failed to start the olm-utils-play container: Error: runc: container\linux.go:370: starting container process caused: error adding seccomp filter rule for syscall bdflush: permission denied: OCI permission denied (exit status 126)\ERROR\ 2023-03-06T12:41:55.998354Z RunPluginCommand:Execution error: exit status 1
This
Exploring Kubernetes Startup Scaling
- 26 Jun, 2025
Kubernetes has long been a cornerstone for managing containerized workloads, and its continuous evolution keeps it at the forefront of cloud-native technologies. One of the exciting advancements in recent releases is the enhancement of startup scaling capabilities, particularly through features like Kube Startup CPU Boost and dynamic resource scaling. In this blog post, we’ll dive into what startup scaling is, how it works, and why it’s a significant addition for Kubernetes users looking to optimize application performance during startup. What is Startup Scaling in Kubernetes? Startup scaling refers to the ability to dynamically allocate additional resources, such as CPU, to pods during th
Exploring Kubernetes Startup ScalingRead MoreExploring Red Hat OpenShift 4.18: What’s New and Why It Matters
- 07 Apr, 2025
Released on February 24, 2025, Red Hat OpenShift 4.18 is here, bringing a fresh wave of enhancements to the Kubernetes-powered hybrid cloud platform. Whether you’re a developer, a sysadmin, or an IT decision-maker, this update has something to pique your interest—think beefed-up security, slick virtualization upgrades, and tools to make your clusters easier to monitor and manage. Let’s dive into what’s new and why OpenShift 4.18 might just be the upgrade your team’s been waiting for. Security That Packs a Punch In today’s world, keeping sensitive data safe is non-negotiable, and OpenShift 4.18 steps up to the plate. One standout feature is the Secrets Store CSI Driver Operator, now fully a
Exploring Red Hat OpenShift 4.18: What’s New and Why It MattersRead MoreFirewall changes for container image pulls
- 05 May, 2023
Since June 2022 the Red Hat OpenShift operator index images (redhat/redhat/operator-index) have been served from registry.redhat.io using Quay.io as the backend. OpenShift itself already needs access to the Quay.io registry and CDN hosts as explained in its installation instructions, and so this change required no action from customers at that time. We are extending this to all Red Hat container images. This allows customers to benefit from the high availability of the Quay.io registry while simplifying the way Red Hat delivers container images and paving the way for future enhancements. More informaion(https://access.redhat.com/articles/6999582)
Firewall changes for container image pullsRead MoreHow to remove a worker node from Red Hat OpenShift Container Platform 4 UPI?
- 28 Jan, 2025
When you delete a node using the CLI, the node object is deleted in Kubernetes, but the pods that exist on the node are not deleted. Any bare pods not backed by a replication controller become inaccessible to OpenShift Container Platform. Pods backed by replication controllers are rescheduled to other available nodes. You must delete local manifest pods. - To delete the node from the UPI installation, the node must be firstly drained and then marked unschedulable prior to deleting(https://access.redhat.com/bounce/?externalURL=https%3A%2F%2Fdocs.openshift.com%2Fcontainer-platform%2Flatest%2Fnodes%2Fnodes%2Fnodes-nodes-working.html) it: $ oc adm cordon $ oc adm drain --force --delete-loca
How to remove a worker node from Red Hat OpenShift Container Platform 4 UPI?Read MoreInfrastructure Nodes in OpenShift 4
- 23 Jan, 2025
Infrastructure nodes allow customers to isolate infrastructure workloads for two primary purposes: 1. to prevent incurring billing costs against subscription counts and 1. to separate maintenance and management. This solution is meant to complement the official documentation(https://access.redhat.com/bounce/?externalURL=https%3A%2F%2Fdocs.openshift.com%2Fcontainer-platform%2Flatest%2Fmachinemanagement%2Fcreating-infrastructure-machinesets.html) on creating Infrastructure nodes in OpenShift 4. In addition there is a great OpenShift Commons video describing this whole process: OpenShift Commons: Everything about Infra nodes(https://access.redhat.com/bounce/?externalURL=https%3A%2F%2Fyoutu.be
Infrastructure Nodes in OpenShift 4Read MoreIs it possible to change the domain name of OpenShift 4 cluster post installation?
- 14 Jan, 2025
It is not possible to change the domain for the API, internal or external. Starting with OpenShift 4.8, it is possible to change the domain of the console and downloads routes after cluster installation. Choose your domain name with carrefully. More information see this document from RedHat https://access.redhat.com/solutions/4853401(https://access.redhat.com/solutions/4853401)
Is it possible to change the domain name of OpenShift 4 cluster post installation?Read MoreIsolating Infrastructure Nodes
- 24 Jan, 2025
Applying a specific node selector to all infrastructure components will guarantee that they will be scheduled on nodes with that label. See more details on node selectors in placing pods on specific nodes using node selectors(https://access.redhat.com/bounce/?externalURL=https%3A%2F%2Fdocs.openshift.com%2Fcontainer-platform%2Flatest%2Fnodes%2Fpods%2Fnodes-pods-node-selectors.html), and about node labels in understanding how to update labels on nodes(https://access.redhat.com/bounce/?externalURL=https%3A%2F%2Fdocs.openshift.com%2Fcontainer-platform%2Flatest%2Fnodes%2Fnodes%2Fnodes-nodes-working.html%23nodes-nodes-working-updatingnodes-nodes-working). Our node label and matching selector for
Isolating Infrastructure NodesRead MoreManage OpenShift virtual machines with GitOps
- 04 Feb, 2025
Managing virtual machines in an Infrastructure as Code (IaC) environment requires efficiency and reliability. One of the central ideas for this is having a single source of truth (SSoT) in order to ensure consistency in resources, improve automation, and leverage processes such as version control. In this type of secluded environment, we can track and test changes and increase our scalability with ease. This learning path will showcase how to use Red Hat OpenShift GitOps with a Git repository as a single source of truth for our infrastructure, thereby enhancing automation, consistency, and efficiency for VMs in Red Hat OpenShift Virtualization. https://developers.redhat.com/learn/manage-op
Manage OpenShift virtual machines with GitOpsRead MoreNew Flags in OpenShift 4.17 Must-Gather Tool
- 11 Feb, 2025
The oc adm must-gather tool is essential for troubleshooting and diagnostics in OpenShift. With the release of OpenShift 4.17, new flags have been introduced to enhance flexibility and precision in data collection. These additions enable administrators to gather logs more efficiently while reducing unnecessary data collection. New Flags in Must-Gather --since This flag allows users to collect logs newer than a specified duration. For example: oc adm must-gather --since=24h This command gathers logs from the past 24 hours, making it easier to pinpoint recent issues. --since-time The --since-time flag lets users specify an exact timestamp (RFC3339 format) to collect logs from a pa
New Flags in OpenShift 4.17 Must-Gather ToolRead MoreNew Youtube channel and blog
- 18 Jul, 2022
I started a channel on youtube. The first video series will be about software that helps beginners to start using linux and after this series i will start to talk about my jorney learning new things like OpenShift, IBM Cloud, Cloud Paks and related IBM technologies.
I will record the videos in Brazilian Portuguese first and maybe i will create videos in English.
There is no much content about the things i will record in my native language and not everyone here in Brazil are able listen videos in English.
There is another blog too https://www.chuvisco.net.br(https://www.chuvisco.net.br) were you can view the transcription of the video.
https://youtu.be/cfvVsqNyaoM
oc command fails due to missing glibc library
- 13 Dec, 2024
Yesterday i was helping a customer to deploy his OpenShift 4.16.x cluster. The first step was the bastion host preparation. This includes the setup of the OCP CLI. We do the default instalation of the CLI on top of RHEL 8.x but after the installation we got the following error: oc version oc: /lib64/libc.so.6: version GLIBC2.33' not found (required by oc) oc: /lib64/libc.so.6: version GLIBC2.34' not found (required by oc) oc: /lib64/libc.so.6: version GLIBC2.32' not found (required by oc) We tried to compile the new GLIBC .but without success. The solution: Download the CLI version compiled for RHEL 8. Link here(https://access.redhat.com/bounce/?externalURL=https%3A%2F%2Fmirror.opensh
oc command fails due to missing glibc libraryRead MoreOpenShift Day 2 Operations - Part 1
- 29 Jul, 2025
“Day 2” operations refer to everything that happens after the cluster is installed, which could be a lot or a little, depending on how you plan to use the cluster. Verifying the Health of Your OpenShift 4 Cluster Managing an OpenShift 4 cluster effectively involves regular health checks to ensure smooth operation and reliability. An unhealthy cluster can lead to downtime, reduced performance, and compromised workloads. Node Health Healthy nodes are crucial for running workloads effectively. - Use this command to check the node status: oc get nodes Verify that all nodes show Ready in the STATUS column. You can use oc get nodes -o wide to get more details about the cluster For more
OpenShift Day 2 Operations - Part 1Read MoreOpenShift Day 2 Operations - Part 2
- 19 Aug, 2025
“Day 2” operations refer to everything that happens after the cluster is installed, which could be a lot or a little, depending on how you plan to use the cluster. Effective troubleshooting and monitoring in OpenShift require understanding the right way to retrieve logs and manage issues. While it might be tempting to SSH directly into cluster nodes, OpenShift provides tools and workflows to handle logs more securely and efficiently. Why You Should Avoid SSHing to Nodes SSHing directly into cluster nodes might seem like a quick way to debug issues, but it introduces several risks and challenges: 1. Security Risks - Inconsistent Access Control: Granting SSH access bypasses OpenShift’s
OpenShift Day 2 Operations - Part 2Read MoreOpenShift Day 2 Operations - Part 3
- 05 Nov, 2025
Retrieving OpenShift Cluster Logs Logs are invaluable for understanding the state of your OpenShift cluster and diagnosing problems. OpenShift provides several ways to access these logs efficiently: Get node logs Display node journal: oc adm node-logs Tail 10 lines from node journal: oc adm node-logs --tail=10 Get kubelet journal logs only: oc adm node-logs -u kubelet.service Grep kernel word on node journal: oc adm node-logs --grep=kernel List /var/log contents: oc adm node-logs --path=/ Get /var/log/audit/audit.log from node: oc adm node-logs --path=audit/audit.log Pod Logs Pod logs provide insights into application behavior. - Retrieve logs for a s
OpenShift Day 2 Operations - Part 3Read MoreOpenShift User is not able to login again after deletion using web console
- 13 Jan, 2023
If a user has been deleted from the OpenShift web console, they will no longer be able to login. The user's account and associated resources will also be deleted. If the user needs access again, they will have to be re-created in the console.
To recreate the user you can use the command :
oc create user
Use the oc create useridentitymapping command to map the identity to the user.
Use the command oc get identities to lis all identities you have configured, an then map the user.
For example:
oc create useridentitymapping homeldap:Y249a2VuaW8sb3U9 kenio
RedHat OpenShift Certification - Home Lab Setup
- 05 Nov, 2021
I am studying to take some RedHat certification exams including the OpenShift Enterprise Administration (DO280) exam. I could set up Linux cloud servers such as IBM Cloud or even on AWS but I have an old laptop and decided to setup a cluster with 3 Linux machines on it. I will start building a small k8s cluster. The first step was to install Ubuntu 20.04 as host. My old laptop is a Toshiba Satellite P875 – S3210 32GB RAM 512GB SSD 750 GB HD SATA Install and Enable SSH server on Ubuntu 20.04 1. Update ubuntu : sudo apt-get update 1. Install OpenSSH: sudo apt-get install openssh-server 1. Verify the status: sudo systemctl status sshd 1. Enable ssh connections on the host: sudo ufw allow
RedHat OpenShift Certification - Home Lab SetupRead MoreResize VM disk with KVM
- 16 Nov, 2021
Today i will install Code Ready. You can install Openshift on your laptop. See this link(https://developers.redhat.com/products/codeready-containers/overview?onebox=crc) . My RHEL 8.4 VM has a small disk and first i need to resize the disk and then install CodeReady Using this commands i change from 20 GB to 50GB disk First you need to locate the vm disk with the command sudo virsh domblklist rhel8-1 the output was: Target Source ------------------------------------------------------- vda /var/lib/libvirt/images/rhel8-2-clone.qcow2 sda - To resize the disk the VM must be not running and must not have a snapshot. Just type this command and add 30GB sudo qemu-img resize /var/lib/lib
Resize VM disk with KVMRead MoreThe question is: What is the gap between microdnf and dnf?
- 02 Dec, 2021
Linux Containers have emerged as a key open source application packaging and delivery technology, combining lightweight application isolation with the flexibility of image-based deployment methods. Red Hat Enterprise Linux (RHEL) base images are meant to form the foundation for the container images you build. As of April 2019, new Universal Base Image (UBI) versions of RHEL standard, minimal, init, and Red Hat Software Collections images are available that add to those images the ability to be freely redistributed. RHEL minimal images provide a base for your own container images that is less than half the size of the standard image, while still being able to draw on RHEL software repositor
The question is: What is the gap between microdnf and dnf?Read More