Container Orchestration and Platform as a Service Solution
Automates the deployment and management of containers
Automation is key!
All of this via a "simple" REST API!
Pod is the smallest unit in OpenShift & Kubernetes
Services abstract access to Pods
kind: Service apiVersion: v1 metadata: name: "example-service-prod" spec: selector: app: "example-app" env: "production" ports: - protocol: "TCP" port: 80 targetPort: 8080
Ingress allows external access to Services
apiVersion: v1 kind: Route metadata: name: example-route-prod spec: host: www.example.com to: kind: Service name: example-service-prod
Manages a set of Pods
OpenShift also has DeploymentConfigs which are discouraged to use by 2019.
Requests for persistent Storage
Transform input parameters or source code into a runnable image
Abstraction of Docker Images in OpenShift
Separation of consumers/environments
Create resources in Kubernetes
oc create -f pod.yaml oc create -f http://example.com/pod.yaml cat pod.yaml | oc create -f - oc create -R -f dir/
List OpenShift resources
oc get all oc get pods oc get dc oc get pods -o wide oc get all -l env=production oc get po/nodejs-ex -o yaml
Edit resource definitions
oc edit dc/nodejs-ex
Deletion of resources
oc delete rc/nodejs-ex
Administrative OpenShift tasks