building continuous integration with virtuozzo devops

21
2016 Building Continuous Integration with Virtuozzo DevOps Andre Moruga Director of Program Management, Virtuozzo @AndreMoruga

Upload: vuongthien

Post on 14-Feb-2017

236 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Building Continuous Integration with Virtuozzo DevOps

2016

Building Continuous Integration with Virtuozzo DevOpsAndre MorugaDirector of Program Management,Virtuozzo

@AndreMoruga

Page 2: Building Continuous Integration with Virtuozzo DevOps

— Why Continuous Integration— Scenarios of Continuous Integration

— Introducing Virtuozzo DevOps platform

— Demo: CI for Hello World

Copyright © 2016 Virtuozzo. All rights reserved. 2

Session Agenda

Page 3: Building Continuous Integration with Virtuozzo DevOps

Monolithic Microservices

New Cloud Born Apps

Copyright © 2016 Virtuozzo. All rights reserved. 3

Page 4: Building Continuous Integration with Virtuozzo DevOps

There are Two Worlds

Dev / Test

— Efficient development

— Rapid Prototyping

— Provisioning Speed

— Simple continues integration cycle

DevOps / Security

— Security, Audit and Monitoring

— High Availability and Disaster Recovery

— Scaling

— Rolling Updates

Continuous DeliveryHours

WaterfallMonths or Years

Iterative DevelopmentWeeks

KanbanDays

Copyright © 2016 Virtuozzo. All rights reserved. 4

Page 5: Building Continuous Integration with Virtuozzo DevOps

V1 100% V2 0.1%

V1 95% V2 5%

V1 50% V2 50%

V1 0% V2 100%

Rolling Updates

Copyright © 2016 Virtuozzo. All rights reserved. 10

Page 6: Building Continuous Integration with Virtuozzo DevOps

— Virtuozzo DevOps is a container orchestration platform

— Virtuozzo DevOps was built in partnership between Virtuozzo and Jelastic

— You can get your free licenseat http://virtuozzo.com/products/devops

About Virtuozzo DevOps

Copyright © 2016 Virtuozzo. All rights reserved. 6

Page 7: Building Continuous Integration with Virtuozzo DevOps

Why It is So Efficient

— Create apps, not infrastructure. 50+ ready to use development environments

— Create complex layered and clustered deployments in seconds

— Focus of app business logic, high availability,disaster recovery, rolling updates are handled for you

— Self service: no bureaucracy.Easy and fast to create new environments.

— Create, backup, clone, migrate (to cloud as well) your apps as needed

— Automate everything REST API, scripts

Copyright © 2016 Virtuozzo. All rights reserved. 7

Page 8: Building Continuous Integration with Virtuozzo DevOps

Highly Available Runtime

— High Availability is provided by the platform. No need to handle if on app layer.

— Maintenance operations are just a usual routine. No need to migrate apps manually.

Copyright © 2016 Virtuozzo. All rights reserved. 8

Page 9: Building Continuous Integration with Virtuozzo DevOps

Auto Scaling: Handling load

— Efficiency now, capacity when you need it

— Scaling based on CPU, RAM, network and disk I/O

Handles horizontal and vertical scale up/down automatically. Set it and forget it.

Horizontal and vertical scale up / down

Application Stats

+

Copyright © 2016 Virtuozzo. All rights reserved. 9

Page 10: Building Continuous Integration with Virtuozzo DevOps

Smart Load Balancer

— Traffic distributor can split traffic between versions— Environment auto scale up and down

Copyright © 2016 Virtuozzo. All rights reserved. 10

Requests

Page 11: Building Continuous Integration with Virtuozzo DevOps

Cloud Federation & Multi-Zone Clusters

— Multi Zones and Multi Regions Deployments

— Multi cloud deployments

— Migration between public clouds

Requests

Traffic Manager / DNS

Region 2

Netherlands

Region 3

SingaporeRegion 4

Brazil

Region 1

