Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

A kubernetes-native infrastructure deep dive

86 views

Published on

The concept of operationalizing a Kubernetes-native infrastructure concept on-premise by running the proven open hybrid cloud stack in a prescriptive way, directly on bare metal servers, can bring the cloud agility and simplicity on-premise. It can help solve the traditional IT challenges of cost and complexity, in addition to helping developers innovate faster.

In this technical session, we’ll share the solution architecture details of a Kubernetes-native infrastructure concept built with Red Hat OpenShift, Red Hat OpenShift Container Storage, Red Hat Enterprise Linux, container-native virtualization, and ecosystem of technologies on prescriptive bare metal servers. Kubernetes serves as the unified control hub for automating the deployment and life-cycle management of containers, serverless functions, virtual machines and infrastructure resources (e.g., servers, software defined storage, software defined networking, etc.).

The session will also deep dive into the various technical components (including demos) of the concept. Key takeaways:
• Kubernetes-native infrastructure concept built with integrating Red Hat OpenShift, OpenShift Container Storage, Red Hat Enterprise Linux, container-native virtualization, and the underlying ecosystem of technologies, helps bring the cloud agility and simplicity on-premise, and solves IT and app dev challenges.
• Kubernetes can serve as the single control hub for automating the deployment and life-cycle management of containers, serverless functions, VMs, servers, storage, etc. directly on bare metal infrastructure.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

