Problem(s):
1. The Automated Installer currently has two web servers. The first
one is an Apache web server running on a fixed port to serve the clients
programs and tools (solaris.zlib and solarismisc.zlib) required for
automated installer.The second one is a light weight web server based on
CherryPy and used for serving install manifests to the AI clients.
Having two web servers confuses the the users.
2. For each install service, the server tools creates a new AI web
server (CherryPy based) on a separate port. If there are number of
install services running on a system, we could have quite a few AI web
server processes running on the system. Finding the port numbers of a
particular web server and debugging any problems becomes cumbersome.
What we want to see:
Have a single web server running on a fewer ports (one should be
ideal) serving both install files and AI manifests.
Possible solutions:
1. Use CherryPy web server to serve both AI install files and AI manifests.
Advantages:
- Flexible for adding the features we need.
- Light-weight (Use only the code we need)
Disadvantages:
- We have to maintain the code
- We have to create packages for other operating systems (Solaris
10 and Linux)
- Is it scalable?
- Features may need to be added
2. Use Apache to serve both AI install files and AI manifests.
Advantages:
- The code is reliable and been there for a while
- Packages are available for other operating systems (Solaris 10
and Linux)
- Configuration can be tuned to provide a scalable install server
- Modules are available for most of the useful tasks
Disadvantages:
- Lose some flexibility
- If the required feature is not available, then it becomes
little tedious.
3. Use a different web server other than Apache and CherryPy
- Need to be investigated.
Next steps:
1. Investigate whether Apache web server can do all the tasks
required to serve AI manifest to the clients? What is the risk?
2. Investigate whether AI web server can do the following:
- The tasks to serve AI install programs and tools to the
clients (allow directory traversing)
- To run cgi-bin programs (needed for SPARC wanboot-cgi)
- Creating SVR4 and Linux packaging needed for running on other
operating systems
3. Is there any other web server we want to look at?