provides software and services that enable enterprises
Live Chat 1-888-673-6564

Open Source Software Technical Articles

  • Home
  • Search
  • Source Code Scanning Tools
  • Products and Support
  • Services
  • Cloud Services
  • Open Source Training
  • Enterprise OSS Blog
  • Wazi Technical Blog
  • About Wazi
  • Attributions and Licensing
  • Supply Chain Compliance
  • How to Contribute
  • Contributors
  • Resources Library
  • Partners
  • Customers
  • Community
  • Company
  • Careers
  • News and Events
  • Contact Us

Subscribe to Wazi by Email

Your email:

click-here-to-chat-with-an-online-representative


Enterprise Developer Support 24 x 7 for Apache, CentOS, Tomcat, PostSQL and more. Get a Support Quote by clicking here!


Latest Posts

  • Build your own custom modules for Drupal 7
  • CentOS system administration using text-based user interfaces
  • Quickly create custom software packages with FPM
  • More easy RSS for your websites via Google and Yahoo! APIs
  • Get RSS for your website using jQuery and PHP
  • JSF tip: How to create bookmarkable pages
  • MySQL Workbench simplifies MySQL management tasks
  • Use Perl to enhance ModSecurity
  • The secret to great reporting with Drupal 7
  • A more colorful LibreOffice unveiled

Connect with Us!

Current Articles | RSS Feed RSS Feed

Four Simple Ways to Install Enterprise Apps

Posted by Mayank Sharma on Mon, May 30, 2011
  
Email This Email Article  
Tweet  
  

While you can install any software on the Linux desktop with just a couple of mouse clicks, enterprise apps are a different story, because they require a lot of infrastructure software, from high-end web and database servers to basic libraries. As a system administrator you may spend hours putting together components before you can deploy an app on the network. Fortunately, some convenient software tools can do the grunt work for you. Packages such as XAMPP, BitNami, Turnkey Linux, and JumpBox can help you deploy a new server app you've been wanting to try in no time. Some solutions install on bare metal, while others can install within a virtual machine, or even on a cloud-based hosting service such as Amazon EC2.



The XAMPP Stack


One of the most popular platforms for deploying or developing a web application is LAMP, which refers to the combination of the Linux operating system, Apache web server, MySQL database server, and PHP scripting language. Variations of this stack replace Linux with Windows or Mac OS X, MySQL with PostgreSQL, or PHP with Perl or Python.



In the XAMPP stack, the X refers to the cross-platform nature of the stack. It's available in four distributions targeting the Linux, Windows, Mac OS X, and Solaris operating systems. XAMPP gives you Apache, MySQL, PHP, and Perl, along with several other libraries and tools. It bundles important modules such as mod_php, mod_perl, and mod_ssl, and you can install addition PHP modules via PEAR. It also gives you libraries such as libjpeg, libpng, and libzlib, which are required by several popular open source web apps. To assist with administration, the suite bundles phpMyAdmin to manage MySQL databases, and the secure and speedy ProFTPD FTP server.

The idea behind XAMPP is to give you a single convenient package that you can use as a sandbox to test and develop web apps. That simplicity means that, unlike the other three options, XAMPP offers no virtualization options and no cloud support.



Installing XAMPP is simple and well-documented. By default the XAMPP installation isn't secure enough for a production environment, but a built-in script lets you rectify that by taking steps such as stopping MySQL from being accessed over the network and setting a password for the MySQL root user.

BitNami Stacks and Modules


While XAMPP gives you a vanilla infrastructure environment, BitNami packages individual web apps along with all the servers and libraries they require. Available BitNami apps include WordPress, Drupal, Joomla, JasperServer, JBoss, and Subversion, among many others. BitNami Stacks give you the complete environment to develop and run web apps, bundling applications with cross-platform Apache-MySQL-PHP stacks and other frameworks such as Django, Ruby, and Tomcat.


