HP WebQoS Administration Guide Edition 4 E0801 U.S.A. © Copyright 2001, Hewlett-Packard Company.
Legal Notices The information in this document is subject to change without notice. Hewlett-Packard makes no warranty of any kind with regard to this manual, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Hewlett-Packard shall not be held liable for errors contained herein or direct, indirect, special, incidental or consequential damages in connection with the furnishing, performance, or use of this material. Warranty.
Contents 1. Understanding HP WebQoS The Role and Benefits of HP WebQoS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WebQoS Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Request Classifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Contents Password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Domain Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 4. Templates Preconfigured and Default Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Preconfigured Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Contents Move a Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delete a Service. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add a Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Contents Error Logging and Tracing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tracing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measurement Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Statistics Logging . . . .
Contents Synopsis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arguments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Return Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sample Program. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Contents 8
Printing History The manual printing date and part number indicate its current edition. The printing date will change when a new edition is printed. Minor changes may be made at reprint without changing the printing date. The manual part number will change when extensive changes are made. Manual updates may be issued between editions to correct errors or document product changes. To ensure that you receive the updated or new editions, you should subscribe to the appropriate product support service.
1 Understanding HP WebQoS This chapter explains the roles and benefits of HP WebQoS and how it fits into your environment. It also describes fundamental WebQoS concepts to help you understand how WebQoS technology works.
Understanding HP WebQoS The Role and Benefits of HP WebQoS The Role and Benefits of HP WebQoS HP WebQoS is an enhancement to your operating environment that stabilizes, optimizes, and prioritizes Internet-related applications and transactions that run on Windows 2000 and NT servers (Windows) and SPARC1 servers (Solaris1 operating environment). HP WebQoS works with web-enabled applications built on top of the iPlanet Web Server1 version 4.
Understanding HP WebQoS The Role and Benefits of HP WebQoS • All requests are treated the same. During overload conditions, all user requests and all transactions are impacted. Even your most important customers who are trying to access their accounts to make purchases, or sales representatives who are trying to make a sale at the end of the month, are at the mercy of Web surfers.
Understanding HP WebQoS The Role and Benefits of HP WebQoS WebQoS Concepts This section describes fundamental WebQoS concepts and capabilities. Understanding these concepts is necessary before you can understand how WebQoS technology works. Service A service refers to something of value that a business is offering to other businesses or consumers. For example, a business may provide email, messaging, documentation publishing, cataloging, and Electronic Commerce services.
Understanding HP WebQoS The Role and Benefits of HP WebQoS This is controlled by the WebQoS policies. When new sessions are rejected, redirected, or deferred, existing sessions continue uninterrupted. User request prioritization and session management are the primary tools used by WebQoS to provide capacity protection. The network manager is responsible for updating the timers that define a session, and for establishing the policies that control if the session is admitted.
Understanding HP WebQoS The Role and Benefits of HP WebQoS Corrective Actions Corrective actions help bring the violated SLO or threshold into compliance. You configure and prioritize corrective actions, which are executed when a violation occurs. There are three types of corrective actions: • Redirect requests to another system. • Defer requests for a few moments until current sessions are completed. • Reject low priority customers in extreme overload conditions.
Understanding HP WebQoS How WebQoS Fits Into Your Environment How WebQoS Fits Into Your Environment WebQoS works with your web server and application servers for all of your web-enabled applications. Refer to Figure 1-1, "WebQoS in Your Environment".
Understanding HP WebQoS How WebQoS Fits Into Your Environment WebQoS Components WebQoS comprises a number of components that perform priority-based resource management and service request handling (see Table 1-2, WebQoS Components). In addition, management components allow you to configure WebQoS for the systems on which it is installed as well as define the SLOs and threshold policies that are important to your business.
Understanding HP WebQoS How WebQoS Fits Into Your Environment Component Installed On Description Management Console Any Windows NT/95/98/00 system. Can be installed on multiple PCs. Allows you to define performance objectives for the components of the service and to monitor performance levels and SLOs. Database Any system*. Stores configuration and event information, statistics, and component status. Resides on only one system in your WebQoS domain.
Understanding HP WebQoS How WebQoS Fits Into Your Environment 20 Chapter 1
2 Setup This chapter covers the initial steps you must complete before configuring policies and rules using WebQoS.
Setup WebQoS Software Installation 1. Install the WebQoS software. 2. Modify the WebQoS configuration files. 3. Run the WebQoS setup script and start your web server(s) (UNIX). WebQoS Software Installation Information about installing, upgrading, and removing WebQoS and its management console can be found in the HP WebQoS release note. On a Windows system, the Microsoft IIS software should be installed, configured, and running on the web server system before WebQoS is installed.
Setup WebQoS Configuration Files qos.conf qos.conf is the WebQoS global configuration file. In UNIX, this file is located in the /etc/opt/webqos directory. In Windows, this file is located in . On a UNIX system, configure qos.conf before running the WebQoS setup script. If you update qos.
Setup WebQoS Configuration Files Extensions of file types that are typically embedded in a requested page and should not be considered new sessions. Any policies or rules should not be applied to them. For example, gif, jpeg, and jpg are graphic files that are typically embedded in a requested page. A separate request is generated for each of these files but these requests should not be considered new sessions.
Setup WebQoS Configuration Files • MonitorInterval (seconds) Default: 5 Range: 1 - 43200 (12 hours) How often, in seconds, threshold policies are monitored. • MonitorResponseTimeWeight (%) Default: 50 Range: 1 - 100 Percentage of the current response time used to calculate the weighted response time.
Setup WebQoS Configuration Files times) can be configured for a template by selecting the Advanced tab and then Corrective Actions Policy Details. SCA Parameters The following parameters affect the SCA only. If you change any of these parameters, you must restart the SCA. These parameters impact measurement log files. In UNIX, the measurement log files are located in the /var/opt/webqos/measures directory. In Windows, these files are located in the \measures directory.
Setup WebQoS Configuration Files more than two days old are deleted. SCO Parameters The following parameters affect the SCO only. If you change any of these parameters, you must restart the SCO. • HistoryEventDays (days) Default: 7 Range: 1 - 365 How many days of history events to save. At midnight, history events older than the specified age are deleted. • SCOLogExternMeas Default: 0 (disabled) Range: 0 (disabled) or 1 (enabled) Enable or disable external measurement logging.
Setup WebQoS Configuration Files Logging and Tracing Parameters (UNIX Only) Refer to “Changing Logging and Tracing Levels” on page 116 for information on how to change these levels on your Windows server. The following parameters affect the amount of information written to the logging and tracing files. Logging and tracing is dynamically updated for the web server (information written to qoslog, qoslog.child, qostrace, and qostrace.child).
Setup WebQoS Configuration Files The larger the value, the more tracing information is logged. The trace files are located in the /var/opt/webqos/logs directory. URL Encoding Parameters The following parameters allow you to support users who have disabled cookies on their browser. These parameters are useful only if you are using an application server such as the BroadVision One-To-One Server1. If you change any of these parameters, you must restart the SCA.
Setup WebQoS setup Script (UNIX) Restarting Individual WebQoS Components In UNIX, if you have configured parameters in the qos.conf file after you have run the WebQoS setup script, you must restart (by stopping and starting) specific components (the SCA, SCI, and/or SCO). In Windows, if you have configured parameters in the qos.conf file, you must restart specific components (the SCA, SCI, and/or SCO).
Setup WebQoS setup Script (UNIX) you add a new instance of a web server to your “qosified” web server. Run the following script on any UNIX server you are using as an application tier or a web server tier for WebQoS: /opt/webqos/bin/setup Single Server Setup In a single server setup, you are using only one server in your WebQoS domain.
Setup WebQoS setup Script (UNIX) When you run the setup script, provide the following information: • Continue? Enter y or hit Enter to continue. If you do not want to run WebQoS or read the software license terms, enter n to exit the script now. • Do you accept the HP Software License Terms? If you accept the software license terms and want to continue running the setup script, enter y. Otherwise, enter n to exit the script.
Setup WebQoS setup Script (UNIX) under the directory you specify. After the script finishes, start your web server(s). Multiple Server Setup In a multiple server setup, you are using more than one server in your WebQoS domain.
Setup WebQoS setup Script (UNIX) Server 1 Setup On server 1, you are creating the database and enabling the SCO and SCI. When you run the setup script on server 1, you must provide the following information: • Continue? Enter y or hit Enter to continue. If you do not want to run WebQoS or read the software license terms, enter n to exit the script now. • Do you accept the HP Software License Terms? If you accept the software license terms and want to continue running the setup script, enter y.
Setup WebQoS setup Script (UNIX) server. Enter y or hit Enter to enable the SCI. • Root pathname of Netscape server. Enter NONE. You do not want to configure any web servers. Servers 2 and 4 Setup On servers 2 and 4, you are running the web servers. You must identify server 1 as the system on which the database is running. When you run the setup script on servers 2 and 4, you must provide the following information: • Continue? Enter y or hit Enter to continue.
Setup WebQoS setup Script (UNIX) under the directory you specify. After the script finishes, start your web server(s). Server 3 Setup On server3, you are running the SCI. You must identify server 1 as the system on which the database is running. When you run the setup script on server 3, you must provide the following information: • Continue? Enter y or hit Enter to continue. If you do not want to run WebQoS or read the software license terms, enter n to exit the script now.
Setup WebQoS setup Script (UNIX) Removing WebQoS If you want to “unqosify” (not use WebQoS with) your web server, run the following command. /opt/webqos/install/setup -r WebQoS configuration data is preserved in case you want to run WebQoS again later. When you run setup -r, you must provide the following information: • Enter the root pathname of Netscape server. This is the path to the web server you want to unqosify.
Setup WebQoS setup Script (UNIX) 38 Chapter 2
3 The Management Console This chapter describes how to log in to the management console and its basic functionality.
The Management Console Management Console Login Management Console Login To log in to the WebQoS management console, do the following: 1. You should have already installed the management console software. Refer to the HP WebQoS release note for information on installing this software. 2. On your Solaris system, type /opt/webqos/bin/console_start. On a PC, double-click on the WebQoS icon on the Windows desktop. The WebQoS login dialog box appear (Figure 3-1, “WebQoS Login Dialog Box”).
The Management Console Console Main Screen Console Main Screen When you successfully log in, the management console’s main screen appears. Your systems and sites are automatically discovered. The following figure and table describe the management console’s main screen. For more information, refer to the online help.
The Management Console Console Main Screen Window Area Description Pulldown Lists The Services/Systems pulldown list allows you to select either the services view or the systems view. The Service Level Objective/History log pulldown list allows you to select either the SLO view or the History log view. Services/Systems Views These views display a tree containing your configured services, systems, and sites (your domain topology). The Services view displays your domain by services.
The Management Console Console Main Screen Auto Discovery WebQoS uses a database to store information about your domain. WebQoS uses this information to automatically display the system(s) and site(s). The systems displayed are those that are using the same database to store configuration information. The site(s) displayed are those that are configured for each system. For more information about adding and removing systems, refer to “Systems” on page 82.
The Management Console Console Administration Expanding the service displays all the sites configured for that service on that system. Console Administration Basic tasks that you can complete from the management console’s main screen are changing the management console’s password and managing another domain. Password To change the password that is used by the management console, do the following: 1. Select File: Change Password. 2. In the Change Password dialog box, type in the old password.
The Management Console Console Administration Domain Management To change the WebQoS domain that you are managing by connecting to another database, do the following: 1. Choose File: Connect Management Station. 2. In the WebQoS dialog box, type in the name of the system containing the database to which you want to connect and that WebQoS domain’s management console password. 3. Click on OK.
The Management Console Console Administration 46 Chapter 3
4 Templates This chapter describes the WebQoS templates. Templates are used to configure your SLOs, corrective actions, thresholds, and/or request classification rules.
Templates Preconfigured and Default Templates services or sites that use the same policies and rules, you only have to configure the policies and rules once in a template. You can then apply the template to each service or site. Preconfigured and Default Templates WebQoS comes with preconfigured service and site templates. These templates are also set as the default templates.
Templates Service Template Service Template Description This screen displays the name of the service template. Figure 4-1 Service Template Description Enter a service template name. A service template name can be anything that is meaningful to you as an administrator of WebQoS. For example, a service template name could be “Big Company Template.” This template can be assigned to the “Big Company” service that might contain sites such as: www.BigCompanyStore.com, www.BigCompanySupport.com and www.
Templates Service Template Statistics This screen displays whether or not service statistics logging is enabled for the service template. Figure 4-2 Service Template Statistics By default, service statistics logging is disabled. If you enable service statistics logging, WebQoS logs service statistics to a log file on the management server (the server on which the SCO is installed). In UNIX, the log files are located in the /var/opt/webqos/stats directory.
Templates Service Template The log file is created daily until you disable service statistics logging. At midnight, the file is moved to .stat..
Templates Service Template where service_name is the name of the service to which this template is assigned, and URL GROUP, CLASS, and NUMBER correspond to the parameters defined in the SLO. The following aggregate URL group statistics are logged: Timestamp URL Group Response Time SLOs This screen displays the SLOs configured for the service template. Figure 4-3 Service Template SLOs An SLO specifies the level of service that you expect to provide.
Templates Service Template To configure an SLO, click [Add] or highlight an existing SLO and click [Edit]. Add/Edit SLOs This screen displays the SLOs you can configure and the corrective actions configured to the SLOs for the service template.
Templates Service Template the next section. Otherwise click [OK]. Add/Edit Corrective Actions This screen displays the corrective actions you can configure for the service template. Figure 4-5 Add/Edit Corrective Actions Corrective actions are those actions taken to bring an SLO into compliance.
Templates Service Template A low class session is redirected up to three times. If a session has been redirected three times, it is rejected. It is recommended that the reject action be configured as the last action (lowest priority) for the class. You can change the order of the corrective actions by moving their order using [Move Up] and [Move Down]. Advanced From this screen, you can configure how a session is deferred, redirected, or rejected.
Templates Service Template Defer From this screen you can configure how a defer corrective action is executed for the service template. Figure 4-7 Defer Corrective Action You can configure the minimum and maximum wait times of a deferred session, the maximum number of times a session is deferred, automatic entry after a defer, and the type of defer message. Refer to the online help for more information.
Templates Service Template Redirect From this screen you can configure how a redirect corrective action is executed for the service template. Figure 4-8 Redirect Corrective Action You can enable or disable redirection and configure the URL of a web site to which to redirect. Refer to the online help for more information. If you have configured a redirect corrective action but disable redirection in this screen, all redirect corrective actions are ignored.
Templates Service Template Reject From this screen you can configure how a reject corrective action is executed for the service template. Figure 4-9 Reject Corrective Action You can configure the message sent to a rejected session. Refer to the online help for more information.
Templates Site Template Site Template Description This screen displays the name of the site template and the service to which this site template is associated. Figure 4-10 Site Template Description Enter a site template name. A site template name can be anything that is meaningful to you as an administrator of WebQoS. Select a service name from the pulldown box. The service names listed are those services that have already been configured.
Templates Site Template Classification Rules This screen displays the request classification rules configured for the site template. Figure 4-11 Site Template Classification Rules Request classification rules prioritize requests to the site. Requests can be differentiated by IP address, port number, URL document path, and/or virtual server name and assigned a class. These rules, when combined with the response time SLO, can determine how quickly a request is processed.
Templates Site Template Add/Edit Classification Rules This screen displays the request classification rules you can configure for the site template.
Templates Site Template SLOs This screen displays the SLOs configured for the site template. Figure 4-13 Site Template SLOs An SLO specifies the level of service that you expect to provide. They can be configured to set a minimum average response time and/or the minimum and maximum concurrent sessions supported. WebQoS monitors the SLOs to make sure they are met. If they are not met, WebQoS will execute any configured corrective actions.
Templates Site Template Add/Edit SLOs This screen displays the SLOs you can configure and the corrective actions configured to the SLOs for the site template. Figure 4-14 Add/Edit SLOs You can configure the following SLOs: • Support at most WebQoS sessions • Maintain less than millisecond avg response time for priority requests • Support at least WebQoS sessions If you modify an SLO, all of its events in the history log are deleted.
Templates Site Template Add/Edit Corrective Actions This screen displays the corrective actions you can configure for the site template. Figure 4-15 Add/Edit Corrective Actions Corrective actions are those actions taken to bring an SLO into compliance. Corrective actions may involve making trade-offs between requests belonging to different request classifications, or making trade-offs between requests going to different sites or services running on the same system.
Templates Site Template A low class session is redirected up to three times. If a session has been redirected three times, it is rejected. It is recommended that the reject action be configured as the last action (lowest priority) for the class. You can change the order of the corrective actions by moving their order using [Move Up] and [Move Down]. Threshold Policies This screen displays the threshold policies configured for the site template.
Templates Site Template Add/Edit Threshold Policies This screen displays the threshold policies you can configure and the corrective actions configured to the threshold policies for the site template. Figure 4-17 Add Thresholds Dialog Box You can configure the following threshold policy: • Ensure CPU is no more than % busy For more information about this threshold policy, refer to the online help and “Threshold Policy” on page 124.
Templates Site Template Add/Edit Corrective Actions This screen displays the corrective actions you can configure for the site template. Figure 4-18 Add/Edit Corrective Actions Corrective actions are those actions taken to bring a threshold policy into compliance. Corrective actions may involve making trade-offs between requests belonging to different request classifications, or making trade-offs between requests going to different sites or services running on the same system.
Templates Site Template A low class session is redirected up to three times. If a session has been redirected three times, it is rejected. It is recommended that the reject action be configured as the last action (lowest priority) for the class. You can change the order of the corrective actions by moving their order using [Move Up] and [Move Down].
Templates Site Template Session Timeouts From this screen you can configure the maximum allowable time between requests and of a session. Figure 4-20 Site Advanced Session Timeouts Dialog Box A session consists of all requests from a user within a certain time frame. Once a user has been granted a session, all requests from that user are forwarded to the web server, even when new sessions are no longer being accepted due to an SLO or threshold policy violation.
Templates Site Template Web Server Accept Threads From this screen you can configure the web server accept threads. Figure 4-21 Site Advanced Accept Threads Dialog Box WebQoS web server accept threads are those WebQoS threads that accept incoming connections. The number of WebQoS accept threads affects the speed at which WebQoS can process requests. More accept threads could mean faster processing, but might also increase the load on your system.
Templates Site Template Defer From this screen you can configure how a defer corrective action is executed for the site template. Figure 4-22 Defer Corrective Action You can configure the minimum and maximum times a session is deferred, the maximum number of times a session is deferred, automatic entry after a defer, and the type of defer message. Refer to the online help for more information.
Templates Site Template Redirect From this screen you can configure how a redirect corrective action is executed for the site template. Figure 4-23 Redirect Corrective Action You can enable or disable redirection and configure the URL of a web site to which to redirect. Refer to the online help for more information. If you have configured a redirect corrective action but disable redirection in this screen, all redirect corrective actions are ignored.
Templates Site Template Reject From this screen you can configure how a reject corrective action is executed for the site template. Figure 4-24 Reject Corrective Action You can configure the message sent to a rejected session. Refer to the online help for more information.
Templates Site Template Site Statistics This screen displays whether or not site statistics logging is enabled for the site template. Figure 4-25 Site Template Statistics By default, site statistics logging is disabled. If you enable site statistics logging, WebQoS logs site statistics to a log file named .stat where site_name is the name of the site to which this template is assigned.
Templates Site Template Redirections High Redirections Medium Redirections Low Rejections High Rejections Medium Rejections Low Deferred Outstanding High Deferred Outstanding Medium Deferred Outstanding Low Deferral Time Average High Deferral Time Average Medium Deferral Time Average Low Deferral Time Current High Deferral Time Current Medium Deferral Time Current Low Chapter 4 75
Templates Site Template 76 Chapter 4
5 Services, Sites, and Systems This chapter describes services, sites, and systems.
Services, Sites, and Systems Services Services A service is a way to logically group web sites related to a business application. It allows you to view logical groups of web sites as a single entity from the management console. Add a Service To add a service, do the following: 1. Select Actions: Add -> Service. 2. Select the service template to use. 3. Enter a service name. 4. Select [OK]. Edit a Service You can edit a service’s name and/or the service template to which it is configured.
Services, Sites, and Systems Services Delete a Service To delete a service, do the following: 1. Make sure all web sites contained by the service are in the not connected state (aqua color code). To achieve this, stop all the web sites of the service. 2. Highlight the service in the services/systems view area. 3. Select Actions: Delete -> Service. NOTE You cannot delete a service if it is used by the default site template.
Services, Sites, and Systems Sites Sites A site is a web site or web server instance that is managed by WebQoS. Add a Site WebQoS automatically discovers systems and their web sites. For a web site to be automatically discovered, complete the following: 1. Run the setup script on the system on which the web site resides. The setup script only needs to be run once on the system. If you have already run setup on the system, go to the next step. 2.
Services, Sites, and Systems Sites Delete a Site To delete a site, do the following: 1. Disable the web site. The site must be in the not connected state (aqua color code). 2. Highlight the site in the services/systems view area. 3. Select Actions: Delete -> Site. 4. Verify that you want to delete the site. Microsoft IIS This section discusses important points about starting and stopping Microsoft IIS.
Services, Sites, and Systems Systems Systems A system is a computer with web sites managed by WebQoS. Add a System WebQoS automatically discovers systems and their web sites (see “Auto Discovery” on page 43 for more information). The systems must have the SCA (the Web Services component on UNIX and the Services for IIS component on Windows) installed and the web sites must be running. In UNIX, to add a system, run the setup script on it.
Services, Sites, and Systems Systems 1. Stop the SCA. Refer to “Restarting Individual WebQoS Components” on page 30 for more information. 2. If this is the only system running an SCA in your WebQoS domain, you must enable an SCA on another system in your WebQoS domain. You must have at least one SCA running in your WebQoS domain. 3. From the management console, highlight the system in the services/systems view area. 4. Select Actions: Delete -> System. 5. Verify that you want to delete the system.
Services, Sites, and Systems Systems 84 Chapter 5
6 Statistics Chapter 6 85
Statistics Service Statistics Service Statistics HP WebQoS provides the following service statistics: • SLO related - average response times per request class and total number of unexpired concurrent sessions • Session control - percentage of new sessions admitted, deferred, redirected, or rejected for the service during the last 30 minutes • Defer statistics - total number of outstanding deferred sessions, current defer time, and average defer time for the last 30 minutes Service SLO Related Statistics I
Statistics Service Statistics Figure 6-1 Service SLO Related Statistics The following statistics are displayed: • Response Time per request class - the amount of time, in milliseconds, the web server and web server application take to process a request. The response time does not include the time the request spends on the network between the browser and the web server. If the web server does not receive any requests during a two minute interval, the response time is displayed as zero.
Statistics Service Statistics example, to list the sites in the Site column alphabetically, click on the Site column heading. To reverse the order, click on the Site column heading again. Service Session Control Statistics To view the session control statistics, do the following: 1. Highlight a service in the services/systems view. 2. Choose Statistics from the task bar. 3. Click on the Session Control Statistics tab.
Statistics Service Statistics There may be a short delay in reporting statistics while WebQoS recalculates the statistics. To display session control statistics for each site in the service, choose Details in the Service Session Control Statistics screen. In the detailed screen, you can sort the information in the columns alphabetically or numerically by clicking on the column heading.
Statistics Site Statistics The following statistics are displayed: • Number of Outstanding Deferred Sessions - the total number of deferred sessions that have not yet been admitted. This number is incremented every time a deferral is initiated. • Current Defer Time - the amount of time, in seconds, the last deferred session must wait before being admitted. This information is logged every time a deferral occurs and is reset when the SLO is in compliance.
Statistics Site Statistics Site SLO Related Statistics To view the SLO related statistics, do the following: 1. Highlight a site in the services/systems view. 2. Choose Statistics from the task bar. Figure 6-4 Site SLO Related Statistics The following statistics are displayed: • WebQoS Sessions - the total number of unexpired concurrent sessions. By default, a session expires after two hours or if the time between requests within a session exceeds 15 minutes.
Statistics Site Statistics session must wait before being admitted. This information is logged every time a deferral occurs and is reset when the SLO is in compliance. • 30 Minute Average Defer Time - the average amount of time, in seconds, deferred sessions in the last 30 minutes must wait before being admitted. The data is collected and the average is updated every 30 seconds. There may be a short delay in reporting statistics while WebQoS recalculates the statistics.
Statistics Site Statistics Statistics displayed are the percentage of admitted, deferred, redirected, and rejected sessions, broken down by request classification, during the past 30 minutes. Each statistic also includes the number of sessions (shown in parentheses). For example, 90% (117) means that 90% of all new sessions (or 117 new sessions) were admitted during the last 30 minutes. There may be a short delay in reporting statistics while WebQoS recalculates the statistics.
Statistics Site Statistics 94 Chapter 6
7 Logs and Filters Chapter 7 95
Logs and Filters SLOs, Thresholds, and the History Log SLOs, Thresholds, and the History Log You can use the SLO and the history log views to do the following: • Verify your WebQoS configuration • Check that your topology and web server configuration meet objectives • Determine when objectives are not met so you can make changes to your WebQoS configuration, topology, or web server configuration to better meet the objectives • Determine when objectives are being met so you and your customers know that thei
Logs and Filters SLOs, Thresholds, and the History Log • Status column - Displays the color-coded status associated with SLOs and thresholds. — Red: Violation. The SLO or threshold is in violation and no corrective actions are being executed by WebQoS. — Yellow: At risk. The SLO or threshold is in violation, but WebQoS is executing a corrective action to try and bring it back into compliance. Only one SLO or threshold can be yellow on any given system, as only one corrective action is executed at a time.
Logs and Filters SLOs, Thresholds, and the History Log • Status summary bar - Displays the number of SLOs and thresholds of each status. The status summary bar is color-coded with the same scheme as the status column described above. • Priority column - Displays the SLO or threshold priority (for example 1, 2, 3, or 4). WebQoS performs corrective actions defined for the highest priority (1) SLO or threshold policy that is currently violated.
Logs and Filters SLOs, Thresholds, and the History Log Figure 7-2 History Log View Severity Column Status Summary Bar Pulldown List • Severity column - Displays the color-coded severity associated with the events.
Logs and Filters SLO and Threshold Filters — Action taken — CPU limit — CPU reset — Disk limit — Disk reset • Description column - Displays a one line description of the event. SLO and Threshold Filters You may be managing a large web complex and you may have a significant number of sites. SLO filtering lets you view SLOs and thresholds selectively to make problem solving easier. WebQoS can only display 50 SLOs and thresholds.
Logs and Filters SLO and Threshold Filters Figure 7-3 SLO Filters 3. Select the appropriate status classifications to display SLOs and thresholds with the chosen status. By default, all types are selected. For example, you might choose to display only SLOs and thresholds that are being violated or in error. See the online help for descriptions of the status classifications. 4. Specify the appropriate Priority classification. SLOs and thresholds with the requested priority are displayed.
Logs and Filters History Log Filter History Log Filter History log filtering allows you to view history log entries selectively to make analysis and problem solving easier. WebQoS can only display 50 history log entries at a time. If there are more than 50 log entries for a service, system, or site, you can use filtering to specify which 50 entries should be displayed. Filtering and sorting the history log helps you to see patterns in the behavior of a service, system, or site.
Logs and Filters History Log Filter NOTE The management console uses the local time zone. If the system where you installed the management console is in a different time zone than the web server and application server, the time stamps are formatted using the local time of the management console. 5. Sort the history log as desired by selecting the appropriate sort item from the Sort by: pull down list. For example, you can sort events by severity. 6. Choose [OK].
Logs and Filters OpenView Logs OpenView Logs Log files created by WebQoS can also be used by OpenView. These log files keep track of service and site statistics, site measurements, and policy and corrective action events. Service and Site Statistics OpenView can use the information logged by a service or site template. Logging must be enabled in the template for this information to be available. In UNIX, the log files are located in the /var/opt/webqos/stats directory.
Logs and Filters OpenView Logs Deferred sessions Rejected sessions Average number of deferred sessions Average defer time Policy and Corrective Action Events To log policy and corrective action events, on the system running the SCO, do the following: 1. In UNIX, create the subdirectory OV in /var/opt/webqos. 2. Add SCOLogITOOn 1 to the qos.conf file. 3. Restart the SCO. In UNIX, policy and corrective action event log files are located in the /var/opt/webqos/OV directory.
Logs and Filters OpenView Logs The following information is logged: Date Time Service name Event type Corrective action Class Site corrective action events are logged to the file sitecorractevents. The following information is logged: Date Time System name Site name IP address Port number Event type Corrective action Class Events are logged every 15 seconds.
Logs and Filters OpenView Logs Field Values SLO Status • • • • SLO Type Service SLOs: violation risk compliance - • external_measure (Ensure is ) • session_count (Support at most WebQoS sessions) • url_response_time (Ensure less than millisecond response time for requests to ) • Site SLOs: • cpu_load (Ensure CPU is no more than % busy) • max_sessions (Support at most WebQoS sessions) • min_sessions (Support at l
Logs and Filters OpenView Logs 108 Chapter 7
8 Troubleshooting Troubleshooting is broken down by platform: UNIX or Windows. Refer to the appropriate section.
Troubleshooting Troubleshooting on UNIX Troubleshooting on UNIX Make sure you have installed all required patches. Refer to the release note for a list of these patches. Shared Memory The following warning in the /var/opt/webqos/logs/scalog file: Couldn’t attach to shared memory means the SCA cannot function correctly without memory segments. Do the following: • run ipcs to list memory segments, and then run ipcrm -m to delete memory segments.
Troubleshooting Troubleshooting on UNIX The machine that contains the SCI may be down or the network is unreachable. Also, the intended machine may be mistyped or unknown to the name server. Try the following steps: 1. Verify network connectivity. Run /usr/sbin/ping . Reference the ping(1M)man page for more information. 2. Verify the name server configuration for your network. For example, if you are using DNS or /etc/hosts, run /usr/sbin/nslookup .
Troubleshooting Troubleshooting on UNIX Logging Error messages are logged in the qoslog, qoslog.child, scalog, scilog, and scolog files. You can set the level of logging (number and types of messages) by setting the parameters in the file /etc/opt/webqos/qos.conf. For information on how to set the logging level, see “Logging and Tracing Parameters (UNIX Only)” on page 28. More messages will be logged by changing the levels. See “Changing Logging and Tracing Levels” on page 112 for more information.
Troubleshooting Troubleshooting on UNIX 1. Edit the /etc/opt/webqos/qos.conf and set the level. 2. Restart the WebQoS components. For more information on modifying the parameters in the /etc/opt/webqos/qos.conf file, see “qos.conf” on page 23.
Troubleshooting Troubleshooting on Windows Troubleshooting on Windows The WebQoS management console displays the status of the service or site SLO. If there is a problem with the web server, the SLO status will likely reflect this problem. For example, if the Status column of the Service Level Objectives view shows “Never Connected” (orange color), the web server may be offline. In this case, check the web server status.
Troubleshooting Troubleshooting on Windows Error Messages Viewable From the Management Console The following error messages appear in popup windows in the management console: • The SCI on on port is not running. The WebQoS SCI is down. You need to exit the management console, restart the SCI on the WebQoS Management Server (see “Restarting Individual WebQoS Components” on page 30), then restart the management console. • Problems writing to the SCI socket. The WebQoS SCI is down.
Troubleshooting Troubleshooting on Windows Logging and Tracing The WebQos components use the following log files to record WebQos related activity. You can use these files to monitor the WebQoS server and help with troubleshooting. The files are: \logs\qoslog.txt \logs\qostrace.txt \logs\scalog Logging Error messages are logged in the \logs\qoslog.txt and scalog files. The default logging level is informative messages.
Troubleshooting Troubleshooting on Windows Figure 8-1 Registry Editor Window for WebQoS 5. In the left side of the window, double-click on the LogLevel or TraceLevel values. 6. In the popup window, enter the new value for the selected item. The default tracing level is 0, which means no tracing. A value from 0-3 can be specified; the level of tracing increases with each value. The default value for logging is 3, which means informative logging.
Troubleshooting Troubleshooting on Windows 118 Chapter 8
A Policy and Rule Descriptions This appendix describes request classification rules, service level objectives, and threshold policies.
Policy and Rule Descriptions Request Classification Rules Request Classification Rules In Windows and Solaris, if there is no request classification applied to a request, the default class is low for SSL and non-SSL requests. If more than one class rule match is found in the request, the highest classification is chosen. IP masking is allowed when entering an IP address in a request classification rule. That is, you can enter an * (asterisk) instead of a number in the last three octets of the IP address.
Policy and Rule Descriptions Request Classification Rules • Requests to port number NUMBER are CLASS You need to enter a port number in the Port Number input box. A request classification (High, Medium, or Low) must be selected. This rule then assigns the chosen class to all requests going to the Port Number specified in the input box. • Requests to virtual server NAME are CLASS You need to input a virtual server name in the Name input box. A request classification (High, Medium or Low) must be selected.
Policy and Rule Descriptions Policies Set in WebQoS Policies Set in WebQoS There are two types of policies for WebQoS: business-oriented SLOs and operations-oriented Threshold Policies. You define these two types of policies and prioritize them relative to one another. WebQoS trades off meeting these policies based on their priorities. WebQoS uses priorities to determine which corrective actions to take when one or more of the SLOs or Threshold policies are violated.
Policy and Rule Descriptions Policies Set in WebQoS expired (based on the configuration of the advanced features discussed in “Session Timeouts” on page 69) and are possibly active. This number does not indicate the total number of sessions currently active on the system. • Support at most NUMBER WebQoS sessions This SLO lets you support a specific NUMBER (for example, 1000) of concurrent sessions. The request classification CLASS information is not supported.
Policy and Rule Descriptions Policies Set in WebQoS Threshold Policy The threshold policy is an “internal” measure used to ensure that your system is operating in a reasonable performance range and does not get overloaded. It puts limits on CPU load. If CPU load gets too high, your server may get into a thrashing state causing few or possibly no requests to be satisfied in a timely fashion.
Policy and Rule Descriptions Policies Set in WebQoS • Reject CLASS priority requests This corrective action rejects sessions for the respective priority request. When a session is rejected, WebQoS sends the rejected session a web page indicating that the server is not available. If both redirection and rejection actions are configured for any class, the rejection action should be the last in the corrective action list.
Policy and Rule Descriptions Policies Set in WebQoS To use the customizable reject web page, you must enable Reject message is an HTML file name and enter the exact path name(s) and filename in the Reject Message box (for example, /etc/opt/webqos/html/Reject.html or C:\Program Files\Hewlett-Packard\HPWebQoS\html\Reject.html). You can also use your own reject web page. Be sure to enter its exact path name(s) and filename in the Reject Message box and restart the web server.
Policy and Rule Descriptions Policies Set in WebQoS Using a Defer Timer If you are creating a Defer HTML page and want to use the defer timer mechanism, you need to place the following form in your page:
Figure A-1 shows the default defer page with a defer timer. The defer timer displays the time remaining before the request is retried.Policy and Rule Descriptions Policies Set in WebQoS Using the Is URL Link Your defer page can also include a link to another page that the user can go to while waiting for the original request to be retried (see Figure A-2).
Policy and Rule Descriptions Policies Set in WebQoS 1000),0); minutes = Math.floor(remaining / 60); seconds = remaining % 60; if(seconds<10) secondString = "0" + seconds; else secondString = "" + seconds; document.clock_form.clock.value = " "+ minutes + ":" + secondString; document.clock_form.clock.blur(); if(remaining > 0) setTimeout("clockTick()", 1000); else dialog(); } finalTime = (new Date()).
Policy and Rule Descriptions Policies Set in WebQoS Using a Popup Window Your defer page can also include a popup window that prompts the user to enter the site after the defer timer has expired (see Figure A-3). Figure A-3 Example of Custom Defer Page with Popup Dialog You must code the popup using Javascript.
Policy and Rule Descriptions Policies Set in WebQoS function clockTick() { now = (new Date()).getTime(); remaining = Math.max(Math.round((finalTime - now) / 1000),0); minutes = Math.floor(remaining / 60); seconds = remaining % 60; if(seconds<10) secondString = "0" + seconds; else secondString = "" + seconds; document.clock_form.clock.value = " "+ minutes + ":" + secondString; document.clock_form.clock.blur(); if(remaining > 0) setTimeout("clockTick()", 1000); else dialog(); } finalTime = (new Date()).
Policy and Rule Descriptions Policies Set in WebQoS 132 Appendix A
B External Measurement API This appendix describes how to use the external measurement API.
External Measurement API Using the External Measurement API Using the External Measurement API In Windows and Solaris, you must install the WebQoS API component. The API allows you to send measurements to a customizable service level SLO. The SLO is: Ensure is . It is configured in the service template using the management console (refer to the online help for more information about this SLO). To use the API, do the following: 1. Choose a unique measurement name.
External Measurement API Using the External Measurement API 4. If you want to create a log file, on the system running the SCO component, enable the SCOLogExternMeas parameter in the qos.conf file by setting it to 1. Restart the SCO. 5. Run your program.
External Measurement API wqCreateConnection() wqCreateConnection() Establishes a connection to the SCI component of WebQoS. Synopsis #include or #include \include\qosExternMeasApi.h wqStatus wqCreateConnection(char *hostname, wqSocket *socket) Arguments hostname The name of the system running the WebQoS SCI component. socket The socket descriptor returned by WebQoS and used by the two other methods to identify the connection to WebQoS.
External Measurement API wqSendMeasurement() wqSendMeasurement() Sends the timestamp, measurement name, and measurement value to WebQoS. Synopsis #include or #include \include\qosExternMeasApi.h wqStatus wqSendMeasurement(wqSocket socket, char *xmlString) Arguments socket The socket descriptor returned by wqCreateConnection() used to identify the connection to WebQoS.
External Measurement API wqSendMeasurement() Return Value wqSendMeasurement() returns a non-negative value representing the method status. Return Values Status WQ_STATUS_OK The measurement has been sent to WebQoS. WQ_STATUS_PACK_ERR Packing error. WQ_STATUS_UNPACK_ERR Unpacking error. WQ_STATUS_READ_ERR Error reading from the socket. WQ_STATUS_DIR_ERR Unrecognized data read. WQ_STATUS_MEM_ERR Memory allocation error. WQ_STATUS_PART_READ_ERR Partial read error.
External Measurement API wqCloseConnection() wqCloseConnection() Closes the connection to the SCI component of WebQoS. Synopsis #include or #include \include\qosExternMeasApi.h wqStatus wqCloseConnection(wqSocket socket) Arguments socket The socket descriptor returned by wqCreateConnection() used to close the connection to WebQoS. Return Value wqCloseConnection() returns a non-negative value representing the method status.
External Measurement API Sample Program Sample Program This sample UNIX program is an example of how the three methods can be used. It prompts for the name of the system to connect to and the measurement name and value to supply to the service level SLO. To successfully run this program, you must first configure the service level SLO. The measurement name you type in response to the measurement name prompt must match the name you configured for the SLO. #include #include #include
External Measurement API Sample Program char measValue[MAX_TOKEN]; char hostname[MAX_TOKEN]; char str_timestamp[MAX_TOKEN]; wqStatus status = 0; wqSocket socket; char flag = ‘y’; double timestamp; long l_timestamp; // Measurement Value as a char array // SCI System Name // timestamp as a char array // status code //socket Descriptor // get the SCI system name printf(“Enter the host name:\n”); gets(hostname); // connect to the SCI status = wqCreateConnection(hostname, &socket); if (status == WQ_STATUS_OK)
External Measurement API Sample Program } // close the connection once everything is done if (status == WQ_STATUS_OK) status = wqCloseConnection(socket); } 142 Appendix B
Glossary A admission control - A type of access control that is focused on protecting the system from overload. Based on one or more system load thresholds, it makes decisions about what type of requests to admit and which ones to defer, redirect or reject. C class - See request classification rule. co-hosting - The sharing of a server/cluster by several sites whose contents are typically owned and supplied by different companies or business units.
differentiated access - Access based on classification rules. Requests associated with one classification rule might be admitted while those associated with another are not. Protocols that are used for network quality of service. For example, IP ToS, RSVP, 802.1p, etc. Also known as QoS behavior. differentiated performance - persistent connection - An HTTP 1.
request classification rule Determines the processing priority and access priority for requests submitted to a web site. During periods of heavy system load, low priority requests may be deferred or rejected. (This depends on your specific policies.) If a request is accepted, it is placed on a processing queue, based on its request class priority. Based on your specified policies, the request might be immediately processed, or may “sit” in the queue while other higher priority requests are processed first.
service-oriented request classification - A request classification that focuses on the destination (specific module or content) of a request. session - In WebQoS, a session is composed of one or more requests to a web site. These requests may arrive over one, or possibly several connections. Once a session has been granted, a user’s remaining requests are guaranteed to be forwarded to the web server, unless the session times out.
Index A accept threads modifying, 70 add service, 78 service SLOs, 52 site, 80 site SLOs, 62 site threshold policies, 65 system, 82 systems, 30 admission control, 143 advanced features configuring, 68 auto discovery, 43 C capacity protection, 15 change logging levels, UNIX, 112 logging levels, Windows, 116 management server, 45 tracing levels, UNIX, 112 tracing levels, Windows, 116 classification rule See request classification rule, 120 co-hosting, 143 co-location, 143 communications component, 19 componen
Index SLOs, 100 thresholds, 100 H history log filtering, 102 viewing, 98 I icons, 43 initialization, 21 installation directory, Windows, 22 installing WebQoS, 22 IP precedence, 144 L load balancer, 144 log in management console, 40 logging changing levels, UNIX, 112 changing levels, Windows, 116 configuration file parameters, 28 deleting files, Windows, 117 measurements, UNIX, 112 OpenView, 104 service statistics, 50 site statistics, 74 statistics, UNIX, 112 UNIX, 111, 112 Windows, 116 M management console,
Index restarting, 30 SCO, 19, 145 configuration file parameters, 27 restarting, 30 script setup, 30 setup -r, 37 service, 14, 145 adding, 78 component, 145 defer related statistics, 89 deleting, 79 displaying performance statistics, 86 editing, 78 enabling logging statistics, 50 moving, 78 session control statistics, 88 SLO related statistics, 86 Service Level Agreement, 145 service view, 43 service-oriented request classification, 146 services component, 19 session, 14, 146 modifying timeouts, 69 setup, 21
Index configuration file parameters, 29 URL link web page, 128 user class See request classification, 14 V view history log, 98 SLOs, 96 thresholds, 96 W web page customizing, 125 defer default, 125 defer popup, 130 defer timer, 127 defer URL link, 128 reject default, 125 web server configuration file parameters, 23 modifying accept threads, 70 WebQoS concepts, 14 configuration files, 22 first steps, 21 initialization, 21 installation, 22 setup, 21 150