run kubernetes on openstack and bare metal fast
play

Run Kubernetes on OpenStack and Bare Metal Fast Ramon Acedo - PowerPoint PPT Presentation

OPEN INFRASTRUCTURE SUMMIT | SHANGHAI, NOVEMBER 4-6 2019 Run Kubernetes on OpenStack and Bare Metal Fast Ramon Acedo Rodriguez 1 Senior Principal Product Manager, Red Hat Open Hybrid Cloud Vision OPTIONAL SECTION MARKER OR TITLE 2 The


  1. OPEN INFRASTRUCTURE SUMMIT | SHANGHAI, NOVEMBER 4-6 2019 Run Kubernetes on OpenStack and Bare Metal Fast Ramon Acedo Rodriguez 1 Senior Principal Product Manager, Red Hat

  2. Open Hybrid Cloud Vision OPTIONAL SECTION MARKER OR TITLE 2

  3. The Open Hybrid Cloud The 4 Footprints APP APP APP APP PRIVATE PUBLIC PHYSICAL VIRTUAL CLOUD CLOUD BARE METAL VIRTUAL PRIVATE CLOUD 3

  4. Kubernetes-powered Open Hybrid Cloud Goal : Give developers the freedom to innovate faster across on-premises and public clouds APP APP APP APP C VM C C PUBLIC On-premises PHYSICAL VIRTUAL CLOUD BARE METAL VIRTUAL PRIVATE CLOUD PUBLIC CLOUDS 4

  5. Kubernetes on OpenStack is focused on the private cloud Containers | VMs | Serverless Apps BARE METAL VIRTUAL PRIVATE CLOUD PUBLIC CLOUDS BARE METAL VIRTUAL PRIVATE CLOUD PUBLIC CLOUDS 5

  6. Kubernetes on OpenStack Introduction 6

  7. Why Kubernetes on OpenStack? Open, scalable, managed, workloads. WORKLOAD DRIVEN DEEPLY INTEGRATED PROGRAMMATIC API DRIVEN ACROSS DATACENTRE SCALE OUT INFRASTRUCTURE SOLID FOUNDATION VIRTUAL PRIVATE CLOUD PUBLIC CLOUDS 7

  8. Kubernetes on OpenStack Integrations 8

  9. Kubernetes and OpenStack Are Complementary complementary Exposition of resources Consumption of resources Provides the infrastructure layer Provides the container platform layer

  10. Kubernetes on OpenStack Key Integration Points

  11. Kubernetes on OpenStack Integration Example: Cinder

  12. OpenShift on OpenStack Logical Architecture

  13. Installation Requirements OpenShift on OpenStack 13

  14. Requirements in your OpenStack Platform OpenStack Resources: Red Hat OpenStack Platform 13 (Queens) Floating IPs: 2 ● 3 Master nodes Security Groups: 3 ● Security Group Rules: 60 At least 16 GB RAM, 4 vCPUs and 25 GB Disk ● ● Routers: 1 ● Subnets: 1 ● At least 2 worker nodes RAM: 112 GB ● A least 8 GB RAM, 2 vCPUs and 25 GB Disk ● vCPUs: 28 ● Volume Storage: 175 GB ● Object Storage (Swift) Instances: 7 ● Swift containers: 2 ● CoreOS image Swift objects: 1 ● Available space in Swift: at least 10 MB ● https://github.com/openshift/installer/blob/master/docs/user/openstack/README.md

  15. OpenShift Internal Load Balancing and DNS 15

  16. Internal DNS and Load Balancing The openshift-installer will configure internal Load Balancing & DNS Load Balancing DNS HAProxy + keepalived on master nodes ● ● CoreDNS and mDNS run on all nodes Use of keepalived VIPs for: ● ○ Internal API ○ Ingress traffic to workloads ○ Internal DNS requests https://github.com/openshift/installer/blob/master/docs/design/openstack/networking-infrastructure.md

  17. Kuryr-Kubernetes SDN SDN for OpenShift on OpenStack 17

  18. Kuryr-Kubernetes CNI Kuryr improves the network performance of pods when running on OpenStack. SDN solution using Kubernetes Container Network Interface (CNI) and OpenStack Neutron. Provides interconnectivity between Kubernetes pods and OpenStack virtual instances Kuryr-Kubernetes Logo 18

  19. When to use Kuryr Recommended when Requires ● Neutron tenant networks are used for OpenShift Application Nodes ● OpenStack Queens or newer ● Octavia Load Balancer Not recommended when ● Neutron Trunk Ports ● Using only OpenStack VLAN-based provider networks (Kuryr not needed) ● Many OpenShift services and few hypervisors: For each OpenShift service, Octavia will run a VM with a ○ load balancer in it 19

  20. Kuryr Internal Architecture Kuryr integrates with Neutron and Octavia Pods are connected via Kuryr CNI to Neutron Kuryr creates Load Balancers with Octavia for the Kubernetes services 20

  21. Kuryr Performance Comparison Performance test done with OpenShift 3.11 / Kubernetes 1.11 and OpenStack Queens Bandwidth tests between pods on the same hypervisor show slightly better performance 21

  22. Kuryr Performance Comparison Performance test done with OpenShift 3.11 / Kubernetes 1.11 and OpenStack Queens Bandwidth tests between pods on different hypervisors show up to 9x performance improvement 22

  23. Kuryr Performance Comparison Blog Post Performance test done with OpenShift 3.11 and OpenStack Queens https://blog.openshift.com/accelerate-your-openshift-network-performance-on-openstack-with-kuryr 23

  24. Reference Architecture 24

  25. OpenShift on OpenStack Reference Architecture Current: OSP 13 LTS and OCP 3.11 with Kuryr | Next: OSP 13 LTS and OCP 4.3 with Kuryr https://access.redhat.com/documentation/en-us/reference_architectures/2019/html-single/deploying_red_hat_o 25 penshift_container_platform_3.11_on_red_hat_openstack_platform_13

  26. Ways to Install Kubernetes on OpenStack Introduction 26

  27. Kubernetes Installation with OpenShift 4 on OpenStack Installation Experiences Full Stack Automation Pre-existing Infrastructure Simplified, opinionated User-provisioned Installer-provisioned OpenStack resources (UPI) OpenStack resources (IPI) BARE METAL VIRTUAL PRIVATE CLOUD BARE METAL VIRTUAL PRIVATE CLOUD PUBLIC CLOUDS 27

  28. Full Stack Automation Installation Deploying OpenShift on OpenStack with installer-provisioned infrastructure (IPI) Installer Provisions: OpenShift Cluster Networks Internal Load Balancers 1 Internal DNS 1 openshift-install OpenStack Instances . . . Red Hat CoreOS Red Hat OpenStack CoreOS Ignition Configs Platform OpenShift Nodes Overcloud OpenShift Cluster Resources BARE METAL VIRTUAL PRIVATE CLOUD PUBLIC CLOUDS BARE METAL VIRTUAL PRIVATE CLOUD PUBLIC CLOUDS 28 1 External Load Balancers (routing) and external DNS servers are provided by the user

  29. Installing on Pre-existing Infrastructure Deploying OpenShift on OpenStack with user-provisioned infrastructure (UPI) User Provisions: OpenShift Cluster Networks openshift-install Internal Load Balancers 1 Internal DNS 1 User provisioned resources OpenStack Instances . . . Red Hat CoreOS Red Hat OpenStack CoreOS Ignition Configs Platform OpenShift Nodes Overcloud OpenShift Cluster Resources BARE METAL VIRTUAL BARE METAL VIRTUAL PRIVATE CLOUD PUBLIC CLOUDS 29

  30. Installing on OpenStack Documentation User-provisioned Infrastructure | Installer-provisioned Infrastructure USER PROVISIONED INSTRALLER- PROVISIONED INFRASTRUCTURE INFRASTRUCTURE https://github.com/openshift/installer/blob/master/docs/user/openstack/README.md https://github.com/openshift/installer/blob/master/docs/user/openstack/install_upi.md VIRTUAL PRIVATE CLOUD PUBLIC CLOUDS 30

  31. OpenShift 4.2 on OpenStack try.openshift.com 31

  32. OpenStack Bare Metal Ironic Introduction 32

  33. Bare Metal On-Trend Among users who run Kubernetes on OpenStack, adoption of Ironic is even stronger with 37% relying on it. OpenStack User Survey 2018 OpenStack User Survey 2017

  34. Bare Metal On-Trend Popular Use Cases Kubernetes on Bare Metal High-Performance Computing Direct Access to Dedicated Hardware Devices Big Data and Scientific Applications

  35. OpenStack Bare Metal Service - Ironic Hardware Lifecycle Management Hardware Inspection Servers and Network Switches (via LLDP) OS Image Provisioning Supporting qcow2 images Routed Spine/Leaf Networking Provisioning over routed networks Multi-Tenancy With network isolation between tenants Node Auto-discovery Broad Power Management Support Redfish, iDrac, iRMC, iLo, IPMI, oVirt, vBMC

  36. OpenStack Bare Metal Features 36

  37. Multi-Tenant Support with Isolation Between Tenants Available from OpenStack Queens Tenant-Dedicated Networks L2 Switch Instead of a shared flat network VLANs set by by ML2 plug-in Provisioning Over an Isolated NIC NIC Network BM BM Switch Ports Dynamically Configured At deployment time and on termination L2 Switch L2 Switch Link Aggregation Configured by ML2 plug-in LAG NIC NIC bond Configured by cloud-init using BM metadata

  38. Multi-Tenant Support with Isolation Between Tenants Available from OpenStack Queens Neutron ML2 Networking-Ansible Driver Boot BM on ML2 Plug-in ML2 Plug-in BM is Tenant Configures Configures BM is ready Multiple Switch Platforms in a Provisioned Network Switch Switch Single ML2 Driver Leveraging the Networking Ansible modules Provisioning Network is Tenant Network is configured in the switch configured in the switch Available in OpenStack Queens | Red Hat OpenStack L2 Switch Platform 13 OSP 13 Long Life Support NIC NIC BM BM

  39. L3 Routed Networks (Spine/Leaf Network Topologies) Available from OpenStack Queens IPv6 Support being added to OpenStack Train and above spine switch spine switch spine switch L3 routed L3 routed networks networks L3 Spine and Leaf Topologies Ironic provisioning bare metal nodes over ToR/leaf switch ToR/leaf switch ToR/leaf switch routed networks DHCP Relay DHCP Relay DHCP Relay Ironic Node Bare Metal Bare Metal DHCP Relay Allowing PXE booting over L3 routed Ironic Node Bare Metal Bare Metal networks Ironic Node Bare Metal Bare Metal Bare Metal Bare Metal Bare Metal Bare Metal Bare Metal Bare Metal

Recommend


More recommend