You can install a BitNami Stack natively on Linux, Windows, or Mac OS X. Depending on the app, the stacks might vary for the target installation platform. For example, the Alfresco CMS stack is available in two flavors – a full stack with all the dependencies for Linux and Windows, and one without the JDK for all platforms.

If you've installed a BitNami Stack, and you want to use additional applications, you can install supported apps as BitNami Modules, which are lighter installers that come without the infrastructure components. When selecting a module, make sure you download the one that matches the operating system BitNami is installed on. For example, separate WordPress modules run on top of WAMP (Windows), LAMP (Linux), and MAMP (Mac) stacks.

Besides the native installers, BitNami Stacks are also available in self-contained virtual machines for VMware Player or VirtualBox, distributed in the Open Virtualization Format (OVF). In addition to the apps and the infrastructure, these virtual machine images contain the operating system components required to power them. BitNami Virtual Machine Images are considerably larger than the normal stacks and use either openSUSE 11.3 or Ubuntu 10.10 as the base operating system.

19a98812-f823-48dc-841e-bf029c63c6d7

A note of caution: I couldn't get BitNami Virtual Machine Images to work under VirtualBox, though they ran flawlessly on VMware Player.

Finally, you can deploy these installers on Amazon's EC2 cloud service. BitNami lets you download the stack directly onto your Amazon server in the US, Europe, or Asia. To simplify the process of deploying and managing the apps on the EC2 service, you can sign up and pay for BitNami's Cloud Hosting service, which you can test drive for free for 30 days.



BitNami's stacks use BitRock's proprietary cross-platform graphical installer InstallBuilder. Although it's available with a commercial license, the BitNami developers offer it for free to open source projects, including Mono and the Npgsql project.

 

TurnKey Linux Virtual Appliances


Unlike BitNami there are no native installers for TurnKey Linux appliances. All the applications inside a TurnKey appliance are designed to run inside a virtual machine on a stripped-down version of Ubuntu.



You could compare TurnKey appliances with the virtual images available with BitNami Stacks, but TurnKey takes pride in the fact that they are 100% open source and you can tweak their appliances.

The TurnKey developers give out detailed information about their core components and the exact changes made to the appliance for a particular app. For example, the download page for Zimbra has information about Zimbra configurations and custom scripts, which could come in handy when you're trying to troubleshoot a misbehaving appliance.

TurnKey offers virtual appliances for VMware that run fine on VMware Player, OVF images for VirtualBox, and ISO images to install the appliance on bare metal. As with BitNami you can also deploy the images on Amazon's EC2 cloud service, and manage them via the free TurnKey Hub web service. Once you've registered for TurnKey Hub you can also use it to back up the most crucial elements of your appliance to Amazon S3. The backup tool can also fetch and restore data into the appliance.



All TurnKey appliances use the most recent Long Term Support (LTS) version of Ubuntu, 10.04.1, which is slated to be supported until April 2015. During setup, TurnKey gives you the option to install security updates from Ubuntu right away. By default it's also set up to check for security updates every day, although you can turn this off by editing a cron file.

TurnKey has a user-friendly administration interface. One of its impressive features is an AJAX terminal emulator powered via ShellInABox that you can use to administer the base Ubuntu installation. You can even install a complete graphical environment on top of the bare-bones appliance.

JumpBox Virtual Appliances


Although it's a bit of a cliché, a JumpBox appliance really just works out of the box. On the downside, JumpBox is proprietary software, and the only non-free (in both senses of the word) solution among these four.



All JumpBox appliances are packaged to be deployed on virtual machines and are based on the Ubuntu 10.04 LTS release. Of the four solutions in this article, JumpBox supports the most number of virtualization platforms. The standard JumpBox appliance can run on top of VMware and Parallels products on Windows, Linux, and Mac OS X. An OVF release imports the appliance in VirtualBox. You can also download a Jumpbox onto Amazon EC2.

As with the other solutions, setting up a JumpBox appliance is simple. After you've booted it on your favorite virtualization app, it spits out an IP address that you can visit to configure the appliance. Configuration involves specifying an administration password and some other details, which can all be modified from the administration console later.

