OpenShift and next generation application development

  • 2,508 views
Uploaded on

OpenShift and next generation application development …

OpenShift and next generation application development

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
2,508
On Slideshare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
101
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 1 by Syed M Shaaf Solution Architect Red Hat sshaaf@redhat.com
  • 2. 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. 3 by PaaS = Platform as a Service A Cloud Application Platform Code Deploy Enjoy Save Time and Money Code your app Push-button Deploy, and your App is running in the Cloud!
  • 4. 4 by
  • 5. 5 by Today’s IT Challenge
  • 6. 6 by OpenShift is PaaS by Red Hat Multi-language, Auto-Scaling, Self-service, Elastic, Cloud Application Platform
  • 7. 7 by Developers Choose How To Work with OpenShift Developer IDE Integrations Web Browser Console Command Line Tooling REST APIs
  • 8. 8 by OpenShift’s Intuitive and “Responsive” Web Console Runs on Any Device
  • 9. 9 by Are You a Command-Line Fan? OpenShift’s RHC CLI Tools 1.Create App rhc app create -a javasample -t jbossas-7 2.Add MongoDB rhc 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 git git add ./deployments/earfilename.ear 2.Push your code git push 3.Done
  • 10. 10 by And, of Course, a Powerful JBoss Dev Studio IDE Integration
  • 11. 11 by Developers Choose Languages, Frameworks and Middleware
  • 12. 12 by
  • 13. 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. 14 by Let’s Take a Look…
  • 15. 15 by How OpenShift Works POWERED BY OPENSHIFT
  • 16. 16 by OpenShift is a PaaS on top of… Infrastructure AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
  • 17. 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. 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. 19 by Unique SELinux Approach Enables Security and Multi-tenancy RHEL RHEL SELinux Policies securely subdivide the Node instances. Broker Node Node Node RHEL AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
  • 20. 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. 21 by RHEL RHEL Broker Node Node RHEL AWS / CloudForms / OpenStack / Any VIRT Hyper-visor! / Bare Metal
  • 22. 22 by Developer Workflow RHEL RHEL A Developer creates a new application  OpenShift creates a GEAR Web Console Eclipse IDE Cmd Line Broker Node Node Node RHEL OpenShift Gear AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
  • 23. 23 by OpenShift Automates Gear Configuration via Cartridges RHEL RHEL CARTRIDGES are how OpenShift installs Languages & Middleware Web Console Eclipse IDE Cmd Line Broker Node Node Node RHEL AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal JBoss MySQL
  • 24. 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 Default Cartridges AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
  • 25. 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 Git Repo MySQL
  • 26. 26 by 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 Git Repo MySQL
  • 27. 27 by OpenShift Automates Application Scaling! Broker Node Node Node RHEL HA-Proxy MySQLJava Cod e Java Cod e Java Code AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
  • 28. 28 by Real-world App Dev – Multi Environments, Single PaaS Brokers Nodes RHEL Dev DISTRICT Nodes QA DISTRICT Nodes Prod DISTRICT Dev QA Release Mgmt G it G it G it G it G it
  • 29. 29 by Real-world App Dev – Multi Environments, multiple PaaSes Nodes Dev Dev QA Release Mgmt Nodes QA Nodes Prod G it G it G it G it G it
  • 30. 30 by OpenShift Automates the IT Assembly Line POWERED BY OPENSHIFT AWS / CloudForms / OpenStack (IaaS) / RHEV (Virt) / Bare Metal
  • 31. 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. 32 by Choice of Public, Private, or Open Hybrid Clouds
  • 33. 33 by Choice of Public, Private, or Open Hybrid Clouds
  • 34. 34 by Choice of Public, Private, or Open Hybrid Clouds
  • 35. 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. 36 by Thank You Questions?