build your own paas, just like red hat's openshift from linuxcon 2013 new orleans cloudopen

68
Build Your Own PaaS, Just Like Red Hat's OpenShift Diane Mueller [email protected] Cloud Ecosystem Evangelist & Origin Community Manager [email protected] Twitter: @pythondj http://openshift.github.io

Upload: openshift-origin

Post on 12-May-2015

5.452 views

Category:

Technology


4 download

DESCRIPTION

Learn how to build your platform as a service just like RedHat's OpenShift PaaS - covers all the architecture & internals of OpenShift Origin OpenSource project, how to deploy it & configure it for bare metal, AWS, OpenStack, CloudStack or any IaaS, and the community that's collaborating on the project to deliver the next-generation of secure, scale-able PaaS visit: openshift.com for more information presented at LinuxCon by Diane Mueller in the CloudOpen track

TRANSCRIPT

Page 1: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

Build Your Own PaaS,Just Like Red Hat's OpenShift

Diane Mueller [email protected] Ecosystem Evangelist & Origin Community [email protected] Twitter: @pythondj

http://openshift.github.io

Page 2: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

2

Agenda● Cloud Vision @ RedHat● Why PaaS Matters ● What is OpenShift? ● OpenShift Architecture & Internals● Extending OpenShift with Cartridges● How do you like your PaaS?● The Road Ahead ● HP & Red Hat Collaboration

Page 3: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen
Page 4: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen
Page 5: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

5

Page 6: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

6

How to Build an App Old School vs. Today with PaaS

Page 7: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

7

PaaS is the Future

*http://www.gartner.com/technology/research/cloud-computing/report/paas-cloud.jsp

Page 8: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

8

Focus is still on delivering Cloud Infrastructure

Page 9: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

9

and managing expectations in the Cloud

Page 10: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

10

New Cloud World Order

Page 11: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

11

Infrastructure as a Service gives you

• Network, storage & compute as an on-demand service

• Basically, servers in the cloud

• You’re still on the hook to configure & manage the cloud & stack

“How do I use this?”

Page 12: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

12

Software as a Service gives you

• An on-demand application• Nothing to install or configure

“This is all my customers and users care about!”

Page 13: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

13

Platform as a Service delivers

• Application run-time environment in the cloud• Configures & manages both the cloud & stack for

your application

“The cloud is now useful!”

Page 14: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

14

