Copyright © 2016 Mirantis, Inc. All rights reserved
www.mirantis.com
Enhancing Kubernetes with
Autoscaling & Hybrid Cloud
IaaS
SF Kubernetes Meetup, 17 Feb, 2016
Craig Peters, Dir of Product Management, Mirantis @peterscraig
Bhasker Nallapothula, Principal Architect, Biarca
Copyright © 2016 Mirantis, Inc. All rights reserved
Why are we here?
Coders just wanna code
corollary
Infrastructure should be invisible
Yet infrastructure is a requirement
Copyright © 2016 Mirantis, Inc. All rights reserved
OpenStack: open source infra API
Copyright © 2016 Mirantis, Inc. All rights reserved
Solution: Murano App Catalog
Get, Share and Run Apps on Demand
Create Catalog
●  Easily add new apps
●  Describe forms, app
dependencies, suggested
configurations, billing
rules etc.
Deploy Apps
●  Deploy applications and
services with a push of a
button
●  Choose apps, specify
settings, and deploy
Automatically
Manage Apps
●  Monitor with Ceilometer
●  Automatically self-heal, scale
up & down, failover, backup
●  Application specific actions
●  Track usage
Utilized by the OpenStack Community App Catalog
Company Introduction
Biarca.
http://www.biarca.com/
A valley based cloud solutions company focused on open
source technologies in transforming enterprise applications.
In this effort partnered with leading cloud product
companies such as Mirantis Inc, to build, deliver and service
Innovative cloud based solutions.
5
Hybrid Multi-Cloud Auto Scalable
Infrastructure Application.
Goal : Demonstrate a Hybrid Multi-Cloud Auto Scalable Infrastructure, using Murano
app catalog based enhanced Kubernetes and OpenVPN applications.
Murano-deployable OpenVPN, Kubernetes applications from App catalog.
Secure VPN connectivity between Private and Public cloud compute services.
Metrics driven approach to Auto (Elastic) Scale Up or Down of compute nodes in
Hybrid cloud environment.
Murano Apps, Location :–
https://github.com/biarca-nareshtr/murano-apps/tree/biarca-openvpn/OpenVPN
https://github.com/biarca-gangadhar/murano-apps/tree/master/Docker/Kubernetes/KubernetesCluster/
package
Hybrid Auto Scaling Kubernetes
Demo
Auto Scaling Infrastructure in Hybrid
Multi Cloud
Master K8s
Node
K8s node K8s node K8s node
K8s node
K8s node
K8s node
Kubernetes Cluster, deployed by
Murano - OpenStack (Private
Infrastructure) Public Cloud (GCE) –
Extended K8s, nodes
created on demand
Hybrid Cloud Deployment: Simplified Network Diagram
OpenVPN
Auto Scaling Sample: K8s
cAdvisor metrics driven
Auto Scale OpenStack Cloud
Murano Integration Kubernetes
Auto Scale
Murano K8s - Auto Scaling
Deployment
if (autoscale==true)
KubernetesCluster.yaml
Method:
setupAutoscale()
KubernetesMasterNode.yaml
AutoScale.template
autoScale.sh
Update & Copy files to Master node:
/etc/autoscale/autoscale.conf
/opt/bin/autoscale/metrics.py
/opt/bin/autoscale/scale.sh
/etc/init.d/autoscale
Install dependencies
Restart autoscale service
Scale Up/Down Private Cloud
Metrics
Service
Master Node
Scale.sh up/down
Scale Up Scale Down
Murano API
Action
scaleNodeUp
Action
scaleNodeDown
Murano Kubernetes Integration
Auto Scale with GCE
13
Auto Scale up to GCE
Metrics.py
scale.sh up GCE
Action=> addGceNode
KubernetesCluster.yaml
Method=>addGceNode()
KubernetesMaster.yaml
AddGceNode.templateAddGceNode.sh
Auto Scale down from GCE
Metrics.py scale.sh down GCE Action=> deleteGceNode
KubernetesCluster.yaml
Method=>deleteGceNode()
KubernetesMaster.yaml
deleteGceNode.templateDeleteGceNode.sh
Copyright © 2016 Mirantis, Inc. All rights reserved
Why are we here?
Questions?
Next Steps:
●  Download Mirantis OpenStack
http://software.mirantis.com/
●  Try Kubernetes on OpenStack
http://apps.openstack.org/

