OKD: The Community Distribution of Kubernetes that powers Red Hat’s OpenShift

OKD is the community distribution of Kubernetes optimized for continuous application development and multi-tenant deployment. OKD adds developer and operations-centric tools on top of Kubernetes to enable rapid application development, easy deployment and scaling, and long-term lifecycle maintenance for small and large teams. OKD is also referred to as Origin in github and in the documentation. OKD makes launching Kubernetes on any cloud or bare metal a snap, simplifies running and updating clusters, and provides all of the tools to make your containerized-applications succeed.


Operators
Operator automates what Kubernetes does on the behalf of a user.
An operator extends the Kubernetes functionality to automate the management of the entire life cycle of a particular application.
it’s a custom Kubernetes controller that uses custom resources (CR) to manage applications and their components.
Operator SDK is basically a framework to build an operator using Golang, helm and Ansible
Operators all the way down
Openshift has been built leveraging the operators which manages the application but the cluster itself, for example establishing a cluster on autopilot, where cluster is managing itself by using the following operators:
Cluster Version Operator
The main operator is Cluster Version Operator, it basically make sure that all the essential/core operators are present which I am gonna discuss in this slide. CVO operator also maintains and updates the versions of the core operators.
Kube-apiserver, kube-controller-manager, kube-scheduler, etcd:
these operators ensures the core components of Kubernetes are configured for a cluster.
Cluster Network Operator
The Cluster Network Operator installs and upgrades the networking components on an OpenShift Kubernetes cluster.
It follows the Controller pattern: it reconciles the state of the cluster against a desired configuration which includes ensuring if the CNI plugins are installed and SDN is configured
In OpenShift, the Cluster Network Operator runs very early in the install process — while the boostrap API server is still running.
OpenShift Ingress Operator
Ingress Operator is an OpenShift component which enables external access to cluster services by configuring Ingress Controllers, and ensures if the routes are setup
Ingress Operator implements the OpenShift ingresscontroller API.
image Registry Operator
It manages all configuration of the Openshift registry including creating storage.
On initial startup the operator will create a default image-registry resource instance based on configuration detected in the cluster (e.g. what cloud storage type to use based on the cloud provider).
If insufficient information is available to define a complete image-registry resource, the incomplete resource will be defined and the operator will update the resource status with information about what is missing.
Cluster Monitoring Operator
The Cluster Monitoring Operator manages and updates the Prometheus-based cluster monitoring stack deployed on top of OpenShift.
OperatorHub.io
OperatorHub.io is a new home for the Kubernetes community to share Operators.
Operator Lifecycle Manager
OLM is like CVO for all the OperatorHub’s/optional operators
Operator Lifecycle Manager (OLM) helps users to install, update, and manage the lifecycle of Kubernetes Operators and it takes care of operator scope (cluster-wide or namespace only), ensures it can be updated manually and manages permissions to use and install operators for the openshift cluster
OperatorHub is integrated in OpenShift console, so developers can install operators via self-service interface.
for example : Storage (operators based on Rook.io), pipelines operators based on Tekton, Argo CD, KubeVirt, Grafana and many more.
The State of OKD Today and Tomorrow
- Current Stable Release 4.9
- Documentation Sub-Working Group
- Virtualization Sub-Working Group
- crun, cgroupsv2
- Coming Soon: OKD Operator Catalog
- Coming Soon: OKD for ARM64
OKD Working Group
Slack
#openshift-users on kubernetes.slack.com
Issue Tracker
github.com/openshift/okd
Bi-weekly Video Conference Meetings
apps.fedoraproject.org/calendar/okd

Fedora CoreOS Working Group
IRC / Matrix
#fedora-coreos on Libera.chat
Issue Tracker
github.com/coreos/fedora-coreos-tracker
Weekly Meetings
apps.fedoraproject.org/calendar/CoreOS/
OKD Installation on Vmware Vpshere/Any Other Cloud
Download the openshift client and openshift-install for OKD
tar -xvzf openshift-client-linux-4.9.0–0.okd-2022–01–14–230113.tar.gz
tar -xvzf openshift-install-linux-4.9.0–0.okd-2022–01–14–230113.tar.gz
sudo mv kubectl oc openshift-install /usr/local/bin/
oc version
openshift-install version
openshift-install create install-config — dir <cluster name>
Enter the details for your cloud and use the fake pull secret
Pull Secret {“auths”:{“fake”:{“auth”: “bar”}}}
openshift-install create cluster — dir akaleem — log-level info
if you want to dig deeper into the installation process, there is a link to follow
Github
Enjoy!