Creating a Linux-
based Software
Appliance for SMBs
Evanndro Paes dos Reis
evanndro@evanndro.com

Ken VanDine
ken@rpath.com
Who Are We?
- Evanndro Reis is serial entrepreneur, strategist, senior executive
  with more than 20 years of business dev...
Who Are We?
- Ken VanDine is an Engineering Lead at rPath, Inc. as well as the
  founder and project leader of the Foresig...
Disclaimer
- The work presented here is the result of dozens of people
- Mostly based on our “scenario”
  - 2.6.9 kernel w...
Concepts & Definitions
Software Appliances
- A software appliance is an application paired with an execution environment.
  Basically, this means...
Why Software Appliances?
- Installation is 20th Century. Ready to use is 21st Century.
- Users are not that technical.
- C...
Creating Software Appliances
- Cloning a physical machine
  - VMware Converter
     -   Windows-only. No Vista support yet...
From Physical to Virtual
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
VMware Converter Walkthrough
Custom, where some
fun begins
Why Custom? Some excuses...
- I didn’t know better
- “Finer grain” needed
- Installation requires several steps
- Hardware...
Challenges
- The builder environment is highly unstable
- Minor changes to the packages may lead to unpredictable
  result...
Our Swiss army knife
- A Builder Environment
- Anaconda
- RPM
- Web-based Admin Console
- Your Application
Builder Environment
- Must be the same of your appliance
  - Kernel
  - Anaconda (package and runtime)
  - RPM
  - glibc
 ...
Anaconda
- The so called “omni-present” installer
- It varies by kernel
- Has all the tools to package and build ISOs
  - ...
Let’s get our hands
dirty...
Using a Building Tool:
rBuilder
Concepts
-   rPath provides a set of technologies for the creation and maintenance of
    appliances.

-   These technolog...
Conary Repository
- Conary is the underlying package management technology for
  rPath Linux, and it is a critical element...
Conary Concepts
- A replacement for traditional Linux package management, such as RPM
- The Repository
  - Components
  - ...
rPath Linux
- rPath Linux is rPath's Linux distribution and created as the basis
  for Conary-based appliances.
- It will ...
rBuilder
- rBuilder is rPath's tool for building appliances.
- rBuilder lets you import your applications to a repository ...
rPath Appliance Platform
- The rPath Appliance Platform is rPath's extensible tool providing a
  web-based user interface ...
rMake
- rMake is rPath's tool for allowing full clean rebuilds of the
  software used in an appliance when significant modi...
rBuilder Demo
Next Steps
Deploying
- ISO
- Virtual Machines
- Hardware Appliances
Maintaining
- Using automatic updates
- Remote support
- Licensing Management
Thank you.
Os Paesdosreistutorial
Upcoming SlideShare
Loading in …5
×

Os Paesdosreistutorial

619 views
578 views

Published on