USA

Copyright © 2016 Virtuozzo. All rights reserved. 11

Page 12: Building Continuous Integration with Virtuozzo DevOps

With Certified Containers With Docker Containers

Continuous integration scenarios

GitHubCommit

Repository MonitoringCheck for new code

Virtuozzo DevOpsDeploy

Copyright © 2016 Virtuozzo. All rights reserved. 12

Virtuozzo DevOpsPull new container

GitHubCommit

Docker EngineBuild new container

Docker RepositoryPush new container

Page 13: Building Continuous Integration with Virtuozzo DevOps

Continuous Delivery of PHP application with Certified Container

Copyright © 2016 Virtuozzo. All rights reserved. 13

Container:

Application:

Application repo:

Deployment manifest:

Apache with PHP

PHP code

https://github.com/amoruga/wsgi-helloworld

https://github.com/amoruga/git-push-

deploy/tree/w/o-auth

Page 14: Building Continuous Integration with Virtuozzo DevOps

What’s inside of JPS: Application Configuration

“env”: {

“topology”: {

“nodes”: [

{

“count”: 1,“cloudlets”: 16,

“nodeGroup”: “cp”,

“nodeType”: “apache2”

}

],

“engine”: “php5.6”

}

}

Copyright © 2016 Virtuozzo. All rights reserved. 14

Page 15: Building Continuous Integration with Virtuozzo DevOps

What’s inside of JPS: Deployment Instructions

“onInstall”: [

{

“execScript”: [

{

“type”: “js”,

“script”: “https://raw.githubuser

content.com/jelastic-jps/git-push-

deploy/master/add-git-project.cs”,

“params”: {

“url”: “https://github.com/amoruga/

wsgi-helloworld.git”,

“branch”: “master”,

“login”: “git”,

“password”: null

},

“user”: “root”

}

]

}

Copyright © 2016 Virtuozzo. All rights reserved. 15

Page 16: Building Continuous Integration with Virtuozzo DevOps

What’s inside of Deployment Script

Copyright © 2016 Virtuozzo. All rights reserved. 16

https://github.com/jelastic-jps/git-push-deploy/

blob/master/add-git-project.cs

var params = {

appId: appid,

envName: “${env.appid}”,

session: session,

type: “git”,

project: “ROOT”,

url: url,

branch: branch,

keyId: “WILL BE AUTODETECTED BELLOW”,

login: login,

password: password,

autoupdate: true,

interval: 1,

autoResolveConflict: true,

zdt: false

}

Page 17: Building Continuous Integration with Virtuozzo DevOps

Demo

Page 18: Building Continuous Integration with Virtuozzo DevOps

— Deploy any application— Java, PHP, Ruby, Python, or anything with Docker

— Scale vertically or horizontally— Any of its components – frontend, middle layer, backend(s)

— Live migrate

— Manage applications across multiple datacenters

— Control through UI, REST API or scripting

— And more

Copyright © 2016 Virtuozzo. All rights reserved. 18

What Else You Can do With Virtuozzo DevOps

Page 19: Building Continuous Integration with Virtuozzo DevOps

Summary: Worked Fine in Dev it’s Ops Problem Now

— Almost every organization is evaluating containers.It works fine for devs. But only few managed to use it in production

— You need much more that just a set of containers to have robust and efficient production platform

Virtuozzo DevOps is a great platform bridging both scenarios and enables continuous delivery as unique advantage for your organization

Copyright © 2016 Virtuozzo. All rights reserved. 19

Page 20: Building Continuous Integration with Virtuozzo DevOps

— Get your copy FREE of Virtuozzo DevOps atwww.virtuozzo.com/products/devops

— Come to Virtuozzo booth for moreinformation

— Try Virtuozzo DevOps in your lab and let us know!

Copyright © 2016 Virtuozzo. All rights reserved. 20

Want to try?

Page 21: Building Continuous Integration with Virtuozzo DevOps

Thanks for your attention