An e-mail machine. A website with blog. An ERP and CRM application. A spam and phishing filter. Databases. Development platforms for cloud use. Online customer service forums.
All these, and many more systems applications have been bundled into devices called virtual appliances (VAs). VAs are puzzle pieces that run as virtual machines on popular virtualization platforms, such as VMware, Citrix XenServer, and KVM. VAs break the old model of having one computer dedicated to each major systems application. Systems designers can rapidly take needs assessments, and turn them into working prototypes, then into production platforms. Virtual appliances contain applications, operating systems, and all dependent components needed to perform their task.
In the bad old days, there was the mail server, the web server(s), the blog site, even the online spam catcher. A stack of servers sat in a rack, merrily dimming the local electrical grid, setup so as not to bring major parts of a business down when a server and its application task set died — for whatever reason.
Virtual appliances are discrete application/operating system combinations that are crammed together into servers; how “crammed” they are depends on what other appliances are co-resident, their workloads, and the musculature of the server’s hardware and storage resources. Underneath the appliance instances is a control application called a hypervisor, which allows the instances to be virtualized. The hypervisors being sold today that house multiple concurrent operating systems instances as virtual machines, have become highly reliable. The spontaneous death of a virtual machine only very rarely brings down the server hardware that supports them. Each instance can apply throttles, avoiding issues that used to cause difficulties with other applications.
Virtual machines, and therefore virtual appliance instances, can have a ceiling on their allocation of CPU resources, an apportioned share of network bandwidth, strict growth imposed on disk space, and highly sophisticated network controls imposed on them. Hypervisor management systems, such as those from RedHat, VMware, and Citrix, can also move the location of virtual appliances from one hardware server to another — without shutting them down — so as to load balance appliance needs.
Designing Small Networks with Appliances
One of the first decisions an IT managers needs to make is where the virtual appliances might be stored. The choices are plentiful. Inexpensive servers can run hypervisors that match the hardware requirements of the hypervisor platform. These days, that means a 64-bit CPU that’s virtualization compliant (V-/VT).
The level of expertise needed to choose, test, deploy, and maintain virtual appliances ranges between intermediate and moderate. Much depends on a team’s experience with virtualization, and its ability to maintain the ingredients inside the virtual appliance. Some organizations use VARs or pedigreed consultants, while others already had the virtualization and (generally) Linux skills needed to test, deploy, and maintain. However, one of the attractive characteristics of virtual appliances is that all of the ingredients are generally included to get things going very quickly—they’re not unlike a frozen several course meal.
While VMware seems to have outstanding popular support, and certain VMware components are free, others are very expensive. XenServer, by contrast, can be much more cost effective, and the basic Xen and KVM platforms are essentially free—although they require technical expertise to cobble together.
Many virtual appliances come in several versions to suit the hypervisor family desired. More often than not, there is no extra charge for running on one hypervisor rather than another. Indeed many virtual appliances licenses are free as well, although you’ll often need to pay for on-demand support.
There are four distinct categories of virtual appliances: infrastructure, utility/tools, developmental, and non-persistent application categories. In the virtual appliance “stores” where you shop, you’ll often find great overlap in these categories.
As an example, in the infrastructure category are virtual appliances whose functions are common to most organizations. These include e-mail, web services, corporate blogging, and perhaps more sophisticated appliances, such as collaborative applications and line-of-business applications. Applications like spam filtration or virtual routers may be included, though your organization may consider these to be tools rather than applications.
Virtual appliances include plenty of development applications. These encompass application development platforms, often combining developer platforms and tools designed to build web applications, customize or develop applications, or link application data flow to one-another. This category of appliances has many choices, because the combinations of tools and platforms is so varied today. As an example, a TurnkeyLinux.com Zimbra e-mail appliance we’ve used also sources and uses Apple Mac Mail contact lists, so that when you’re using the Zimbra webmail application from a remote access (phone, smartphone, tablet, etc.), Mac contacts and appointments popup without any user intervention.
The non-persistent application platform speaks to tools that are used infrequently, only when there’s a short-term demand. Examples are video rendering applications and VM appliance converters (these change the format of say, a VMware appliance to a XenServer version). Some non-persistent appliances are designed for data mining, DNA sequencing, or reformatting of databases.
Fitting Together the Puzzle Pieces
Once the infrastructure and line of business applications are chosen, it’s time to budget requirements. Enumerate the virtual appliances along with their resources . Most such listings specify the amount of memory, initial disk displacement, and ostensible maximum disk displacement; they may give clues to network connectivity requirements.
Add up all those puzzle pieces. These provide the crux of hardware or virtual resources needed to power the virtual appliances. With this bill of materials, you can shop for the suitable resources to power them.
The site to choose, an internal “cloud” of resources, or commodity resources purchased in the somewhat public cloud is next. Some organizations have the budget to allocate extra hardware to keep redundant copies of mission critical or line-of-business applications going. Keep in mind that the hypervisor vendor’s licenses that provide server mirroring or redundancy functionality may incur additional costs; these vary widely with each family of hypervisor--and the ultimate destination for the virtual appliance(s).
If there is no mandate to have the virtual appliances onsite, you also have a hosting decision for the hardware and hypervisor family infrastructure from Internet service providers (ISPs) and managed service providers (MSPs). Organizations such as Rackspace, Terremark, and Bluelock can link organizations’ locally-maintained networks to private, remotely-hosted resources, called secure private clouds, where virtual appliances (and perhaps pre-packaged infrastructure offerings) can be contracted.
Virtual appliances work wherever there’s a compatible hypervisor. If there’s sufficient security and reasonable cost, public cloud offerings from ISPs, MSPs and other organizations can provide inexpensive underpinnings for an organization’s virtual appliance puzzle pieces.
An Experienced Example
In our labs, we use a single, 8-core server with lots of disk and memory that houses e-mail services from Zimbra, which was configured rapidly from a turnkeylinux.com appliance (see sources listing). Alongside Zimbra, which is a collaborative webmail and POP mail server, is another turnkeylinux appliance that is our webserver and WordPress blog host.
In turn, we use two Vyatta router appliances to create our internal network and to interface our hosted network (at nframe.com) to the rest of the world. We’ve been toying with the Bitnami e-commerce application stack (found at many online appliance sources), as we’re familiar with many of its components and we use the Ruby development platform.
Like many virtual appliances, Bitnami comes with a version of Linux installed; it’s literally plug and play. Configuration selections are easily made at installation time, and the capability to make virtual appliances useful quickly is one of its strengths.
While our organization uses laptops and smartphones, we also have used hosted OpenOffice products, as well as those from Google (especially Google Docs) and Microsoft’s Office 365 offerings — all hosted from web-based resources.
Typically, you won’t find Microsoft virtual appliances. That’s because of the way that Microsoft licenses its operating systems; those rules demands that the OSs remain on one set of hardware unless re-licensed. As a result, most virtual appliances are based on open source software, and usually bundle together multiple dependent components which are configured and buttoned-up into a single discrete virtual appliance.
Building a small network requires understanding the nature of virtualization platforms, assessing virtual appliance capabilities for your needs, then deciding where to test the infrastructure you’re building. Deploying then becomes a choice of internal or external platforms after you calculate the overall platform size. Mixing and matching appliances is absolutely permitted and is highly desirable. As new appliance sources pop up frequently, and new appliances almost weekly, the virtual appliance marketplace is becoming as sophisticated as the app stores seen for mobile and desktop markets. At one point, they may merge into megastores.
- Turnkey Linux: We’ve used their store frequently for production and developmental applications. While not fully and arduously vetted for security and reliability, we had no difficulty with their appliances, which are easily deployed, and often stripped of unneeded junk to optimize not only their performance, but also conserve disk space.
- VMWare Appliances: The fans of VMware have made it perhaps the most widely licensed hypervisor on earth, and virtual appliances have been a mainstay almost since VMware’s beginnings. Many are free in their listings, a few have costs, but VMware doesn’t vet what you see, as that’s up to their virtual appliance partners.
- XenServer: Citrix has a huge following in their inexpensive XenServer hypervisor following, and the Xen underpinnings are part of several enormous (and famous) public/private cloud providers, like Amazon.com. The listings here aren’t huge, but remember that most all VMware virtual appliances can be converted to Xen in a single free step, allowing easy ‘porting’ to Xen if desired.
Public/Secure-linked Private Cloud Providers:
- RackSpace: the biggest in North America
- 1 and 1: one of the biggest in the EU
- Terremark: great with links to South America
- Go Grid: advanced technology and great prices
- Amazon Web Services: huge, well-known, large community of users
- Bluelock: known for high security
- NFrame: used by high traffic organizations