Does the thought of switching your underlying Web server scare you? Whether your Web site is available to a few employees within an intranet or to a large base of international customers on the Internet, a smooth and safe transition is exceedingly important. If your business’ Web site is currently running on the original HTTP Server on iSeries, you should plan for an eventual move to the Apache-based server on iSeries. Learning what will be required and how to plan for the move will help prepare your Web site and your IT staff for a smooth transition. First, I will explore the migration process by migrating the DEFAULT server. I will then discuss when to migrate, along with helpful tips for a successful migration. Understanding why you need to migrate your HTTP server to be Apache-based is your first step.
IBM announced a new strategic direction for its Web-serving products: HTTP servers on its supported platforms will be powered by Apache. The first version of HTTP Server (Powered by Apache) for iSeries was made available to customers on OS/400 V4R5 at the end of 2000. IBM’s investment in functional enhancements will be made in the Apache- based versions, with few exceptions. Aside from corporate positioning and the widespread popularity of the Apache Web server in the industry, there are other reasons why you will want to migrate to the Apache-based server on iSeries.
The task of administration and configuration of Apache-based HTTP servers on iSeries is streamlined with an enhanced Web-based graphical interface. Several common and complicated server configuration tasks can be performed using wizards to get the job done quickly and correctly. You will find configuring your Apache-based HTTP server much easier than configuring the original HTTP Server.
More importantly, IBM is committed to keeping iSeries customers up-to-date with the latest Web serving technologies required in this rapidly changing e-business environment. IBM has begun working with the Apache open-source community in the development of modules that implement new Web-serving functions. The open-source community shares design expertise and functional implementations for multiple platforms. The widespread Apache user base provides a solid foundation for extensive testing of multi-platform code throughout the development of new functions. IBM’s iSeries
customers will benefit from this collaboration by receiving more high-quality, well-tested functions.
In addition, third-party modules, which provide additional configuration and extensibility, are also available for download from the Internet for many platforms. The Apache server can also be customized by writing your own modules using the Apache API. This level of customization and sharing with others is not available with the original HTTP Server on iSeries. (Note: The use of third-party modules and user-written modules on iSeries will be supported later this year.)
What to Migrate
Compatibility is maintained for CGI and WebSphere applications; thus, no programming changes are necessary. Related objects used by the HTTP Server, such as group files and validation lists, require no migration. They can be used by both types of servers. Server API programs are not supported with the Apache-based server, so if you use them, you will have to rewrite them as Apache modules, using the Apache API available later this year.
The primary piece that requires migration is the actual configuration of an original HTTP Server. Because the directives that control how the server works are different for each server type, the directives must be recognized and mapped to Apache-based equivalents. A migration wizard is provided to aid you in the task of migrating your configuration.
How to Migrate to Apache
Original and Apache-based servers can coexist on the same iSeries system. The migration does not alter or destroy your existing server or its configuration, so you can practice as many times as you want. It should be noted that Apache has additional licensed program requirements not required by the original HTTP Server: V4R5 users should apply the group PTF SF99035. Note also that the special instructions for the PTFs state that they should remain *TEMP. If the primary language of the system changes or new secondary languages are added to the system, this PTF should first be removed and then applied *TEMP again; otherwise, new messages will not be found. Also, the Apache server requires JVM version 1.2. The 5769-JV1 Java Developer Kit 1.2 Product Option 3 must be installed on the system. If 5769-999 PTF MF25453 is installed, you must also install 5769-999 PTF MF25541.
Before beginning the configuration migration, make sure your iSeries system has all the prerequisites for using the Apache-based server, including the Apache group PTF (SF99035). The HTTP Server Documentation Center provides you with all the information you need to get started.
We are going to migrate the DEFAULT original server instance that is provided when the 5769-DG1 product is installed. It is a basic server instance that will help illustrate your first migration experience. If you have this HTTP Server instance on your system, you should be able to perform these steps on your system as you follow along:
1. In your Web browser, request the URL (http://hostname:2002/ HTTPAdmin, where hostname is the name that identifies your iSeries system) to display the new interface for configuring and administering Apache-based servers. If your system does not have the right version of the Java product 5769-JV1 installed, or if the Apache-based PTFs are not installed, the ADMINA server will not start and you will get an error if you try to access this URL. (Note that the URL will be different for V5R1.) Click on the Administration tab along the top left.
2. To initiate the migration process, select the wizard “Migrate Original Server to Apache” by clicking once.
3. The first question asks whether you want to migrate an original server or an original configuration. The second option would be selected if you had a configuration that was not currently used by any original HTTP server instance. Select “Original server” and pick DEFAULT from the list.
4. You are asked for the name you would like to give your Apache-based server. The name must be unique among both original and Apache-based servers. For this example, type MIG2APACHE as the name.
5. You will need to specify a parent directory where you want your server’s configuration information stored. This is referred to as your server root. Use the default directory shown (/www/mig2apache).
6. Before the migration begins, a warning is displayed stating that every effort will be made to produce a correct and complete equivalent Apache-based server. However, the configuration produced must be thoroughly reviewed and tested prior to using it for production use. When you click Next, the actual migration of the original server’s configuration occurs.
7. A summary of the migration results is then displayed. I suggest reading and printing this information for future reference. The summary shows how the directives were mapped to Apache-based equivalent directives by grouping the directives into meaningful categories. At the bottom, it summarizes the directives that the migration tool was not able to migrate automatically.
8. The next Web page displays the values you selected during the migration steps above. Click Finish to create the new Apache-based server.
9. The final Web page confirms that your Apache-based server has been successfully created and provides links for further configuration and for starting your server. At this point, I recommend changing your port from 80 to another unused port value. This will allow you to have both servers running during the testing phase. Click the Configure button to get to the General Settings form to make the change.
10. The DEFAULT server should migrate cleanly with no manual migration necessary, unless you’ve changed your DEFAULT configuration from when it was first installed. To start your Apache-based server, click Manage HTTP Servers, along the left navigation area. Find MIG2APACHE in the list, then click Start. To use the Apache-based server, enter http://hostname:port/ in your Web browser, where hostname is the name of your iSeries system and port is the port number you chose. The DEFAULT server uses the default port 80, so the URL is http://hostname. The same default welcome page should be displayed for both URL requests.
When to Migrate
You need to decide when you will migrate and run your production Web sites on Apache- based HTTP servers. The following are some key factors that should influence your decision:
Apache 2.0 Availability on iSeries The version currently supported on OS/400 V4R5 is an early version of Apache 2.0. When the Apache Software Foundation releases its 2.0 GA (generally available) version, this GA
version will be released on iSeries soon after. The Apache Software Foundation has not yet announced a target date for its GA version.
Web Server Equivalence
I recommend you wait for a final migration until the IBM HTTP Server (Powered by Apache) for iSeries supports all the functions you require or that you are currently using.
You won’t be forced to migrate to the Apache-based server until support is no longer provided for the original server. IBM has not yet announced when support for the original server will cease. Read the IBM HTTP Server for iSeries home page for the list of functions, such as logging, user-written request processing programs, and several CGI capabilities, that are not yet available on the Apache-based version. Additional functions will continue to become available on iSeries later this year and next year.
A few functions supported in the HTTP Server (original) will likely never be available in the Apache-based version. Access log reporting and Web usage mining provide only limited information. More sophisticated third-party software products are recommended. PICS (Platform for Internet Content Selection) was a defined standard for identifying and filtering Web content based on ratings such as violence and sexual content. This standard had very limited use in the industry.
If you use the Server API to customize the original server processing, you will need to rewrite this code as an Apache module. The amount of time this takes will depend on the complexity of the code and your knowledge of Apache modules. Solution Support of Apache If you are using other IBM software such as WebSphere Application Server (WAS) in your Web serving environment, you will need to know when these products will support the Apache-based HTTP server. A tech-preview version of a module for WAS that allows it to work with Apache is now available. Read the IBM WebSphere home page for more information. Other software products like Domino may not support an Apache-based server on iSeries until later this year or next year.
IT Training on Apache
Before a final migration and cutover is completed, your Webmaster and other IT support staff should be knowledgeable about Apache-based server configuration and management on iSeries. Education can begin by reading the HTTP Server Documentation Center and the Apache Software Foundation Web site to get familiar with Apache terminology, concepts, directives, and iSeries specifics. There are also many published books on the Apache server. It is wise not to migrate your production server to Apache until you understand and are comfortable with how your Apache-based server works.
Plan and Practice
Both original and Apache-based servers can coexist on your iSeries system. This allows you to migrate one server at a time, perhaps starting with the least critical, least used, or least complex server. With the right mix of planning, practicing, and testing your migrated servers, you will be a success at running your production Web sites using the IBM HTTP Server (Powered by Apache) on iSeries! For more information on migrating the original HTTP Server configurations to the new Apache HTTP Server, check out the sidebar “Apache Comparison with HTTP Server and Apache Migration Tips,” which can be found at www.midrangecomputing. com/mc.
REFERENCES AND RELATED MATERIALS
• Apache Software Foundation Web site: www.apache.org
• HTTP Server Documentation Center: www.ibm.com/eserver/iseries/software/http/docs/doc.htm
• HTTP Server (Powered by Apache) Web page: www.ibm.com/eserver/iseries/software/http/services/apache.htm
• IBM HTTP Server for iSeries home page: http://www-1.ibm.com/servers/eserver/iseries/ software/http
• IBM WebSphere Home Page: www.ibm.com/eserver/iseries/websphere