Upload
syed-m-shaaf
View
2.843
Download
3
Embed Size (px)
DESCRIPTION
OpenShift and next generation application development
Citation preview
2 by
Cloud Service Models
STORAGE(RHS)
HARDWARE(x86, Power, S/390)
VIRTUALIZATION(RHEV)
OPERATING SYSTEM(RHEL)
APPLICATION PLATFORM(JBOSS, PHP, RUBY, ETC)
APPLICATION
Automated and Managed by the Public or Private Cloud Offering
Managed and Controlled by Customer (IT, Dev, or User)
IaaS PaaS SaaS
Increased Control
Increased Automation
3 by
PaaS = Platform as a Service
A Cloud Application Platform
Code Deploy Enjoy
Save Time and MoneyCode your app
Push-button Deploy, and your App is running in the Cloud!
4 by
5 by
Today’s IT Challenge
6 by
OpenShiftis
PaaS by Red Hat
Multi-language,Auto-Scaling,Self-service,
Elastic,Cloud Application Platform
7 by
Developers Choose How To Work with OpenShift
Developer IDEIntegrations
Web BrowserConsole
Command LineTooling
REST APIs
8 by
OpenShift’s Intuitive and “Responsive” Web Console Runs on Any Device
9 by
Are You a Command-Line Fan?OpenShift’s RHC CLI Tools
1.Create Apprhc app create -a javasample -t jbossas-7
2.Add MongoDBrhc app cartridge add -a javasample –c mongodb-2.0
3.Add add EAR file to your deployments directory
cd javasample
cp /path/to/ear/earfilename.ear ./deployments
1.Add the EAR file to gitgit add ./deployments/earfilename.ear
2.Push your codegit push
3.Done
10 by
And, of Course, a Powerful JBoss Dev Studio IDE Integration
11 by
Developers Choose Languages, Frameworks and Middleware
12 by
13 by
Why OpenShift?1. Strength. OpenShift is built on proven Red Hat
technologies.
2. Freedom. In OpenShift, work the way you want.• Choice of Interface: Web Console, Command-line, or IDE• Choice of Middleware: Java(EE6), Ruby, Node.js, PHP, Python, and
Perl• Choice of Cloud: Public, Private, or Hybrid Cloud• Choice of Elasticity: Automatic application scaling when needed
1. Openness. OpenShift’s open source software stack ensures application portability and No Lock-In.
14 by
Let’s Take a Look…
15 by
How OpenShift Works
POWERED BY
OPENSHIFT
16 by
OpenShift is a PaaS on top of… Infrastructure
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
17 by
The Foundation of OpenShift is Red Hat Enterprise Linux
RHEL RHEL RHEL
OpenShift is Built on Instances of Red Hat Enterprise Linux (RHEL)
RHEL
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
18 by
An OpenShift Broker Manages Multiple OpenShift Nodes
Nodes are where User Applications live.Brokers keep OpenShift running.
Brokers Node Node Node
RHEL RHEL RHELRHEL
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
19 by
Unique SELinux Approach Enables Security and Multi-tenancy
RHEL RHEL
SELinux Policies securely subdividethe Node instances.
Broker Node Node Node
RHEL
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
20 by
OpenShift User Applications Run in OpenShift Gears
RHEL RHEL
OpenShift GEARS represent secure containers in RHEL
Broker Node Node Node
RHEL
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
21 by
RHEL RHEL
Broker Node Node
RHEL
AWS / CloudForms / OpenStack / Any VIRT Hyper-visor! / Bare Metal
22 by
DeveloperWorkflow
RHEL RHEL
A Developer creates a new application OpenShift creates a GEAR
Web ConsoleEclipse IDECmd Line
Broker Node Node Node
RHEL
OpenShiftGear
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
23 by
OpenShift AutomatesGear Configurationvia Cartridges
RHEL RHEL
CARTRIDGES are how OpenShift installs Languages & Middleware
Web ConsoleEclipse IDECmd Line
Broker Node Node Node
RHEL
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
JBoss MySQL
24 by
OpenShift Cartridge System Enables User-Built Cartridges
Developers can add custom language, data-store, or
middleware with with a custom Cartridge.
CUSTOMEtc.
Etc.
Ruby
Python
PHP
Java
Postgres
MySQL
OpenShift DefaultCartridges
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
25 by
Now, Code and Push
RHEL RHEL
Developer pushes application code via GIT source code management system
Git Protocol / ssh
Broker Node Node Node
RHEL
Push
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
JBoss
Code
GitRepo MySQL
26 by
OpenShift AutomatesBuild, Test, Publish
RHEL RHEL
Broker Node Node Node
RHEL
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
Jenkins(CI)
Maven(Builds) Apache
(HTTP)
CodeJBoss
GitRepo
MySQL
27 by
OpenShift AutomatesApplication Scaling!
Broker Node Node Node
RHEL
HA-Proxy MySQLJava
Code
Java
Code
Java
Code
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
28 by
Real-world App Dev – Multi Environments, Single PaaS
Brokers
NodesRHEL
Dev DISTRICT
Nodes
QA DISTRICT
Nodes
Prod DISTRICT
Dev QA Release Mgmt
Git GitGit Git
Git
29 by
Real-world App Dev – Multi Environments, multiple PaaSes
Nodes
Dev
Dev QA Release Mgmt
Nodes
QA
Nodes
Prod
Git GitGit Git
Git
30 by
OpenShift Automates the
IT Assembly Line
POWERED BY
OPENSHIFT
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
31 by
[stack@localhost openshift-origin-cartridge-nodejs]$ find -type f./hooks/{ pre, post}./env/OPENSHIFT_NODEJS_PID_DIR.erb./env/OPENSHIFT_NODEJS_LOG_DIR.erb./logs/.gitkeep./openshift-origin-cartridge-nodejs.spec./usr/template/index.html./usr/template/server.js./usr/template/.openshift/action_hooks/README.md./usr/template/package.json./usr/template/README.md./usr/template/node_modules/.gitkeep./usr/template/deplist.txt./metadata/locked_files.yml./metadata/manifest.yml./metadata/jenkins_shell_command.erb./versions/0.6/configuration/node.env./versions/0.6/configuration/npm_global_module_list./bin/setup./bin/control./bin/install
Demystified: Cartridge structure: Can I make my own?
32 by
Choice of Public, Private, or Open Hybrid Clouds
33 by
Choice of Public, Private, or Open Hybrid Clouds
34 by
Choice of Public, Private, or Open Hybrid Clouds
35 by
References
- http://www.openshift.com- http://www.redhat.com/products/cloud-computing/openshift-enterprise/- https://www.openshift.com/developers/cartridge-authors-guide
Contributions: Part of slide deck originally presented by Dan Juengst – Product Marketing, Red Hat
36 by
Thank You
Questions?