What is a virtual data center?
A data center is at the heart of your company's IT environment. Over the past thirty years there has been a gradual shift toward more consolidation of servers and increased automation in the provisioning of servers and networking devices. In fact, data centers can be classified based on their level of server consolidation and provisioning automation:
Traditional data center
- Physical servers are managed as separate entities.
- Provisioning of servers and networking devices is done manually.
Hybrid data center
- Physical and virtual servers are managed as separate entities.
- Provisioning of servers and networking devices is partially automated.
Virtual data center
- Physical and virtual servers are managed as a single entity.
- Provisioning of servers and networking devices is most automated with a little manual work.
As you can see from the classification above, there are two major shortcomings in traditional and hybrid data centers. The first is their inability to manage their servers as a single entity, and the second is the large amount of manual provisioning they require.
The virtual data center uses two technologies to solve these problems: hardware virtualization and automated server and networking device provisioning. IBM is a pioneer in the development of the virtual data center and underpinning their architecture are the new POWER7 processors, VMControl and Tivoli Provisioning Manager, all of which help create that perfect virtual data center.
Why POWER7 is different
The new POWER7 systems use several innovative technologies to offer industry-leading processing speed and virtualization capabilities while using less energy and operating at a lower cost per transaction.
POWER7 comes with VMControl, a truly ground-breaking set of software designed specifically to manage and monitor your IT environment as a single entity across multiple hardware platforms and virtualization environments. It also provides for more virtual cores, as each new POWER7 chip can process up to 32 tasks concurrently using its 32 virtual cores. A POWER7 processor has 8 physical cores and 4 threads or virtual cores per physical core. The POWER7 also allows for advanced workload management through TurboCore and MaxcoreTM mode. Turbocore mode can run up to 4 active cores for database and other transaction-oriented processing. MaxcoreTM mode can run up to 8 active cores for Internet-oriented processing. Along these lines, it can also dynamically monitor the workload, providing additional threads when necessary. This is done when you have enabled TurboCore, which can be done for even just one logical partition (LPAR). The POWER7 also provides for more virtual servers than any other server in the marketplace. Currently, you can run up to 640 virtual servers and later on this year. It will max out to 1,000 virtual servers, with the introduction of IBM high-end server models based on POWER7.
POWER7 also provides for intelligent energy management, allowing for the powering on and off of various components of your systems. This is done through Active Energy Manager (AEM), an IBM Systems Director plug-in. The way it works is that AEM retrieves thermal and power information via external sensors. Then, it collects alerts, events, and data from facility providers related to power and cooling equipment. AEM is designed to measure, monitor, and manage the energy management components built into IBM servers at the system, chassis, or rack level. In doing so, it exploits the energy-saving capabilities of the POWER7 to help in the analysis of data center efficiency and can be used as a tool for implementing data center efficiency changes which may result in monetary savings. Saving money in the data center, in my view, is a prerequisite for implementing any kind of new technologies. POWER7 fits the bill here!
Another important innovation is Active Memory Expansion (AME), which makes it appear as if the physical memory on POWER7 servers have up to twice the amount of real memory. This is done through advanced compression technology. The system dynamically compresses workloads during its operations. AME is configurable on a per-logical partition (LPAR) basis, which means that it can be selectively enabled per virtual server or LPAR. It should also be noted that no other hardware architecture that runs either Linux® or UNIX® has this feature. IBM has truly made great strides in innovation with AME.
What is VMControl?
VMControl helps automate the management of a virtualized infrastructure, improves workload resiliency, and reduces the deployment time for new servers. It works as a plug-in to IBM Systems Director, the IBM enterprise wide management platform for servers, storage, networks and software. It integrates into Systems Director's browser-based interface and can be used with systems already under Systems Director management. It manages and monitors your IT environment as a single entity across multiple hardware platforms and virtualization environments. Figure 1 shows the summary page for VMControl.
Figure 1. VMControl summary page
What I really like about VMControl is that it has a very friendly interface, unlike IBM Hardware Management Console (HMC). VMControl is used to administer all virtualization type tasks on Power systems, changing profiles, starting VIO servers or performing DLPAR operations.
As you can see in Figure 2, with the installed plug-in, it's just another option on Systems Director.
Figure 2. Installed plug-in
What is Tivoli Provisioning Manager?
Tivoli Provisioning Manager is used to help IT with provisioning, configuration and the overall maintenance of servers. This includes physical and virtual servers, as well as operating systems, middleware, applications, storage and network devices.
Some of the high level features of Tivoli Provisioning Manager include:
- Automating regular data center provisioning activities in support of change and release management processes
- Tracking and discovering data center resources. This allows for more accurate server provisioning and software deployments.
- Helping to provision software for UNIX, Linux and Microsoft® Windows® servers
- Increasing availability by maintaining configurations and managing changes to resources
In my view, the most important feature is the automation of routine data-center tasks, including:
- Maintaining an accurate inventory of resources
- Deploying operating systems, middleware and application software
- Configuring and patching servers
- Identifying and troubleshooting unauthorized configurations
To summarize, provisioning is used to automatically deploy resources in response to business objectives in large environments. It helps IT respond to changing business conditions by enabling a dynamic allocation of the existing available resources to the processes that require them most. Simply put, it is the provisioning of individual elements (such as identities, storage, servers, applications, operating systems, and middleware) which are critical to the ability of IT to respond to the needs of the business.
Managing patches in an AIX environment
Let's take a look at the steps involved in managing patches using the Tivoli Provisioning Manager.
- Discover computers. This contains the following steps:
- Run an initial discovery to add them to the data model. The discovery determines the OS installed on your target systems, which are required to ensure that the patches for that OS will be acquired accordingly. The AIX satellite server that is part of your configuration, will also be added to this data model.
- Group the target computers to manage patches for multiple hosts at the same time.
- Acquire the patches. You will need to specify the patches you know you want, from the ones that are released from the vendor, bringing in only the patches you want.
- Testing. You will test the patches in a test environment prior to installing them in production.
- Configuring compliance. This process consists of creating checks to make sure that the installed software will match your requirements. This will check the compliance state of the target and is used to detect and report back problems.
- Scan for missing patches. This process provides for the scanning of the target systems to determine if there are missing patches. When the scan completes, a list of the missing patches are generated and the check will create recommendations for each computer.
- Approve compliance recommendations. It is in this process where you approve the actual patches that you want to install.
- Install patches and monitor install. This is where you actually deploy the patches.
- Verify results. This is where you validate the success of the patches, done by running compliance checks.
Figure 3 illustrates the required components, which include the target computers and the AIX satellite server. The AIX satellite server connects to the AIX fix center over the Internet which downloads the patches. The satellite server is the target computer in your configuration. The patches are typically downloaded to the provisioning server and distributed to its target systems from the provisioning server.
Figure 3. Patch management
For more information on patch management, see the Resources section at the end of the article.
Create a virtual data center with VMControl on POWER7
Now, let's deploy a virtual application to create a new virtual server using VMControl complete with an OS and software stack.
These are the steps you'll need to follow to create the virtual server:
- Select a virtual appliance. To deploy the virtual appliance, select it from the virtual appliances that are stored on IBM Systems Director.
- If you look at Figure 4, you will see virtual appliance A, which is stored in the repository along with the operating system and software/applications.
- The user will specify a host system, system pool or the virtual server where virtual appliance A should be deployed.
- After virtual appliance A has been deployed, it is created with the definitions detailed in its metadata. Alternatively, if you have selected to deploy virtual appliance A to an existing virtual server, the old metadata is overwritten.
- When virtual appliance A is deployed to either a host or to a systems pool in the Power environment, a new workload is also created.
Figure 4. Creating a virtual server
Here are the types of deploy operations allowed in a Power environment:
- Deploy to an existing virtual server, which can be empty or not. The image from the virtual appliance would be installed on the existing virtual server. At the same time, an Systems Director workload would be created or updated. The operation would also allow you to deploy a virtual appliance to multiple virtual servers at the same time.
- Deploy a virtual appliance to a host. This results in the creation of a new virtual server on the installed host with the software image from the virtual appliance. Again, an Systems Director VMControl workload would also be created.
- Deploy the virtual appliance to a systems pool. This will result in the creation of a new virtual server on one of the hosts in the systems pool, which had already been installed with the software image from the virtual appliance. As in the prior example, an Systems Director VMControl workload would also be created.
- Create a new empty virtual server on a host. In this example, no input virtual appliance would be used and no Systems Director VMControl workload would be created. The end-result would be an empty virtual server from which the software image of a virtual appliance would be installed at a later time.
Managing the virtual server with Tivoli Provisioning Manager
Now that we've created the virtual data center with VMControl, here are the steps that allow you to manage virtualization with LPARs using Tivoli Provisioning Manager.
- Add the Hardware Management Console (HMC) to the provisioning model.
- Add credentials to the HMC. It is here where you would define the credential pair type, either ssh or scp on the HMC.
- HMC discovery. This would discover all host servers managed by the HMC and all resources from these servers, including its LPARs.
- Adding hardware resources and credentials to the virtual server. This is where you would add the ssh and scp credentials to the virtual server.
We can also create a package to automate the LPAR process with the following steps:
- From Tivoli Provisioning Manager, Go to Admin>Provisioning>Device Drives.
- From this list, type
pSeriesto see the device drivers.
- Click any device driver in this list to see details about the device driver, including a list of its workflows.
- In the documentation link, open up a new browser window.
- Click the automation page link to view the documentation about the package.
If you recall from the first section of this article, we summarized the elements of a virtual data center, which included:
- Physical and virtual servers managed as a single entity
- Mostly automated with a little manual provisioning of servers and networking devices
We've just shown you some guidelines for using Tivoli Provisioning Manager to manage virtual data center.
It should also be noted that AIX workload partitions (WPARs) can be managed as well. Since there are separate steps to configure management of them, please consult the official Tivoli Provisioning Manager documentation for more information on WPAR management. For more information, see the Resources section.
Creating physical image using operating system deployment
Now let's create a physical image using operating system deployment. Operating system deployment allows you to discover, manage, and deploy physical images.
Tivoli Provisioning Manager for OS Deployment is a powerful operating system management tool that allows you to create and deploy operating systems images. This can be done for AIX unattended setup, Windows cloning, Linux cloning, Solaris® unattended setup and even unattended setup on VMware ESX. The high-level Operating System Management Process steps include:
- Configuring the infrastructure. A boot server will manage both the images and their deployment.
- Creation of the image. One can either define an unattended setup image for the OS or you can capture an image of the actual OS from another host.
- Configure image properties. These are configuration settings that would be applied to all the image deployments.
- Creation of software modules. This can be application software or device drivers.
- Bind the software module to an image.
- Deploy the image.
Further steps are necessary as part of the deployment process. They include:
- Starting the image deployment application.
- Selecting the target and image which will be installed.
- The target determines that it is starting a new deployment and queries the provisioning server for the appropriate deployment OS configuration.
- The target performs hardware discovery through system calls.
- The target queries the ODBC/JDBC database for all important OS information, regarding the OS modules to be installed. At this time, a deployment script will also be generated.
- Next, hardware configuration software should be run, if necessary. This could include something like RAID controller configurations.
- The target would partition its hard disk according to the information retrieved from the database.
- The target would initiate a batch multicast transfer for all necessary deployment files, which would be downloaded in the order which optimized the efficiency of the overall download.
- The deployment process would end by starting the OS on the target machines. Tivoli Provisioning Manager would then connect to the machine post-install and run an inventory scan.
It should be noted that these are only the very high-level steps necessary to roll-out these images. Make sure you read all the Tivoli Provisioning Manager documentation to get a better understanding of all the processes involved towards creating the actual images (see the Resources section for more information).
The bottom line is that while VMControl and Tivoli Provisioning Manager are very powerful technologies on their own, working together, they will help you implement all the necessary objectives of creating and managing a virtual data center.
IBM is a pioneer in the development of the virtual data center. Their solution can streamline your company's data center operations through managing your physical and virtual servers as a single entity with VMControl, can lower your company's data center cost of ownership through the POWER7's faster and more efficient parallel processing, and can provide greater flexibility and dramatically reduced timeframes for provisioning your servers and networking devices with Tivoli Provisioning Manager advanced automation features.
- "An Introduction to Virtualization" by Amit Singh is a great introduction to virtualization and the varying implementations that are available. In addition to Linux, this article also covers other operating system virtualization (Windows, Solaris) and other means of virtualization (such as network stack virtualization)
- Optimizing AIX 5L performance: Tuning network performance, Part 1 (Ken Milberg, developerWorks, November 2007): Read Part 1 of a three-part series on AIX networking, which focuses on the challenges of optimizing network performance.
- For a three-part series on memory tuning on AIX, see Optimizing AIX 5L performance: Tuning your memory settings, Part 1 (Ken Milberg, developerWorks, June 2007).
- Download and read the IBM whitepaper Improving Database Performance with AIX concurrent I/O.
- The AIX and UNIX developerWorks zone provides a wealth of information relating to all aspects of AIX systems administration.
- Open source: Visit the developerWorks Open source zone for extensive how-to information, tools, and project updates to help you develop with open source technologies, and use them with IBM products.
- developerWorks technical events and webcasts: Stay current with developerWorks technical events and webcasts.
- Podcasts: Tune in and catch up with IBM technical experts.