OpenShift
- OpenShift is an extension to Kubernetes (Kubernetes++)
- OpenShift leverages Kubernetes as a Container Mangement Platform and add several important capabilities, Some of them are
- Self-Service Portal & Service Catalog
- Build & application deployment
- Built-in registry
- Extended application routing
- Openshift Flavors
- Openshift Origin/OKD:
- Visit here
- Openshift Container Platform:
- Production Ready OpenShift Origin
- Enterprise Support
- Updates every 6 months
- On your own private or on-site cloud
- Openshift Online:
- multi-tenant public cloud managed by RedHat
- Here we have a free flavor
- OpenShift Dedicated
- Single-tenant container application hosted on AWS/Google Cloud/Azure.
- Openshift Origin/OKD:
- OpenShift Components:
- Openshift Masters
- Openshift nodes
- Etcd as a key-value store.
- Router as ingress traffic control
- Openshift Internal Registry
- Openshift Architecture
- Authentication: Openshift has several built-in authentication methods that allow granular access to Openshift Projects
- Local Authentication
- LDAP authentication
- Request Header authentication
- Keystone authentication
- GitHub authentication
- Internal Image Registry: Openshift uses an internal registry to store in Openshift that are ready to be deployed to Openshift nodes
- GUI and Web Console: easy to use web interface
- SCM Integration: built-in integration with git.
- Image builder: Convert from source-code into runnable-image
- CI/CD Integrations: easy to integrate with CI/CD tools like Jenkins
OpenShift Dev environment
-
Wokring with oc cluster up:
- System: Linux/mac/Windows with Docker installed
-
Centos 7 Steps:
- Install Docker
- Configure an insecure registry
- edit /etc/docker/daemon.json and ensure the following content is added
{ "insecure-registries": ["172.30.0.0/16"] }
- Allow ports on firewall or disable firewall-d
- Download the Openshift client utility
- Download from here Refer Here
- Or execute
sudo yum -y install centos-release-openshift-origin39 sudo yum -y install origin-clients
- Start the cluster:
oc cluster up
minishift
- Refer Here for installation steps
Our Lab
-
Lets create a free account of openshift online Refer Here
-
Lets navigate to web console with Admin Login
-
Workloads:
-
Networking
-
Storage
-
Builds
-
Developer View of Openshift
-
Openshift can be operated from the oc command line Refer Here
Openshift Installation Onpremise
- Openshift can be installed with ansible playbooks Refer Here
Challenge-1
- Create a docker image for openmrs standalone Refer Here
- This openmrs to work requires mysql database.
- Create a k8s deployment for mysql with Persistent storage and Openmrs with 3 replicas.
- Create a github repository with the k8s yaml files
- You can use kubeadmin/AKS/EKS
- Deploy this application to k8s from jenkins pipeline
Challenge-2
- Try to create k8s deployment for nopcommerce application For Steps Refer Here
- Create a github repository with the k8s yaml files
- You can use kubeadmin/AKS/EKS
- Deploy this application to k8s from jenkins pipeline