Published in: Business, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
619
On SlideShare
0
From Embeds
0
Number of Embeds
32
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Os Paesdosreistutorial

  1. 1. Creating a Linux- based Software Appliance for SMBs Evanndro Paes dos Reis evanndro@evanndro.com Ken VanDine ken@rpath.com
  2. 2. Who Are We? - Evanndro Reis is serial entrepreneur, strategist, senior executive with more than 20 years of business development and management of Technology, Marketing and E-businesses in locations, such as Brazil, Latin America and United States. Evanndro has a MBA from Fuqua School of Business at Duke University. - A different “beast”: transit in both Linux and Windows worlds. - I love software no matter how it is done!! - Business-driven background with a technical twist, or should I say, technical-driven background with a business twist?
  3. 3. Who Are We? - Ken VanDine is an Engineering Lead at rPath, Inc. as well as the founder and project leader of the Foresight Linux Project, created in 2005. Ken's work with the Foresight Linux Project and Conary package manager eventually led Ken to being hired at rPath, based in Raleigh, N.C. - Ken has been involved with Open Source technology as an avid Linux Text user and Systems Administrator since 1993. - As a member of the GNOME Marketing team, Ken has written articles for the GNOME Journal (http://www.gnomejournal.org) and is now the maintainer of the GNOME LiveCD, based on Foresight Linux and available at http://torrents.gnome.org.
  4. 4. Disclaimer - The work presented here is the result of dozens of people - Mostly based on our “scenario” - 2.6.9 kernel with Anaconda 10.1.1.13 - It can be done differently in different scenarios - Empiric not theoretical - The results may be achieved but not necessarily in the most effective way - If you know something that will add value to our “tutorial”, please jump in and share it with us all.
  5. 5. Concepts & Definitions
  6. 6. Software Appliances - A software appliance is an application paired with an execution environment. Basically, this means that the application is built as a single image with an accompanying operating system to run it. - The process of building an appliance involves more than packaging components together as a single image. - Appliances are more than components packaged together to make a application-centered system; they are built as a complete solution with a straightforward user experience. If an appliance installs the necessary software but still requires end users to access a command line, manually start services, and configure applications, then the appliance is failing to meet the key goal of being straightforward to deploy and use.
  7. 7. Why Software Appliances? - Installation is 20th Century. Ready to use is 21st Century. - Users are not that technical. - Cost of maintaining software has long ago left the “others costs” line. - Easier to maintain - Easier to deploy - Services have higher margins
  8. 8. Creating Software Appliances - Cloning a physical machine - VMware Converter - Windows-only. No Vista support yet. - Parallels Transporter - Using a Building Tool - rBuilder - Custom
  9. 9. From Physical to Virtual
  10. 10. VMware Converter Walkthrough
  11. 11. VMware Converter Walkthrough
  12. 12. VMware Converter Walkthrough
  13. 13. VMware Converter Walkthrough
  14. 14. VMware Converter Walkthrough
  15. 15. VMware Converter Walkthrough
  16. 16. VMware Converter Walkthrough
  17. 17. VMware Converter Walkthrough
  18. 18. VMware Converter Walkthrough
  19. 19. VMware Converter Walkthrough
  20. 20. VMware Converter Walkthrough
  21. 21. VMware Converter Walkthrough
  22. 22. VMware Converter Walkthrough
  23. 23. Custom, where some fun begins
  24. 24. Why Custom? Some excuses... - I didn’t know better - “Finer grain” needed - Installation requires several steps - Hardware is unknown prior to installation - Device drivers/modules need to be customized - Legacy - “That’s the way we used to do”.
  25. 25. Challenges - The builder environment is highly unstable - Minor changes to the packages may lead to unpredictable results - Debugging becomes a nightmare - “Since” syndrome - No standard procedure/documentation
  26. 26. Our Swiss army knife - A Builder Environment - Anaconda - RPM - Web-based Admin Console - Your Application
  27. 27. Builder Environment - Must be the same of your appliance - Kernel - Anaconda (package and runtime) - RPM - glibc - gcc
  28. 28. Anaconda - The so called “omni-present” installer - It varies by kernel - Has all the tools to package and build ISOs - genhdlist - pkgorder - buildinstall
  29. 29. Let’s get our hands dirty...
  30. 30. Using a Building Tool: rBuilder
  31. 31. Concepts - rPath provides a set of technologies for the creation and maintenance of appliances. - These technologies are available as free resources or licensed products from rPath. - They include the following: - Conary - rPath Linux - rBuilder - rPath Appliance Platform - rMake
  32. 32. Conary Repository - Conary is the underlying package management technology for rPath Linux, and it is a critical element in other rPath technologies such as rBuilder, rPath Appliance Platform Agent, and rMake. - All applications included in a software appliance built with rPath technologies must be packaged with Conary - rPath provides instructions to package software from various popular sources and package technologies.
  33. 33. Conary Concepts - A replacement for traditional Linux package management, such as RPM - The Repository - Components - Packages - Recipes - “Cooking” - Branch Structure - Shadows - Changesets
  34. 34. rPath Linux - rPath Linux is rPath's Linux distribution and created as the basis for Conary-based appliances. - It will rarely be installed in its largest form; - rBuilder will eliminate unnecessary components and provide only the software needed by the applications on your appliance.
  35. 35. rBuilder - rBuilder is rPath's tool for building appliances. - rBuilder lets you import your applications to a repository and put them in a shopping cart alongside other applications for inclusion in your appliance. - rBuilder then selects the components of rPath Linux that are needed to support your chosen applications. - Use rBuilder to generate images for local installation ISOs, VMware®, raw hard disc drive images, and other image formats. - Additionally, rBuilder allows you to update your image and serve the updates to deployed appliances automatically.
  36. 36. rPath Appliance Platform - The rPath Appliance Platform is rPath's extensible tool providing a web-based user interface for maintaining appliances. - The Appliance Platform includes features such as a software update scheduling tool and log viewer, and it provides a framework for developing additional configuration plugins tailored to the requirements of your appliance. - It runs on each deployed appliance and allows the end user to browse to the application and interact with the appliance through a management web page.
  37. 37. rMake - rMake is rPath's tool for allowing full clean rebuilds of the software used in an appliance when significant modifications are made to the core operating system components.
  38. 38. rBuilder Demo
  39. 39. Next Steps
  40. 40. Deploying - ISO - Virtual Machines - Hardware Appliances
  41. 41. Maintaining - Using automatic updates - Remote support - Licensing Management
  42. 42. Thank you.

×