Enhancing Kubernetes with Autoscaling & Hybrid Cloud IaaS

  • 1.
    Copyright © 2016Mirantis, Inc. All rights reserved www.mirantis.com Enhancing Kubernetes with Autoscaling & Hybrid Cloud IaaS SF Kubernetes Meetup, 17 Feb, 2016 Craig Peters, Dir of Product Management, Mirantis @peterscraig Bhasker Nallapothula, Principal Architect, Biarca
  • 2.
    Copyright © 2016Mirantis, Inc. All rights reserved Why are we here? Coders just wanna code corollary Infrastructure should be invisible Yet infrastructure is a requirement
  • 3.
    Copyright © 2016Mirantis, Inc. All rights reserved OpenStack: open source infra API
  • 4.
    Copyright © 2016Mirantis, Inc. All rights reserved Solution: Murano App Catalog Get, Share and Run Apps on Demand Create Catalog ●  Easily add new apps ●  Describe forms, app dependencies, suggested configurations, billing rules etc. Deploy Apps ●  Deploy applications and services with a push of a button ●  Choose apps, specify settings, and deploy Automatically Manage Apps ●  Monitor with Ceilometer ●  Automatically self-heal, scale up & down, failover, backup ●  Application specific actions ●  Track usage Utilized by the OpenStack Community App Catalog
  • 5.
    Company Introduction Biarca. http://www.biarca.com/ A valleybased cloud solutions company focused on open source technologies in transforming enterprise applications. In this effort partnered with leading cloud product companies such as Mirantis Inc, to build, deliver and service Innovative cloud based solutions. 5
  • 6.
    Hybrid Multi-Cloud AutoScalable Infrastructure Application. Goal : Demonstrate a Hybrid Multi-Cloud Auto Scalable Infrastructure, using Murano app catalog based enhanced Kubernetes and OpenVPN applications. Murano-deployable OpenVPN, Kubernetes applications from App catalog. Secure VPN connectivity between Private and Public cloud compute services. Metrics driven approach to Auto (Elastic) Scale Up or Down of compute nodes in Hybrid cloud environment. Murano Apps, Location :– https://github.com/biarca-nareshtr/murano-apps/tree/biarca-openvpn/OpenVPN https://github.com/biarca-gangadhar/murano-apps/tree/master/Docker/Kubernetes/KubernetesCluster/ package
  • 7.
    Hybrid Auto ScalingKubernetes Demo
  • 8.
    Auto Scaling Infrastructurein Hybrid Multi Cloud Master K8s Node K8s node K8s node K8s node K8s node K8s node K8s node Kubernetes Cluster, deployed by Murano - OpenStack (Private Infrastructure) Public Cloud (GCE) – Extended K8s, nodes created on demand Hybrid Cloud Deployment: Simplified Network Diagram OpenVPN
  • 9.
    Auto Scaling Sample:K8s cAdvisor metrics driven
  • 10.
    Auto Scale OpenStackCloud Murano Integration Kubernetes Auto Scale
  • 11.
    Murano K8s -Auto Scaling Deployment if (autoscale==true) KubernetesCluster.yaml Method: setupAutoscale() KubernetesMasterNode.yaml AutoScale.template autoScale.sh Update & Copy files to Master node: /etc/autoscale/autoscale.conf /opt/bin/autoscale/metrics.py /opt/bin/autoscale/scale.sh /etc/init.d/autoscale Install dependencies Restart autoscale service
  • 12.
    Scale Up/Down PrivateCloud Metrics Service Master Node Scale.sh up/down Scale Up Scale Down Murano API Action scaleNodeUp Action scaleNodeDown
  • 13.
  • 14.
    Auto Scale upto GCE Metrics.py scale.sh up GCE Action=> addGceNode KubernetesCluster.yaml Method=>addGceNode() KubernetesMaster.yaml AddGceNode.templateAddGceNode.sh
  • 15.
    Auto Scale downfrom GCE Metrics.py scale.sh down GCE Action=> deleteGceNode KubernetesCluster.yaml Method=>deleteGceNode() KubernetesMaster.yaml deleteGceNode.templateDeleteGceNode.sh
  • 16.
    Copyright © 2016Mirantis, Inc. All rights reserved Why are we here? Questions? Next Steps: ●  Download Mirantis OpenStack http://software.mirantis.com/ ●  Try Kubernetes on OpenStack http://apps.openstack.org/