Upload
others
View
13
Download
0
Embed Size (px)
Citation preview
Cisco Connect 2019Serbia, 19th March 2019
Global vision.Local knowledge.
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Agenda
1. Introduction to Microservices
2. Containers and how they work
3. Orchestration with Kubernetes
4. Some problems
5. Cisco’s solutions
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Microservices
• Application architecture
• Separate business logic functions
• Instead of one big program, several smaller applications
• Communicate via well defined APIs – usually HTTP
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Traditional Architecture
User Interface
Business Logic
Data Access Layer
DB
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Traditional Architecture
User Interface
Business Logic
Data Access Layer
DB
Microservices Architecture
User Interface
Microservice
Microservice
Microservice
Microservice
Microservice
DB
DB
DB
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Online Shopping Application
User Interface
User Auth
Product Search
Payment Processor
User DB
Product DB3RD PARTY PAYMENT SYSTEM
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Microservices Advantages
• Language independent• Small teams• Fault tolerant• SCALABLE
• Pairs well with containers
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Containers are:
• A way to package applications and its dependencies together
• A way to keep you application isolated
• A way to use the compute resources without the overhead of VMs
Containers are not:
• Something new
• A VM
But what are containers?
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Containers vs VMs
Server
Hypervisor
Guest OS
Guest OS
Guest OS
App App App
Bin/Libs Bin/Libs Bin/Libs
VM
Server
Host OS
App App App
Bin/Libs Bin/Libs
Docker
Container
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Open platform for developers and sysadmins to build ship and run distributed applications, whether on laptops, datacenters or the cloud.
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
• Docker containers are produced by image files
• The Dockerfile describes the build process for an image
• It contains all the commands necessary to build the image and run the application
Dockerfile
User interfaceHTML Page
Runs on NGINX
Timer applicationPython appREST API
GET time
Return time left tillThe Cisco Party
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Open source system for automating deployment, scaling, and management of containerized applications.
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Kubernetes terms
• Pod • Runs 1 or more containers
• Service• Handles requests • Usually a Load Balancer
• Deployment• Defines the desired state, Kubernetes
handles the rest
• Cluster• A group of usually 3 or more
Kubernetes Nodes
• Node• Can be Master or Worker• Master node controls the
deployment of Pods• Worker nodes run those Pods
K8s Cluster
Instances 1-3 Instance 4 Instance 5 Instance 6
Metacloud
c
Worker 1 Worker 2 Worker 3MASTER1
Replication Controllerscheduling
POD4
Kubectl
POD1 POD2
SERVICE192.168.20.10
c
POD3
Putting it all together
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Defining deployments
• Declare intent: How many replicas should be running of a given pod?
• Namespace
• Labels
• Ports that should be exposed.
apiVersion: v1kind: Deploymentmetadata:
name: bigwebstufflabels:
name: bigwebstuffspec:
replicas: 2 selector:
run: testwebtemplate:
metadata: labels:
run: testwebspec:
containers:- name: web-container
image: nginxports:- containerPort: 80
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
But what are some of the problems that we can run into with Microservices and Containers?
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
1. Installation and Management – Cisco Container Platform
Hybrid Cloud OptimizedE.g: Google, …
Flexible Deployment ModelVM | Bare metal ßà HX, ACI | Public cloud
IntegratedNetworking | Management | Security | Analytics
Native Kubernetes (100% Upstream)Direct updates and best practices from open source community
Easy to acquire, deploy & manage | Open & consistent | Extensible platform | World-class advisory & support
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
DEPLOY
MANAGE
MODEL
DataCenter
Public Cloud
PrivateCloud
• Single Integrated Cloud Management Platform
• Cloud Agnostic
• Application Lifecycle Management
• Infrastructure and Cloud API Broker
• Applications with mixed components (VM and Containers)
• Multi/hybrid cloud with single modeling (Model Once, Deploy Everywhere)
• includes multiple k8s clusters (optionally in different Clouds/Regions)
2. Application deployment - Cisco CloudCenter
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
3. Hybrid Cloud – Cisco Partnership with Google and AWS
On-Premises Environment Cisco Stealthwatch Cloud
Cisco CSR1000v
Istio
Cisco CloudCenter
Consistent environment
Google Apigee Open Service BrokerExisting ServicesApps | Data
Cisco Container Platform
Cisco HyperFlex
Cisco Nexus9K / ACI
BigQueryCloud SQLPub/SubBig TableCloud StorageCloud Spanner
Google Kubernetes Engine
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
4. Security – Stealthwatch Cloud
Enable smarter response and reduce investigation times with high-fidelity alerts
Monitor activity in real time with telemetry traffic analysis
Establish baseline for normal behavior and identify anomalies over time with entity modeling
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Key Takeaways
1.Containers are cool
2.Cisco loves containers
3.If you love containers as well, Cisco is there to help you