A kubernetes-native infrastructure deep dive

  1. 1. A KUBERNETES-NATIVE INFRASTRUCTURE DEEP DIVE 9-May-2019
  2. 2. MEET THE SPEAKERS Steve Gordon ● Manager, Product Management, Cloud Platforms BU ● Toronto, Canada ● Joined Red Hat in August 2010, various roles: ○ Technical Writer for Virtualization ○ Product Manager for OpenStack ● sgordon@redhat.com / @xsgordon ● Product Marketing Manager for Storage / HCI ● New Hampshire ● Joined Red Hat in May 2016 ● 30+ years of industry experience LinkedIn: https://www.linkedin.com/in/wmcgrath/ Mail: wmcgrath@redhat.com Will McGrath
  3. 3. AGENDA 1. Customer Goals 2. Introducing Kubernetes-native infrastructure 3. Architectural Deep Dive 4. Call out next steps action items
  4. 4. CUSTOMER GOALS Enjoy simplicity and agility of public cloud in an on-prem environment Plan for growth in container adoption while still running VMs Create a consistent experience across public and on-prem
  5. 5. REALIZING THE VISION WITH KUBERNETES POWERED HYBRID CLOUD
  6. 6. Gives developers the freedom to innovate faster across on-premise and public clouds KUBERNETES POWERED OPEN HYBRID CLOUD PHYSICAL APP APP APP APP VIRTUAL PUBLIC CLOUD VM CC C
  7. 7. RED HAT MAKES OPEN HYBRID CLOUD REAL VIRTUAL Containers | VMs | Serverless Functions BARE METAL PRIVATE CLOUD PUBLIC CLOUDS
  8. 8. CONCEPT DEMO SEEN DURING PAUL CORMIER KEYNOTE Get the infrastructure for your on-prem app dev up and running quickly Making OpenShift on bare metal servers behave like cloud Manage entire infrastructure from Kubernetes Run virtualized workloads side-by-side with newer container workloads
  9. 9. INITIAL TARGET USE CASES Developer Cloud (Web & mobile app dev) Latency sensitive applications Quick way to get started with full container infrastructure Sample Target Apps Containers VMs
  10. 10. LET’S DIG INTO THE TECHNOLOGY Kubernetes Operators Framework Rook KubeVirt Metal3 Kubernetes
  11. 11. ARCHITECTURAL COMPONENTS DEEP DIVE
  12. 12. BARE METAL VIRTUAL PRIVATE CLOUD PUBLIC CLOUDS VIRTUAL Containers | VMs | Serverless Functions BARE METAL PRIVATE CLOUD PUBLIC CLOUDS KUBERNETES-NATIVE INFRASTRUCTURE
  13. 13. Trusted enterprise Kubernetes ● Trusted Host, Content, Platform ● Full Stack Automated Install ● Over the Air Updates & Day 2 Mgt A cloud-like experience, everywhere ● Hybrid, Multi-Cluster Management ● Operator Framework ● Operator Hub & Certified ISVs Empowering developers to innovate ● OpenShift Service Mesh (Istio) ● OpenShift Serverless (Knative) ● CodeReady Workspaces (Che) Developer Preview: try.openshift.com
  14. 14. OPERATING SYSTEM FULL STACK AUTOMATED INSTALL OPERATING SYSTEM OPENSHIFT PLATFORM OPENSHIFT PLATFORM OPENSHIFT 4OPENSHIFT 3 INFRASTRUCTURE
  15. 15. LIFE-CYCLE MANAGEMENT
  16. 16. OVER-THE-AIR UPDATES ● OpenShift retrieves list of available updates ● Admin selects the target version ● OpenShift is updated over the air ● Auto-update support
  17. 17. OPERATOR FRAMEWORK Operators codify operational knowledge and workflows to automate lifecycle management of containerized applications with Kubernetes SDK LIFECYCLE MANAGEMENT METERING
  18. 18. KEY TERMS CRD Custom Resource Definition; Schema Extension to Kubernetes API
  19. 19. KEY TERMS CRD Custom Resource Definition; Schema Extension to Kubernetes API CR Custom Resource; One record/instance/object, conforming to a CRD
  20. 20. KEY TERMS CRD Custom Resource Definition; Schema Extension to Kubernetes API CR Custom Resource; One record/instance/object, conforming to a CRD OPERATOR Daemon that watches for changes to resources; built from framework using the operator-sdk tools
  21. 21. KEY TERMS CRD Custom Resource Definition; Schema Extension to Kubernetes API CR Custom Resource; One record/instance/object, conforming to a CRD OPERATOR Daemon that watches for changes to resources; built from framework using the operator-sdk tools CONTROLLER Object inside the operator responsible for reconciling changes to the resource to make reality match the request
  22. 22. KEY TERMS CRD Custom Resource Definition; Schema Extension to Kubernetes API CR Custom Resource; One record/instance/object, conforming to a CRD OPERATOR Daemon that watches for changes to resources; built from framework using the operator-sdk tools CONTROLLER Object inside the operator responsible for reconciling changes to the resource to make reality match the request ACTUATOR Driver interface within some controllers used to implement custom logic while sharing common code
  23. 23. THE PARTS OF A RESOURCE DEFINITION SPEC Fields the user writes to STATUS Fields meant to be read-only for the user LABELS Standard metadata construct for organizing objects; searchable ANNOTATIONS Metadata for third-party clients to decorate objects; not searchable https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md
  24. 24. ● Largely event driven ● Resource spec settings are the source of truth ● Controller makes incremental changes to bring reality into alignment with request ● Writes data via Kubernetes API ● No multi-object transactions; watch for race conditions ● Fail fast on errors ● Return “done”, “reschedule”, or “error” CONTROLLER RECONCILIATION LOOP Handling changes to resources EVENT Change to metadata or spec portion of CR triggers event in work queue EVALUATE Operator invokes controller’s Reconcile() method to compare reality to desired state EXECUTE Make a change to reality or the resource object
  25. 25. BARE-METAL
  26. 26. KUBERNETES MACHINE API OPERATOR USING KUBERNETES TO PROVISION KUBERNETES CLUSTERS
  27. 27. METAL3 Metal³ (http://metal3.io/) project: ● Pronounced: Metal Kubed ● Enables bare metal host management for Kubernetes. MACHINE CONTROLLER BARE-METAL ACTUATOR BARE METAL OPERATOR Bare Metal Management PodsBare Metal Management PodsBARE-METAL MANAGEMENT PODS
  28. 28. METAL3 Metal³ (http://metal3.io/) project: ● Pronounced: Metal Kubed ● Enables bare metal host management for Kubernetes. This means Metal3 : ● Runs on Kubernetes. ● Is managed through Kubernetes interfaces. MACHINE CONTROLLER BARE-METAL ACTUATOR BARE METAL OPERATOR Bare Metal Management PodsBare Metal Management PodsBARE-METAL MANAGEMENT PODS
  29. 29. METAL3 ● Actuator conforms to the cluster-api provider interface that handles Machine objects by allocating bare metal hosts from the inventory maintained through the Kubernetes API. ● Baremetal-operator using Ironic to manage physical server hardware and provision images represented as BareMetalHost objects. MACHINE CONTROLLER BARE-METAL ACTUATOR BARE METAL OPERATOR Bare Metal Management PodsBare Metal Management PodsBARE-METAL MANAGEMENT PODS
  30. 30. IMMUTABLE INFRASTRUCTURE WITH RHEL COREOS Immutable foundation for OpenShift clusters Ignition-based Metal and Cloud host configuration Over-the-air automated updates Decreased attack surface Optimized for running containers Minimal Linux distribution
  31. 31. VIRTUALIZATION INFRASTRUCTURE
  32. 32. CONTAINER-NATIVE VIRTUALIZATION Add virtual machines to your OpenShift projects as easily as application containers. Easily leverage existing VM-based services from your new workloads!
  33. 33. CONTAINER-NATIVE VIRTUALIZATION
  34. 34. LINUX VIRTUALIZATION STACK RHEL KERNEL PHYSICAL MACHINE KVM VIRTUAL MACHINE LIBVIRT QEMU QEMU VIRTUAL MACHINE Tried and trusted RHEL kernel based virtual machine (KVM) hypervisor.
  35. 35. CONTAINER TOGETHER AT LAST VIRTUAL MACHINE RHEL KERNEL PHYSICAL MACHINE CONTAINER Resultant virtual machines are able to run side by side directly on the same OpenShift nodes as application containers. APP QEMU KVM LIBVIRT
  36. 36. STORAGE INFRASTRUCTURE
  37. 37. CONTAINERS HYBRID CLOUD BARE METAL LEGACY STORAGE RED HAT OPENSHIFT CONTAINER STORAGE VIRTUAL MACHINES ANY CLOUD. ANY APP. NO LOCK IN. Application portability through consistent consumption, management, and operations OPENSHIFT CONTAINER STORAGE
  38. 38. ● Rook project (https://rook.io/): ○ Cloud-native Storage orchestrator ○ Automates deployment and life cycle management of storage ■ Bootstrapping ■ Configuration, provisioning, scaling, upgrading, migration, disaster recovery, monitoring, and resource management ROOK
  39. 39. Rook Operators Kubernetes API New Objects: Storage Clusters Storage Pools Object Store File Store Objects: Deployments DaemonSets Pods Services StorageClass / PV / PVC ClusterRole Namespace Config Maps Kubelet Daemons kubectl Management Rook Agent (flex) Ceph CSI Driver Client Pods (RBD/CephFS Clients) Attach/Mount ROOK ARCHITECTURE
  40. 40. CEPH ON OPENSHIFT WITH ROOK
  41. 41. RE-CAP
  42. 42. MAKE KUBERNETES ON-PREM INFRASTRUCTURE EASY Easy to purchaseEasy to design Easy to manageEasy to install
  43. 43. Please contact your Red Hat sales team so we can have a focused discussion based on your needs Follow and participate in various upstream communities WHAT NEXT?

×