accelerating application delivery with openshift
TRANSCRIPT
![Page 1: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/1.jpg)
Accelerating Application
Delivery with OpenShift
Isaac Christoffersen
Bit Herder & Cloud Wrangler
@ichristo
![Page 2: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/2.jpg)
Agenda
Platform as a Service Overview
OpenShift Overview
Developer Workflow
![Page 3: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/3.jpg)
Platform as a Service
The Path to Developer Self-Service
![Page 4: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/4.jpg)
Cloud Service Models
STORAGE
(RHS)
HARDWARE
(x86)
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
![Page 5: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/5.jpg)
A Cloud Application Platform
Code Deploy Run
Save Time and MoneyCode your app
Push-button Deploy, and your App is running in the Cloud!
![Page 6: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/6.jpg)
Challenge: Accelerating Delivery to Meet Demands
![Page 7: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/7.jpg)
The transformation to IT as Manufacturing
Optimal
How to Build an App:1. Have Idea2. Get Budget3. Code4. Test5. Launch6. Automatically Scale
How to Build an App:1. Have Idea2. Get Budget3. Submit VM Request request4. Wait5. Deploy framework/appserver6. Deploy testing tools7. Code8. Test9. Configure Prod VMs10. Push to Prod11. Launch12. Request More Prod VMs to
meet demand13. Wait14. Deploy app to new VMs15. Etc.
VirtualizedHow to Build an App:1. Have Idea2. Get Budget3. Submit acquisition request4. Wait5. Get Hardware6. Rack and Stack Hardware7. Install Operating System8. Install OS Patches/Fix-Packs9. Create user Accounts10. Deploy framework/appserver11. Deploy testing tools12. Code13. Test14. Configure Prod servers (and buy
them if needed)15. Push to Prod16. Launch17. Order more servers to meet demand18. Wait…19. Deploy new servers20. Etc.
Physical
![Page 8: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/8.jpg)
Code Deploy Enjoy
PaaS leverages automation technologies and a cloud architecture…
…to drive Velocity, Efficiency, and Scalability in IT
Accelerate IT Service Delivery
![Page 9: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/9.jpg)
Multi-language,Auto-Scaling,Self-service,
Elastic,Cloud Application Platform
![Page 10: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/10.jpg)
OpenShift Overview
Understanding How it Works
![Page 11: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/11.jpg)
origin
Public
Cloud
Service
On-
premise
or Private
Cloud
Software
Open
Source
Project
The Three Forms of Red Hat’s PaaS
![Page 12: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/12.jpg)
Developer IDE
Integrations
Web Browser
Console
Command Line
Tooling
REST APIs
Multiple ways to interact with OpenShift
![Page 13: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/13.jpg)
The foundation of OpenShift Enterprise is Red Hat Enterprise Linux
RHEL RHELRHEL
RHEL RHEL RHEL
OpenShift Enterprise is a PaaS that runs on top of..... Infrastructure
OpenStack RHEV VMWare
Amazon EC2 Rackspace Bare Metal
![Page 14: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/14.jpg)
The foundation of OpenShift Enterprise is Red Hat Enterprise Linux
RHEL RHELRHEL
RHEL RHEL RHEL
![Page 15: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/15.jpg)
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
Developer Workflow
![Page 16: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/16.jpg)
Automates Gear Configuration via 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
![Page 17: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/17.jpg)
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
![Page 18: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/18.jpg)
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
![Page 19: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/19.jpg)
OpenShift Automates Build, Test, Publish
RHEL RHEL
Broker Node Node Node
RHEL
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
Jenkins(CI)
Maven(Builds) Apache
(HTTP)
Code
JBoss
GitRepo
MySQL
![Page 20: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/20.jpg)
OpenShift Automates Application Scaling!
Broker Node Node Node
RHEL
HA-Proxy MySQLJava
Code
Java
Code
Java
Code
AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
![Page 21: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/21.jpg)
Real-world App Dev– Multi Environments, Single PaaS
Brokers
NodesRHEL
Dev DISTRICT
Nodes
QA DISTRICT
Nodes
Prod DISTRICT
Dev QA Release Mgmt
![Page 22: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/22.jpg)
Real-world App Dev– Multi Environments, multiple PaaSes
Nodes
Dev
Dev QA Release Mgmt
Nodes
QA
Nodes
Prod
![Page 23: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/23.jpg)
Developer Work Flow
Choice meets Standardization
![Page 24: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/24.jpg)
Developer IDE
Integrations
Web Browser
Console
Command Line
Tooling
REST APIs
Multiple ways to interact with OpenShift
![Page 25: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/25.jpg)
RHEL RHEL
Developer pushes
application code via
GIT source code
management system
Git Protocol / ssh
Broker Node Node Node
RHEL
Push
JBoss
Code
Git
Repo MySQL
![Page 26: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/26.jpg)
Web Console That Runs on Any Device
![Page 27: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/27.jpg)
OpenShift’s RHC CLI Tools
Deploying a Spring Java Web Application
1. Create Apprhc app create springmlb tomcat7 mongodb-2.4 -g medium -n
vizuricloud
2. Add code
cd springmlb
cp -rf ../CODE/mlbparks-spring/* .
3. Add the code to source repository
git add .
git commit -m ”Spring MLB Parks Test”
5. Push your codegit push
6. Enjoy
![Page 28: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/28.jpg)
OpenShift’s RHC CLI Tools
Deploying a JBoss Java Web Application
1. Create Apprhc app create jbossmlb jbosseap-6 -g medium -n vizuricloud
2. Add MongoDBrhc cartridge add mongodb-2.4 -a mlbparks -n vizuricloud
3. Add code
cd jbossmlb
cp -rf ../CODE/mlbparks-jboss/* .
4. Add the code to source repository
git add .
git commit -m "JBoss MLB Parks Test”
5. Push your codegit push
6. Enjoy
![Page 29: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/29.jpg)
IDE Integration with Eclipse and IntelliJ
![Page 30: Accelerating Application Delivery with OpenShift](https://reader033.vdocuments.mx/reader033/viewer/2022042716/55a9ae411a28ab420c8b45bd/html5/thumbnails/30.jpg)
Choice of Languages, Frameworks and Middleware