Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OpenShift 101: Learn about Enterprise Kubernetes Containers & OpenShift

osonoi
June 30, 2020

OpenShift 101: Learn about Enterprise Kubernetes Containers & OpenShift

osonoi

June 30, 2020
Tweet

More Decks by osonoi

Other Decks in Technology

Transcript

  1. OpenShift 101: Learn about Enterprise Kubernetes Containers & OpenShift Developer

    Advocacy Tokyo Team Developer Advocate Yasushi Osonoi
  2. Yasushi Osonoi IBM Developer Advocacy Group, Client Developer Advocate Twitter:

    @osonoi Facebook: @osonoi Follow me! BlogLJapanese) https://qiita.com/osonoi (Qiita) https://blogs.itmedia.co.jp/osonoi/ (IT Media)
  3. Deploy Application on OpenShift using S2I Source code is in

    GitHub. K8s Deploy Docker hub Build docker registry Docker file Source Code (Node.js) Catalog template (JSON/YAML) S2I Build DevOps Pipeline Today’s workshop GitHub https://github.com/IBM/node-s2i-openshift
  4. 1. If you donʼt have an account, Please register here.

    https://ibm.biz/BdqvrE Itʼs free and all you need to register is email address. Please login to IBM Cloud
  5. Group Name / DOC ID / Month XX, 2018 /

    © 2018 IBM Corporation ↳ Why Containers? 5
  6. Containerization “In 1955, former trucking company owner Malcom McLean worked

    with engineer Keith Tantlinger to develop the modern intermodal container.” Containerization also reduced congestion in ports, significantly shortened shipping time and reduced losses from damage and theft. “Containers can be made from a wide range of materials such as steel, fibre-reinforced polymer, aluminium or a combination of all.” (Wikipedia https://en.wikipedia.org/wiki/Containerization) https://en.wikipedia.org/wiki/Malcom_McLean
  7. Also happening in IT industry. Containerization made Business revolution Land

    Transportation Loading Unloading Marine Transportation Loading Unloading Land Transportation Dev. Test Production
  8. Create & Deliver container application Dockerfile Docker image Container Registry

    Describe details in YAML file Developer Create Image Register Image developer Deploy Dev Process
  9. Why Containers? • Agile • Continuous Deployment • Separation of

    Concerns • Observability • Consistency • Management • Microservices • Resource Isolation • Resource Utilization
  10. Orchestration • Scheduling • Cluster management • Service discovery •

    Provisioning • Monitoring • Configuration management
  11. Kubernetes key features Scale Out Load Balancing Version management Rollouts/Rollbacks

    Network service Self-Healing Machine Management Declarative object configuration
  12. Kubernetes Master API UI CLI Node 1 Node 2 Node

    3 Node n Image Registry Kubernetes Architecture Cloud provider manage (Cloud K8S service) Developer Pod (apps) Deploy YAML file For configuration
  13. 3 key term in Kubernetes Pod A Pod (as in

    a pod of whales or pea pod) is a group of one or more containers (such as Docker containers), with shared storage/network, and a specification for how to run the containers. A Pod's contents are always co-located and co-scheduled, and run in a shared context. A Pod models an application-specific "logical host" - it contains one or more application containers which are relatively tightly coupled Pod IP 10.1.206.34 10.1.206.128
  14. Deployment A Deployment provides declarative updates for Pods and ReplicaSets.

    You describe a desired state in a Deployment, and the Deployment Controller changes the actual state to the desired state at a controlled rate. You can define Deployments to create new ReplicaSets, or to remove existing Deployments and adopt all their resources with new Deployments. Pod IP 10.1.206.34 10.1.206.110 Node Node 3 key term in Kubernetes
  15. Service Pod IP 10.1.206.34 10.1.206.110 Node Node 30010 30010 3

    key term in Kubernetes An abstract way to expose an application running on a set of Pods as a network service. With Kubernetes you don't need to modify your application to use an unfamiliar service discovery mechanism. Kubernetes gives Pods their own IP addresses and a single DNS name for a set of Pods, and can load-balance across them.
  16. Group Name / DOC ID / Month XX, 2018 /

    © 2018 IBM Corporation ↳ OpenShift 1
  17. © 2019 IBM Corporation OPENSHIFT Extension OpenShift CICD Application (container)

    Kubernetes Application (Container) Ubuntu / CentOS… Linux Kubernetes Application (Container) Runtime engine Linux OS Orchestration RHEL / RHCOS Runtime engine What is an OpenShift CI/CD Support Security ….
  18. K8s Deploy Docker hub Build docker Registry Docker file Source

    code n GitHub (Java, js, Py..etc) Catalog template (JSON/YAML) s2i Build Several way to deploy apps on OpenShift Deploy from Public registry Use own Image (Build on OpenShift) Use s2i to make image from source Directly Execute From Catalog DevOps Pipeline
  19. Group Name / DOC ID / Month XX, 2018 /

    © 2018 IBM Corporation ↳ Conclusion & Lab 2 IBM Developer SF Team / Introduction to Kubernetes and OpenShift / October 30, 2019 / © 2019 IBM Corporation
  20. Deploy Application on OpenShift using S2I Source code is in

    GitHub. K8s Deploy Docker hub Build docker registry Docker file Source Code (Node.js) Catalog template (JSON/YAML) S2I Build DevOps Pipeline Today’s workshop GitHub https://github.com/IBM/node-s2i-openshift
  21. Lab Preparation, Associate cluster with your IBM ID https://os101ws.mybluemix.net/ “oslab”

    your IBM ID (Email address) *This cluster will be available next 24 hours
  22. Select [xxxxxxx – Adovowork] Go back to IBM Cloud at

    https://ibm.biz/BdqvrE Click here