Application Hosting on Enterprise Devices
Total Page:16
File Type:pdf, Size:1020Kb
Use the Unused : Application Hosting on Enterprise Devices. UMA SANKAR MOHANTY Technical Leader, Customer Delivery BRKARC-1002 Cisco Webex Teams Questions? Use Cisco Webex Teams to chat with the speaker after the session How 1 Find this session in the Cisco Events Mobile App 2 Click “Join the Discussion” 3 Install Webex Teams or go directly to the team space 4 Enter messages/questions in the team space BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 3 ROCK GARDEN – CHANDIGARH (INDIA) Courtesy : Google Images BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 4 Agenda • The WW(WHAT & WHY) of Containers • KVM Hosting • Let’s Host an APP. • Success Stories • Key Takeaways • Q & A • Appendix BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 5 Agenda • The WW(WHAT & WHY) of Containers • KVM Hosting • Hosting Spectrum • Difference : KVM & LXC • IOS-XE Architecture & Container Networking • Let’s Host an APP. • Success Stories • CASE 1 : Iperf Hosting • CASE 2 : YangSuite • CASE 3 : Docker Application • CASE 4 : Syslog Server • Key Takeaways • Q&A • Appendix BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 6 The WW(WHAT & WHY) of Containers Session Objectives This Session Focuses on : • Brief Overview of Containers on Enterprise Platform • A few success stories of applications running on the IOS-XE Platforms. By the end, I hope everyone in this room gets a better understanding of containers and how to host applications on top of Enterprise Platforms which can be used for the betterment of the Network. BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 8 Virtual Machines vs Containers • Virtual Machine - Includes the application, binaries & libraries along with entire guest OS. • Containers (LXC) - OS level virtualization method for running multiple isolated Linux containers on a single control host. BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 9 Virtual Machines vs Containers Containers are isolated but share OS App 1 App 2 App 3 Bins/ Bins/ VM Bins/ Libs Libs Libs App A1 App 2 p’ App 3 Guest OS Guest OS Guest OS Container Bins/Libs Bins/LibsBins/Lis Bins/Libs Hypervisor (Type2) Container Engine Host OS Host OS Server Server BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 10 What is a Service Container? Service Containers leverage virtualization layer (LXC and KVM) to provision an application hosting environment on Cisco routers/switches. Gives ability to code application/service once and run it everywhere. Cisco Virtual Services: • Example: WAAS, SNORT Third Party Services: • Example: Wireshark, iperf etc. BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 11 Current Application Challenges Not Enough Network Bandwidth Data Reduction Most Data is not interested Filtering Use of Data at the Edge Latency Optimization Computation to be optimized Partitioning Data Normalization Application Simplification Data Redirection based on Content Dynamic Changes Data Timestamping & Algorithm analysis Analytic Support BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 12 Empowering the Edge – Leverage the Network! • Existing hardware Business footprint Applications Management Analytic Systems • No need for IoT separate compute Applications Billing machinery • Integrated security • Reduced latency & bandwidth cost BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 13 KVM Hosting Application Hosting Spectrum Different models for different application needs. Native LXC Docker KVM Type 1 Process • Strict Kernel • Emerging Industry • Any OS Hypervisor • Very Tight Requirements Standard • Complete • Service Module Integration • Good separation Only • Best performance • Linux host OS • VMWare, HyperV, Performance with some normally – Type Zen… security 2 hypervisor BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 15 Application Hosting Spectrum Linux Containers Native LXC Docker KVM Type 1 Process •Strict Kernel •Emerging Industry • AnyOS Hypervisor •Very Tight Requirements Standard •Complete • ServiceModule Integration •Good separation Only •Best Performance performance with • Linux host OS •VMWare, HyperV, some security normally – Type 2 Zen… hypervisor BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 16 Application Hosting Spectrum Cisco Developed IOX & Service Containers Native LXC Docker KVM Type 1 Process •Strict Kernel •Emerging Industry •Any OS Hypervisor •Very Tight Requirements Standard •Complete • ServiceModule Integration •Good • FutureSupport separation Only •Best Performance performance with •Linux host OS •VMWare, HyperV, some security normally – Type 2 Zen… hypervisor BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 17 Application Hosting Spectrum Open IOX & Service Containers Native LXC Docker KVM Type 1 Process •Strict Kernel • Emerging Industry • Any OS Hyperviso •Very Tight Requirements Standard • Complete r Integration • Good • Future Support separation • ServiceModule •Best performance • Linux host OS Only Performance with some normally – Type •VMWare, HyperV, security 2 hypervisor Zen… BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 18 KVM & LXC Types of Applications • Kernel Virtual Machine (KVM) • KVM application is a virtual machine that contains the full OS (kernel and root filesystem) along with the application code and dependencies in a single package. • Linux Container (LXC) • A Container application is a single package of the root file system, application code and dependencies like libraries and native binaries. BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 19 KVM & LXC Application Package The application package consists of several required and optional pieces • A Package Descriptor file describing the information and resources of the application • A Package Configuration file for applying configuration values during provisioning • The binaries, application code, application libraries, virtual disks, root file system, and manifest of the application itself BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 20 Kernel Virtual Machine (KVM) Application • OS kernel • Root file system • Dependent libraries • Language runtimes and Frameworks • Application descriptor file • Application code • Configuration files, scripts, etc BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 21 Linux Container (LXC) Application • Complete root file system • Dependent libraries • Language runtimes and Frameworks • Application descriptor file • Compiled application code Configuration files, scripts, etc BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 22 Which is LightQ1 weight, KVM or LXC ? BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 23 Enterprise Platforms •Catalyst 9000 9300, 9400, 9500 •ISR4K ISR4321, ISR4331, ISR4351, ISR4431, ISR4451 •CSR •ASR1K ASR 1001-X (HX), ASR 1002-X (HX) BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 24 IOS-XE Software Architecture Customer and 3rd Party Cisco Apps (WAAS,Snort) IOSd Applications Control Plane KVM/LXC Virtual Ethernet Linux OS Platform-Specific Data Plane ERSPAN NSH AppNav Internal Services Blade External Services Blade (UCS® E-Series) (UCS) BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 25 Cisco ISR 4400 Series Architecture IOS-XE 25% CPU Service containers live here: 75% CPU Control Plane (1 core) Data Plane Services Plane (3 cores) (6 or 10 cores) FPGE ISC Multigigabit Service Container Fabric SM-X KVM - Hypervisor Service Plane (control plane CPU) NIM BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 26 What do I need to add to an ISR4K system? Memory • Service Containers (currently) REQUIRE additional DRAM beyond the 4GB system default • Additional DRAM beyond 4GB will be available to a KVM application • Example: 8GB DRAM will have 4GB available to Service Containers • Example: 16GB DRAM will have 12GB available to Service Containers Storage • No storage is included by default and applications do not have accessto bootflash. • Options include internal MSATA SSD on 4300 Series, NIM-SSD or NIM-HD on all ISR4K. BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 27 What do I need to add to an CAT9K system? USB External Storage Memory Platform CPU vCPU CPU units M2 SATA USB 3.0 (GB) Storage (GB) (GB) 1 Core Catalyst 9300 2 (25%) 2 7400 NA 120 1 Core Catalyst 9400* 8 2 7400 960 N/A (25%) 1 Core Catalyst 9500* 8 (25%) 2 7400 NA 120 Catalyst 9500 1 Core high-performance* 8 (25%) 2 7400 960 N/A 2 Core Catalyst 9600* 8 (25%) 2 7400 960 NA BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 28 Catalyst 9000 – SSD Storage Cat 9500 Cat 9300/9500 Cat 9400 High Performance USB 3.0 M2 SATA M2 SATA 120GB 240/480/960GB 240/480/960GB Plug into Back Panel removable SUP Back Panel For Local Storage and App Hosting BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 29 Licensing DNA-Advantage licensing is required to enable App Hosting on Cat9K BRKARC-1002 © 2020 Cisco and/or its affiliates. All rights reserved.