What is OpenShift?`

The Next Generation Open Source

Platform as a Service

for Applications in the Cloud

Page 15: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

15

origin

Public Cloud

Service

On-premise

or Private Cloud

Software

Open Source Project

FLAVORS OF OPENSHIFT

Page 16: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

16

OpenShift Online (http://openshift.com)

Page 17: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

17

We're not the only ones using OpenShift ● On Premise Private Clouds

● Public Clouds

– For Enterprises

– For SaaS providers

– For Developers

● Other Public PaaSes

Https://github.com/getupcloud/origin-server

Page 18: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

18

OpenShift Origin on Github

http://openshift.github.io/

Page 19: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

19

OpenShift Enterprise

ENTERPRISE IT MANAGED

● Let developers have the benefits of self-service PaaS while IT retains control for governance and compliance in a Private or Hybrid Cloud

● OpenShift Enterprise is designed to be deployed on top of and run on Red Hat Enterprise Linux (RHEL).

Page 20: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

20

What makes OpenShift different?

● RHEL Platform Support

● SELinux-based Secure Containers for multi-tenancy

● Extensible Architecture

● System Component Redundancy for High Availability

● Automatic Application Stack Provisioning

● Support for Java EE 6

● Choice of Cloud Infrastructure, Bare Metal, or Desktop

● Configurable Deployment to Support Enterprise Requirements

● Automatic Application Scaling

Page 21: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

21

Page 22: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

22

http://openshift.github.io/

Page 23: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

23

Page 24: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

24

Multiple, Diverse, Complex Application Use Cases

● Require more than just “Infrastructure”

● Run on a diverse eco-system of application stacks

● Need to be secure, compliant and well-managed

● Scale or Fail

Page 25: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

25

Infrastructure Layer

SaaS/Applications Layer

Infrastructure LayerInfrastructure Layer

Platform as a Service fills out the Cloud Layer Cake

Page 26: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

26

Infrastructure Layer

SaaS/Applications Layer

Infrastructure LayerInfrastructure Layer

Extend OpenShift with Cartridges

Page 27: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

27

● Expectation Management● Add a PaaS Layer to your Cloud

– Increases Interoperability– Adds On-Demand, Self Service– (Security+Privacy+Control ) = Compliance

PaaSLanguages, frameworks, web servers

Services: Data, Messaging, others

IaaSHypervisor/Infrastructure

Page 28: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

28

OpenShift Architecture &

Internals

Page 29: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

29

Summary of Key Terms

Broker – Management host, orchestration of Nodes

Node – Compute host containing Gears

Gear – Allocation of fxed memory, compute, and storage resources for running applications

Cartridge – A technology/framework (PHP, Perl, Java/JEE, Ruby, Python, MySQL, etc.) to build applications

Application – Instantiation of a Cartridge

29

Page 30: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

3030

Amazon EC2 Rackspace Bare Metal

OpenStack RHEV CloudStack

OpenShift Origin PaaS

Runs on IaaS

Page 31: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

3131

OpenShift Origin Machines

NodeBrokerBrokerBroker Node

Nodes are where User applications live.

An OpenShift Origin Broker can manage multiple nodes

Page 32: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

3232

Broker

Page 33: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

3333

Container Architecture

Gear

Node

Gear Gear Gear

CPU/Memory - C-GroupsNetwork - IPTables / Traffic control policies

Filesystem - QuotaSecurity - Unix permissions + SELinux policies

Filesystem - pam_namespace + Bind mounts

Page 34: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

3434

Container Architecture

Gear

Node

Gear Gear Gear

CPU/Memory - C-GroupsNetwork - IPTables / Traffic control policies

Filesystem - QuotaSecurity - Unix permissions + SELinux policies

Filesystem - pam_namespace + Bind mounts

Pushed upstream:libvirt-lxc

libvirt-sandbox-service

Page 35: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

3535

Applications and Gears

Gear

Node

Gear

Jboss MariaDB Jboss

Gear

Node

Gear

User application

Page 36: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

3636

Cartridges

JBoss

PHP

Python

Ruby

MariaDB

MongoDB

PostgreSQL

CommunityCartridges

Your cartridge here

Etc.

Page 37: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

3737

Scaling

JBoss JBoss

MariaDB

HAProxy

Page 38: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

3838

Not yet HA but...

JBoss JBoss

MariaDB

HAProxy

Page 39: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

3939

Pushing Updates

JBoss JBoss

HAProxy

Git + SSH

Page 40: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

4040

Origin Release 2

Fedora 19 or RHEL 6.x

Get up and runningVagrant

Puppet

Comprehensive guide

Ansible

http://openshift.github.io

Page 41: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

41

41

Cartridges

Gear

Node

Gear Gear Gear

Application

JBoss MySql

Page 42: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

42

• Database• Language• Daemon• Load-balancer• Key-value store

42

... on OpenShift

I want to run a ...

Page 43: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

43

•Ability to act on cartridge lifecycle events

•Expose HTTP/Web-socket ports•Run your own binaries•Communicate with other instances•Create configuration files•Access and create to environment variables•Act on user specifies modes of operation•Provide user a starting point

43

Cartridge API

Page 44: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

44

More Complex Examples

44

• http://tinyurl.com/online-cartridges

• JBoss EWS:

• multiple versions of packaged software

• support for multiple java versions

• MySQL

• pub/sub database connections

• PHP My Admin

• one cartridge dependent on another

Page 45: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

Deploying your own OpenShift

where you want it when you want it!

We have a pre-built VM for you to check out today, and an installer is in the works for Origin 3.0 that will enable you to install Origin on your own systems or confgure multiple Origin VMs into a distributed PaaS

Page 46: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

46

How do you you like your PaaS?

http://openshift.github.io/documentation/oo_deployment_guide_puppet.html

https://mirror.openshift.com/pub/origin-server/release/2/images/openshift-origin.zip

Page 47: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

47

Page 48: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

48

Page 49: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

49

Page 50: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

50

"this isn't Gospel, but this is the gist"

https://github.com/openshift/origin-install

Page 51: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

51 51

Amazon EC2 Rackspace Bare Metal

OpenStack RHEV CloudStack

OpenShift Origin PaaS

OpenShift Runs on IaaS

https://github.com/openshift/origin-dev-tools

Page 52: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

52

OpenShift on OpenStack

Page 53: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

53

OpenShift on OpenStack with Heat

● Disk Image Builder – to build the image

● Heat – to orchestrate the resources

● OpenStack – to run the infrastructure

Page 54: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

54

Disk Image Builder

● Produces images for a specific purpose

● Uses a chroot and bind mounted /proc /sys /dev

● Uses “elements” to alter how the image is built

● Supports Ubuntu, Fedora, RHEL

Page 55: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

55

Heat

● An orchestration service to build multiple composite cloud applications

● Uses AWS CloudFormation template format

● Interacts with OpenStack using native ReST API to create infrastructure resources– Instances, foating ips, volumes, security groups, users,

etc

Page 56: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

56

Heat References

● http://github.com/openstack/heat

● http://github.com/openstack/diskimage-builder

● http://wiki.openstack.org/wiki/Heat

Page 57: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

The Road Ahead

It's all about Collaboration & Community

Page 58: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

58

Some of us are @RedHat

● GitHub Avatars here..

Page 59: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

59

Some are online..

Page 60: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

60

Some are building clouds

● On Premise/Private and Public Clouds

– For Enterprises

– For SaaS providers

– For Developers

● Public

Https://github.com/getupcloud/origin-server

Page 61: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

61

OpenShift: Community of Collaborators

● Contributors

● Developers

● Cloud Architects

● DevOps

● IT Managers

● Partners

● Solution Architects

● Fellow Evangelists

+ = ?

● Nex Gen PaaS

● Heat Templates

● Cartridges

● UX

● Documentation

Page 62: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

62

And all of us are in this together

Page 63: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

63

Hanging Out on Google+

Page 64: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

64

Contributing on Github

● https://github.com/openshift/origin-server/network/members

Page 65: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

65

OpenShift Contributor Guidelines

● https://github.com/openshift/origin-server/blob/master/CONTRIBUTING.md

● Apache V2 License

● It's a Meritocracy

– Start with Bug Fixes

– Volunteer to do Code Reviews

– Extend the ecosystem with Cartridges & Quick Starts

– Test!

– Document

– Evangelize!

Page 66: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

66 66

It's Open Source! Get Involved! Github:

openshift/origin-serveropenshift/rhcopenshift/puppet-openshift_originopenshift/openshift-pepopenshift/openshift-extrasQuickstarts & Cartridges

Mailing Lists: [email protected]

IRC freenode.net, #openshift-dev

Deploy, Extend, Contribute!

Page 67: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

67

● Google+ Community

https://plus.google.com/communities/114361859072744017486

● E-Mail

● OpenShift Users: [email protected]

● Origin Developers: [email protected]

● IRC: irc.freenode.net

● OpenShift Users: #openshift

● Origin Developers: #openshift-dev

Communication Channels

Page 68: Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orleans CloudOpen

Questions?

Thank you!

For more information: http://openshift.com

[email protected]