Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Foss.in OpenShift Open PaaS Done Right

Foss.in OpenShift Open PaaS Done Right

Foss.in OpenShift Open PaaS Done Right

Shekhar Gulati

November 30, 2012
Tweet

More Decks by Shekhar Gulati

Other Decks in Technology

Transcript

  1. 2 About Me ~ Shekhar Gulati  OpenShift Developer Evangelist

    at Red Hat.  I write code.  Active blogger http://whyjava.wordpress.com/ and https://openshift.redhat.com/community/blogs  Written many technical articles on IBM DeveloperWorks, Developer.com, JavaLobby.  Active speaker ~ Red Hat Developer Day, JUDCon, JBoss World, MongoDB events, etc.  Passionate to learn new things.  Twitter : shekhargulati
  2. 4 Agenda  What is PaaS ?  What is

    OpenShift and its ecosystem ?  OpenShift Online  OpenShift Origin  OpenShift Origin Demo
  3. 5 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
  4. 7 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!
  5. 9 Streamlining App Dev with PaaS With PaaS How to

    Build an App: 1. Have Idea 2. Get Budget 3. Code 4. Test 5. Launch 6. Automatically Scale How to Build an App: 1. Have Idea 2. Get Budget 3. Submit VM Request request 4. Wait 5. Deploy framework/appserver 6. Deploy testing tools 7. Test testing tools 8. Code 9. Configure Prod VMs 10. Push to Prod 11. Launch 12. Request More Prod VMs to meet demand 13. Wait 14. Deploy app to new VMs 15. Etc. Today How to Build an App: 1. Have Idea 2. Get Budget 3. Submit hardware acquisition request 4. Wait 5. Get Hardware 6. Rack and Stack Hardware 7. Install Operating System 8. Install Operating System Patches/Fix-Packs 9. Create user Accounts 10. Deploy framework/appserver 11. Deploy testing tools 12. Test testing tools 13. Code 14. Configure Prod servers (and buy them if needed) 15. Push to Prod • Launch 1. Order more servers to meet demand 2. Wait… 3. Deploy new servers 4. Etc. Yesterday “The use of Platform-as-a-Service technologies will enable IT organizations to become more agile and more responsive to the business needs.” –Gartner*
  6. 10 Why PaaS? • Quickly build the Application that YOU

    need for • Your Group, your Enterprise, your next great idea! • Big data, mobile, social • You code the application, We run it for you • Leverage the ease, scale and power of the Cloud Code Deploy Enjoy
  7. 12 Introducing OpenShift  A free auto-scaling, cloud-based application platform

    from Red Hat.  Multi Language, Multi Frameworks, Multi Cartridges.  No proprietary software.  No Lock-in.  Open source – OpenShift Origin.
  8. 13 OpenShift Portfolio 1) OpenShift Online 2) OpenShift Enterprise –

    released on 27th November 3) OpenShift Origin
  9. 14 Why OpenShift?  Strength. OpenShift is built on proven

    Red Hat technologies.  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  Openness. OpenShift’s open source software stack ensures application portability and No Lock-In.
  10. 16

  11. 17

  12. 18

  13. 19

  14. 20

  15. 21

  16. 23 Developers Choose How To Work with OpenShift Developer IDE

    Integrations Web Browser Console Command Line Tooling REST APIs
  17. 25 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 cartridge add -a javasample –c mongodb-2.2 3) Add add WAR file to your deployments directory cd javasample cp /path/to/war/ROOT.war ./deployments 4) Add the WAR file to git git add ./deployments/ROOT.war 5) Push your code git push 6) Done
  18. 29 OpenShift Online Demo  Create an account with fossin

    promo code https://openshift.redhat.com/app/account/new  Install client tools  Setup your account using rhc setup command  Create an application using rhc app create command  Add databases support using rhc cartridge command  Add any other cartridge like Jenkins, databases client, etc  Write code  Push the code to OpenShift using git push
  19. 32 The Foundation of OpenShift is Red Hat Linux RHEL

    RHEL RHEL OpenShift is Built on Instances of Red Hat Enterprise Linux (RHEL) IaaS/Hypervisor/Bare Metal
  20. 33 Unique SELinux Approach Enables Security and Multi-tenancy RHEL RHEL

    SELinux Policies securely subdivide the RHEL instances. IaaS/Hypervisor/Bare Metal
  21. 34 OpenShift User Applications Run in OpenShift Gears RHEL RHEL

    OpenShift GEARS represent a secure containers in RHEL IaaS/Hypervisor/Bare Metal
  22. 35 Developer Workflow RHEL RHEL A Developer creates a new

    application  OpenShift creates a GEAR Web Console Eclipse IDE Cmd Line OpenShift Gear IaaS/Hypervisor/Bare Metal
  23. 36 OpenShift Automates Gear Config via Cartridges RHEL RHEL OpenShift

    installs Language Run-Time & Datastore CARTRIDGES Web Console Eclipse IDE Cmd Line IaaS/Hypervisor/Bare Metal Java MySQL
  24. 37 OpenShift Cartridge System Enables User-Built Cartridges Developers can add

    custom language, data-store, or middleware with DIY Cartridge. IaaS/Hypervisor/Bare Metal DIY Postgres Etc. Ruby Node.js PHP Java Mongo MySQL OpenShift Default Cartridges
  25. 38 With Gear Configured, Developers Simply Code and Push RHEL

    RHEL Developer pushes application code via GIT source code management system Git Code IaaS/Hypervisor/Bare Metal Java MySQL
  26. 39 OpenShift Automates Build, Test, Publish RHEL RHEL Maven Jenkins

    Apache IaaS/Hypervisor/Bare Metal Code Java MySQL
  27. 41 41 But, this is hosted! I want my own.

    Why? Because… • Existing infrastructure, software and services • Concerns about security or compliance • I just like running my own cloud And I want it open source!
  28. 42 42 Does Open Source Matter?  If you depend

    on it, you need to know how it works • No lock-in • Build the features you need • Bugs are found and fixed faster (depends on project?) • Easier to grow and find skilled staff • Community ecosystem
  29. 44 44 What is OpenShift Origin? Public open source repository

    for the OpenShift Origin server components https://github.com/openshift/origin-server
  30. 45 OpenShift Origin  OpenShift Origin enables you to create,

    deploy and manage applications within the cloud.  It provides disk space, CPU resources, memory, network connectivity, and an Apache or JBoss server.  Depending on the type of application being deployed, a template file system layout is provided.  It also manages a limited DNS for the application.
  31. 50 50 What is the License? • Apache License 2.0

    • OSI approved • Business friendly • No contributor agreement