The highlight of JumpBox is its administration console, which is the same for all JumpBox appliances. It includes a utility to back up and restore entire appliances. The utility lets you manually download a backup, or automatically back up to a Samba or NFS share, or to Amazon's S3 cloud. You can restore from the backed up file or from another JumpBox running on your network. From the admin console you can also enable SSH and SFTP login into the JumpBox. This comes in handy when you want to modify configuration files of the components within the JumpBox.



Besides appliances for common enterprise apps, JumpBox also packages some infrastructure appliances for deploying LAMP apps, as well as Rails, Tomcat, and others. The main page of the LAMP infrastructure appliance has detailed step-by-step instructions on how to deploy a web app. For web developers, it has relevant information such as the version number of the components and the location of their configuration files.

The Right Solution for You?

 

All four of these solutions have advantages and disadvantages that make them best-suited for different usage. XAMPP is the smallest and simplest and is suitable for any situation where you need a LAMP setup in a jiffy. It's ideal for web developers and can be used to deploy the most popular web apps. If you want the experience of setting up an enterprise application without messing with the existing infrastructure, XAMPP is for you.

If you need a prepackaged ready-to-use web app, browse through BitNami Stacks. These popular web apps are easy to deploy, though the downside is that BitNami Stacks require some knowledge of networking. If you are installing the stacks on Linux, make sure you aren't averse to working at the command line. BitNami Stacks lack a management console, and administration tasks such as backing up an installation or upgrading the stack have to be done manually.

If you are an absolute beginner looking to get acquainted with web apps, use either JumpBox or TurnKey Linux. JumpBox is the easier of the two to manage and supports a greater number of virtualization platforms. Although it allows you to tweak the core infrastructure, it's best used as-is. TurnKey, on the other hand, is open source and available in multiple formats, and lets you easily build on top of the appliance.

Of course your choice of a solution may depend on the application you want to deploy. Not all solutions support the same web apps. For example, currently only JumpBox gives you prebuilt appliances for Elgg and Openfire, though you can install these manually on top of any basic LAMP stack if you have the time.

Bottom line: XAMPP, BitNami, TurnKey Linux, and JumpBox are all worthwhile options for quickly deploying web server apps.

Write for Wazi, and get paid!

Follow @openlogic
Follow @CloudSwing

This work is licensed under a Creative Commons Attribution 3.0 Unported License
Creative Commons License.Follow @openlogic
Follow @OSCloudServices

This work is licensed under a Creative Commons Attribution 3.0 Unported License
Creative Commons License.
Tags: Linux, MySQL, Subversion, Apache, PHP, Tomcat, JBoss, Python, Technical, Drupal, PostgreSQL, Ruby, Perl, Tips & Tricks, Joomla, WordPress, Database, phpmyadmin, Django, Rails, Samba, LAMP, ProFTPD, JasperServer, mod_perl, mod_ssl, Zimbra

Comments

Currently, there are no comments. Be the first to post one!
Post Comment
Name
 *
Email
 *
Website (optional)
Comment
 *

Allowed tags: <a> link, <b> bold, <i> italics

Loading...
Error sending email
Email sent successfully

Email article
Email To : 
Your name : 
Message : (maximum 200 characters)
Home | Search | Source Code Scanning Tools | Products and Support | Services | Cloud Services | Open Source Training | Enterprise OSS Blog | Wazi Technical Blog | Resources Library | Partners | Customers | Community | Company | Careers | News and Events | Contact Us
Products
OpenLogic Exchange (OLEX)
License Compliance Module
OSS Discovery
OSS Deep Discovery
OpenUpdate
Services
Open Source Support
CentOS Support
Scanning & Compliance
Open Source Training
Professional Services
Solutions
Support & Indemnification
Open Source Governance
Open Source Scanning
Open Source Provisioning
Consulting & Training
Contact Us
1-888-673-6564


© 2013 OpenLogic, Inc. All rights reserved.
Site Map  |  Privacy Policy