The lion’s share of heavy lifting in any deployment is the initial install. Time consuming, complex, and with the potential for human error lurking at every push of the button (or key), installation can be a very real bottleneck to pursuing new opportunities. Ironically, a solid and swift installation practice can actually provide a strategic competitive advantage as well as a fast track to those very opportunities.
There are four primary installation strategies today offering varying levels of automation and differing blends of speed, agility and risk. From hand installation to golden image to golden VM virtualization, and finishing with today’s most promising approach, RPM-based installation, each method has its strengths and weaknesses depending on the environment and objectives. We delve into these as we examine ways to spin up your metal (physical or virtual) to maximize opportunity.
Option 1: Manual or By-Hand Installation
The default has long been hand installation. IT operators begin with the ISO disk, which they drop into the drive, then boot the system, and manually install everything. The next step is to download an application like RPMS and continue the process for each app needed. There are scenarios for which prerequisites must also be installed and configured. This is the case with some big data apps that require passwordless logins between members of the server cluster.
Strengths: Experienced technicians can do this reliably and somewhat quickly. They know what to expect and can set an appropriate pace to consider all requirements. Manual installation also supports configuration oddities, because each nuance must be installed by hand whether common or infrequent. For example, RAID arrays must be configured before the install can actually start.
Weaknesses: There is no question that the manual install is the most time consuming. It is also a fixed overhead per machine without an opportunity to maximize economies of scale. Manual installation is prone to human error, much more so than other methods, because there are so many manual steps, each one representing a risk of error. RAID array config is made more difficult by both of the above points. By hand installation requires an IT operator to sit at a console, hit a certain key on boot, then configure the RAID controller by hand, then reboot to start installing.
Option 2: Golden Image
The Golden Image method is increasingly the default as IT ops searches for ways to cut back on time demands and risk. The Golden Image refers to an install image that can be burned directly to a server that is known configured, exactly as desired. Then the installation can be executed by simply changing local settings like IT address and hostname.
Strengths: Golden Image installation presents significant time savings over installs done by hand. IT operators are copying everything at once, and it is all preconfigured. In addition, the software is already installed and tested, so there is less room for error than manual installations.
Weaknesses: The Golden Image approach maximizes the repetitive nature of installation to save critical time and reduce risk. However, it’s rare that systems are completely homogenous to utilize the Golden Image from one end of the server cluster to the other and in between. If apps relying on localized information change (like static IP or hostname), the configuration will need to be modified for each instance. In addition, tiny differences in hardware or software create the need for a new image, distinct from the original. This leads to what is known as “Golden Image Sprawl” which can be quite extensive. In fact, one fortune 500 company has a library, an entire NetApp array, that simply holds the Golden Images for all of its machines. This creates a bookkeeping nightmare and opens the door to human error -- “Oops, used the wrong Golden Image!” Another shortcoming, Golden Image does not support RAID configuration because the software assumes that phase has already been completed.
Option 3: Golden VM Virtualization
Like the Golden Image methodology, the practice of Golden VM Virtualization has seen a surge in popularity, especially over the last five years or so. Golden VM Virtualization can completely remove the need to install. IT operators can copy a VM image, spin it up, and assign a new mac/IP address to it. Simple as that. Golden VM Virtualization is much faster, and since it’s virtualized hardware with (mostly) static software, the number of “Golden VMs” can be kept down compared to traditional Golden Image installation.
Strengths: The biggest strength of the Golden VM Virtualization method is that there is less to differentiate so there are fewer Golden VM images to manage. Golden VM Virtualization is faster than Options 1 and 2, because the VMs can be spun up to a desired set of parameters, whereas physical machines must be installed. With Golden VM Virtualization you spin up the VM, make a few changes, and move along.
Weaknesses: While image sprawl is greatly reduced with Golden VM Virtualization, it is not eliminated. This is simply because the specifications for virtual hardware change and apps still need some level of differentiation. For example, the “Web Server” VM requires different software than the “Database” VM, necessitating separate VMs stored in the system. Versioning makes this worse. Like Golden Images, software that relies on knowing Hostname, IP, or any of the other variable settings will need to be fixed after VM is created and those values must be changed. (As a side note, this problem will eventually go away for Golden Image and Golden VM Virtualization methods as apps are written to collect that information from the authoritative source -- the OS -- at boot time instead of writing it to their config files on install.) As with Golden Image installs, RAID config is not possible with Golden VM Virtualization, because the system assumes that the virtualized environment takes care of that. Lastly, Golden VM Virtualization only works for pure virtual machines.
Option 4: RPM-based Installation
The last installation practice we examine is one that is just starting to gain serious traction. RPM-based installation utilizes automation through a dynamically generated script, rather than a static script, to ensure hostname, IP, and other attributes are set correctly for each machine. This is possible through parameterization, which is basically the process of identifying a complete set of effective settings within a system. Through parameterization, the first installation of local values such as the aforementioned hostname and IP can be set correctly within desired parameters of the system.
Strengths: RPM-based Installation provides the best of both worlds the agility and comprehensive attributes of by-hand installation with the speed of repetitive image installation. RPM-based installation can also configure RAID controllers if the tool chosen supports it. In this scenario, RPM-installation can use RAMDisk to do the configuration of hardware resources, such as RAID controllers, that must be complete before installation, then reboot into the installation media. The RAID is configured just as if an IT operator was coding the RAID config app before boot on each server. Leveraging parameterized scripts, ISOs, and RPMs, RPM-based installation is very reliable since the software doesn’t need to be reconfigured post-install to adjust local values like hostname and IP. Since RPM-based installation is based on dynamically generated scripts, it is like a tech is installing the OS, and varying hardware (or even VM versus hardware) presents no obstacle. If it can be installed by hand, an RPM-based system will correctly install it with automation.
With RPM-based installation, IT gains the ability to spin up today (after parameterized values have been supplied) and then spin up or reinstall that same machine as many times as required in the future. Likewise, by providing a different set of parameters to the same machine type a functional clone of the first machine can be easily created. As organizations rely on pilots and test environments to evaluate new technologies or open source updates prior to deploying in their production environments, this flexible, fast install provides an excellent advantage.
Weaknesses: Nothing completely eliminates the need for varied images. If an organization is in the process of moving from Linux version X to version X+1, different versions must still be maintained. Some changes just can't be tackled without different versions.
RPM-based install also presents installation style limitations. These systems generally want to install over the network, and even those tools that support other options support them secondarily. This is not an issue for most organizations, but if your team does not allow PXE booting, there will likely need to be a workaround plan. RPM-based install is slightly slower than Golden VM Virtualization, due to the overhead of true parameterization.
As organizations leverage test environments and pilots to evaluate technologies for their production networks, the frequency and value of installation increases. It’s a worthwhile exercise to take stock of your installation practice and make it work for you, rather than the other way around. Whether employing by-hand, Golden Image, Golden VM Virtualization, or RPM-based installation, IT operators should understand the pros and cons of each to maximize completeness, agility, and speed. It’s the balance of all three, optimized for your system that provides the best advantage.
Register or login for access to this item and much more
All Information Management content is archived after seven days.
Community members receive:
- All recent and archived articles
- Conference offers and updates
- A full menu of enewsletter options
- Web seminars, white papers, ebooks
Already have an account? Log In
Don't have an account? Register for Free Unlimited Access