Load Balancer 管理指南

WebSphere Application Server for Multiplatforms
Load Balancer 管理指南

版本 5.1

文档号 G152-0387-01

注意

在使用本资料及其支持的产品之前,请务必阅读附录 E, 声明中的一般信息。

第二版(2003 年 11 月)

(C) Copyright International Business Machines Corporation 2003. All rights reserved.
U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.


目录

  • 关于本书
  • 本书的阅读对象
  • 参考信息
  • 辅助选项
  • 如何发送您的意见
  • 相关文档和 Web 站点

  • 介绍 Load Balancer

  • Load Balancer 概述
  • Load Balancer 是什么?
  • 可使用 Load Balancer 的哪些组件?
  • 使用 Load Balancer 的优点是什么?
  • 高可用性如何实现?
  • 分派器
  • CBR 或站点选择器
  • Cisco CSS 控制器或 Nortel Alteon 控制器
  • 5.1 有什么新功能?
  • 5.0 有什么新功能?
  • Load Balancer 组件的概述
  • Load Balancer 的组件是什么?
  • 分派器 组件的概述
  • 使用分派器管理本地服务器
  • 使用度量服务器管理服务器
  • 使用分派器管理本地和远程服务器
  • 基于内容路由(CBR)组件的概述
  • 使用 CBR 管理本地服务器
  • 站点选择器组件的概述
  • 使用站点选择器和度量服务器管理本地和远程服务器
  • Cisco CSS 控制器组件的概述
  • Nortel Alteon 控制器组件的概述
  • 管理您的网络:确定要使用哪些 Load Balancer 功能
  • 管理器、顾问程序和度量服务器功能(用于分派器、CBR 和站点选择器组件)
  • 分派器组件功能
  • 远程管理
  • 并列配置
  • 高可用性
  • 客户机到服务器的亲缘性
  • 基于规则的负载均衡
  • 使用分派器的 cbr 转发方法的基于内容路由
  • 广域负载均衡
  • 端口映射
  • 在专用网上设置分派器
  • 通配符群集和通配符端口
  • “拒绝服务”攻击检测
  • 二进制日志记录
  • 警告
  • 基于内容路由(CBR)组件功能
  • CBR 组件和分派器组件的 cbr 转发方法之间的比较
  • 远程管理
  • 并列配置
  • 具有多个高速缓存实例的 CBR
  • 为 SSL 连接提供基于内容路由
  • 服务器分区
  • 基于规则的负载均衡
  • 客户机到服务器的亲缘性
  • 使用分派器和 CBR 的高可用性
  • 二进制日志记录
  • 警告
  • 站点选择器组件功能
  • 远程管理
  • 并列配置
  • 高可用性
  • 客户机到服务器的亲缘性
  • 基于规则的负载均衡
  • 广域负载均衡
  • 警告
  • Cisco CSS 控制器组件功能
  • 远程管理
  • 并列配置
  • 高可用性
  • 二进制日志记录
  • 警告
  • Nortel Alteon 控制器组件功能
  • 远程管理
  • 并列配置
  • 高可用性
  • 二进制日志记录
  • 警告
  • 安装 Load Balancer
  • AIX 的要求
  • AIX 的安装
  • 安装前
  • 安装步骤
  • HP-UX 的要求
  • 安装 HP-UX
  • 安装前
  • 安装步骤
  • Linux 的要求
  • 安装 Linux
  • 安装前
  • 安装步骤
  • Solaris 版要求
  • 安装 Solaris 版
  • 安装前
  • 安装步骤
  • Windows 2000 和 Windows Server 2003 的要求
  • Windows 2000 或 Windows Server 2003 的安装
  • 安装前
  • 安装步骤

  • 分派器组件

  • 快速入门配置
  • 您需要什么?
  • 如何准备?
  • 配置分派器组件
  • 使用命令行配置
  • 测试您的配置
  • 使用图形用户界面(GUI)配置
  • 配置向导
  • 群集、端口、服务器配置的类型
  • 计划分派器组件
  • 硬件和软件要求
  • 计划注意事项
  • 转发方法
  • 分派器的 MAC 级别路由(mac 转发方法)
  • 分派器的 NAT/NAPT(nat 转发方法)
  • 分派器的基于内容路由(cbr 转发方法)
  • 配置分派器的 nat 或 cbr 转发方法的样本步骤
  • 服务器分区:配置到一个物理服务器(IP 地址)的逻辑服务器
  • 使用 HTTP/HTTPS 顾问程序的服务器分区
  • 将一台物理服务器配置为一些逻辑服务器的示例
  • 高可用性
  • 简单高可用性
  • 相互高可用性
  • 配置分派器组件
  • 配置任务概述
  • 配置方法
  • 命令行
  • 脚本
  • GUI
  • 使用配置向导配置
  • 设置分派器机器
  • 步骤 1. 启动服务器功能
  • 步骤 2. 启动执行程序功能
  • 步骤 3. 定义非转发地址(如果地址不同于主机名)
  • 步骤 4. 定义群集并设置群集选项
  • 步骤 5. 为网络接口卡建立别名
  • 步骤 6. 定义端口并设置端口选项
  • 步骤 7. 定义负载均衡服务器
  • 步骤 8. 启动管理器功能(可选)
  • 步骤 9. 启动顾问程序功能(可选)
  • 步骤 10. 根据需要设置群集比例
  • 为负载均衡设置服务器
  • 步骤 1. 为回送设备建立别名
  • 步骤 2. 检查额外路由
  • 步骤 3. 删除任何额外路由
  • 步骤 4. 验证服务器配置正确
  • 安装 Linux 内核补丁(以抑制 arp 回送接口上的响应)

  • 基于内容路由(CBR)组件

  • 快速入门配置
  • 您需要什么?
  • 如何准备?
  • 配置 CBR 组件
  • 使用命令行配置
  • 测试您的配置
  • 使用图形用户界面(GUI)配置
  • 使用配置向导配置
  • 群集、端口、服务器配置的类型
  • 计划基于内容路由组件
  • 硬件和软件要求
  • 计划注意事项
  • 不同种内容的负载均衡请求
  • 为更好的响应时间划分您的站点内容
  • 提供 Web 服务器内容的备份
  • 使用多个高速缓存代理进程来改进 CPU 使用率
  • 与 CBR 一起使用基于规则的负载均衡
  • 跨完全安全的(SSL)连接的负载均衡
  • 负载均衡 SSL 中的客户机到代理和 HTTP 中的代理到服务器
  • 负载均衡 WebSphere Application Server(WAS)
  • 配置基于内容路由的组件
  • 配置任务概述
  • 配置方法
  • 命令行
  • 脚本
  • GUI
  • 配置向导
  • 设置 CBR 机器
  • 步骤 1. 配置高速缓存代理以使用 CBR
  • 步骤 2. 启动服务器功能
  • 步骤 3. 启动执行程序功能
  • 步骤 4. 定义群集并设置群集选项
  • 步骤 5. 为网络接口卡建立别名(可选)
  • 步骤 6. 定义端口并设置端口选项
  • 步骤 7. 定义负载均衡服务器
  • 步骤 8. 向配置中添加规则
  • 步骤 9. 添加服务器到您的规则
  • 步骤 10. 启动管理器功能(可选)
  • 步骤 11. 启动顾问程序功能(可选)
  • 步骤 12. 根据需要设置群集比例
  • 步骤 13. 启动高速缓存代理
  • CBR 配置示例

  • 站点选择器组件

  • 快速入门配置
  • 您需要什么?
  • 如何准备?
  • 配置站点选择器组件
  • 使用命令行配置
  • 测试您的配置
  • 使用图形用户界面(GUI)配置
  • 使用配置向导配置
  • 计划站点选择器组件
  • 硬件和软件要求
  • 计划注意事项
  • TTL 注意事项
  • 使用网络接近功能
  • 配置站点选择器组件
  • 配置任务概述
  • 配置方法
  • 命令行
  • 脚本
  • GUI
  • 配置向导
  • 设置站点选择器机器
  • 步骤 1. 启动服务器功能
  • 步骤 2. 启动名称服务器
  • 步骤 3. 定义站点名和设置站点名选项
  • 步骤 4. 定义负载均衡服务器
  • 步骤 5. 启动管理器功能(可选)
  • 步骤 6. 启动顾问程序功能(可选)
  • 步骤 7. 定义系统度量(可选)
  • 步骤 8. 根据需要设置站点名比例
  • 为负载均衡设置服务器

  • Cisco CSS 控制器组件

  • 快速入门配置
  • 您需要什么?
  • 如何准备?
  • 配置 Cisco CSS 控制器组件
  • 使用命令行配置
  • 测试您的配置
  • 使用图形用户界面(GUI)配置
  • 计划 Cisco CSS 控制器组件
  • 硬件和软件要求
  • 硬件要求
  • 软件要求
  • 计划注意事项
  • 咨询器在网络中的位置
  • 高可用性
  • 计算权值
  • 问题确定
  • 配置 Cisco CSS 控制器组件
  • 配置任务概述
  • 配置方法
  • 命令行
  • XML
  • GUI
  • 设置 Cisco CSS 交换机的控制器机器
  • 步骤 1. 启动服务器功能
  • 步骤 2. 启动命令行界面
  • 步骤 3. 配置咨询器
  • 步骤 3. 配置所有者内容
  • 步骤 4. 验证是否正确定义服务
  • 步骤 5. 配置度量
  • 步骤 6. 启动咨询器
  • 步骤 7. 启动度量服务器(可选)
  • 步骤 8. 配置高可用性(可选)
  • 测试您的配置

  • Nortel Alteon 控制器组件

  • 快速入门配置
  • 您需要什么?
  • 如何准备?
  • 配置 Nortel Alteon 控制器组件
  • 使用命令行配置
  • 测试您的配置
  • 使用图形用户界面(GUI)配置
  • 计划 Nortel Alteon 控制器组件
  • 硬件和软件要求
  • 硬件要求
  • 软件要求
  • 计划注意事项
  • 咨询器在网络中的位置
  • 交换机上的服务器属性(由控制器设置)
  • 配置备份服务器
  • 配置组
  • 高可用性
  • 调整
  • 问题确定
  • 配置 Nortel Alteon 控制器组件
  • 配置任务概述
  • 配置方法
  • 命令行
  • XML
  • GUI
  • 设置 Nortel Alteon 控制器
  • 步骤 1. 启动服务器功能
  • 步骤 2. 启动命令行界面
  • 步骤 3. 定义 Nortel Alteon Web 交换机咨询器
  • 步骤 4. 将服务添加到交换机咨询器
  • 步骤 5. 配置度量
  • 步骤 6. 启动咨询器
  • 步骤 7. 配置高可用性(可选)
  • 步骤 8. 启动度量服务器(可选)
  • 步骤 9. 刷新 Nortel Alteon 控制器配置
  • 测试您的配置

  • Load Balancer 的功能和高级功能部件

  • 分派器、CBR 和站点选择器的管理器、顾问程序和度量服务器功能
  • 优化 Load Balancer 提供的负载均衡
  • 状态信息的重要性比例
  • 权值
  • 管理器时间间隔
  • 灵敏度阈值
  • 平滑指数
  • 使用脚本以生成警告或记录服务器故障
  • 顾问程序
  • 顾问程序是如何工作的
  • 启动和停止顾问程序
  • 顾问程序时间间隔
  • 顾问程序报告超时
  • 服务器的顾问程序连接超时和接收超时
  • 顾问程序重试
  • 顾问程序列表
  • 使用请求/响应(URL)选项配置 HTTP 顾问程序
  • 在 2 层 WAN 配置中使用自顾问程序
  • 创建定制(可定制的)顾问程序
  • WAS 顾问程序
  • 命名约定
  • 编译
  • 运行
  • 需要的例程
  • 搜索顺序
  • 命名与路径
  • 样本顾问程序
  • 度量服务器
  • WLM 限制
  • 先决条件
  • 如何使用度量服务器
  • 工作负载管理器顾问程序
  • 度量服务器限制
  • 分派器、CBR 和站点选择器的高级功能
  • 使用并列配置的服务器
  • 对于分派器组件
  • 对于 CBR 组件
  • 对于站点选择器组件
  • 高可用性
  • 配置高可用性
  • 使用工作频率和到达目标的故障检测能力
  • 恢复策略
  • 使用脚本
  • 配置基于规则的负载均衡
  • 如何评估规则?
  • 使用基于客户机 IP 地址的规则
  • 使用基于客户机端口的规则
  • 使用基于时间的规则
  • 使用基于服务类型(TOS)的规则
  • 使用基于每秒连接数的规则
  • 使用基于总活动连接数的规则
  • 使用基于保留带宽和共享带宽的规则
  • 度量所有规则
  • 度量平均规则
  • 使用总是为真规则
  • 使用基于请求内容的规则
  • 端口亲缘性覆盖
  • 添加规则到您的配置
  • 服务器评估规则选项
  • Load Balancer 的亲缘性功能如何工作
  • 禁用亲缘性时的行为
  • 启用亲缘性时的行为
  • 交叉端口亲缘性
  • 亲缘性地址掩码(stickymask)
  • 停顿服务器连接句柄
  • 基于客户机请求内容的规则的亲缘性选项
  • 活动 cookie 亲缘性
  • 被动 cookie 亲缘性
  • URI 亲缘性
  • 配置广域分派器支持
  • 命令语法
  • 使用带分派器广域支持的远程顾问程序
  • 配置示例
  • GRE(一般路由封装)支持
  • 使用显式链接
  • 使用专用网配置
  • 使用通配符群集来组合服务器配置
  • 使用通配符群集为防火墙负载均衡
  • 将高速缓存代理和通配符群集一起用于透明代理
  • 使用通配符端口定向到未配置的端口流量
  • 处理 FTP 通信量的通配符端口
  • 拒绝服务攻击检测
  • 使用二进制日志记录分析服务器统计信息
  • Cisco CSS 控制器和 Nortel Alteon 控制器的高级功能
  • 并列配置
  • 高可用性
  • 配置
  • 故障检测
  • 恢复策略
  • 示例
  • 优化 Load Balancer 提供的负载均衡
  • 给予度量信息的重要性
  • 权值
  • 权值计算休眠时间
  • 灵敏度阈值
  • 顾问程序
  • 顾问程序是如何工作的
  • 顾问程序休眠时间
  • 服务器的顾问程序连接超时和接收超时
  • 顾问程序重试
  • 创建定制(可定制的)顾问程序
  • 命名约定
  • 编译
  • 运行
  • 需要的例程
  • 搜索顺序
  • 命名与路径
  • 样本顾问程序
  • 度量服务器
  • 先决条件
  • 如何使用度量服务器
  • 工作负载管理器顾问程序
  • 使用二进制日志记录分析服务器统计信息
  • 使用脚本以生成警告或记录服务器故障

  • 管理和故障诊断 Load Balancer

  • 操作和管理 Load Balancer
  • Load Balancer 的远程管理
  • 远程方法调用(RMI)
  • 基于 Web 的管理
  • 使用 Load Balancer 日志
  • 对于分派器、CBR 和站点选择器
  • 对于 Cisco CSS 控制器和 Nortel Alteon 控制器
  • 使用分派器组件
  • 启动和停止分派器
  • 使用失效超时值
  • 使用 FIN 计数来控制垃圾收集
  • 报告 GUI - “监视器”菜单选项
  • 与分派器组件一起使用简单网络管理协议
  • 使用 ipchains 或 iptables 以拒绝所有流量来(加固)Load Balancer 框(在 Linux 上)
  • 使用基于内容路由组件
  • 启动和停止 CBR
  • 控制 CBR
  • 使用 CBR 日志
  • 使用站点选择器组件
  • 启动和停止站点选择器
  • 控制站点选择器
  • 使用站点选择器日志
  • 使用 Cisco CSS 控制器组件
  • 启动和停止 Cisco CSS 控制器
  • 控制 Cisco CSS 控制器
  • 使用 Cisco CSS 控制器日志
  • 使用 Nortel Alteon 控制器组件
  • 启动和停止 Nortel Alteon 控制器
  • 控制 Nortel Alteon 控制器
  • 使用 Nortel Alteon 控制器日志
  • 使用度量服务器组件
  • 启动和停止度量服务器
  • 使用度量服务器日志
  • 故障诊断
  • 收集故障诊断信息
  • 一般信息(始终是必需的)
  • 高可用性(HA)问题
  • 顾问程序问题
  • 基于内容路由问题
  • 无法命中群集
  • 其它故障
  • 升级
  • Java
  • 帮助链接
  • 故障诊断表
  • 检查分派器端口号
  • 检查 CBR 端口号
  • 检查站点选择器端口号
  • 检查 Cisco CSS 控制器端口号
  • 检查 Nortel Alteon 控制器端口号
  • 解决常见问题 - 分派器
  • 问题:分派器 不运行
  • 问题:分派器和服务器不响应
  • 问题:未平衡分派器请求
  • 问题:分派器 高可用性功能不工作
  • 问题:无法添加心跳检测信号(Windows 平台)
  • 问题:额外路由(Windows 平台)
  • 问题:顾问程序未正确地工作
  • 问题:分派器、Microsoft IIS 和 SSL 不工作(Windows 平台)
  • 问题:到远程机器的分派器连接
  • 问题:dscontrol 或 lbadmin 命令失败
  • 问题:当尝试查看联机帮助(Windows 平台)时出现“无法找到文件...”错误消息
  • 问题:在 Solaris 2.7 上启动 dsserver 时出现虚假的错误消息
  • 问题:图形用户界面(GUI)未正确地启动
  • 问题:运行安装了高速缓存代理的分派器时出错
  • 问题:图形用户界面(GUI)未正确地显示
  • 问题:在 Windows 平台上,帮助窗口有时会消失在其它打开的窗口后面
  • 问题:Load Balancer 无法处理和转发帧
  • 问题:当您启动 Load Balancer 执行程序时显示蓝屏
  • 问题:到 Discovery 的路径妨碍了 Load Balancer 返回流量
  • 问题:顾问程序显示所有服务器都当机(Windows 平台)
  • 问题:Load Balancer 的广域方式中的高可用性不工作
  • 问题:尝试装入大型配置文件时 GUI 挂起(或意外行为)
  • 问题:在 Windows 平台上,出现蓝屏或顾问程序错误地报告“-1”负载
  • 问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示
  • 问题:lbadmin 在更新配置后从服务器断开连接
  • 问题:在远程连接上未正确解析的 IP 地址
  • 问题:韩国语 Load Balancer 界面在 AIX 和 Linux 上显示重叠或非期望的字体
  • 问题:在 Windows 上,在发出命令(如 hostname)时返回别名地址,而非本地地址
  • 问题:在 Windows 平台上,使用 Matrox AGP 视频卡时发生意外 GUI 行为
  • 问题:在执行“rmmod ibmnd”(Linux)时的意外行为
  • 问题:在分派器机器上运行命令时的慢响应时间
  • 问题:(使用 mac 转发时)SSL 或 HTTPS 顾问程序不注册服务器负载
  • 问题:(使用 lbadmin、Web 管理)装入大配置时的困难
  • 问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接
  • 问题:启用套接字合用,并且 Web 服务器绑定至 0.0.0.0
  • 问题:在 Windows 上,在命令提示符窗口中出现乱码的 Latin-1 本地字符
  • 问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本
  • 问题:在 On HP-UX 上,发生 Java 内存/线程不够错误
  • 问题:在 Windows 上,顾问程序和到达目标将所有服务器标记为当机
  • 问题:在 Windows 上,当配置了多个地址到适配器时将 IP 地址解析为主机名
  • 问题:在 Windows 上,在网络中断后,顾问程序在高可用性设置中不工作
  • 问题:在 Linux 上,当在回送设备上别名判别多个群集时不要使用“IP address add”命令
  • 解决常见问题 - CBR
  • 问题:CBR 不运行
  • 问题:cbrcontrol 或 lbadmin 命令失败
  • 问题:未负载均衡请求
  • 问题:在 Solaris 上,cbrcontrol executor start 命令失败
  • 问题:语法或配置错误
  • 问题:在 Windows 平台上,出现蓝屏或顾问程序错误地报告“-1”负载
  • 问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示
  • 问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为
  • 问题:(使用 lbadmin、Web 管理)装入大配置时的困难
  • 问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接
  • 问题:在 Windows 平台上,在命令提示符窗口中出现乱码的 Latin-1 本地字符
  • 问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本
  • 问题:在 On HP-UX 上,发生 Java 内存/线程不够错误
  • 问题:在 Windows 上,顾问程序和到达目标将所有服务器标记为当机
  • 问题:在 Windows 上,当配置了多个地址到适配器时将 IP 地址解析为主机名
  • 解决常见问题 - 站点选择器
  • 问题:站点选择器不运行
  • 问题:站点选择器不循环来自 Solaris 客户机的流量
  • 问题:sscontrol 或 lbadmin 命令失败
  • 问题:ssserver 在 Windows 平台上启动失败
  • 问题:具有重复路由的站点选择器未正确地进行负载均衡
  • 问题:在 Windows 上,出现蓝屏或顾问程序错误地报告“-1”负载
  • 问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示
  • 问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为
  • 问题:(使用 lbadmin、Web 管理)装入大配置时的困难
  • 问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接
  • 问题:在 Windows 平台上,在命令提示符窗口中出现乱码的 Latin-1 本地字符
  • 问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本
  • 问题:在 On HP-UX 上,发生 Java 内存/线程不够错误
  • 问题:在 Windows 上,顾问程序和到达目标将所有服务器标记为当机
  • 解决常见问题 - Cisco CSS 控制器
  • 问题:ccoserver 将不启动
  • 问题:ccocontrol 或 lbadmin 命令失败
  • 问题:无法在端口 13099 上创建注册表
  • 问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示
  • 问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为
  • 问题:在添加咨询器时接收到一个连接错误
  • 问题:交换机上权值不更新
  • 问题:刷新命令不更新咨询器配置
  • 问题:(使用 lbadmin、Web 管理)装入大配置时的困难
  • 问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接
  • 问题:在 Windows 平台上,在命令提示符窗口中出现乱码的 Latin-1 本地字符
  • 问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本
  • 问题:在 On HP-UX 上,发生 Java 内存/线程不够错误
  • 解决常见问题 - Nortel Alteon 控制器
  • 问题:nalserver 将不启动
  • 问题:nalcontrol 或 lbadmin 命令失败
  • 问题:无法在端口 14099 上创建注册表
  • 问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为
  • 问题:(使用 lbadmin、Web 管理)装入大配置时的困难
  • 问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接
  • 问题:在添加咨询器时接收到一个连接错误
  • 问题:交换机上权值不更新
  • 问题:刷新命令不更新咨询器配置
  • 问题:在 Windows 上,在命令提示符窗口中出现乱码的 Latin-1 本地字符
  • 问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本
  • 问题:在 On HP-UX 上,发生 Java 内存/线程不够错误
  • 解决常见问题 - 度量服务器
  • 问题:在 Windows 平台上运行 .bat 或 .cmd 用户度量文件时发生度量服务器 IOException
  • 问题:度量服务器未向 Load Balancer 机器报告负载
  • 问题:度量服务器日志报告“签名是访问代理程序所必需的”
  • 问题:在 AIX 上,当在重负载情况下运行度量服务器时,ps -vg 命令输出可能会损坏
  • 问题:在使用站点选择器跨高可用性分派器负载均衡的两层配置中配置度量服务器

  • 命令参考

  • 如何阅读语法图
  • 符号和标点符号
  • 参数
  • 语法示例
  • 分派器 和 CBR 的命令参考
  • CBR 和分派器之间的配置差异
  • dscontrol advisor - 控制顾问程序
  • dscontrol binlog - 控制二进制日志文件
  • dscontrol cluster - 配置群集
  • dscontrol executor - 控制执行程序
  • dscontrol file - 管理配置文件
  • dscontrol help - 显示或打印此命令的帮助
  • dscontrol highavailability - 控制高可用性
  • dscontrol host - 配置远程机器
  • dscontrol logstatus - 显示服务器日志设置
  • dscontrol manager - 控制管理器
  • dscontrol metric - 配置系统度量
  • dscontrol port - 配置端口
  • dscontrol rule - 配置规则
  • dscontrol server - 配置服务器
  • dscontrol set - 配置服务器日志
  • dscontrol status - 显示管理器和顾问程序是否在运行
  • dscontrol subagent - 配置 SNMP 子代理程序
  • 站点选择器的命令参考
  • sscontrol advisor - 控制顾问程序
  • sscontrol file - 管理配置文件
  • sscontrol help - 显示或打印此命令的帮助
  • sscontrol logstatus - 显示服务器日志设置
  • sscontrol manager - 控制管理器
  • sscontrol metric - 配置系统度量
  • sscontrol nameserver - 控制名称服务器
  • sscontrol rule - 配置规则
  • sscontrol server - 配置服务器
  • sscontrol set - 配置服务器日志
  • sscontrol sitename - 配置站点名
  • sscontrol status - 显示管理器和顾问程序是否正在运行
  • Cisco CSS 控制器的命令参考
  • ccocontrol consultant - 配置和控制咨询器
  • ccocontrol controller - 管理控制器
  • ccocontrol file - 管理配置文件
  • ccocontrol help - 显示或打印此命令的帮助
  • ccocontrol highavailability - 控制可用性
  • ccocontrol metriccollector - 配置度量收集器
  • ccocontrol ownercontent - 控制所有者名称和内容规则
  • ccocontrol service - 配置服务
  • Nortel Alteon 控制器的命令参考
  • nalcontrol consultant - 配置和控制咨询器
  • nalcontrol controller - 管理控制器
  • nalcontrol file - 管理配置文件
  • nalcontrol help - 显示或打印此命令的帮助
  • nalcontrol highavailability - 控制高可用性
  • nalcontrol metriccollector - 配置度量收集器
  • nalcontrol server - 配置服务器
  • nalcontrol service - 配置服务

  • 附录及附属资料

  • 附录 A. GUI:一般说明

  • 附录 B. 内容规则(模式)语法
  • 内容规则(模式)语法:
  • 保留的关键字
  • 附录 C. 样本配置文件
  • 样本 Load Balancer 配置文件
  • 分派器 配置文件 - AIX、Linux 和 Solaris
  • 分派器 配置文件 - Windows
  • 样本顾问程序
  • 附录 D. 使用分派器、CBR 和高速缓存代理时的 2 层高可用性配置示例
  • 服务器设置
  • 附录 E. 声明
  • 商标
  • 词汇表

  • 索引

    1. AIX installp 映像
    2. AIX 安装命令
    3. Load Balancer 的 HP-UX 软件包安装的详细信息
    4. 支持的 Linux 系统
    5. 分派器 功能的配置任务
    6. 为分派器的回送设备(lo0)建立别名的命令
    7. 为分派器删除任何额外路由的命令
    8. CBR 组件的配置任务
    9. 为 NIC 建立别名的命令
    10. 站点选择器组件的配置任务
    11. Cisco CSS 控制器组件的配置任务
    12. Nortel Alteon 控制器组件的配置任务
    13. Load Balancer 的高级配置任务
    14. Load Balancer 的高级配置任务
    15. 分派器 故障诊断表
    16. CBR 故障诊断表
    17. 站点选择器故障诊断表
    18. Cisco CSS 交换机的控制器故障诊断表
    19. Nortel Alteon 控制器故障诊断表
    20. 度量服务器故障诊断表

    1. 使用分派器管理本地服务器站点的物理表示法示例
    2. 使用分派器和度量服务器管理服务器的站点示例
    3. 使用分派器管理本地和远程服务器的站点示例
    4. 使用 CBR 管理本地服务器站点示例
    5. 使用站点选择器和度量服务器管理本地和远程服务器的站点示例
    6. 使用 Cisco CSS 控制器和度量服务器管理本地服务的站点示例
    7. 使用 Nortel Alteon 控制器管理本地服务器的站点示例
    8. 简单本地分派器配置
    9. 配置有一个群集和两个端口的分派器示例
    10. 配置有两个群集,每个群集有一个端口的分派器示例
    11. 配置有 2 个群集,每个群集有 2 个端口的分派器示例
    12. 使用分派器的 nat 或 cbr 转发方法的示例
    13. 使用简单高可用性的分派器示例
    14. 使用相互高可用性的分派器示例
    15. 分派器 机器需要的 IP 地址示例
    16. 简单本地 CBR 配置
    17. 配置有一个群集和两个端口的 CBR 示例
    18. 配置有两个群集(每个群集有一个端口)的 CBR 示例
    19. 配置有 2 个群集(每个群集有 2 个端口)的 CBR 示例
    20. 分派器、CBR 和 WAS 部署的配置
    21. AIX、Linux 和 Solaris 的 CBR 配置文件
    22. HP-UX 的 CBR 配置文件
    23. Windows 的 CBR 配置文件
    24. 简单站点选择器配置
    25. DNS 环境的示例
    26. 简单 Cisco CSS 控制器配置
    27. 在交换机之后连接的咨询器的示例
    28. 用户界面在交换机之前,在交换机之后配置的咨询器(使用可选高可用性伙伴)的示例
    29. 简单 Nortel Alteon 控制器配置
    30. 在交换机之后连接的咨询器的示例
    31. 在交换机之前通过内部网连接的咨询器示例
    32. 交换机之后的咨询器和交换机之前的用户界面的示例
    33. 使用备份服务器配置的咨询器示例
    34. Nortel Alteon 控制器和 Nortel Alteon Web 交换机高可用性的示例
    35. 使用自顾问程序的 2 层 WAN 配置示例
    36. 由单个 LAN 段组成的配置示例
    37. 使用本地和远程服务器配置的示例
    38. 使用远程 Load Balancer 的广域示例配置
    39. 使用支持 GRE 的服务器平台的广域示例配置
    40. 使用分派器的专用网示例
    41. 适用于基于 UNIX 系统的 SNMP 命令
    42. 显示分派器组件的 GUI 树结构扩展的图形用户界面(GUI)
    43. 显示 CBR 组件的 GUI 树结构扩展的图形用户界面(GUI)
    44. 显示站点选择器组件的 GUI 树结构扩展的图形用户界面(GUI)
    45. 显示 Cisco CSS 控制器组件的 GUI 树结构扩展的图形用户界面(GUI)
    46. 显示 Nortel Alteon 控制器组件的 GUI 树结构扩展的图形用户界面(GUI)
    47. 使用分派器、CBR 和高速缓存代理时的 2 层高可用性配置示例

    关于本书

    本书解释了如何规划、安装、配置、使用和故障诊断 IBM(R)(R) WebSphere(R)(R) Application Server Load Balancer for AIX(R)、HP-UX、Linux、Solaris 和 Windows(R) 操作系统。本产品以前称为 Edge Server Network Dispatcher、SecureWay(R) Network Dispatcher、eNetwork Dispatcher 和 Interactive Network Dispatcher。


    本书的阅读对象

    《Load Balancer 管理指南》是为熟悉操作系统和提供因特网服务的有经验的网络和系统管理员所编写的。用户不需要事先了解 Load Balancer。

    本书并不支持 Load Balancer 的前发行版。


    参考信息

    请访问 Edge Components 信息中心(ecinfocenter)Web 站点,以获取有关如何使用 Edge Components 的 Load Balancer 来最大化您服务器性能的最新详细信息。其中包括配置示例和方案。

    Edge Components 信息中心 Web 站点将链接到本书的当前版本(HTML 和 PDF 格式)。

    要获取有关 Load Balancer 的最新更新和用法提示,访问 Web 站点支持页面并单击 Search for Load Balancer hints and tips。您可从 Edge Components 信息中心链接到此 Web 站点。

    要访问这些及其相关的 Web 页面,请转至 相关文档和 Web 站点 中列出的各个 URL。


    辅助选项

    辅助选项功能部件帮助有生理缺陷的用户(如行动不便或有视力障碍的用户)顺利地使用软件产品。以下这些是 Load Balancer 的主要辅助选项功能部件:


    如何发送您的意见

    您的反馈十分重要,它有助于我们提供最准确而高质量的信息。如果您对本书或其它任何 Edge components 文档有任何意见:


    相关文档和 Web 站点


    介绍 Load Balancer

    此部分提供 Load Balancer 及其组件的概述,可用配置功能部件的高级描述,硬件和软件要求的列表,以及安装说明。它包含以下几章:


    Load Balancer 概述

    本章提供 Load Balancer 的概述,包含以下各节:

    要获取有关每个 Load Balancer 组件提供的配置功能的高级列表,以辅助您计划哪些功能用于管理您的网络,请参阅管理您的网络:确定要使用哪些 Load Balancer 功能


    Load Balancer 是什么?

    Load Balancer 是分发跨服务器的进入客户机请求的软件解决方案。它将 TCP/IP 会话请求引导到一组服务器内的不同服务器上,从而显著提高了服务器的性能;通过这种方法平衡了所有服务器的请求。这种负载均衡对用户与其它应用程序都是透明的。Load Balancer 对于诸如电子邮件服务器、万维网服务器、分布式并行数据库查询及其它 TCP/IP 应用程序都很有用。

    与 Web 服务器一起使用时,Load Balancer 通过提供一个解决请求高峰问题的强大、灵活且可伸缩的解决方案,从而帮助站点发挥最大潜力。如果您站点的访问者在请求高峰时刻不能畅通运行,使用 Load Balancer 自动查找最理想的服务器以处理到达请求,因而能使您的客户更为满意也提高了您的效益。


    可使用 Load Balancer 的哪些组件?

    Load Balancer 包含以下五个组件,其可以单独使用也可以联合工作,都能提供很好的负载均衡效果:

    要获取分派器、CBR、站点选择器、Cisco CSS 控制器和 Nortel Alteon 控制器组件的更多信息,请参阅Load Balancer 的组件是什么?


    使用 Load Balancer 的优点是什么?

    连接至全球因特网的用户与网络数正在呈指数型增长。这种增长正在引起规模上的问题,限制用户访问受欢迎站点。

    当前,网络管理员使用多种方法试图扩大访问能力。其中的某些方法允许 用户在以前选择的服务器较慢或无响应时随机选择不同的服务器。这种方法比较麻烦、枯燥乏味且效率不高。另一种方法是标准的循环方法,在这种方法中,域名服务器依次选择服务器来处理请求。此方法较好些,但由于它只是盲目地转发流量而不考虑服务器的工作负载,因此效率也不高。另外,即使服务器出现故障,仍继续有请求发送给它。

    对更有效的解决方案的需求导致了 Load Balancer 的产生。它与早期具有同样用途的解决方案相比存在许多优点:

    可伸缩性

    随着客户机请求次数的增加,可动态添加服务器,提供在几十台甚至几百台服务器上响应每天数千万次请求的支持。

    设备的有效使用

    负载均衡通过尽量减少标准循环方法经常发生的热点,确保每组服务器的硬件得到最佳的利用。

    容易集成

    Load Balancer 使用标准 TCP/IP 协议。可将其添加至现有的网络中而无需作任何物理更改。安装与配置都很简单。

    低开销

    使用简单 mac 级别转发方法,分派器组件仅查看入站的客户机到服务器的消息流。它无需查看出站的服务器到客户机的信息流。这一特点相对于其它方法而言大大降低了应用程序的影响,从而提高了网络的性能。

    高可用性

    分派器、Cisco CSS 控制器和 Nortel Alteon 控制器组件提供内置高可用性,它利用一台始终保持就绪状态的备份机器,在主服务器发生故障时接管负载均衡。当其中一台服务器失败时,请求将继续由其它服务器服务。这将作为单点故障消去任何服务器,并使站点高度可用。

    要获取更多的信息,请参阅高可用性如何实现?

    基于内容路由(使用 CBR 组件或分派器组件)

    通过与高速缓存代理配合运行,CBR 组件具有有根据请求的内容将 HTTP 和 HTTPS(SSL)请求发送到特定服务器的能力。例如,如果请求的 URL 目录部分包含字符串“/cgi-bin/”,并且服务器名称是本地服务器,CBR 可以直接将请求发送到一组特别分配以处理 cgi 请求的服务器中的最佳服务器中。

    分派器组件也提供基于内容路由,但它不需要安装高速缓存代理。因为当接收信息包时,分派器组件的基于内容路由在内核中执行,它可以提供比 CBR 组件更快的基于内容路由。分派器组件为 HTTP(使用“内容”类型规则),以及为 HTTPS(使用 SSL 会话标识亲缘性)执行基于内容路由。

    注意:
    仅 CBR 组件可以使用 HTTPS(SSL)的内容规则,当基于 HTTP 请求的内容进行负载均衡流量时,其需要解密和重新加密消息。

    高可用性如何实现?

    分派器

    分派器 组件提供内置高可用性功能,把分派器作为单点故障从网络消去。 该功能与第二台监视主要的或主分派器机器的使用有关,并作为备用机器在任何主机器出现故障的时候接管负载均衡的任务。分派器组件还提供相互高可用性,其允许两台机器互为主和次(备份)机器。请参阅配置高可用性

    CBR 或站点选择器

    当 2 层配置和分派器机器负载均衡流量一起用于多台具有 CBR 或站点选择器的服务器时,您可以达到 Load Balancer 的这些组件的高可用性级别。

    注意:
    对于跨越包含站点选择器的多个服务器进行负载均衡的配置,仅使用在 AIX、HP-UX、Solaris 或 Windows 系统上运行的分派器机器。站点选择器的高可用性解决方案在 Linux 上无法工作,这是因为分派器顾问程序的目标是服务器 IP 地址。站点选择器使用其主 IP 地址(不是群集地址)响应,导致来自请求程序的 DNS 请求失败。

    Cisco CSS 控制器或 Nortel Alteon 控制器

    这些控制器具有作为单点故障消去控制器的高可用性功能。在某台机器上的控制器可配置为主控制器,而在另一台机器上的控制器可配置为备份控制器。备份控制器监视主控制器,并在主控制器失败时,支持接管为控制器提供服务器权值的任务。请参阅高可用性,以获取更多信息。


    5.1 有什么新功能?

    IBM WebSphere Application Server 版本 5.1 的 Load Balancer 包含许多新功能。它还包括 V5.0.1 和 V5.0.2 的所有新功能和纠正的更新。此处列出了最重要的新功能。


    5.0 有什么新功能?

    IBM WebSphere Application Server V5.0 的 Load Balancer 包含许多新功能。最重要的列在此处。


    Load Balancer 组件的概述

    本章提供 Load Balancer 组件的概述,包含以下各节:

    要获取有关每个 Load Balancer 组件提供的配置功能的高级列表,以辅助您计划哪些功能用于管理您的网络,请参阅管理您的网络:确定要使用哪些 Load Balancer 功能


    Load Balancer 的组件是什么?

    Load Balancer 的五个组件是:分派器、基于内容路由(CBR)、站点选择器、Cisco CSS 控制器和 Nortel Alteon 控制器。Load Balancer 让您根据站点的配置灵活地单独使用或一起使用这些组件。 本节提供了这些组件的概述。


    分派器 组件的概述

    分派器 组件通过负载均衡的独特组合和管理软件平衡您的服务器之间的流量。分派器 也可以检测故障的服务器并转发流量绕过它。分派器支持 HTTP、FTP、SSL、SMTP、NNTP、IMAP、POP3、Telnet 及任何其它基于 TCP 或无状态 UDP 的应用程序。

    发送到分派器机器的所有客户机请求按照某些动态设置的权值直接被引导到“最佳”服务器上。可使用这些权值的缺省值或在配置过程中更改它们。

    分派器提供三种转发方法(在端口上指定):

    分派器 组件是对大型可伸缩服务器网络进行稳定、有效管理的关键。使用分派器,可将很多单独服务器链接为如同单一的虚拟服务器。这样,站点对外可作为一个 IP 地址。分派器 不依赖域名服务器运行;所有请求都被发送至分派器机器的 IP 地址。

    分派器 通过平衡流量负载到群集的服务器而带来显著的效益,从而稳定、有效管理您的站点。

    使用分派器管理本地服务器

    图 1. 使用分派器管理本地服务器站点的物理表示法示例

    使用分派器管理本地服务器的站点的物理表示法

    图 1 展示了使用以太网配置的站点的物理表示法。安装分派器机器时无需对网络进行任何物理更改。使用 MAC 转发方法时,分派器 将客户机请求引导到最佳服务器后,响应将直接从服务器发送到客户机,而无需 分派器 的任何干涉。

    使用度量服务器管理服务器

    图 2. 使用分派器和度量服务器管理服务器的站点示例

    用分派器和度量服务器管理服务器的站点

    图 2 描述其所有服务器都在本地网络上的站点。分派器 组件用于转发请求,而度量服务器用于为分派器机器提供系统负载信息。

    在此示例中,每台后端服务器上都安装度量服务器守护程序。您可以将度量服务器与分派器组件或任何其它 Load Balancer 组件一起使用。

    使用分派器管理本地和远程服务器

    图 3. 使用分派器管理本地和远程服务器的站点示例

    用分派器管理本地和远程服务器的站点

    分派器 中的广域支持允许使用本地和远程服务器(不同子网上的服务器)。图 3 显示了用一个本地分派器(分派器 1)作为所有请求入口点处的配置。它将这些请求分配到自已的本地服务器(服务器 A、服务器 B、服务器 C)和远程 分派器(分派器 2),其将负载均衡到它的本地服务器(服务器 G、服务器 H、服务器 I)。

    当使用分派器的 NAT 转发方法或 GRE 支持时,分派器的广域支持也可以完成而无需使用远程站点(服务器 D、服务器 E 和 服务器 F 所在的地方)上的分派器。请参阅分派器的 NAT/NAPT(nat 转发方法)GRE(一般路由封装)支持,以获取更多信息。


    基于内容路由(CBR)组件的概述

    CBR 与高速缓存代理一起使用,以代理客户机请求到指定的 HTTP 或 HTTPS(SSL)服务器。为了在低网络带宽要求的情况下快速检索 Web 文档,它允许您处理高速缓存详细信息。 CBR 与高速缓存代理一起测试使用指定规则类型的 HTTP 请求。

    CBR 使您可以指定一组能根据请求内容的正则表达式匹配法来处理请求的服务器。因为 CBR 允许您为每种请求指定多台服务器,所以可为最佳客户机响应对请求进行负载均衡。CBR 还检测服务器组中的某台服务器何时发生了故障,并停止将请求路由到该服务器。 CBR 组件使用的负载均衡算法与分派器组件使用的已验证的算法相同。

    当高速缓存代理接收请求时,将基于已在 CBR 组件中定义的规则来检查它。如果找到了匹配,则选择一个与此规则相关的服务器来处理此请求。然后高速缓存代理执行它的常规处理,将请求代理到所选服务器。

    CBR 与分派器功能相同(除了高可用性、SNMP 子代理程序、广域和几个其它配置命令之外)。

    高速缓存代理必须正在运行,CBR 才可以开始对客户机请求进行负载均衡。

    使用 CBR 管理本地服务器

    图 4. 使用 CBR 管理本地服务器站点示例

    用 CBR 管理本地服务器的站点

    图 4 展示了一个站点的逻辑表示法,其中 CBR 用于代理本地服务器的一些内容。CBR 组件使用高速缓存代理基于 URL 的内容,转发客户机请求(HTTP 或 HTTPS)到服务器。


    站点选择器组件的概述

    站点选择器作为与域名系统中其它名称服务器一起工作的名称服务器,以使用集中的测量和权值对一组服务器进行负载均衡。您可创建站点配置,以使您能根据用于客户机请求的域名对服务器组中的流量进行负载均衡。

    客户机将解析域名的请求提交到网络内的名称服务器。名称服务器将请求转发到站点选择器机器。然后站点选择器将域名解析为已在此站点名下配置的服务器中的其中一台服务器的 IP 地址。站点选择器将所选服务器的 IP 地址返回给名称服务器。名称服务器将 IP 地址返回给客户机。

    度量服务器是 Load Balancer 的系统监视组件,其必须安装在您配置内的每台负载均衡的服务器中。使用度量服务器,站点选择器可以监视服务器上的活动级别,检测何时服务器的负载最轻,以及检测发生故障的服务器。负载是服务器工作强度的度量标准。通过定制系统度量脚本文件,您可以控制用于测量负载的测量法类型。可配置站点选择器以适应您的环境,配置时应考虑诸如访问频率、用户总数及访问类型(例如,短时间查询、长时间运行的查询或大量使用 CPU 的负载)等因素。

    使用站点选择器和度量服务器管理本地和远程服务器

    图 5. 使用站点选择器和度量服务器管理本地和远程服务器的站点示例

    用站点选择器和度量服务器管理服务器的站点

    图 5 描述站点选择器组件用于回答请求中的站点。服务器 1、服务器 2 和服务器 3 是本地的。服务器 4、服务器 5 和服务器 6 是远程的。

    客户机将解析域名的请求提交到客户机名称服务器。客户机名称服务器通过 DNS 将请求转发到站点选择器机器(路径 1)。然后,站点选择器解析域名为若干服务器中的一个的 IP 地址。站点选择器返回所选服务器的 IP 地址到客户机名称服务器。名称服务器返回 IP 地址到客户机。

    客户机接收到服务器的 IP 地址后,它将应用程序请求直接路由到所选的服务器(路径 2)。

    注意:
    在此示例中,度量服务器提供系统负载信息给站点选择器机器。度量服务器代理程序安装在每台后端服务器上。将度量服务器与站点选择器一起使用;否则站点选择器仅可以使用循环选择方法进行负载均衡。

    Cisco CSS 控制器组件的概述

    Cisco CSS 控制器连同 Cisco 的 CSS 11000 系列交换机构成了补充的解决方案。组合的解决方案将 CSS 11000 系列的健全信息包转发和内容路由能力与 Load Balancer 完善的认识算法混合起来,以确定负载信息和服务(后端服务器应用程序或数据库)的可用性。Cisco CSS 控制器 功能利用 Load Balancer 的权值算法、标准和定制顾问程序以及度量服务器来确定度量、健全状态和服务的负载。用此信息,Cisco CSS 控制器生成发送到 Cisco CSS 交换机的服务权值,以进行最佳服务选择、负载优化和缺省容错。

    Cisco CSS 控制器跟踪许多标准,包含:

    当 Cisco CSS 交换机(而没有 Cisco CSS 控制器)确定提供内容提供服务的健全状态时,它将响应时间用于内容请求或其它网络措施上。当 Cisco CSS 控制器就位时,这些活动从 Cisco CSS 交换机卸到 Cisco CSS 控制器。Cisco CSS 控制器影响服务的权值或服务内容的能力,并在服务恢复或失去可用性的适当时候激活或暂挂服务。

    Cisco CSS 控制器:

    权值适用于一个端口上的所有服务。对于任何特定端口,根据两项服务间的相对权值在它们之间分配请求。例如,如果一项服务的权值设置为 10,而另一项设置为 5,则权值设置为 10 的服务获得的请求数是权值设置为 5 的服务的两倍。使用 SNMP 将这些权值提供给 Cisco CSS 交换机。 当任何服务的权值设置为更高时,Cisco CSS 交换机将更多请求引导到该服务。

    图 6. 使用 Cisco CSS 控制器和度量服务器管理本地服务的站点示例

    用 Cisco CSS 控制器和度量服务器管理服务的站点

    Cisco CSS 控制器连同 Cisco CSS 交换机发送“两个领域中的最佳”解决方案,其将电报速度内容转换与完善的应用程序认识、缺省容错和服务负载优化组合起来。Cisco CSS 控制器是 Cisco CSS 交换机和 IBM WebSphere Application Server 之间的全面补充解决方案的一部分。


    Nortel Alteon 控制器组件的概述

    Nortel Alteon 控制器连同 Web 交换机的 Nortel Alteon 系列提供补充解决方案,它将交换机的信息包转发和 Load Balancer 的完善认识算法能力组合起来,以确定服务器权值。

    Nortel Alteon 控制器允许您开发能执行更多应用程序认识的可用性智能评估以及用于部署服务的应用程序负载的定制顾问程序。

    度量服务器提供系统负载信息(如,CPU 和内存使用率信息),以及您用于开发定制系统负载测量的框架。

    Nortel Alteon 控制器收集多种度量数据,以确定正在由多个 Nortel Alteon Web 交换机负载均衡的服务器权值,包含:

    Nortel Alteon 控制器使用 SNMP 与交换机通信。配置,从交换机检索状态和连接信息。一旦控制器计算服务器权值,这些权值将设置在交换机上。交换机使用控制器设置的权值来选择最佳的服务器,以处理服务的客户机请求。

    图 7. 使用 Nortel Alteon 控制器管理本地服务器的站点示例

    使用 Nortel Alteon 控制器管理服务器的站点

    您可以使用浏览器、远程 GUI 或远程命令行界面来管理控制器。

    与 Web 交换机的 Nortel Alteon 系列组合的 Nortel Alteon 控制器发送“两个领域中的最佳”解决方案,其将电报速度信息包转换与完善的应用程序认识、缺省容错和服务器负载优化组合起来。Nortel Alteon 控制器是 Web 交换机的 Nortel Alteon 系列与 IBM 的 WebSphere 之间的补充解决方案的一部分。


    管理您的网络:确定要使用哪些 Load Balancer 功能

    本章列出 Load Balancer 组件的配置功能,因此您可以确定哪些功能用于管理您的网络:

    要获取有关每个 Load Balancer 组件提供的配置功能的高级列表,以辅助您计划哪些功能用于管理您的网络,请参阅管理您的网络:确定要使用哪些 Load Balancer 功能


    管理器、顾问程序和度量服务器功能(用于分派器、CBR 和站点选择器组件)

    要优化跨服务器的负载均衡并确保选择“正确的”服务器,请参阅:

    _ 优化 Load Balancer 提供的负载均衡

    _ 顾问程序

    _ 度量服务器


    分派器组件功能

    分派器支持跨服务器对 HTTP、FTP、SSL、SMTP、NNTP、IMAP、POP3、Telnet 和任何其它基于 TCP 或无状态 UDP 的应用程序进行负载均衡。

    远程管理

    _ 要从 Load Balancer 所在的单独机器运行 Load Balancer 配置,请参阅Load Balancer 的远程管理

    并列配置

    _ 要在与您进行负载均衡的 Web 服务器的同一台机器上运行分派器,请参阅使用并列配置的服务器

    高可用性

    _ 要使用分派器除去网络中的单点故障限制,请参阅简单高可用性相互高可用性

    客户机到服务器的亲缘性

    当负载均衡 SSL(HTTPS)流量时:

    _ 要确保客户机将同一台 SSL 服务器用于多个连接,请参阅Load Balancer 的亲缘性功能如何工作

    _ 要确保客户机将同一台服务器用于 HTTP 和 SSL 流量,请参阅交叉端口亲缘性

    _ 要确保客户机将同一台服务器用于多个连接,请参阅Load Balancer 的亲缘性功能如何工作

    _ 要确保一组客户机将同一台服务器用于多个连接,请参阅亲缘性地址掩码(stickymask)

    _ 要从您的配置中除去服务器(例如,为了维护的目的),而不毁坏客户机流量,请参阅停顿服务器连接句柄

    基于规则的负载均衡

    为了将客户机导向同一 Web 地址的不同服务器组,您可以将“规则”添加到分派器配置。要获取更多的信息,请参阅配置基于规则的负载均衡

    _ 要基于客户机源 IP 地址,将客户机导向不同服务器组,请参阅使用基于客户机 IP 地址的规则

    _ 要基于客户机端口,将客户机导向不同服务器组,请参阅使用基于客户机端口的规则

    _ 要基于时间,将客户机导向不同服务器组,请参阅使用基于时间的规则

    _ 要基于网络信息包中的服务类型(TOS)位,将客户机导向服务器,请参阅使用基于服务类型(TOS)的规则

    _ 要基于站点流量,将客户机导向不同服务器组:

    _ 使用每秒连接数,请参阅使用基于每秒连接数的规则

    _ 使用总计活动连接数,请参阅使用基于总活动连接数的规则

    _ 保存和共享不同 Web 地址的带宽,请参阅使用基于保留带宽和共享带宽的规则

    _ 确保为您的每个服务器组正确地测量流量,请参阅服务器评估规则选项

    _ 要将溢出流量导向一组缺省服务器(例如,将响应“站点忙”的服务器),请参阅使用总是为真规则

    _ 要覆盖客户机亲缘性,以确保客户机不“粘”住溢出服务器,请参阅端口亲缘性覆盖

    使用分派器的 cbr 转发方法的基于内容路由

    要确保 SSL 返回到相同的 SSL 服务器,基于客户机请求中的 SSL 标识

    _ 请参阅第 *** 页。

    要基于匹配客户机请求的 URL 内容使用规则,以将 HTTP 客户机导向不同服务器组,请参阅分派器的基于内容路由(cbr 转发方法)使用基于请求内容的规则获取更多信息。

    _ 要区别特殊 URL 与其服务应用程序,请参阅服务器分区:配置到一个物理服务器(IP 地址)的逻辑服务器

    _ 要确保客户机在使用 Web 服务器创建的 cookie 请求多个连接中类似的内容时,返回到同一台服务器,请参阅被动 cookie 亲缘性

    _ 要将 Web 流量负载均衡到允许在每台服务器上高速缓存唯一内容的高速缓存代理服务器(从而通过消去多台机器上内容的冗余高速缓存,增加了站点高速缓存大小),请参阅URI 亲缘性

    分派器组件的 cbr 转发方法与 CBR 组件之间的比较

    使用分派器的 cbr 转发方法的优点是它对客户机请求提供响应的速度比 CBR 组件更快。另外,分派器的 cbr 转发要求安装和使用高速缓存代理。

    如果您的网络包含完全安全的 SSL(客户机到服务器)流量,则使用 CBR 组件(连同高速缓存代理)的优点是它可以处理必需的加密/解密,以便执行基于内容路由。对于完全安全的连接,分派器的 cbr 转发只能使用 SSL 标识亲缘性进行配置,因为它无法处理加密/解密以在客户机请求的 URL 上执行实际的基于内容路由。

    广域负载均衡

    _ 要使用分派器的广域功能负载均衡到远程服务器,请参阅:配置广域分派器支持GRE(一般路由封装)支持

    注意:
    如果远程站点上不支持 GRE,则远程站点上需要一个附加的分派器。

    _ 要使用分派器的 nat 转发方法负载均衡到远程服务器,请参阅分派器的 NAT/NAPT(nat 转发方法)

    注意:
    如果使用 nat 转发方法,则在远程站点上需要附加的分派器。

    端口映射

    _ 要将某个 Web 地址负载均衡到同一台机器上的多个服务器守护程序,其中每个守护程序在唯一的端口上侦听,请参阅分派器的 NAT/NAPT(nat 转发方法)

    在专用网上设置分派器

    _ 要将分派器流量放置在不同于客户机流量的网络上(以通过减少外部网络的争用来改进性能),请参阅使用专用网配置

    通配符群集和通配符端口

    _ 要将多个 Web 地址组合到单个配置中,请参阅使用通配符群集来组合服务器配置

    _ 要负载均衡防火墙,请参阅使用通配符群集为防火墙负载均衡

    _ 要将流量导向所有目的地端口,请参阅使用通配符端口定向到未配置的端口流量

    “拒绝服务”攻击检测

    _ 要检测可能的“拒绝服务”攻击,请参阅拒绝服务攻击检测

    二进制日志记录

    _ 要分析服务器流量,请参阅使用二进制日志记录分析服务器统计信息

    警告

    _ 要在服务器标记为运行或当机时生成警告,请参阅使用脚本以生成警告或记录服务器故障


    基于内容路由(CBR)组件功能

    CBR 将负载均衡与 WebSphere Application Server 的高速缓存代理集成在一起,以代理客户机请求到指定的 HTTP 或 HTTPS(SSL)服务器。要使用 CBR,必须在同一台机器上安装和配置高速缓存代理。 要获取有关如何配置高速缓存代理以便使用 CBR 的信息,请参阅步骤 1. 配置高速缓存代理以使用 CBR

    使用 CBR 组件(或分派器组件的 cbr 转发方法),您可以向您的客户机提供以下优点:

    _ 将不同内容类型的客户机请求负载均衡到服务器集。(请参阅不同种内容的负载均衡请求)。

    _ 通过在 Web 服务器间最佳地划分您的站点,以改进响应时间。(请参阅为更好的响应时间划分您的站点内容)。

    _ 通过允许为每种类型的内容指定多台服务器,以确保在服务器发生故障时客户机流量不中断。(请参阅提供 Web 服务器内容的备份)。

    CBR 组件和分派器组件的 cbr 转发方法之间的比较

    如果您的网络需要完全安全的 SSL(客户机到服务器)流量,则使用 CBR 组件(连同高速缓存代理)的优点是它可以处理 SSL 加密/解密,以便执行基于内容路由。

    对于完全安全的 SSL 连接,分派器的 cbr 转发只能使用 SSL 标识亲缘性进行配置,因为它无法处理加密/解密以在客户机请求的 URL 上执行实际的基于内容路由。

    对于 HTTP 流量,使用分派器的 cbr 转发方法的优点是它对客户机请求提供响应的速度比 CBR 组件更快。另外,分派器的 cbr 转发要求安装和使用高速缓存代理。

    远程管理

    _ 要从 Load Balancer 所在的单独机器运行 Load Balancer 配置,请参阅Load Balancer 的远程管理

    并列配置

    _ CBR 可以在与您进行负载均衡的服务器的同一台机器上运行。 请参阅使用并列配置的服务器,以获取更多信息。

    具有多个高速缓存实例的 CBR

    _ 要通过使用多个高速缓存代理进程来改进 CPU 使用率,请参阅使用多个高速缓存代理进程来改进 CPU 使用率

    为 SSL 连接提供基于内容路由

    要允许 SSL 流量的基于内容路由:

    _ 在两端(客户机到代理和代理到服务器)都使用安全连接,请参阅跨完全安全的(SSL)连接的负载均衡

    _ 仅在客户机到代理端使用安全连接,请参阅负载均衡 SSL 中的客户机到代理和 HTTP 中的代理到服务器

    服务器分区

    _ 要区别特殊 URL 与其服务应用程序,请参阅服务器分区:配置到一个物理服务器(IP 地址)的逻辑服务器

    基于规则的负载均衡

    为了将客户机导向同一 Web 地址的不同服务器组,您可以将“规则”添加到 CBR 配置。要获取更多的信息,请参阅配置基于规则的负载均衡

    _ 要基于请求的 URL 内容,将客户机导向不同服务器组,请参阅使用基于请求内容的规则

    _ 要基于客户机源 IP 地址,将客户机导向不同服务器组,请参阅使用基于客户机 IP 地址的规则

    _ 要基于时间,将客户机导向不同服务器组,请参阅使用基于时间的规则

    _ 要基于站点流量,将客户机导向不同服务器组:

    使用每秒连接数,请参阅使用基于每秒连接数的规则

    使用总计活动连接数,请参阅使用基于总活动连接数的规则

    _ 要将溢出流量导向一组缺省服务器(例如,将响应“站点忙”的一台或多台服务器),请参阅使用总是为真规则

    _ 要覆盖客户机亲缘性,以确保客户机不“粘”住溢出服务器,请参阅端口亲缘性覆盖

    客户机到服务器的亲缘性

    _ 要确保客户机返回到用于多个连接的同一台服务器,请参阅Load Balancer 的亲缘性功能如何工作

    _ 要从您的配置中除去服务器(例如,为了维护的目的),而不毁坏客户机流量,请参阅停顿服务器连接句柄

    _ 要确保客户机在不依赖 Web 服务器创建的 cookie 请求多个连接中类似的内容时,返回到同一台服务器,请参阅活动 cookie 亲缘性

    _ 要确保客户机在使用 Web 服务器创建的 cookie 请求多个连接中类似的内容时,返回到同一台服务器,请参阅被动 cookie 亲缘性

    _ 要将 Web 流量负载均衡到允许在每台服务器上高速缓存唯一内容的高速缓存代理服务器(从而通过消去多台机器上内容的冗余高速缓存,增加了站点高速缓存大小),请参阅URI 亲缘性

    使用分派器和 CBR 的高可用性

    _ 要使用带有 DBR 的 2 层配置中的分派器除去您网络中的单点故障限制,请参阅高可用性如何实现?

    二进制日志记录

    _ 要分析服务器流量,请参阅使用二进制日志记录分析服务器统计信息

    警告

    _ 要在服务器标记为运行或当机时生成警告,请参阅使用脚本以生成警告或记录服务器故障


    站点选择器组件功能

    站点选择器跨越一组服务器对名称服务请求进行负载均衡。

    远程管理

    _ 要从 Load Balancer 所在的单独机器运行 Load Balancer 配置,请参阅Load Balancer 的远程管理

    并列配置

    _ 站点选择器可以在与您进行负载均衡(无需其它配置步骤)的服务器的同一台机器上运行。

    高可用性

    _ 通过使用多个冗余站点选择器,并假设正确的父名服务器配置和正常的 DNS 恢复方法在适当的位置,本质上可以从域名系统(DNS)方法获取高可用性。正常 DNS 恢复方法的示例是:重新传输查询和重试区转移。

    _ 要使用带有站点选择器的 2 层配置中的分派器除去您网络中的单点故障限制,请参阅高可用性如何实现?

    客户机到服务器的亲缘性

    _ 要确保客户机将同一台服务器用于多个名称服务器请求,请参阅Load Balancer 的亲缘性功能如何工作

    _ 要确保使用设置使用期限(TTL)的标准 DNS 方法的客户机到服务器的亲缘性,请参阅TTL 注意事项

    基于规则的负载均衡

    为了将客户机请求导向域名称解析的不同服务器组,您可以将“规则”添加到您的站点选择器配置中。 要获取更多的信息,请参阅配置基于规则的负载均衡

    _ 要基于客户机源 IP 地址,将客户机导向不同服务器组,请参阅使用基于客户机 IP 地址的规则

    _ 要基于时间,将客户机导向不同服务器组,请参阅使用基于时间的规则

    _ 要基于服务器集的度量负载值,将客户机导向不同服务器组,请参阅:

    度量所有规则

    度量平均规则

    _ 要将溢出流量导向一组缺省服务器(例如,将响应“站点忙”的一台或多台服务器),请参阅使用总是为真规则

    广域负载均衡

    站点选择器可以在局域网(LAN)或广域网(WAN)中运行。

    在 WAN 环境中:

    _ 要使用权值循环选择方法对客户机名称服务器请求进行负载均衡,不需要其它配置步骤。

    _ 要考虑客户机名称服务器到提供所请求应用程序的服务器(目的地服务器)的网络接近,请参阅使用网络接近功能

    警告

    _ 要在服务器标记为运行或当机时生成警告,请参阅使用脚本以生成警告或记录服务器故障


    Cisco CSS 控制器组件功能

    Cisco CSS 控制器增强 Cisco 交换机的服务器负载均衡能力,使其具有更大的应用程序和系统认识。控制器使用更多敏感应用程序和系统敏感度量来自动计算服务器权值。使用 SNMP,将权值提供给交换机。此交换机在处理客户机请求时使用权值,这导致服务器负载优化和改进故障容错。

    要优化跨服务器的负载均衡并确保选择“正确的”服务器,请参阅:

    _ 优化 Load Balancer 提供的负载均衡

    _ 顾问程序创建定制(可定制的)顾问程序

    _ 度量服务器

    远程管理

    _ 要从 Load Balancer 所在的单独机器运行 Load Balancer 配置,请参阅Load Balancer 的远程管理

    并列配置

    _ Cisco CSS 控制器可以在与您进行负载均衡(无需其它配置步骤)的服务器的同一台机器上运行。

    高可用性

    _ 要除去您网络中的单点故障限制,Cisco CSS 交换机和 Cisco CSS 控制器都具有高可用性能力。对于此交换机,高可用性能力可能使用 CSS 冗余协议。对于 Cisco CSS 控制器,使用专用协议,其允许两个控制器的热备用配置。

    要获取有关配置高可用性的更多信息,请参阅高可用性

    二进制日志记录

    _ 要分析服务器流量,请参阅使用二进制日志记录分析服务器统计信息

    警告

    _ 要在服务器标记为运行或当机时生成警告,请参阅使用脚本以生成警告或记录服务器故障


    Nortel Alteon 控制器组件功能

    Nortel Alteon 控制器增强 Nortel Alteon 交换机的服务器负载均衡能力,使其具有更大的应用程序和系统认识。控制器使用更多敏感应用程序和系统敏感度量来自动计算服务器权值。使用 SNMP,将权值提供给交换机。此交换机在处理客户机请求时使用权值,这导致服务器负载优化和改进故障容错。

    要优化跨服务器的负载均衡并确保选择“正确的”服务器,请参阅:

    _ 优化 Load Balancer 提供的负载均衡

    _ 顾问程序创建定制(可定制的)顾问程序

    _ 度量服务器

    远程管理

    _ 要从 Load Balancer 所在的单独机器运行 Load Balancer 配置,请参阅Load Balancer 的远程管理

    并列配置

    _ Nortel Alteon 控制器可以在与您进行负载均衡(无需其它配置步骤)的服务器的同一台机器上运行。

    高可用性

    _ 要除去您网络中的单点故障限制,Nortel Alteon Web 交换机和 Nortel Alteon 控制器具有高可用性能力。对于此交换机,高可用性可能使用冗余协议,以用于服务器的连接和服务。Nortel Alteon 控制器使用专用协议(其允许两个控制器的热备用配置)提供高可用性。

    要获取有关配置高可用性的更多信息,请参阅高可用性

    二进制日志记录

    _ 要分析服务器流量,请参阅使用二进制日志记录分析服务器统计信息

    警告

    _ 要在服务器标记为运行或当机时生成警告,请参阅使用脚本以生成警告或记录服务器故障


    安装 Load Balancer

    本章向您说明在 AIX、HP-UX、Linux、Solaris 和 Windows 2000 上 Load Balancer 硬件和软件的需求和安装(使用系统软件包工具)。

    重要信息:要获取有关硬件和软件需求的最新信息,请链接到以下 Web 页面:http://www.ibm.com/software/webservers/appserv/doc/latest/prereq.html

    有关使用产品安装程序的安装说明,请参阅《Edge Components 的概念、规划和安装》文档。

    记录:

    1. 如果您要从前一个版本迁移,请注意,Load Balancer 安装目录结构可能不同。您需确保您自己的任何配置文件位于 ...ibm/edge/lb/servers/configurations/component 目录中(其中 component 是分派器、cbr、ss、cco 或 nal)。

    2. 另外,您需确保您自己的任何脚本(如 goIdle 和 goStandby)位于 .../ibm/edge/lb/servers/bin 目录,以便运行它们。

    3. Load Balancer 必需的 Java(TM) 级别是 1.4.1.x 的任何版本。

      因为某些位于 Load Balancer 机器上的应用程序可能需要 Java 的其它版本,所以当您升级时必需在服务器上安装正确的 Java 版本。安装多个 Java 版本时,要确保 Load Balancer 组件使用正确的版本,执行以下操作:

      1. 为操作系统安装 Java 1.4 的正确版本。
      2. 编辑 Load Balancer 脚本文件以使用 Java 1.4。缺省情况下,脚本文件位于下列目录:

        基于 UNIX 的操作系统
        /usr/bin/<scriptfile>

        Windows 操作系统
        C:\WINNT\System32\<scriptfile.cmd>

        为您正在升级的 Load Balancer 的每个组件编辑脚本文件。每个组件的脚本文件是:

        管理
        lbadmin, lbkeys

        分派器
        dsserver, dscontrol, dswizard

        基于内容路由(CBR)
        cbrserver, cbrcontrol, cbrwizard

        站点选择器
        ssserver, sscontrol, sswizard

        Cisco CSS 控制器
        ccoserver, ccocontrol

        Nortel Alteon 控制器
        nalserver, nalcontrol
        注意:
        缺省情况下,这些文件是只读的;因此,在您可以保存更改之前必须更改这些文件的许可权。
      3. 对脚本文件中所有“java”或“javaw”命令,包含路径前缀(表明 Java 1.4 安装目录中该命令的位置)。

        例如:在 Windows 操作系统上,如果 Java 1.4 安装在 C:\Program Files\IBM\Java14\jre\bin 中,则在脚本文件中更改以下内容,

        从:
        javaw

        到:
        C:\Program Files\IBM\Java14\jre\bin\javaw

    AIX 的要求

    AIX 的安装

    表 1 表出 Load Balancer 的 installp 映象。

    表 1. AIX installp 映像

    管理(含有消息) ibmlb.admin.rte ibmlb.msg.language.admin
    基本 ibmlb.base.rte
    设备驱动程序 ibmlb.lb.driver
    许可证 ibmlb.lb.license
    Load Balancer 组件(含有消息) ibmlb.component.rte ibmlb.msg.language.lb
    文档(含有消息) ibmlb.doc.rte ibmlb.msg.language.doc
    度量服务器 ibmlb.ms.rte

    其中 component 可以是:disp(分派器)、cbr(CBR)、ss(站点选择器)、cco(Cisco CSS 控制器)或 nal(Nortel Alteon 控制器)。可选地,选择您要安装的一个或多个组件。

    其中 language 可以是:

    安装前

    如果安装了较早版本,则在您安装当前版本之前应该卸载 该副本。首先,确保所有执行程序和服务器停止。然后,要卸载整个产品,请输入 installp -u ibmlb(或以前的名称,如“ibmnd”)。 要卸载特定的文件集,明确地列出它们而不是指定软件包的名称。

    安装本产品时,可选择安装下列任何选项(或全部):

    安装步骤

    遵循这些步骤安装 Load Balancer for AIX:

    1. 以 root 用户身份登录。
    2. 插入产品媒体,如果从 Web 安装,请将安装映象复制到一个目录。
    3. 安装安装映象。建议使用 SMIT 安装 Load Balancer for AIX,因为 SMIT 可确保所有消息都能自动安装。

      使用 SMIT:

      选择
      软件安装与维护

      选择
      安装和更新软件

      选择
      从最新的可用软件安装和更新

      输入
      包含 installp 映象的设备或目录

      输入
      在“*要安装的软件”行上,指定选项的相应信息(或选择列表)

      确定

      命令完成时,按完成然后从“退出”菜单中选择退出 Smit 或按 F12。 如果使用 SMITTY,则按 F10 以退出该程序。

      使用命令行:

      如果从光盘安装,则必须输入下列命令以安装光盘:

      mkdir /cdrom
      mount -v cdrfs -p -r /dev/cd0 /cdrom
      

      请参阅下表以确定输入哪些命令来安装期望的 Load Balancer package for AIX:

      表 2. AIX 安装命令

      管理(含有消息) installp -acXgd device ibmlb.admin.rte ibmlb.msg.language.admin
      基本 installp -acXgd device ibmlb.base.rte
      设备驱动程序 installp -acXgd device ibmlb.lb.driver
      许可证 installp -acXgd device ibmlb.lb.license
      Load Balancer 组件(带 msgs)。 包含:分派器、CBR、站点选择器、Cisco CSS 控制器和 Nortel Alteon 控制器 installp -acXgd device ibmlb.component.rte ibmlb.msg.language.lb
      文档(含有消息) installp -acXgd device ibmlb.doc.rte ibmlb.msg.language.lb
      度量服务器 installp -acXgd device ibmlb.ms.rte

      其中 device 是:

      确保摘要的结果栏中每个正在安装(应用)的 Load Balancer 部件都包含“成功”。当您要安装的所有部件都已成功应用后再继续。

      注意:
      要在任何 installp 映象中生成文件集的列表,包含所有可用的消息目录,输入
      installp -ld device
      

      其中 device 是:

      • /cdrom,如果从光盘安装。
      • /dir(包含 installp 映象的目录),如果您从文件系统安装。

      要卸下光盘,输入:

      unmount /cdrom
      
    4. 验证该产品已安装。输入以下命令:
      lslpp -h | grep ibmlb
      

      如果您已安装全部产品,此命令返回下列信息:

      ibmlb.admin.rte
      ibmlb.base.rte
      ibmlb.doc.rte
      ibmlb.ms.rte
      ibmlb.msg.language.admin.rte
      ibmlb.msg.language.doc
      ibmlb.msg.language.lb.rte
      ibmlb.lb.driver
      ibmlb.lb.license
      ibmlb.<component>.rte
       
      

    Load Balancer 安装路径包含以下内容:

    有关使用远程方法调用(RMI)的 Load Balancer 远程管理, 您需要在客户机上安装管理、基本、组件和许可证软件包。 有关 RMI 的信息,请参阅远程方法调用(RMI)


    HP-UX 的要求

    安装 HP-UX

    本节说明如何使用产品光盘在 HP-UX 上安装 Load Balancer。

    安装前

    开始安装过程前,确保您具有安装该软件的 root 用户权限。

    如果安装了较早版本,则安装当前版本前必需卸载旧版本。首先要确保执行程序和服务器都已停止。然后,要卸载 Load Balancer,请参阅卸载软件包的说明

    安装步骤

    表 3 列出了 Load Balancer 的安装软件包的名称以及使用系统的软件包安装工具安装软件包的必需顺序。

    表 3. Load Balancer 的 HP-UX 软件包安装的详细信息

    软件包描述 HP-UX 软件包名称
    基本 ibmlb.base
    管理 ibmlb.admin
    Load Balancer 许可证 ibmlb.lic
    Load Balancer 组件 ibmlb.component
    文档 ibmlb.lang
    度量服务器 ibmlb.ms

    记录:

    1. 变量 component 指以下值之一的替代:disp(分派器)、cbr(CBR)、ss(站点选择器)、cco(Cisco CSS 控制器)或 nal(Nortel Alteon 控制器)。

    2. 变量 lang 指以下语言特定的代码之一的替代:nlv-de_DE、nlv-en_US、nlv-es_ES、nlv-fr_FR、nlv-it_IT、nlv-ja_JP、nlv-ko_KR、nlv-zh_CN、 nlv-zh_TW。对于英语,变量 langdoc 的替代。
    注意:
    HP-UX 不支持巴西葡萄牙语(pt_BR)语言环境。在 HP-UX 受支持的语言环境为:

    安装软件包的说明

    以下过程详细描述了完成此任务必须的步骤。

    1. 成为本地超级用户 root。
      su - root 密码:password
      
    2. 发出安装命令安装软件包

      发出安装命令

      swinstall -s /source package_name
      

      其中 source 是软件包的位置的目录,而 package_name 是软件包的名称。

      例如,如果您正从 CD 的 root 安装,以下命令安装 Load Balancer(ibmlb.base)的基本软件包

      swinstall -s /lb ibmlb.base
      
    3. 验证 Load Balancer 软件包的安装

      发出 swlist 命令列出所有您已经安装的软件包。例如,

      swlist -l fileset ibmlb
       
      

    卸载软件包的说明

    使用 swremove 命令卸载软件包。应该用与安装时相反的顺序除去软件包。例如,发出以下命令:


    Linux 的要求

    安装 Linux

    本节说明如何使用产品光盘在 Linux 上安装 Load Balancer。

    安装前

    开始安装过程前,确保您具有安装该软件的 root 用户权限。

    如果安装了较早版本,则在您安装当前版本之前应该卸载 该副本。首先,确保所有执行程序和服务器停止。然后,输入 rpm -e pkgname 卸载整个产品。卸载时按照软件包安装的逆向顺序进行,以确保最后卸载管理软件包。

    安装步骤

    要安装 Load Balancer:

    1. 准备安装。
    2. 验证该产品已安装。输入以下命令:

      rpm -qa | grep ibmlb

      安装所有产品后应得到类似以下的列表:

    有关使用远程方法调用(RMI)的 Load Balancer 远程管理, 您需要在客户机上安装管理、基本、组件和许可证软件包。 有关 RMI 的信息,请参阅远程方法调用(RMI)


    Solaris 版要求

    安装 Solaris 版

    本节说明如何使用产品光盘在 Solaris 上安装 Load Balancer。

    安装前

    开始安装过程前,确保您具有安装该软件的 root 用户权限。

    如果安装了较早版本,则安装当前版本前必需卸载旧版本。首先,确保您已经停止了所有的执行程序和服务器。然后,要卸载 Load Balancer,输入 pkgrm pkgname

    安装步骤

    要安装 Load Balancer:

    1. 准备安装。

      在命令提示符下,输入 pkgadd -dpathname,其中 pathname 是该软件包所在的光盘驱动器的设备名或硬盘驱动器上的目录名;例如:pkgadd -d /cdrom/cdrom0/

      将给出要安装软件包的列表。它们是:

      如果您要安装所有软件包,简单地输入“all”并按返回。如果要安装部分组件,输入相应的要安装组件的名称,用空格或逗号分隔,然后按返回。系统可能会提示您更改现有目录或文件的许可权。仅按返回,或回答“是”。您需要安装先决条件软件包(因为它按字母次序安装而非先决条件顺序)。如果您回答“全部”,对于所有提示都只回答“是”,安装将成功完成。

      所有软件包取决于公共软件包 ibmlbadm。此公用软件包必须与其它软件包一起安装。

      例如,如果您仅要安装分派器组件以及文档和度量服务器,则必须安装:ibmlbadm、ibmlbbase、ibmlblic、ibmdisp、ibmlbms 和 ibmlbdoc。

      有关使用远程方法调用(RMI)的 Load Balancer 远程管理, 您需要在客户机上安装管理、基本、组件和许可证软件包。 有关 RMI 的信息,请参阅远程方法调用(RMI)

      Load Balancer 组件驻留在 /opt/ibm/edge/lb/servers 安装目录中。

    2. 安装的管理驻留在目录 /opt/ibm/edge/lb/admin
    3. 安装的度量服务器驻留在目录 /opt/ibm/edge/lb/ms
    4. 安装的文档驻留在目录 /opt/ibm/edge/lb/documentation
    5. 验证该产品已安装。发出下列命令:pkginfo | grep ibm

    Windows 2000 和 Windows Server 2003 的要求

    Windows 2000 或 Windows Server 2003 的安装

    本节说明如何使用产品光盘在 Windows 2000 或 Windows Server 2003 上安装 Load Balancer。

    安装软件包

    将给予您要安装软件包的选项。

    它们是:

    有关使用远程方法调用(RMI)的 Load Balancer 远程管理, 您需要在客户机上安装管理、基本、组件和许可证软件包。 有关 RMI 的信息,请参阅远程方法调用(RMI)

    安装前

    注意:
    Load Balancer 的 Windows 2000 版本和 Windows Server 2003 版本不会在任何其它版本的 Windows 平台上运行。

    限制:Load Balancer 的 Windows 版本,无法安装在具有 IBM 防火墙的同一台机器上。

    开始安装过程之前,确保您以管理员身份登录,或以拥有管理权限的用户身份登录。

    如果安装了较早版本,则在您安装当前版本之前应该卸载 该副本。要使用添加/删除程序卸载,执行下列操作:

    1. 单击启动 > 设置(对于 Windows 2000)> 控制面板
    2. 双击添加/删除程序
    3. 选择 Load Balancer(或先前的名称,例如 网络分派器
    4. 单击更改/删除按钮

    安装步骤

    要安装 Load Balancer:

    1. 将 Load Balancer 光盘插入您的 CD-ROM 驱动器,然后安装窗口将自动出现。
    2. 仅当计算机无法自动运行光盘时,下列步骤是必需的。使用鼠标,单击鼠标按钮 1 以执行下列任务:
    3. 选择读取安装过程使用的语言
    4. 单击确定
    5. 遵循安装程序的说明。
    6. 如果要更改驱动器或目录目的地,请单击浏览
    7. 您可以选择“所有 Load Balancer 产品”或“您选择的组件”。
    8. 安装完成后,使用 Load Balancer 之前系统将提示您重新引导计算机。 这可确保所有文件已安装,并且 IBMLBPATH 环境变量已添加到注册表中。

    Load Balancer 安装路径包含以下内容:


    分派器组件

    此部分提供有关快速启动配置的信息,计划注意事项,并描述配置 Load Balancer 的分派器组件的方法。它包含以下几章:


    快速入门配置

    此快速入门示例显示如何使用分派器组件的 mac 转发方法来配置三个本地连接的工作站,以负载均衡两台 Web 服务器之间的 Web 流量。 该配置对平衡任何其它 TCP 或无状态的 UDP 应用程序流量本质上是一样的。

    注意:
    使用 AIX、Linux 或 Solaris 版本的分派器,仅用两个工作站(分派器位于其中一个 Web 服务器工作站上)就可完成配置。 这表示一个并列配置配置。 有关设置更复杂配置的过程,请查阅设置分派器机器

    图 8. 简单本地分派器配置

    显示客户机、因特网云、Load Balancer 机器和两台标识了地址的本地连接的服务器的图。

    mac 转发方法是缺省转发方法,通过此方法,分派器把进入请求负载均衡到服务器,而服务器将这些响应直接返回到客户机。要获取有关分派器的 MAC 转发方法的更多信息,请参阅分派器的 MAC 级别路由(mac 转发方法)


    您需要什么?

    在快速入门示例中,您需要三个工作站和四个 IP 地址。一个工作站将用作分派器;其它两个工作站将用作 Web 服务器。每个 Web 服务器需要一个 IP 地址。分派器工作站需要两个地址:非转发地址(NFA)和群集地址(将进行负载均衡的地址),您将这些地址提供给客户机以访问您的 Web 站点。

    注意:
    NFA 是 hostname 命令返回的地址。此地址用于管理目的,如远程配置。

    如何准备?

    1. 对于此本地连接的配置示例,设置您的工作站,以便它们在同一 LAN 段上。 确保三台机器之间的网络流量不必通过任何路由器或网桥传递。(有关使用远程服务器设置配置,请参阅配置广域分派器支持。)
    2. 配置三个工作站的网络适配器。对于此示例,我们假设 您有下列网络配置:
      工作站 名称 IP 地址
      1 server1.intersplash.com 9.47.47.101
      2 server2.intersplash.com 9.47.47.102
      3 server3.intersplash.com 9.47.47.103
      网络掩码 = 255.255.255.0

      每个工作站仅包含一个 标准的以太网网络接口卡。

    3. 确保 server1.intersplash.com 都可以 ping 到 server2.intersplash.com 和 server3.intersplash.com。
    4. 确保 server2.intersplash.com 和 server3.intersplash.com 可以 ping 到 server1.intersplash.com。
    5. 确保两个 Web 服务器(服务器 2 和服务器 3)上的内容一致。这可通过复制两个工作站上的数据,使用一个共享文件系统(如 NFS、AFS(R) 或 DFS(TM)),或采用任何其它适合您站点的方式来实现此要求。
    6. 确保 server2.intersplash.com 和 server3.intersplash.com 上的 Web 服务器是可操作的。使用 Web 浏览器直接从 http://server2.intersplash.comhttp://server3.intersplash.com 请求页面。
    7. 获得该 LAN 段的另一个有效 IP 地址。这是您将提供给希望访问您站点的客户机的地址。对于此示例,我们将使用:
      Name= www.Intersplash.com
      IP=9.47.47.104  
      
    8. 配置两个 Web 服务器工作站以接收 www.Intersplash.com 的流量。

      添加一个 www.Intersplash.com 别名到 server2.intersplash.com 和 server3.intersplash.com 上的回送接口。

    9. 删除任何额外路径,它们可能是由于对回送接口命名别名而创建的。请参阅步骤 2. 检查额外路由

      您现在已完成了两个 Web 服务器工作站所要求的全部配置步骤。


    配置分派器组件

    有了分派器,您可以使用命令行、配置向导或图形用户界面(GUI)创建配置。

    注意:
    必须以英语字符输入参数值。 唯一的例外是用于主机名和文件名的参数值。

    使用命令行配置

    如果您使用命令行,则遵循这些步骤:

    1. 启动分派器上的 dsserver:

    2. 启动分派器的执行程序功能:

      dscontrol executor start

    3. 将群集地址添加至分派器配置:

      dscontrol cluster add www.Intersplash.com

    4. 将 HTTP 协议端口添加到分派器配置:

      dscontrol port add www.Intersplash.com:80

    5. 将每个 Web 服务器添加至分派器配置:

      dscontrol server add www.Intersplash.com:80:server2.intersplash.com

      dscontrol server add www.Intersplash.com:80:server3.intersplash.com

    6. 配置工作站以接受群集地址的流量:

      dscontrol executor configure www.Intersplash.com

    7. 启动分派器的管理器功能:

      dscontrol manager start

      现在分派器将根据服务器性能执行负载均衡。

    8. 启动分派器的顾问程序功能:

      dscontrol advisor start http 80

      现在分派器将确保客户机请求不发送到出故障的 Web 服务器。

    现在您具有本地连接的服务器的基本配置已完成。

    测试您的配置

    测试配置是否在工作。

    1. 从 Web 浏览器,转至位置 http://www.Intersplash.com。如果出现页面,则说明一切正常。
    2. 在 Web 浏览器中重新装入页面。
    3. 查看以下命令的结果:dscontrol server report www.Intersplash.com:80:。两个服务器的“总连接数”列合计应该为“2”。

    使用图形用户界面(GUI)配置

    要获取有关使用分派器GUI 的信息,请参阅GUI附录 A, GUI:一般说明

    配置向导

    要获取有关使用配置向导的信息,请参阅使用配置向导配置


    群集、端口、服务器配置的类型

    有许多可配置 Load Balancer 以支持您的站点的方法。如果您的所有客户都与之连接 的站点只有一个主机名,您可以定义服务器的单一群集。对于这些服务器中的每一台,配置 Load Balancer 通信所用的端口。请参阅图 9

    图 9. 配置有一个群集和两个端口的分派器示例

    简单配置

    在此分派器组件示例中,一个群集在 www.productworks.com 定义。此群集有两个端口:端 口 80 用于 HTTP,端口 443 用于 SSL。对 http://www.productworks.com(端口 80)请求的客户机转至一台与请求 https://www.productworks.com(端口 443)的客户机不同的服务器。

    如果您具有一个很大的站点,此站点具有为所支持的每种协议指定的许多服务器,则另一种配置 Load Balancer 的方法可能比较合适。在这种情况下,您可能希望为每种协议定义具有一个端口但具有许多服务器的群集,如图 10 中所示。

    图 10. 配置有两个群集,每个群集有一个端口的分派器示例

    具有两个群集(每个有一个端口)的配置

    在此分派器组件的示例中,两个群集定义为:www.productworks.com 用于端口 80(HTTP)而 www.testworks.com 用于端口 443(SSL)。

    如果您的站点可为多个公司或部门提供内容主机管理,并且每一个主机都用不同的 URL 连接至您的站点,则可能需要第三种方法来配置 Load Balancer。在这种情况下,您可能希望为每个公司或部门定义一个群集,然后定义在此 URL 接收连接的任何端口,如图 11 中所示。

    图 11. 配置有 2 个群集,每个群集有 2 个端口的分派器示例

    具有两个群集(每个有两个端口)的配置

    在此分派器组件的示例中,为位于 www.productworks.com 和 www.testworks.com 的每个站点,定义了两个群集,端口 80 用于 HTTP 而端口 23 用于 Telnet。


    计划分派器组件

    本章说明安装和配置分派器组件之前网络计划人员应考虑的问题。

    本章包含以下几节:

    注意:
    对于先前的版本,当产品称为网络分派器时,分派器控制命令名称是 ndcontrol。现在,分派器控制命令名称称为 dscontrol

    硬件和软件要求

    平台要求:


    计划注意事项

    分派器 包含下列功能:

    分派器 的三个关键功能部件(执行程序、管理 器和顾问程序)相互作用以平衡和调度服务器间的进入请求。除负载均衡请求外,执行程序还监视新连接、活动连接和处于已完成状态的连接数。执行程序还对已完成连接或复位连接进行垃圾收集,并将此信息提供给管理器。

    管理器从执行程序、顾问程序和系统监视程序(如度量服务器)收集信息。根据管理器 接收的信息,它调整如何在每一个端口对服务器进行加权,并将用于它平衡新连接的 新权值发送给予执行程序。

    顾问程序监视指定端口上的每个服务器,以确定服务器的响应时间和可用性,然后将此信息发送给管理器。顾问程序还监视服务器是处于运行状态还是已当机。如果不使用管理器和顾问程序,执行程序将根据当前服务器的权值进行 循环调度。


    转发方法

    使用分派器,您可以选择在端口级别指定的三种转发方法的其中一种:MAC 转发、NAT/NAPT 转发或 CBR(基于内容路由)转发。

    分派器的 MAC 级别路由(mac 转发方法)

    使用分派器的 MAC 转发方法(缺省转发方法),分派器将进入请求负载均衡到所选的服务器,而服务器将响应直接返回到客户机而不涉及分派器。使用此转发方法,分派器仅关注入站客户机到服务器信息流。它无需查看出站的服务器到客户机的信息流。 这一功能显著地减轻了对应用程序的影响并且可提高网络性能。

    当使用 dscontrol port add cluster:port method value 命令添加端口时,可以选择此转发方法。缺省转发方法值为 mac。仅当添加端口时您才可指定方法参数。一旦添加端口,您就无法更改转发方法的设置。请参阅dscontrol port - 配置端口,以获取更多信息。

    分派器的 NAT/NAPT(nat 转发方法)

    使用分派器的网络地址转换(NAT)或网络地址端口转换(NAPT)能力,除去了用于负载均衡的服务器位于本地连接的网络上的限制。当您希望服务器位于远程位置时,您可使用 NAT 转发方法技术而不是使用 GRE/WAN 封装技术。您还可使用 NAPT 功能访问驻留在每台负载均衡的服务器上 的多个服务器守护程序,其中每个守护程序在唯一的端口上侦听。

    您可以按两种不同的方法,使用多个守护程序来配置一台服务器:

    此应用程序可很好地与级别较高的应用程序协议(如 HTTP、SSL、IMAP、POP3、NNTP、SMTP、Telnet 等)一起使用。

    限制:

    您将需要三个 IP 地址用于分派器机器 - nfa、cluster 和 return address。要实现 NAT/NAPT,执行下列操作(另见配置分派器的 nat 或 cbr 转发方法的样本步骤):

    分派器的基于内容路由(cbr 转发方法)

    分派器组件允许您为 HTTP(使用“内容”类型规则)和 HTTPS(使用 SSL 会话标识亲缘性)执行基于内容路由,而无需使用高速缓存代理。对于 HTTP 和 HTTPS 流量,分派器组件的 cbr 转发方法可以比需要高速缓存代理的 CBR 组件提供更快速的基于内容路由。

    对于 HTTP:分派器的基于内容路由的服务器选择基于 URL 的内容或 HTTP 头。它是使用“内容”类型规则配置的。当配置内容规则时,将搜索字符串“pattern”和服务器集指定给规则。当处理新的进入请求时,此规则将指定的字符串与客户机的 URL 或客户机请求中指定的 HTTP 头进行比较。

    如果分派器在客户机请求中发现字符串,分派器将请求转发到规则中一个服务器。然后分派器将响应数据从服务器中继到客户机(“cbr”转发方法)。

    如果分派器在客户机请求中未发现字符串,则分派器从规则中的服务器集选择服务器。

    注意:
    内容规则在分派器组件中的配置方法与在 CBR 组件中的配置方法相同。分派器可使用用于 HTTP 流量的内容规则。然而,CBR 组件 可使用同时用于 HTTP 和 HTTPS(SSL)流量的内容规则。

    对于 HTTPS(SSL):分派器基于内容的路由根据客户机请求的 SSL 标识会话字段进行负载均衡。使用 SSL,客户机请求包含先前会话的 SSL 会话标识,而服务器维持它们先前 SSL 连接的高速缓存。分派器的 SSL 标识会话亲缘性允许客户机和服务器 使用与服务器的先前连接的安全性参数,建立新连接。通过消除 SSL 安全性参数的重新谈判(如共享密钥和加密算法),服务器节约 CPU 周期并且客户机将获取更快速的响应。为了启用 SSL 会话标识亲缘性:为端口指定的协议类型必须是 SSL,且端口粘性时间 必须设置未非零值。当超过了 stickytime 时,客户机可能会从先前的服务器发送到不同的服务器。

    您将需要三个 IP 地址用于分派器机器 - nfa、cluster 和 return address。要实现分派器的基于内容路由(另见配置分派器的 nat 或 cbr 转发方法的样本步骤):

    注意:
    对于高可用性的连接记录复制功能(确保当备份分派器机器接管主机器时客户机的连接不断开),分派器的基于内容路由支持。

    配置分派器的 nat 或 cbr 转发方法的样本步骤

    图 12. 使用分派器的 nat 或 cbr 转发方法的示例

    使用分派器的 nat 或 cbr 转发的配置

    您将需要至少三个 IP 地址用于分派器机器。对于图 12,以下是最低限度地配置分派器的 nat 或 cbr 转发方法的必需步骤:

    1. 启动执行程序
      dscontrol executor start
     
    2. 定义客户机网关
      dscontrol executor set clientgateway 1.2.3.5
      注:如果您的子网没有本地路由器,则您必须配置一个机器
          以执行 IP 转发,并使用它作为客户机网关。查看您的
          操作系统文档,以确定如何启用 IP 转发。
     
    3. 定义群集地址
      dscontrol cluster add 1.2.3.44
     
    4. 配置群集地址
      dscontrol executor configure 1.2.3.44
     
    5. 使用 nat 或 cbr 方法定义端口
      dscontrol port add 1.2.3.44:80 method nat
    或
     
      dscontrol port add 1.2.3.44:80 method cbr protocol http
     
    6. 在 Load Balancer 上配置别名返回地址(使用以太网卡 0)
      dscontrol executor configure 10.10.10.99
     或使用 ifconfig/dsconfig 命令:
      AIX:ifconfig en0 alias 10.10.10.99 netmask 255.255.255.0
      HP-UX:ifconfig lan0:1 10.10.10.99 netmask 255.255.255.0 up
      Linux:ifconfig eth0:1 10.10.10.99 netmask 255.255.255.0 up
      Solaris 8:ifconfig hme0 addif 10.10.10.99 netmask 255.255.255.0 up
      Windows:dsconfig en0 alias 10.10.10.99 netmask 255.255.255.0
     
    7. 定义后端服务器
      dscontrol server add 1.2.3.4:80:192.10.10.10
        router 10.10.10.6 returnaddress 10.10.10.99 
       
    

    客户机网关(1.2.3.5)是 Load Balancer 和客户机之间的路由器 1 地址。路由器(10.10.10.6)是 Load Balancer 和后端服务器之间的路由器 2 地址。如果您不确定 clientgateway 或路由器 2 地址,您可以使用带有客户机(或服务器)地址的 traceroute 程序,以确定路由器地址。此程序的实际语法将基于您所使用的操作系统而区别。您应查询您的操作系统文档,以获取有关此程序的更多信息。

    如果服务器与 Load Balancer 位于同一子网上(即,使用 traceroute 未返回路由器),则输入服务器的地址作为路由器地址。 路由器地址是步骤 7 中在 Load Balancer 机器上的“server add”命令中使用的地址。


    服务器分区:配置到一个物理服务器(IP 地址)的逻辑服务器

    用服务器分区,您可进一步分辨特殊 URL 和它们的特定应用程序。例如,一台 Web 服务器可以服务 JSP 页面、HTML 页面、GIF 文件、数据库请求等。Load Balancer 现在提供将一个群集和端口特定的服务器划分为几个逻辑服务器的能力。这允许您在机器上建议特殊服务以检测 servlet 引擎或数据库请求是更快运行还是根本没有运行。

    服务器分区允许 Load Balancer 检测,例如,HTML 服务快速服务页面,但是数据库连接丧失。这允许您分布基于更多小特定服务工作负载的负载,而不是只是广泛的服务器权值。

    使用 HTTP/HTTPS 顾问程序的服务器分区

    服务器分区在与 HTTP 和 HTTPS 顾问程序一起使用时可用。例如,当您具有处理 HTML、GIF 和 JSP 页面的 HTML 服务器时,如果您在端口 80 下定义(通同添加)服务器一次,则对于整个 HTTP 服务器,您仅接收到一个负载值。 这可能会使人产生误解,因为 GIF 服务可能在服务器上不起作用。分派器仍将 GIF 页面转发至服务器,但客户机发现一个超时或故障。

    如果您在此端口下对服务器定义了三次(例如,ServerHTML、ServerGIF 和 ServerJSP)并对每台逻辑服务器使用不同的字符串定义服务器 advisorrequest 参数,那么您可以查询服务器上特殊服务的运行状况。ServerHTML、ServerGIF 和 ServerJSP 代表已从一台物理服务器分区的三台逻辑服务器。对于 ServerJSP,您可以定义 advisorrequest 字符串,以查询处理 JSP 页面的机器上的服务。对于 ServerGIF,您可以定义 advisorrequest 字符串,以查询 GIF 服务。且对于 ServerHTML,您可以定义 advisorrequest 以查询 HTML 服务。因此,如果客户机没有从 advisorrequest 获取响应,以查询 GIF 服务,则分派器将该逻辑服务器(ServerGIF)标记为当机,而其它两台逻辑服务器可能处于健康状况。分派器不把任何更多的 GIF 转发给物理服务器,但它可仍然将 JSP 和 HTML 请求发送给服务器。

    要获取有关 advisorrequest 参数的更多信息,请参阅使用请求/响应(URL)选项配置 HTTP 顾问程序

    将一台物理服务器配置为一些逻辑服务器的示例

    在分派器配置中,您可使用 cluster:port:server 层次结构表示物理服务器或逻辑服务器。服务器可以是以符号名或点分十进制为格式的机器(物理服务器)的唯一 IP 地址。或者,如果您定义服务器以代表分区的服务器,那么您必须为物理服务器在 dscontrol server add 命令的 address 参数中提供可解析的服务器地址。请参阅dscontrol server - 配置服务器以获取更多信息。

    以下是将物理服务器划分为逻辑服务器以解决不同类型的请求的示例。

    Cluster: 1.1.1.1
            Port:  80
                 Server: A (IP address 1.1.1.2)
                           HTML server
                 Server: B (IP address 1.1.1.2)
                           GIF server
                 Server: C (IP address 1.1.1.3)
                           HTML server
                 Server: D (IP address 1.1.1.3)
                           JSP server
                 Server: E (IP address 1.1.1.4)
                           GIF server
                 Server: F (IP address 1.1.1.4)
                           JSP server
            Rule1: /*.htm
                 Server: A
                 Server: C
            Rule2: /*.jsp
                 Server: D
                 Server: F
            Rule3: /*.gif
                 Server: B
                 Server: E                
    

    在此示例中,服务器 1.1.1.2 划分成 2 台逻辑服务器:“A”(处理 HTML 请求)和“B”(处理 GIF 请求)。服务器 1.1.1.3 划分成 2 台逻辑服务器:“C”(处理 HTML 请求)和“D”(处理 JSP 请求)。服务器 1.1.1.4 划分成 2 台逻辑服务器:“E”(处理 GIF 请求)和“F”(处理 JSP 请求)。


    高可用性

    简单高可用性

    图 13. 使用简单高可用性的分派器示例

    使用简单高可用性配置分派器

    高可用性功能涉及使用第二台分派器机器。第一台分派器机器如它在单个分派器配置中所做的一样,执行对所有客户机流量的负载均衡。 第二台分派器机器监视第一台分派器机器的“健康状况”,如果它检测到第一台分派器机器失败,则将接管负载均衡任务。

    这两台机器都指定了特定的角色,主机器备份机器。主机器把连接数据不断地发送到备份机器。 当主机器活动(进行负载均衡)时,处于备用状态的备份机器持续进行更新,随时准备在必要时接管。

    这两台机器之间的通信会话称为工作频率。工作频率允许每台机器监视另一台机器的健康状况。

    如果备份机器检测到活动机器已出现故障,它将接管主机器并开始进行 负载均衡。此时两台机器的状态是相反的:备份机器成为活动的而主机器成为备用的

    在高可用性配置中,主和备份机器必须在同一个子网中,并带有等同的配置。

    有关配置高可用性的信息,请参阅高可用性

    相互高可用性

    图 14. 使用相互高可用性的分派器示例

    使用相互高可用性配置分派器

    相互高可用性功能涉及使用两台分派器机器。 两台机器都活动地执行客户机流量的负载均衡,并两台机器相互提供备份。 在简单高可用性配置中,只有一台机器执行负载均衡任务。 在相互高可用性配置中,两台机器都执行部分客户机流量的负载均衡。

    对于相互高可用性,根据群集地址将客户机流量指定到每台分派器机器。 每个群集都可配置它的主分派器机器的 NFA(非转发地址)。 主分派器机器通常执行此群集的负载均衡任务。 如果发生故障,另一台机器将为它自己的群集和发生故障的分派器群集执行负载均衡。

    有关具有共享“群集设置 A”和共享“群集设置 B”的相互高可用性配置的说明,请参阅图 14。每个分派器都可活动地路由它的群集的信息包。 如果任一分派器出了故障,并且无法再活动地路由它的主群集的信息包,则其它分派器会接管它的备份群集的信息包路由。

    注意:
    这两台机器必须将共享的群集集合配置为相同。即,使用的端口和每个端口下的服务器在两个配置中必须为等同。

    要获取关于配置高可用性和相互高可用性的信息,请参阅高可用性


    配置分派器组件

    执行本章所述步骤之前,请参阅计划分派器组件。本章阐述了如何为 Load Balancer 的 分派器 组件创建基本配置。

    注意:
    对于先前的版本,当产品称为网络分派器时,分派器控制命令名称是 ndcontrol。现在,分派器控制命令名称称为 dscontrol

    配置任务概述

    注意:
    在开始此表中的配置步骤之前,确保您的分派器机器和所有服务器连接到网络,具有有效 IP 地址,并且能互相进行 ping 操作。

    表 5.分派器功能的配置任务

    任务 描述 相关信息
    设置分派器机器。

    设置负载均衡配置。

    设置分派器机器
    设置要负载均衡的机器。 为回送设备建立别名,检查额外路由,并删除任何额外的路由。 为负载均衡设置服务器

    配置方法

    有四种配置分派器的基本方法:

    命令行

    这是配置分派器最直接的方法。命令参数值必须以英文字符输入。唯一的例外是主机名(用于群集、服务器和高可用性命令)和文件名(用于文件命令)。

    要从命令行启动分派器:

    1. 从命令提示符发出 dsserver 命令。 要停止服务,输入:dsserver stop
      注意:
      对于 Windows,单击启动 > 设置(对于 Windows 2000)>控制面板 > 管理工具 > 服务。右键单击 IBM 分派器 并选择启动。要停止服务,遵循相同的步骤,并选择停止
    2. 下一步,发出您需要的分派器控制命令,以便设置您的配置。此手册中的过程假设使用命令行。命令是 dscontrol。要获取更多关于命令的信息,请参阅分派器 和 CBR 的命令参考

    您可以通过输入参数的唯一字母使用 dscontrol 命令参数的最小化版本。例如,要获取有关文件保存命令的帮助,您可以输入 dscontrol he f 来替代 dscontrol help file

    要启动命令行界面:发出 dscontrol 以接收 dscontrol 命令提示符。

    要结束命令行界面:发出 exitquit

    脚本

    配置分派器的命令可输入到一个配置脚本文件中,从而使这些命令一起执行。请参阅样本 Load Balancer 配置文件

    注意:
    要快速执行脚本文件(例如,myscript)的内容,使用以下命令之一:

    要将当前配置保存到脚本文件(例如,savescript),运行以下命令:

    dscontrol file save savescript
    

    此命令将保存配置脚本文件至 ...ibm/edge/lb/servers/configurations/dispatcher 目录。

    GUI

    有关一般说明和图形用户界面(GUI)的示例,请参阅图 42

    要启动 GUI,遵循这些步骤

    1. 确保 dsserver 在运行
    2. 下一步,执行以下操作之一:

    要从 GUI 配置分派器组件,必须先在树结构中选择 分派器。一 旦连接到主机,即可启动执行程序和管理器。您还可以创建包含端口和服务器的群集,并启动该管理器的顾问程序。

    GUI 可用于完成 dscontrol 命令将实现的任何任务。例如,要用命令行定义群集,可以输入 dscontrol cluster add cluster 命令。要从 GUI 定义一个群集,右键单击执行程序,然后在弹出菜单左键单击添加群集。在 弹出窗口中输入群集地址,然后单击确定

    已有的分派器配置文件可用主机的弹出菜单中显示的装入新配置(用于完全替代当前配置)和附加到当前(R)配置(用于更新当前配置)选项进行装入。您应当通过主机弹出菜单中显示的将配置文件另存为选项定期将分派器配置保存到文件。文件菜单位于 GUI 的 顶部,使用它可以将当前的主机连接保存到文件,或恢复现有文件中所有 Load Balancer 组件的连接。

    配置命令还可以远程运行。要获取更多的信息,请参阅远程方法调用(RMI)

    为了从 GUI 执行命令:从 GUI 树突出显示“主机”节点,并从“主机”弹出菜单中选择发送命令....。.在命令输入字段中,输入您要执行的命令,例如:executor report。当前会话中运行命令的结果和历史记录在提供的窗口中显示。

    单击 Load Balancer 窗口右上角的问号图标可访问帮助信息。

    要获取有关使用 GUI 的更多信息,请参阅附录 A, GUI:一般说明

    使用配置向导配置

    如果您使用配置向导,遵循这些步骤:

    1. 启动分派器上的 dsserver:

    2. 启动分派器的向导功能,dswizard。

    此向导将指导您逐步创建分派器组件的基本配置。将会向您提问一些有关您的网络的问题。还将指导您设置分派器的群集以负载均衡一组服务器之间的流量。


    设置分派器机器

    在设置分派器机器前,您必须是 root 用户(对于 AIX、HP-UX、Linux 或 Solaris)或管理员(Windows)。

    仅对于 AIX、HP-UX、Linux 和 Solaris,Load Balancer 可以有并列配置 的服务器。这仅表明,Load Balancer 可以物理驻留在一个负载均衡的服务器上。

    对于分派器机器,当使用 mac 转发方法时,您将至少需要两个有效的 IP 地址。对于 cbr 或 nat 转发方法,您将至少需要三个有效的 IP 地址:

    仅 Solaris:

    1. 缺省情况下,分派器 配置为负载均衡 100Mbps 以太网网络接口卡上的流量。 要更改缺省设置,您必须按如下所示编辑 /opt/ibm/edge/lb/servers/ibmnd.conf 文件:

      ibmnd.conf 文件为 Solaris autopush 命令提供输入并且必须与此命令兼容。

    2. 启动或停止分派器执行程序将取消 ibmnd.conf 文件中列出的适配器上的所有配置。要自动重新配置那些适配器上的别名(Load Balancer 的分派器组件使用的那些除外)使用 goAliases 脚本文件。样本脚本位于 ...ibm/edge/lb/servers/samples 目录,并且在运行它之前必须将其移动到 ...ibm/edge/lb/servers/bin。当分派器执行程序启动或停止时,自动执行 goAliases 脚本。

      例如,如果群集 X 和 Y 配置为供 ibmnd.conf 中列出的任何适配器上的 CBR 组件使用,当发出 dscontrol executor startdscontrol executor stop 命令时,取消配置群集 X 和 Y。这可能不是期望的结果。 当在 goAliases 脚本中配置群集 X 和群集 Y 时,分派器执行程序启动或停止之后自动配置群集。

    Windows:确保没有为 TCP/IP 协议启用 IP 转发。(请参阅 Windows TCP/IP 配置。)

    图 15 显示用单个群集、两个端口和三台服务器设置的分派器示例。

    图 15.分派器机器需要的 IP 地址示例


    要获取该过程中使用的命令的帮助信息,请参阅分派器 和 CBR 的命令参考

    要获取样本配置文件,请参阅样本 Load Balancer 配置文件

    步骤 1. 启动服务器功能

    AIX、HP-UX、Linux 或 Solaris:要启动服务器功能,输入 dsserver

    Windows:服务器功能作为服务自动启动。

    注意:
    缺省配置文件(default.cfg) 在启动 dsserver 时自动装入。如果用户决定在 default.cfg 文件中保存分派器配置,那么下次启动 dsserver 时将自动装入此文件中保存的所有配置信息。

    步骤 2. 启动执行程序功能

    要启动执行程序功能,输入 dscontrol executor start 命令。此时也可以更改不同的执行程序设置。请参阅分派器 和 CBR 的命令参考

    步骤 3. 定义非转发地址(如果地址不同于主机名)

    非转发地址用于连接机器以实现管理目的,如对该机器使用 Telnet 或 SMTP。缺省地址为主机名。

    要定义非转发地址,输入 dscontrol executor set nfa IP_address 命令或编辑样本配置文件。IP_address 是符号名或点分十进制地址。

    步骤 4. 定义群集并设置群集选项

    分派器将发送到群集地址的请求平衡至该群集的端口上配置的服务器。

    群集可以是符号名、点分十进制地址或定义通配符群集的专用地址 0.0.0.0。 要定义群集,发出命令 dscontrol cluster add。要设置群集选项,发出命令 ndcontrol cluster set,或使用 GUI 来发出命令。通配符群集可用于匹配多个 IP 地址,以便对进入的信息包进行平衡负载。请参阅使用通配符群集来组合服务器配置使用通配符群集为防火墙负载均衡将高速缓存代理和通配符群集一起用于透明代理,以获取更多的信息。

    步骤 5. 为网络接口卡建立别名

    一旦定义了群集,通常您必须在分派器机器的一个网络接口卡上 配置群集地址。要这样做,发出命令 dscontrol executor configure cluster_address它将 查找与群集地址属于相同子网的现有地址的适配器。然后,使用找到的适配器以及该适配器上找到的现有地址的网 络掩码,它将发出该群集地址的操作系统适配器配置命令。例如:

    dscontrol executor configure 204.67.172.72 
    

    不希望配置群集地址的情况是,以高可用性方式添加到备用服务器的 群集,或添加到充当远程服务器的广域分派器群集。如果以独立方式使用样本 goIdle 脚本,则同样不需要运行 executor configure 命令。 有关 goIdle 脚本的信息,请参阅使用脚本

    极少情况下会有与现有地址子网不匹配的群集地址。在这种情况下,请使用 executor 配置命令的第二种格式并明确提供接口名称和网络掩码。使用 dscontrol executor configure cluster_address interface_name netmask

    以下是几个示例:

    dscontrol executor configure 204.67.172.72 en0 255.255.0.0 
    (AIX)
    dscontrol executor configure 204.67.172.72 eth0:1 255.255.0.0 
    (Linux)
    dscontrol executor configure 204.67.172.72 le0 255.255.0.0 
    (Solaris 8)
    dscontrol executor configure 204.67.172.72 en1 255.255.0.0 
    (Windows)
     
    

    Windows

    为了在 Windows 上使用 executor configure 命令的第二种格式,您必须确定要使用的接口名称。

    如果机器上只有一个以太网络卡,则接口名称将是 en1。同样地,如果您只有一个令牌环卡,则接口名称将是 tr1。如果您有任一类型的多个卡,则需要确定卡的映射。 使用以下步骤:

    1. 在命令提示符下启动 regedit
    2. 依次单击 HKEY_LOCAL_MACHINESoftwareMicrosoftWindows NT(R)Current Version
    3. 然后,单击 Network Cards

    在“Network Cards”下面列出了网络接口适配器。单击每个网络接口适配器以 确定它是以太网接口还是令牌环网接口。在描述栏中列出了接口类型。dsconfig 指定的名称映射到接口类型。例如,dsconfig 命令将该列表中的第一个以太网接口指定为 en1 第二个指定为 en2 依次类推;此命令将第一个令牌环接口指定为 tr1,第二个指定为 tr2,依次类推。

    注意:
    Windows 注册表从 1 而不是 0 开始对适配器编号。

    获取该映射信息后,可以在网络接口上创建别名指向群集地址。

    使用 ifconfig/dsconfig 配置群集别名

    执行程序配置命令只运行 ifconfig(在 Windows 上是 dsconfig)命令,因此如果愿意仍可使用 ifconfig(dsconfig)命令。

    Windows

    分派器组件提供 dsconfig 命令,供您用命令行方式配置群集别名。dsconfig 命令与 UNIX(R) ifconfig 命令的语法相同。

    dsconfig en0 alias 204.67.172.72 netmask 255.255.0.0
    
    注意:
    netmask 参数是必需的。它应当以点分十进制格式格式(255.255.255.0)或十六进制数格式(0xffff0000)表示。

    要确定接口名称,请使用与执行程序配置命令第二种格式使用的相同技术。

    Solaris 和 HP-UX

    使用绑定特定服务器应用程序 绑定不包含服务器 IP 的 IP 地址列表时,使用 arp publish 命令取代 ifconfig,在 Load Balancer 机器上动态设置 IP 地址。例如:

     arp -s <cluster> <Load Balancer MAC address> pub
    

    步骤 6. 定义端口并设置端口选项

    要定义一个端口,请输入 dscontrol port add cluster: port 命令,编辑样本配置文件或使用 GUI。Cluster 是符号名或点分十进制地址。port 是 用于该协议的端口号。此时还可以更改不同的端口设置。您必须为一个 端口定义和配置所有服务器。请参阅分派器 和 CBR 的命令参考

    端口号 0(零)用于指定通配符端口。 此端口将接受不特定于任何群集上定义端口的端口流量。通配符端口将用于配置任何端口的规则和服务器。如果多个端口有相同的服务器/规则配置,则 可使用此功能。这样,一个端口的流量会影响其它端口上流量的负载均衡决策。有关何时使用通配符端口的更多信息,请参阅使用通配符端口定向到未配置的端口流量

    步骤 7. 定义负载均衡服务器

    要定义负载均衡的服务器,请输入 dscontrol server add cluster:port:server 命令,然后编辑样本配置文件或使用 GUI。Clusterserver 是符号名或点分十进制地址。port 是 用于该协议的端口号。要执行负载均衡,必须为群集上的端口定义多个服务器。

    绑定特殊服务器: 如果分派器组件负载均衡到绑定特定服务器,则必须配置服务器以绑定到群集地址。因为分派器不更改目的地 IP 地址转发信息包,当信 息包到达服务器时,信息包仍将包含作为目的地的群集地址。如果服务器已配置为绑定到 IP 地址而不是群集地址,那么服务器将无法接受到群集的信息包/请求。

    注意:
    对于 Solaris 和 Linux:当使用顾问程序时,不得并列配置绑定特定的服务器。

    多地址并列配置:

    在并列配置配置中,并列配置的服务器地址不必与非转发地址(NFA)相同。如果机器定义有多个 IP 地址,则可以使用另一地址。对于分派器组件,必须使用 dscontrol server 命令将布置的服务器定义为 collocated。有关布置服务器的更多信息,请参阅使用并列配置的服务器

    有关 dscontrol server 命令语法的更多信息,请参阅dscontrol server - 配置服务器

    步骤 8. 启动管理器功能(可选)

    管理器功能改进负载均衡。要启动管理器,输入 dscontrol manager start 命令、编辑样本配置文件或使用 GUI。

    步骤 9. 启动顾问程序功能(可选)

    顾问程序为管理器提供有关负载均衡的服务器响应请求能力的更多信息。顾问程序特定于一个协议。例如,要启动 HTTP 顾问程序,发出以下命令:

    dscontrol advisor start http port
    
    要获取顾问程序及其缺省端口的列表,请参阅分派器 和 CBR 的命令参考。要获取每个顾问程序的描述,请参阅顾问程序列表

    步骤 10. 根据需要设置群集比例

    如果您启动顾问程序,您可修改给定的重要性比例到负载均衡判定中包含的顾问程序信息。要设置群集比例,发出 dscontrol cluster set cluster proportions 命令。要获取更多的信息,请参阅状态信息的重要性比例


    为负载均衡设置服务器

    如果并列配置的服务器(分派器驻留在它负载均衡的同一台机器上)或如果使用 nat 或 cbr 转发方法,请不要执行以下步骤。

    使用 MAC 转发方法时,分派器仅和后端服务器一起工作,这些后端服务器允许用附加的 IP 地址配置回送适配器,对于此 IP 地址,后端服务器从不响应 ARP(地址解析协议)请求。遵循此节中的步骤设置负载均衡的服务器。

    步骤 1. 为回送设备建立别名

    对于要使用的负载均衡服务器,必须将回送设备(通常称为 lo0)设置(或最好建立别名)到群集地址。使用 MAC 转发方法时,在将 TCP/IP 信息包转发至 TCP 服务器前,分派器 组件不改变信息包内的目的地 IP 地址。通过将回送设备设置到群集地址或建立回送设备到群集地址别名,负载均衡服务器将接收地址为到群集地址的信息包。

    如果具有支持网络接口别名的操作系统(例如,AIX、HP-UX、Linux、Solaris 或 Windows),则应该将回送设备的别名设为群集地址。使用支持别名的操作系统的优点是,可以配置负载均衡服务器为多个群集地址服务。

    记录:

    1. 有一些 Linux 内核版本,其需要补丁以给回送设备建立别名。 请参阅安装 Linux 内核补丁(以抑制 arp 回送接口上的响应),以确定是否需要 Linux 内核补丁。

    2. 对于 Linux 内核 V2.2.14 或更高版本,在 ifconfig 命令之前发出下列命令:
      echo 1 > /proc/sys/net/ipv4/conf/lo/hidden
      echo 1 > /proc/sys/net/ipv4/conf/all/hidden
      

    如果服务器操作系统不支持别名,必须将回送设备设置到群集地址。

    使用表 6 所示的操作系统命令来设置回送设备或为回送设备建立别名。

    表 6. 为分派器的回送设备(lo0)建立别名的命令

    AIX
    ifconfig lo0 alias cluster_address netmask netmask
    HP-UX ifconfig lo0:1 cluster_address up
    Linux ifconfig lo:1 cluster_address netmask 255.255.255.255 up
    OS/2(R) ifconfig lo cluster_address
    Solaris 7 ifconfig lo0:1 cluster_address 127.0.0.1 up
    Solaris 8 和 Solaris 9 ifconfig lo0:1 plumb cluster_address netmask netmask up
    Windows Server 2003
    1. 单击开始,然后单击控制面板
    2. 如果以前没有安装 MS Loopback Adapter 驱动程序,请添加该适配器驱动程序。
      1. 单击添加硬件。此操作启动“添加硬件向导”。
      2. 单击“下一步”
      3. 选择是,我已经连接了硬件,然后单击“下一步”。
      4. 如果 MS Loopback Adapter 位于列表中,则它已经安装 - 单击“取消”退出。
      5. 如果 MS Loopback Adapter 在列表中 - 选择添加新设备并单击“下一步”。
      6. 要从列表中选择硬件,在查找新硬件面板中,单击“否”并单击“下一步”。
      7. 选择网络适配器并单击“下一步”。
      8. 选择网络适配器面板上,在“制造商”列表中选择 Microsoft,然后选择 Microsoft Loopback Adapter
      9. 单击“下一步”,然后再次单击“下一步”以安装缺省设置(或者选择从磁盘安装,然后插入 CD 并从 CD 安装)。
      10. 单击“完成”完成安装。
    3. 控制面板,双击网络和拨号连接
    4. 选择设备名为“Microsoft Loopback Adapter”的连接。
    5. 从下拉菜单中选择属性
    6. 选择 Internet 协议(TCP/IP),然后单击属性
    7. 单击使用下面的 IP 地址。使用群集地址填充 IP 地址,并使用后端服务器的子网掩码填充子网掩码
      注意:
      不要输入路由器地址。 使用本地主 机作为缺省的 DNS 服务器。
    Windows 2000
    1. 单击开始设置,然后单击控制面板
    2. 如果以前没有安装 MS Loopback Adapter 驱动程序,请添加该适配器驱动程序。
      1. 双击添加/删除硬件。此操作将启动“添加/删除硬件向导”。
      2. 单击“下一步”,选择添加/排除设备设备,然后单击“下一步”。
      3. 屏幕经过闪烁后,出现选择硬件设备面板。
      4. 如果 MS Loopback Adapter 位于列表中,则它已经安装 - 单击“取消”退出。
      5. 如果 MS Loopback Adapter 在列表中 - 选择添加新设备并单击“下一步”。
      6. 要从列表中选择硬件,在查找新硬件面板中,单击“否”并单击“下一步”。
      7. 选择网络适配器并单击“下一步”。
      8. 选择网络适配器面板上,在“制造商”列表中选择 Microsoft,然后选择 Microsoft Loopback Adapter
      9. 单击“下一步”,然后再次单击“下一步”以安装缺省设置(或者选择从磁盘安装,然后插入 CD 并从 CD 安装)。
      10. 单击“完成”完成安装。
    3. 控制面板,双击网络和拨号连接
    4. 选择设备名称为“Microsoft Loopback Adapter”的连接并单击鼠标右键。
    5. 从下拉菜单中选择属性
    6. 选择 Internet 协议(TCP/IP),然后单击属性
    7. 单击使用下面的 IP 地址。使用群集地址填充 IP 地址,使用缺 省的子网掩码(255.0.0.0)填充子网掩码
      注意:
      不要输入路由器地址。 使用本地主 机作为缺省的 DNS 服务器。
    Windows NT
    1. 单击开始,然后单击设置
    2. 单击控制面板,然后双击网络
    3. 如果以前没有安装 MS Loopback Adapter 驱动程序,请添加该适配器驱动程序。
      1. 在“网络”窗口中,单击适配器
      2. 选择 MS Loopback Adapter,然后单击确定
      3. 提示时,请插入您的安装 CD 或磁盘。
      4. 在“网络”窗口中,单击协议
      5. 选择 TCP/IP 协议,然后单击属性
      6. 选择 MS Loopback Adapter,然后单击确定
    4. 将回送地址设置为群集地址。接受此缺省子网掩码(255.0.0.0),并且不要输入网关地址。
    注意:
    在 MS Loopback 驱动程序出现在 TCP/IP 配置下之前,您可能必须退出并重新输入“网络设置”。
    OS/390(R) 在 OS/390 系统上配置回送别名
    • 在 IP 参数成员(文件)中,需要管理员在 Home 地址列表中创建一个条目。例如:
      HOME
      ;Address                   Link
      192.168.252.11             tr0
      192.168.100.100            1tr1
      192.168.252.12             loopback
      
    • 可以为回送定义几个地址。
    • 在缺省情况下配置成 127.0.0.1。

    步骤 2. 检查额外路由

    在某些操作系统上,可能已创建了缺省路由,并且需要除去此路由。

    Windows 示例:

    1. 在输入 route print 命令后,将出现一个类似以下显示的表。 (此例显示了查找并除去到缺省掩码为 255.0.0.0 的群集 9.67.133.158 的额外路由。)
      Active Routes:
       
      Network Address Netmask         Gateway Address  Interface      Metric
      0.0.0.0         0.0.0.0         9.67.128.1       9.67.133.67     1
      9.0.0.0         255.0.0.0       9.67.133.158     9.67.133.158    1
      9.67.128.0      255.255.248.0   9.67.133.67      9.67.133.67     1
      9.67.133.67     255.255.255.255 127.0.0.1        127.0.0.1       1
      9.67.133.158    255.255.255.255 127.0.0.1        127.0.0.1       1
      9.255.255.255   255.255.255.255 9.67.133.67      9.67.133.67     1
      127.0.0.0       255.0.0.0       127.0.0.1        127.0.0.1       1
      224.0.0.0       224.0.0.0       9.67.133.158     9.67.133.158    1
      224.0.0.0       224.0.0.0       9.67.133.67      9.67.133.67     1
      255.255.255.255 255.255.255.255 9.67.133.67      9.67.133.67     1  
      
    2. 在“Gateway Address”列下查找群集地址。如果有额外路由,群集地址将出现两次。在给出的示例中,群集地址(9.67.133.158)在第 2 行和第 8 行中出现。
    3. 在群集地址出现的每一行中查找网络地址。这些路由中的一个是必需的,其它多余的路由需 要删除。要删除的额外路由的网络地址由群集地址的首位数字后加上三个 0 组成。在显示的示例 中,额外路由在第二行,网络地址为 9.0.0.0
                9.0.0.0    255.0.0.0   9.67.133.158  9.67.133.158     1 
       
      

    步骤 3. 删除任何额外路由

    必须删除额外路由。使用在表 7 显示的不同操作系统的命令 删除额外路由。

    示例:按照步骤 2 中“活动路由”示例表所示,删除额外路由,输入:

    route delete 9.0.0.0 9.67.133.158
    

    表 7. 为分派器删除任何额外路由的命令

    HP-UX
    route delete cluster_address cluster_address
    Windows route delete network_address cluster_address(在 MS-DOS 提示符)
    注意:
    每次重新引导服务器都必须删除额外路由。

    使用 图 15 中显示的示例,并设置运行 AIX 的服务器,命令为:

      route delete -net  204.0.0.0  204.67.172.72
    

    步骤 4. 验证服务器配置正确

    要验证后端服务器是否正确配置,当 Load Balancer 没有运行且未配置群集时,从相同子网的不同机器执行以下步骤:

    1. 发出命令:
      arp -d cluster
      
    2. 发出命令:
      ping cluster
      

      应该没有响应。如果对 ping 有响应,确保您没有 ifconfig 群集地址到接口。确保无机器具有发布到群集地址的 arp 条目。

      注意:
      对于 Linux 内核 V2.2.12 和 V2.2.13,确保 /proc/sys/net/ipv4/conf/lo/arp_invisible 中有“1”。

      对于 Linux 内核 V2.2.14 或更高版本,确保 /proc/sys/net/ipv4/conf/lo/hidden 和 /proc/sys/net/ipv4/conf/all/hidden 中有“1”。

    3. Ping 后端服务器,然后立即发出此命令:
      arp -a
      

      在命令输出中,您应该看到您的服务器的 MAC 地址。发出命令:

      arp -s cluster server_mac_address
      
    4. Ping 群集。您应该获取响应。发出 HTTP、Telnet 或其它请求,寻址此请求到您期待处理的后端服务器的群集。确保它正常工作。
    5. 发出命令:
      arp -d cluster
      
    6. Ping 群集。应该没有响应。
      注意:
      如果有响应,发出 arp 群集指令以获取错误配置的机器的 MAC 地址。然后,重复步骤 1 到 6。

    安装 Linux 内核补丁(以抑制 arp 回送接口上的响应)

    仅对于 Linux,可能需要特定的补丁(基于 Linux 内核版本)以为回送设备建立别名。

    补丁确保仅从具有 ARP 请求中需要的 IP 地址的网络适配器端口发送 ARP 响应。没有此补丁,Linux 将为回送别名发出网络上的 ARP 响应。 当具有不同 IP 地址的多个网络适配器端口在相同的物理网络上时,补丁也校正 ARP 竞争条件。

    重要信息:对于 UnitedLinux,您可能不需要安装补丁,因为可能已经提供了补丁。在 UnitedLinux for Intel 上,从 SP2(R) 开始包含补丁。在 UnitedLinux for S390 和 UnitedLinux for PowerPC64 上,UnitedLinux 1.0 SP2 当前没有补丁可用,但可能在以后的 service pack 中提供。

    您必须在以下条件下安装补丁:

    注意:
    此 Linux 内核补丁曾用于测试 IBM 产品并在 IBM 测试环境中取得令人满意的结果。您应当在自己的环境中评估 此代码的可用性,然后决定它是否满足需要。此代码可能将包含在 Linux 内核基本源代码的将来版本中。

    基于内容路由(CBR)组件

    此部分提供有关快速启动配置的信息,计划注意事项,并描述配置 Load Balancer 的 CBR 组件的方法。它包含以下几章:


    快速入门配置

    此快速入门示例显示如何使用 CBR 和高速缓存代理来配置三个本地连接的工作站,以负载均衡两台 Web 服务器之间的 Web 流量。(为简单起见,此示例描述同一 LAN 段上的服务器,但使用 CBR 对于在同一 LAN 上使用服务器无限制。)

    图 16. 简单本地 CBR 配置

    显示客户机、因特网云、Load Balancer 机器和两台标识了地址的本地连接的服务器的图。


    您需要什么?

    在快速入门示例中,您需要三个工作站和四个 IP 地址。一个工作站将用作 CBR;其它两个工作站将用作 Web 服务器。每个 Web 服务器需要一个 IP 地址。CBR 工作站需要一个实际地址和一个用于负载均衡的地址。

    要使用 CBR,高速缓存代理必须安装在同一台服务器上。要为 CBR 配置高速缓存代理,请参阅步骤 1. 配置高速缓存代理以使用 CBR


    如何准备?

    1. 对于此示例,设置您的工作站,以便它们在同一 LAN 段上。 确保三台机器之间的网络流量不必通过任何路由器或网桥传递。
    2. 配置三个工作站的网络适配器。对于此示例,我们假设 您有下列网络配置:
      工作站 名称 IP 地址
      1 server1.mywebsite.com 9.27.27.101
      2 server2.mywebsite.com 9.27.27.102
      3 server3.mywebsite.com 9.27.27.103
      网络掩码 = 255.255.255.0

      每个工作站仅包含一个 标准的以太网网络接口卡。

    3. 确保 server1.mywebsite.com 可以 ping 到 server2.mywebsite.com 和 server3.mywebsite.com。
    4. 确保 server2.mywebsite.com 和 server3.mywebsite.com 可以 ping 到 server1.mywebsite.com。
    5. 确保 server2.mywebsite.com 和 server3.mywebsite.com 上的 Web 服务器可运行。使用 Web 浏览器直接从 http://server2.mywebsite.com(例如,.../member/index.html)和 http://server3.mywebsite.com(例如,.../guest/index.html)请求页面。
    6. 获得该 LAN 段的另一个有效 IP 地址。这是您将提供给希望访问您站点的客户机的群集地址。对于此示例,我们将使用:
      Name= www.mywebsite.com
      IP=9.27.27.104  
      

    配置 CBR 组件

    有了 CBR,您可以使用命令行、配置向导或图形用户界面(GUI)创建配置。对于此快速入门示例,使用命令行演示配置步骤。

    注意:
    必须以英语字符输入参数值。 唯一的例外是用于主机名和文件名的参数值。

    使用命令行配置

    从命令提示符,遵循这些步骤:

    1. 启动 cbrserver。作为 root 用户或管理员运行以下命令:cbrserver
      注意:
      对于 Windows 平台:从“服务”面板启动 obrserver(IBM 基于内容路由):开始 > 设置(对于 Windows 2000) > 控制面板 > 管理工具 > 服务
    2. 启动 CBR 的执行程序功能:

      cbrcontrol executor start

    3. 启动高速缓存代理。(可以在您启动执行程序功能后的任何时候启动高速缓存代理):

      ibmproxy

      注意:
      对于 Windows 平台:您还可以从“服务”面板启动高速缓存代理:开始 > 设置(对于 Windows 2000)> 控制面板 > 管理工具 > 服务
    4. 将群集(主机名,客户机连接到的 Web 站点)添加到 CBR 配置:

      cbrcontrol cluster add www.mywebsite.com

    5. 将 Web 站点的群集地址(9.27.27.104)添加到 CBR 机器上的网络接口卡。请参阅步骤 5. 为网络接口卡建立别名(可选),以获取更多信息。
    6. 将 http 协议端口添加到 CBR 配置:

      cbrcontrol port add www.mywebsite.com:80

    7. 将每台 Web 服务器添加到 CBR 配置:

      cbrcontrol server add www.mywebsite.com:80:server2.mywebsite.com

      cbrcontrol server add www.mywebsite.com:80:server3.mywebsite.com

    8. 将内容规则添加到您的 CBR 配置。(内容规则定义如何区分 URL 请求并将其发送到服务器或服务器集中的一台服务器):

      cbrcontrol rule add www.mywebsite.com:80:memberRule type content pattern uri=*/member/*

      cbrcontrol rule add www.mywebsite.com:80:guestRule type content pattern uri=*/guest/*

      在此示例中,使用内容规则,对 Web 站点 www.mywebsite.com 的客户机请求基于其 URI 请求路径中的目录发送到一个不同的服务器。请参阅附录 B, 内容规则(模式)语法,以获取更多信息。

    9. 将服务器添加到您的规则:

      cbrcontrol rule useserver www.mywebsite:80:memberRule server2.mywebsite.com

      cbrcontrol rule useserver www.mywebsite:80:guestRule server3.mywebsite.com

      现在 CBR 将根据基于内容的规则执行负载均衡。具有其 URL 请求包含 /member/ 的客户机将导向 server2.mywebsite.com。具有其 URL 请求包含 /guest/ 的客户机将导向 server3.mywebsite.com。

    10. 启动 CBR 的管理器功能:

      cbrcontrol manager start

    11. 启动 CBR 的顾问程序功能:

      cbrcontrol advisor start http 80

      现在 CBR 将确保客户机请求不发送到发生故障的 Web 服务器。

    现在您具有本地连接的服务器的基本配置已完成。

    测试您的配置

    测试配置是否在工作。

    1. 从 Web 浏览器,转至位置 http://www.mywebsite.com/member/index.htm。如果出现页面,则说明一切正常。
    2. 在 Web 浏览器中重新装入页面。
    3. 查看以下命令的结果:
      cbrcontrol server report www.mywebsite.com:80:
      
      两个服务器的“总连接数”列合计应该为“2”。

    使用图形用户界面(GUI)配置

    要获取有关使用 CBR GUI 的信息,请参阅GUI附录 A, GUI:一般说明

    使用配置向导配置

    要获取有关使用 CBR 向导的信息,请参阅配置向导


    群集、端口、服务器配置的类型

    有许多可配置 CBR 以支持您的站点的方法。如果您的所有客户都与之连接 的站点只有一个主机名,您可以定义服务器的单一群集。对于这些服务器中的每一台,配置 CBR 通信所用的端口。请参阅图 9

    图 17. 配置有一个群集和两个端口的 CBR 示例

    简单配置

    在此 CBR 组件示例中,一个群集在 www.productworks.com 定义。此群集有两个端口:端 口 80 用于 HTTP,端口 443 用于 SSL。因此,请求至 http://www.productworks.com(端口 80)的客户机与请求至 https://www.productworks.com(端口 443)的客户机将转向不同的服务器。

    如果您具有一个很大的站点,此站点具有为所支持的每种协议指定的许多服务器,则另一种配置 CBR 的方法将比较合适。在这种情况下,您可能希望为每种协议定义具有一个端口但具有许多服务器的群集,如图 10 中所示。

    图 18. 配置有两个群集(每个群集有一个端口)的 CBR 示例

    具有两个群集(每个群集有一个端口)的配置

    在此 CBR 组件的示例中,两个群集定义为:www.productworks.com 用于端口 80(HTTP)和 www.testworks.com 用于端口 443(SSL)。

    如果您的站点可为多个公司或部门提供内容主机管理,并且每一个主机都用不同的 URL 连接至您的站点,则需要第三种方法来配置 CBR。在这种情况下,您可能希望为每个公司或部门定义一个群集,然后定义在此 URL 接收连接的任何端口,如图 11 中所示。

    图 19. 配置有 2 个群集(每个群集有 2 个端口)的 CBR 示例

    具有两个群集(每个群集有两个端口)的配置

    在此 CBR 组件的示例中,为位于 www.productworks.com 和 www.testworks.comtwo 的每个站点定义两个群集,其端口为 80(HTTP)和 443(SSL)。


    计划基于内容路由组件

    本章说明在与高速缓存代理一起安装和配置 CBR 组件之前,网络计划人员应考虑的问题。

    本章包含以下几节:


    硬件和软件要求

    平台要求:


    计划注意事项

    CBR 组件允许您使用高速缓存代理来代理请求,以负载均衡 HTTP 和 SSL 流量。

    有了 CBR,您可以对(使用 cbrcontrol 命令)从 CBR 配置文件配置的服务器进行负载均衡,或可以从 WAS 配置文件负载均衡服务器。请参阅负载均衡 WebSphere Application Server(WAS),以获取有关从 WAS 配置文件负载均衡服务器的更多信息。

    CBR 的组件结构与分派器很相似。CBR 包括下列功能:

    CBR 的三个关键功能部件(执行程序、管理器和顾问程序)相互作用以平衡和分派服务器间的进入请求。 连同对请求进行负载均衡,执行程序还监视新连接和活动连接数,并将此信息提供给管理器。

    不同种内容的负载均衡请求

    CBR 组件使您能指定一个服务器组,这些服务器将根据与客户机请求内容匹配的正则表达式来处理请求。CBR 组件允许您划分您的站点,以便由不同服务器组处理不同内容或应用程序服务。对于访问站点的客户机,此划分是透明的。

    为更好的响应时间划分您的站点内容

    一种划分站点的方法是指定某些服务器只处理 CGI 请求,另一服务器组处理所有其它请求。这将 停止计算密集的 CGI 脚本以免进行处理正常 HTML 信息量的服务器速度放慢,以允许客户机获得更好的整体响应时间。使用此方案,还可为正常请求分配更多功效强大的工作站。客户机响应时间将更加短,且不需要昂贵的服务器升级费用。还可为 CGI 请求分配更多功效强大的工作站。

    划分您的站点的另一种可能的方法是,将访问需要注册的页面的客户机指向一个服务器组,而将所有其它请求指向第二个服务器组。这将避免您站点的任一浏览器将可能由已提交注册的客户机所使用的资源滞留。它还允许您使用更多功效强大的工作站为已注册的客户机提供服务。

    当然,您还可以组合使用上述两种方法,以获得更大的灵活性并改进服务。

    提供 Web 服务器内容的备份

    因为 CBR 允许您为每种请求指定多台服务器,所以可为最佳客户机响应对请求进行负载均衡。通过允许为每种内容类型指定多个服务器,您可在工作站或服 务器停机时受到保护。CBR 将识别该故障,并继续将客户机请求负载均衡到集合中的其它服务器。

    使用多个高速缓存代理进程来改进 CPU 使用率

    高速缓存代理 通过其插件接口,与 CBR 进程通信。CBR 必须在本地机器上运行,以使其工作。因为这些是两个单独的进程,多个高速缓存代理的实例可以运行并与单个 CBR 实例一起工作。可以配置此设置,以便分离高速缓存代理间的地址或功能,或通过使一些高速缓存代理处理客户机流量来改进机器的资源使用率。这些代理实例可以在不同端口上侦听,或绑定到同一端口上的唯一 IP 地址,这取决于什么最适合流量要求。

    与 CBR 一起使用基于规则的负载均衡

    CBR 与高速缓存代理一起测试 HTTP 请求使用指定的规则类型。当高速缓存代理运行时,它接受客户机请求并查询 CBR 组件以获取最佳服务器。根据此查询,CBR 将请求与具有优先次序的规则集进行匹配。当规则匹配时,会从预配置服务器集中选择适当的服务器。最后,CBR 通知 高速缓存代理选择了哪个服务器,并且在那里请求获得代理。

    一旦您定义一个群集进行负载均衡,就必须确保所有到该群集的 请求都有一条选择服务器的规则。如果未找到与特定请求匹配的规则,则客户机将从高速缓存代理接收到错误页面。确保所有请求都会与一些规则匹配的最容易的方法是,创建一个优先级号非常高的“总是为真”规则。确保此规则使用的服务器可处理不是明确地由具有优先级编号较低的规则处理的所有请求。(注:首先评估优先级编号较低的规则。)

    要获 取更多的信息,请参阅配置基于规则的负载均衡

    跨完全安全的(SSL)连接的负载均衡

    具有高速缓存代理的 CBR 可接收从客户机到代理(客户机到代理端)的 SSL 传输,并且支持从代理到 SSL 服务器(代理到服务器端)的传输。通过在 CBR 配置中定义服务器上的 SSL 端口以接收来自客户机的 SSL 请求,使用 CBR 跨安全的(SSL)服务器进行负载均衡,您具有了维护完全安全的站点的能力。

    除了为 CBR 进行的其它 ibmproxy.conf 文件更改,另一个配置语句需要添加到 IBM 高速缓存代理的 ibmproxy.conf 以在代理到服务器端启用 SSL 加密。其格式必须为:

    proxy uri_pattern url_pattern address
    

    其中,uri_pattern 是一个要匹配的模式(例如:/secure/*),url_pattern 是替换 URL(例如:https://clusterA/secure/*),address 是群集地址(例如:clusterA)。

    负载均衡 SSL 中的客户机到代理和 HTTP 中的代理到服务器

    具有高速缓存代理的 CBR 还可接收来自客户机的 SSL 传输,然后在将 SSL 请求代理到 HTTP 服务器之前,对此请求进行解密。 为了 CBR 支持 SSL 中的客户机到代理和 HTTP 中的代理到服务器,有一个可选关键字 mapport (在 cbrcontrol 服务器命令中)。当您需要表明服务器上的端口不同于客户机的进入端口时,使用此关键字。以下是使用 mapport 关键字添加端口的示例,其中客户机的端口是 443(SSL)而服务器的端口是 80(HTTP):

    cbrcontrol server add cluster:443 mapport 80
    

    mapport 的端口号可以是任何正整数值。缺省为客户机进入端口的端口号值。

    因为 CBR 必须能够对服务器(在端口 443(SSL)上配置)的 HTTP 请求提出建议,所以一个特殊的顾问程序 ssl2http 将会提供。此顾问程序在端口 443(客户机的进入端口)上启动,并在为此端口配置的服务器上提出建议。如果有两个已配置的群集,并且每个群集都具有端口 443 和配置了不同 mapport 的服务器,则顾问程序的单个实例因此可打开相应 的端口。以下为此配置的一个示例:

    Executor          
        Cluster1
           Port:443
               Server1 mapport 80
               Server2 mapport 8080
        Cluster2
           Port:443
               Server3 mapport 80
               Server4 mapport 8080
        Manager
          Advisor ssl2http 443
     
    

    负载均衡 WebSphere Application Server(WAS)

    有了 CBR,您可以负载均衡在群集的 WAS(V5)服务器上托管的 Web 应用程序请求。图 20 演示配置设置,期间高可用性分派器机器跨越第一层的 CBR(使用高速缓存代理)和第二层的 WebSphere Application Server(以及到 Web HTTP 服务器)进行负载均衡。

    图 20. 分派器、CBR 和 WAS 部署的配置

    显示客户机、因特网云、高可用分派器机器跨越第一层的 CBR 和第二层的 WAS 进行负载均衡的图。

    CBR 允许有状态及无状态的请求使用 WAS 亲缘性格式路由到正确的 WAS 服务器。通过将 WAS HTTP 插件配置文件(具有缺省文件名 plugin-cfg.xml)自动映射到 CBR 配置来处理配置。您可以使用 cbrcontrol file newload 命令装入 WAS HTTP 插件配置文件。此命令将 WAS 配置文件映射到 CBR 配置。要保存此配置文件,请使用 cbrcontrol file save 命令。

    一旦 Load Balancer 装入插件配置文件,并映射到 CBR 配置,建议如果您需要更改 WAS 群集配置,则应重新装入更新的 WAS HTTP 插件配置文件。使用 newload 命令重新装入是更新 WAS 群集配置的首选方法,此方法胜于使用命令行或 GUI 将服务器添加到 WAS 规则来更新配置。

    注意:
    cbrcontrol file appendload 命令支持装入 WAS HTTP 插件配置文件。您只能在现有 CBR 配置文件或装入的 WAS HTTP 插件配置的顶部加载标准 CBR 配置文件。

    作为将 WAS 群集配置映射到 CBR 配置的一部分,与从 WAS 插件配置文件创建的规则关联的所有规则和服务器由以下信息来标识其源:

    位于后端 WAS 机器的 WLMServlet 将执行当机服务器检测,并将服务器权值信息提供给 Load Balancer 的 WLMServlet 顾问程序。 只有 WLMServlet 顾问程序可以建议服务器配置为属于 WAS 群集。WLMServlet 不必驻留于 WAS 机器。如果 WLMServlet 不存在,则服务器权值缺省为 WAS 插件配置文件中指定的权值。


    配置基于内容路由的组件

    执行本章所述步骤之前,请参阅计划基于内容路由组件。本章阐述了如何为 Load Balancer 的 CBR 组件创建一个基本配置。


    配置任务概述

    注意:
    在开始执行表中的配置步骤之前,要确保 CBR 机器与所有服务器都已连接到网络,具有有效 IP 地址,并且都能够相互进行 ping 操作。

    表 8. CBR 组件的配置任务

    任务 描述 相关信息
    设置 CBR 机器。 查找要求。 设置 CBR 机器
    设置要负载均衡的机器。 设置负载均衡配置。 步骤 7. 定义负载均衡服务器

    配置方法

    要创建 Load Balancer 的 CBR 组件的基本配置,有四种基本方法:

    要使用 CBR,必须已安装高速缓存代理。

    注意:
    高速缓存代理是服务,缺省情况下在安装后它自动启动。在启动 CBR 服务器功能(cbrserver)之前,您必须停止高速缓存代理。建议您修改高速缓存代理为手工启动而不自动启动。

    命令行

    这是配置 CBR 最直接的方法。命令参数值必须以英文字符输入。只有主机名(例如,在群集和服务器命令中使用的)和文件名例外。

    要从命令行启动 CBR:

    您可输入 cbrcontrol 命令参数的缩写版本。仅需输入参数特有的字母。例如,要获得关于文件保存命令的帮助,可以输入 cbrcontrol he f 来替代 cbrcontrol help file

    启动命令行界面:发出 cbrcontrol 以接收 cbrcontrol 命令提示符。

    要结束命令行界面:发出 exitquit

    记录:

    1. 在 Windows 平台上,自动启动分派器组件的 dsserver。如果您仅使用 CBR 而不使用分派器组件,您可以按如下所示阻止 dsserver 自动启动:
      1. 在“服务”窗口中,右键单击 IBM 分派器。
      2. 选择“属性”。
      3. 启动类型字段,选择“手工”。
      4. 单击“确定”,并关闭“服务”窗口。

    2. 当您从操作系统的命令提示符而不是从 cbrcontrol >> 提示符配置基于内容的路由(CBR)时,使用下列字符时要小心:

      ( ) 左、右括号

      & & 号

      | 竖线

      ! 感叹号

      * 星号

      操作系统的 shell 可以将这些解释为特殊字符,并在 cbrcontrol 评估它们之前,将其转换为备用文本。

      以上列出的特殊字符是 cbrcontrol rule add 命令上的可选字符,为内容规则指定模式时使用它们。例如,仅当使用 cbrcontrol>> 提示符时以下命令可能有效。

      rule add 10.1.203.4:80:cbr_prod_rule_ek type content
        pattern client=181.0.153.222&uri=/nipoek/*
      

      对于在操作系统提示符下工作的这个相同的命令,模式必须加上双引号(""),按如下所示:

      cbrcontrol rule add 10.1.203.4:80:cbr_prod_rule_ek type content
        pattern "client=181.0.153.222&uri=/nipoek/*"
      

      如果不使用双引号,当规则保存到 CBR 时某些模式可能被截断。注意当使用 cbrcontrol>> 命令提示符时不支持双引号。

    脚本

    可将配置 CBR 的命令输入一个配置脚本文件,并一起执行。

    注意:
    要快速执行脚本文件(例如,myscript)的内容,使用以下命令之一:

    要将当前配置保存到脚本文件(例如,savescript),运行以下命令:

    cbrcontrol file save savescript
    

    此命令将保存配置脚本文件至 ...ibm/edge/lb/servers/configurations/cbr 目录。

    GUI

    有关一般说明和图形用户界面(GUI)的示例,请参阅图 42

    要启动 GUI,遵循这些步骤

    1. 确保 cbrserver 正在运行。作为 root 用户或管理员,从命令提示符发出下列命令:cbrserver
    2. 下一步,执行以下操作之一:
    3. 启动高速缓存代理。(从 GUI,在启动高速缓存代理之前,您必须首先连接到主机并为 CBR 组件启动执行程序。) 执行下列其中一种操作;

    要从 GUI 配置 CBR 组件,必须先在树结构中选择基于内容路由。一旦连接到主机,即可启动管理器。您还可以创建包含端口和服务器的群集,并启动该管理器的顾问程序。

    使用 GUI 可以完成 cbrcontrol 命令能完成的任何操作。例如,要用命令行定义群集,可以输入 cbrcontrol cluster add cluster 命令。要从 GUI 定义一个群集,右键单击执行程序,然后在弹出菜单左键单击添加群集。在弹出窗口中输入群集地址,然后单击确定

    已有的 CBR 配置文件可用主机弹出菜单中显示的装入新配置(用于完全替代当前配置)和附加到当前配置(用于更新当前配置)选项进行装入。您应该使用同样在主机弹出菜单中显示的将配置文件另存为选项,定期将 CBR 配置保存到文件。文件菜单位于 GUI 的顶部,使用它可以将当前的主机连接保存到文件,或恢复现有文件中所有 Load Balancer 组件的连接。

    单击 Load Balancer 窗口右上角的问号图标可访问帮助信息。

    为了从 GUI 执行命令:从 GUI 树突出显示“主机”节点,并从“主机”弹出菜单中选择发送命令...。在命令输入字段中,输入您要执行的命令,例如:executor report。在当前会话中运行的命令的结果和历史出现在提供的窗口中。

    要获取有关使用 GUI 的更多信息,请参阅附录 A, GUI:一般说明

    配置向导

    如果您使用配置向导,遵循这些步骤:

    1. 启动 cbrserver:以 root 用户或管理员身份在命令提示符下发出 cbrserver
    2. 启动 CBR 的向导功能:

      通过发出 cbrwizard,从命令提示符启动向导。或者从 GUI 上的 CBR 组件菜单中选择“配置向导”。

    3. 启动高速缓存代理以负载均衡 HTTP 或 HTTPS(SSL)流量。

      对于 AIX、HP-UX、Linux 或 Solaris:要启动高速缓存代理,输入 ibmproxy

      对于 Windows:要启动高速缓存代理,转至“服务”面板:开始 > 设置(对于 Windows 2000)> 控制面板 > 管理工具 > 服务

    CBR 向导将逐步引导您创建 CBR 组件的基本配置。它将询问关于网络的问题,并指导设置一个群集,使 CBR 能在一组服务器间负载均衡流量。


    设置 CBR 机器

    在设置 CBR 机器前,您必须是 root 用户(对于 AIX、HP-UX、Linux 或 Solaris)或管理员(Windows)。

    对于要设置的每个服务器群集,都需要一个 IP 地址。群集地址是与主 机名关联的地址(如 www.yourcompany.com)。客户机使用该 IP 地址以连接到群集中的服务器。要特别注意的是,该地址可以在客户机的 URL 请求中 找到。到同一群集地址的所有请求都由 CBR 进行负载均衡。

    仅对于 Solaris:使用 CBR 之前,必须为 IPC(进程间通信)修改系统缺省值。共享内存段的最大大小和信号量标识数需要增加。要调整您的系统以支持 CBR,在您的系统上编辑 /etc/system 文件,来添加下列语句然后重新引导:

    set shmsys:shminfo_shmmax=0x02000000
    set semsys:seminfo_semmap=750
    set semsys:seminfo_semmni=30
    set semsys:seminfo_semmns=750
    set semsys:seminfo_semmnu=30
    set semsys:seminfo_semume=30
    

    如果您不把共享内存段增加至上述所示的值,cbrcontrol executor start 命令将失败。

    步骤 1. 配置高速缓存代理以使用 CBR

    要使用 CBR,必须已安装高速缓存代理。

    注意:
    高速缓存代理是服务,缺省情况下在安装后它自动启动。在启动 CBR 服务器功能之前,您必须停止高速缓存代理。建议您修改高速缓存代理为手工启动而不自动启动。

    您必须对高速缓存代理配置文件(ibmproxy.conf)作以下修改:

    确保进入 URL 伪指令 CacheByIncomingUrl 是“off”(缺省)。

    在配置文件的映射规则节中,对每个群集添加一个类似于下列的映射规则:

    Proxy    /*  http://cluster.domain.com/*    cluster.domain.com
    
    注意:
    CBR 稍后设置协议、服务器和目标端口。

    必须为 CBR 插件编辑四个条目:

    每个条目必须独占一行。在 ibmproxy.conf 文件中有几个“ServerInit”的实例,每一个对于一个插件。应该编辑和不注释“CBR 插件”的条目。

    以下为每个操作系统列出具体的配置文件附加部分。

    图 21. AIX、Linux 和 Solaris 的 CBR 配置文件


    ServerInit  /opt/ibm/edge/lb/servers/lib/libndcbr.so:ndServerInit 
     
    PostAuth  /opt/ibm/edge/lb/servers/lib/libndcbr.so:ndPostAuth 
     
    PostExit  /opt/ibm/edge/lb/servers/lib/libndcbr.so:ndPostExit 
     
    ServerTerm  /opt/ibm/edge/lb/servers/lib/libndcbr.so:ndServerTerm
    

    图 22. HP-UX 的 CBR 配置文件


    ServerInit  /opt/ibm/edge/lb/servers/lib/libndcbr.sl:ndServerInit 
     
    PostAuth  /opt/ibm/edge/lb/servers/lib/libndcbr.sl:ndPostAuth 
     
    PostExit  /opt/ibm/edge/lb/servers/lib/libndcbr.sl:ndPostExit 
     
    ServerTerm  /opt/ibm/edge/lb/servers/lib/libndcbr.sl:ndServerTerm
    

    图 23. Windows 的 CBR 配置文件


    ServerInit  C:\Program Files\IBM\edge\lb\servers\lib\libndcbr.dll:ndServerInit 
     
    PostAuth  C:\Program Files\IBM\edge\lb\servers\lib\libndcbr.dll:ndPostAuth 
     
    PostExit  C:\Program Files\IBM\edge\lb\servers\lib\libndcbr.dll:ndPostExit 
     
    ServerTerm  C:\Program Files\IBM\edge\lb\servers\lib\libndcbr.dll:ndServerTerm
    

    步骤 2. 启动服务器功能

    要启动 CBR 服务器功能,在命令行上输入 cbrserver

    缺省配置文件(default.cfg) 在启动 cbrserver 时自动装入。如果您决定在 default.cfg 中保存 CBR 配置,那么下次 cbrserver 启动时将自动装入此文件中保存过的所有信息。

    步骤 3. 启动执行程序功能

    要启动执行程序功能,输入 cbrcontrol executor start 命令。此时也可以更改不同的执行程序设置。请参阅dscontrol executor - 控制执行程序

    步骤 4. 定义群集并设置群集选项

    CBR 将发往群集的请求平衡至该群集端口上配置的相应服务器。

    群集是位于 URL 主机部分的符号名,且应匹配在 ibmproxy.conf 文件的代理语句中使用的名称。

    要定义群集,发出以下命令:

    cbrcontrol cluster add cluster
    

    要设置群集选项,发出以下命令:

    cbrcontrol cluster set cluster option value
    

    要获取更多的信息,请参阅分派器 和 CBR 的命令参考

    步骤 5. 为网络接口卡建立别名(可选)

    如果您正在运行作为逆向代理配置的高速缓存,当为多个 Web 站点负载均衡时,您必须将每个 Web 站点的群集地址添加到 Load Balancer 框的网络接口卡的至少一个卡中。 否则,可以省略此步骤。

    对于 AIX、HP-UX、Linux 或 Solaris:要将群集地址添加到网络接口,请使用 ifconfig 命令。为您的操作系统使用命令,如表 9 中所示。

    表 9. 为 NIC 建立别名的命令

    AIX ifconfig interface_name alias cluster_address netmask netmask
    HP-UX ifconfig lan0:1 cluster_address netmask netmask up
    Linux ifconfig interface_name cluster_address netmask netmask up
    Solaris 8 和 Solaris 9 ifconfig addif interface_name cluster_address netmask netmask up
    注意:
    对于 Linux 和 Solaris,interface_name 必须具有添加的每个群集地址的唯一号码,例如:eth0:1、eth0:2 等。

    对于 Windows 2000:要将群集地址添加到网络接口中,执行下列操作:

    1. 单击开始设置,然后单击控制面板
    2. 双击网络和拨号连接
    3. 右键单击本地区域连接
    4. 选择属性
    5. 选择 Internet 协议(TCP/IP)并单击属性
    6. 选择使用下列 IP 地址并单击高级
    7. 单击添加,然后输入群集的 IP 地址子网掩码

    对于 Windows 2003:要将群集地址添加到网络接口中,执行下列操作:

    1. 单击启动控制面板网络连接 ,然后单击您要使用的本地区域连接
    2. 单击属性
    3. 选择 Internet 协议(TCP/IP)并单击属性
    4. 选择使用下列 IP 地址并单击高级
    5. 单击添加,然后输入群集的 IP 地址和子网掩码。

    步骤 6. 定义端口并设置端口选项

    端口号指服务器应用程序正在侦听所在的端口。对于使用运行 HTTP 流量的高速缓存代理的 CBR,通常是端口 80。

    要为先前步骤中定义的群集定义端口,发出下列命令:

    cbrcontrol port add cluster:port 
    

    要设置端口选项,发出以下命令:

    cbrcontrol port set cluster:port option value
    

    要获取更多的信息,请参阅分派器 和 CBR 的命令参考

    步骤 7. 定义负载均衡服务器

    服务器是运行希望负载均衡的应用程序的机器。server 是服务器的符号名称或者点分十进制地址。要定义群集和端口的服务器,发出以下命令:

    cbrcontrol server add cluster:port:server
    

    在群集上,必须为每个端口定义多个服务器,以便执行负载均衡。

    步骤 8. 向配置中添加规则

    这是配置 CBR 和高速缓存代理的关键步骤。规则定义如何区分 URL 请求并将其发送到相应的服务器组中的一台服务器。CBR 使用的特殊规则称为内容规则。要定义内容规则,发出以下命令:

    cbrcontrol rule add cluster:port:rule type content pattern pattern
    

    pattern 是将用于比较每个客户机请求中的 URL 的正则表达式。有关配置模式的更多信息,请参阅附录 B, 内容规则(模式)语法

    其它一些分派器中定义的规则类型也可以用于 CBR。要获取更多的信息,请参阅配置基于规则的负载均衡

    步骤 9. 添加服务器到您的规则

    当客户机请求与一条规则匹配时,系统查询服务器规则集并 确定最佳服务器。此规则的服务器集合是该端口中定义的服务器的子 集。要将服务器添加到规则的服务器集合,发出以下命令:

    cbrcontrol rule useserver cluster:port:rule server
    

    步骤 10. 启动管理器功能(可选)

    管理器功能改进负载均衡。要启动管理器,发出以下命令:

     cbrcontrol manager start
    

    步骤 11. 启动顾问程序功能(可选)

    顾问程序为管理器提供有关负载均衡服务器响应请求能力的更多信息。顾问程序特定于一个协议。例如,要启动 HTTP 顾问程序,发出以下命令:

    cbrcontrol advisor start http port
    

    步骤 12. 根据需要设置群集比例

    如果您启动顾问程序,您可修改给定的重要性比例到负载均衡判定中包含的顾问程序信息。要设置群集比例,发出 cbrcontrol cluster set cluster proportions 命令。要获取更多的信息,请参阅状态信息的重要性比例

    步骤 13. 启动高速缓存代理

    在新环境中,启动高速缓存代理:从命令提示符,发出 ibmproxy

    注意:
    对于 Windows:从“服务”面板启动 高速缓存代理:开始 -> 设置(对于 Windows 2000)-> 控制面板 -> 管理工具 -> 服务

    CBR 配置示例

    要配置 CBR,遵循这些步骤:

    1. 启动 CBR:发出 cbrserver 命令。
    2. 启动命令行界面:发出 cbrcontrol 命令。
    3. cbrcontrol 提示将出现。发出以下命令:(cluster(c),port(p),rule(r),server(s))
    4. 启动高速缓存代理:发出 ibmproxy 命令。(对于 Windows 平台,从“服务”面板启动高速缓存代理。
    5. 从浏览器除去所有代理配置。
    6. 装入 http://c/ 到您的浏览器,其中“c”是您上面配置的群集。

    站点选择器组件

    此部分提供有关快速启动配置的信息,计划注意事项,并描述配置 Load Balancer 的站点选择器组件的方法。它包含以下几章:


    快速入门配置

    此快速入门示例显示如何使用站点选择器创建站点名配置,以基于用于客户机请求的域名对一组服务器间的流量进行负载均衡。

    图 24. 简单站点选择器配置

    显示客户机、因特网云、Load Balancer 机器和两台标识了地址的本地连接的服务器的图。


    您需要什么?

    对于此快速入门配置示例,您将需要以下内容:


    如何准备?

    对于此快速入门示例,公司的站点域是 mywebshop.com。 由于站点选择器将被负载均衡到此域内的多个 URL 或站点,您需要定义子域(apps.mywebshop.com)。站点选择器授权给 apps.mywebservice.com 子域。子域 apps.mywebshop.com 将包含以下站点名:marketing.apps.mywebshop.com 和 developer.apps.mywebshop.com。

    1. 更新公司站点的域名服务器(请参阅图 24)。 在 named.data 文件中为子域(apps.mywebshop.com)创建名称服务器记录,其中站点选择器是授权的名称服务器。

      apps.mywebshop.com. IN NS siteselector.mywebshop.com

    2. 确保 URL 或站点在当前域名系统中不解析。
    3. 在您打算具有站点选择器负载均衡的服务器(服务器 1、服务器 2、服务器 3 和服务器 4)上安装度量服务器。请参阅度量服务器,以获取更多信息。

    配置站点选择器组件

    有了站点选择器,您可以使用命令行、配置向导或图形用户界面(GUI)创建配置。 对于此快速入门示例,使用命令行演示配置步骤。

    注意:
    必须以英语字符输入参数值。 唯一的例外是用于主机名和文件名的参数值。

    使用命令行配置

    从命令提示符,遵循这些步骤:

    1. 启动站点选择器上的 ssserver。作为 root 用户或管理员,从命令提示符发出以下命令:ssserver
      注意:
      对于 Windows 平台:从“服务”面板启动 ssserver(IBM 站点选择器):开始 > 设置(对于 Windows 2000)> 控制面板 > 管理工具 > 服务
    2. 在站点选择器上配置站点名(marketing.apps.mywebshop.com 和 developer.apps.mywebshop.com):

      sscontrol sitename add marketing.apps.mywebshop.com

      sscontrol sitename add developer.apps.mywebshop.com

    3. 将服务器添加到站点选择器配置。(将服务器 1 和服务器 2 配置到站点名 marketing.apps.mywebshop.com。将服务器 3 和服务器 4 配置到站点名 developer.apps.myeebshop.com):

      sscontrol server add marketing.apps.mywebshop.com:server1+server2

      sscontrol server add developer.apps.mywebshop.com:server3+server4

    4. 启动站点选择器的管理器功能:

      sscontrol manager start

    5. 启动站点选择器的顾问程序功能(marketing.apps.mywebshop.com 的 HTTP 顾问程序和 developer.apps.mywebshop 的 FTP 顾问程序):

      sscontrol advisor start http marketing.apps.mywebshop.com:80

      sscontrol advisor start ftp developer.apps.mywebshop.com:21

      现在,站点选择器将确保客户机请求不发送到发生故障的服务器。

    6. 启动站点选择器配置上的名称服务器:

      sscontrol nameserver start

    7. 确保已在每台负载均衡的服务器上启动度量服务器。

    现在,您的基本站点选择器配置完成。

    测试您的配置

    测试配置是否在工作。

    1. 尝试 ping 站点名。名称应解析为其中一台已配置的服务器的 IP 地址。
    2. 连接到应用程序,浏览站点名并发出有效的请求。例如:
    3. 查看以下命令的结果:

      sscontrol server status marketing.apps.mywebshop.com:

      sscontrol server status developer.apps.mywebshop.com:

      每台服务器的总命中条目应添加到 ping 和应用程序请求中。

    使用图形用户界面(GUI)配置

    要获取有关使用站点选择器 GUI 的信息,请参阅GUI附录 A, GUI:一般说明

    使用配置向导配置

    要获取有关使用站点选择器向导的信息,请参阅配置向导


    计划站点选择器组件

    本章说明安装和配置站点选择器组件之前网络计划人员应考虑的问题。

    本章包含以下几节:


    硬件和软件要求


    计划注意事项

    站点选择器与域名服务器一起使用集中的测量和权值在服务器组中进行负载均衡。您可创建站点配置,以使您能根据用于客户机请求的域名对服务器组中的流量进行负载均衡。

    图 25. DNS 环境的示例


    当在您的 DNS 环境中设置站点选择器的子域时,站点选择器应当在其自己的子域中具有权限。例如(请参阅图 25),已为您的公司分配了 company.com 域上的权限。 而且在这个公司中还有几个子域。那么当 DNS 服务器仍具有 atlanta.company.comboston.company.com 的权限时,站点选择器具有 siteload.company.com 的权限。

    为了公司的名称服务器可识别具有 siteload 子域权限的站点选择器,需要将该名称服务器条目添加到其命名的数据文件中。例如,在 AIX 上,名称服务器条目看上去类似于下列内容:

    siteload.company.com. IN NS siteselector.company.com.
    

    其中,siteselector.company.com 是站点选择器机器的主机名。等价条目需要在其它任何命名服务器文件中产生,以供 DNS 服务器使用。

    客户机将解析域名的请求提交到网络内的名称服务器。名称服务器将请求转发到站点选择器机器。然后站点选择器将域名解析为已在此站点名下配置的服务器中的其中一台服务器的 IP 地址。站点选择器将所选服务器的 IP 地址返回给名称服务器。名称服务器返回 IP 地址给客户机。(站点选择器担当非递归(叶节点)名称服务器,并且如果它未解析域名请求,则将返回一个错误。)

    请参阅图 5,此图说明了在一个站点中,站点选择器用于与 DNS 系统一起跨本地和远程服务器进行负载均衡。

    站点选择器包含下列功能:

    站点选择器的四个关键功能(名称服务器、管理器、度量服务器和顾问程序)相互作用以平衡和解析服务器之间的进入请求。

    TTL 注意事项

    使用基于 DNS 的负载均衡要求启用名称解析的高速缓存。TTL(使用期限)值确定了基于 DNS 的负载均衡的有效性。 TTL 确定另一个名称服务器多久将高速缓存解析的响应。小 TTL 值允许更快地了解服务器或网络负载中的细微更改。 然而,禁用高速缓存要求客户机与每个名称解析请求的授权名称服务器联系,这样就可能增加客户机地等待时间。 选择 TTL 值时,仔细考虑禁用高速缓存对环境产生的影响。同时知道基于 DNS 的负载均衡可能是由名称解析的客户机端高速缓存限制的。

    TTL 可使用 sscontrol sitename [add | set] 命令进行配置。要获取更多的信息,请参阅sscontrol sitename - 配置站点名

    使用网络接近功能

    网络接近是对于请求客户机的每个服务器接近性的计算。要确定网络接近,度量服务器代理程序(必须驻留在每个负载均衡的服务器上)发送 ping 到客户机 IP 地址,并将响应时间返回给站点选择器。站点选择器将接近响应用于负载均衡决定中。 站点选择器将网络接近响应值与来自管理器的权值组合,以创建服务器的最终组合权值。

    与站点选择器一起使用网络接近功能是可选的。

    站点选择器提供每一站点名可设置的下列网络接近选项:

    网络接近选项可在 sscontrol sitename [add | set] 命令上设置。请参阅站点选择器的命令参考,以获取更多信息。


    配置站点选择器组件

    执行本章所述步骤之前,请参阅计划站点选择器组件。本章阐述了如何为 Load Balancer 的站点选择器组件创建基本配置。


    配置任务概述

    注意:
    在开始此表中的配置步骤之前,确保您的站点选择器机器和所有服务器连接到网络,具有有效 IP 地址,并且能互相进行 ping 操作。

    表 10. 站点选择器组件的配置任务

    任务 描述 相关信息
    设置站点选择器机器。 查找要求。 设置站点选择器机器
    设置要负载均衡的机器。 设置负载均衡配置。 步骤 4. 定义负载均衡服务器

    配置方法

    要创建 Load Balancer 的站点选择器组件的基本配置,有四种基本方法可以配置站点选择器组件:

    命令行

    这是配置站点选择器的最直接方法。命令参数值必须以英文字符输入。唯一的例外是主机名(例如,用于站点名称和服务器命令中)和文件名。

    要从命令行启动站点选择器:

    1. 在命令提示符下发出 ssserver 命令。要停止服务,输入:ssserver stop
      注意:
      对于 Windows,单击启动 > 设置(对于 Windows 2000)>控制面板 > 管理工具 > 服务。右键单击 IBM 站点选择器,然后选择启动。要停止服务,遵循相同的步骤,并选择停止
    2. 下一步,发出您需要的站点选择器控制命令,以设置您的配置。此手册中的过程假设使用命令行。命令是 sscontrol。要获取关于命令的更多信息,请参阅站点选择器的命令参考

    您可以输入 sscontrol 命令参数的最小化版本。仅需输入参数特有的字母。例如,要获取文件保存命令的帮助,可以输入 sscontrol he f 而不是 sscontrol help file

    要启动命令行界面:发出 sscontrol 以接收 sscontrol 命令提示符。

    要结束命令行界面:发出 exitquit

    注意:
    在 Windows 平台上,自动启动分派器组件的 dsserver。如果您仅使用站点选择器而不使用分派器组件,您可以按如下所示阻止 dsserver 自动启动:
    1. 从 Windows“服务”,右键单击 IBM分派器。
    2. 选择“属性”。
    3. 启动类型字段,选择“手工”。
    4. 单击“确定”,并关闭“服务”窗口。

    脚本

    配置站点选择器的命令可以输入到一个配置脚本文件中并一起执行。

    注意:
    要快速执行脚本文件(例如,myscript)的内容,使用以下命令之一:

    要将当前配置保存到脚本文件(例如,savescript),运行以下命令:

    sscontrol file save savescript
    

    此命令将保存配置脚本文件至 ...ibm/edge/lb/servers/configurations/ss 目录。

    GUI

    有关一般说明和 GUI 的示例,请参阅图 42

    要启动 GUI,遵循这些步骤

    1. 确保 ssserver 正在运行。作为 root 用户或管理员,从命令提示符发出以下命令:ssserver
    2. 下一步,执行以下操作之一:

    要从 GUI 配置站点选择器组件,必须首先在树结构中选择站点选择器。一旦连接到主机,即可启动管理器。您也可以创建包含端口和服务器的站点名称,并启动该管理器的顾问程序。

    GUI 可用于完成 sscontrol 命令将实现的任何任务。例如,要使用命令行定义站点名称,您可以输入 sscontrol sitename add sitename 命令。要从 GUI 定义站点名,右键单击名称服务器,然后在弹出菜单中,左键单击添加站点名。在弹出窗口中输入站点名称,然后单击确定。

    已有站点选择器配置文件可以使用主机弹出菜单中的装入新配置(完全替换当前配置)和附加到当前配置(更新当前配置)选项来装入。您应该定期地将站点选择器配置保存到文件,使用主机弹出菜单中的保存配置文件为选项。文件菜单位于 GUI 的顶部,使用它可以将当前的主机连接保存到文件,或恢复现有文件中所有 Load Balancer 组件的连接。

    为了从 GUI 执行命令:从 GUI 树突出显示“主机”节点,并从“主机”弹出菜单中选择发送命令....。.在命令输入字段中,输入您要执行的命令,例如:nameserver status。在当前会话中运行的命令的结果和历史出现在提供的窗口中。

    单击 Load Balancer 窗口右上角的问号图标可访问帮助信息。

    要获取有关使用 GUI 的更多信息,请参阅附录 A, GUI:一般说明

    配置向导

    如果您使用配置向导,遵循这些步骤:

    1. 启动站点选择器上的 ssserver:

    2. 启动站点选择器的向导功能 sswizard。

      您可以通过在命令提示符下发出 sswizard 来启动向导。或,从 GUI 中的站点选择器组件菜单中选择“配置向导”。

    站点选择器向导将逐步引导您创建站点选择器组件的基本配置的过程。当您设置使站点选择器能在一组服务器间负载均衡流量的站点名称时,它将询问关于您网络的问题并指导您。


    设置站点选择器机器

    在设置站点选择器机器前,您必须是 root 用户(对于 AIX、HP-UX、Linux 或 Solaris)或管理员(对于 Windows)。

    您将需要一个不可解析的 DNS 主机名,以用作您设置的一组服务器的站点名称。站点名称是客户机用于访问您的站点(例如,www.yourcompany.com)的名称。站点选择器将使用 DNS 为此站点名称在一组服务器之间负载均衡流量。

    步骤 1. 启动服务器功能

    要启动站点选择器服务器功能,在命令行上输入 ssserver

    注意:
    缺省配置文件(default.cfg) 启动 ssserver 时自动装入。如果您决定在 default.cfg 中保存配置,那么下次 ssserver 启动时将自动装入此文件中保存的所有信息。

    步骤 2. 启动名称服务器

    要启动名称服务器,输入 sscontrol nameserver start 命令。

    可选地,使用 bindaddress 关键字仅绑定到指定的地址来启动名称服务器。

    步骤 3. 定义站点名和设置站点名选项

    站点选择器将发送到站点名的请求平衡到其配置的相应服务器。

    站点名是客户机将请求的不可解析的主机名。站点名必须是全限定域名(例如,www.dnsdownload.com)。当客户机请求此站点名时,将返回与站点名关联的一个服务器 IP 地址。

    要定义站点名,发出下列命令:

    sscontrol sitename add sitename
    

    要设置站点名选项,发出下列命令:

    sscontrol sitename set sitename option value
    

    要获取更多的信息,请参阅站点选择器的命令参考

    步骤 4. 定义负载均衡服务器

    服务器是运行希望负载均衡的应用程序的机器。server 是服务器的符号名称或者点分十进制地址。要从步骤 3 定义站点名上的服务器,发出下列命令:

    sscontrol server add sitename:server
    

    您必须在站点名称下定义多个服务器,以执行负载均衡。

    步骤 5. 启动管理器功能(可选)

    管理器功能改进负载均衡。在启动管理器功能之前,确保度量服务器已安装在所有的负载均衡机器上。

    要启动管理器,发出以下命令:

    sscontrol manager start
    

    步骤 6. 启动顾问程序功能(可选)

    顾问程序为管理器提供有关负载均衡服务器响应请求能力的更多信息。顾问程序特定于一个协议。Load Balancer 提供许多顾问程序。例如,要启动特定站点名称的 HTTP 顾问程序,发出以下命令:

    sscontrol advisor start http sitename:port
    

    步骤 7. 定义系统度量(可选)

    请参阅度量服务器,以获取使用系统度量和度量服务器的信息。

    步骤 8. 根据需要设置站点名比例

    如果您启动顾问程序,您可以修改包含在负载均衡决策中的给予顾问程序(端口)信息的重要比例。 要设置站点名比例,发出 sscontrol sitename set sitename proportions 命令。要获取更多的信息,请参阅状态信息的重要性比例


    为负载均衡设置服务器

    建议使用带有站点选择器组件的度量服务器。 请参阅度量服务器,以获取在站点选择器负载均衡的所有服务器上设置度量服务器的信息。


    Cisco CSS 控制器组件

    此部分提供有关快速启动配置的信息,计划注意事项,并描述配置 Load Balancer 的 Cisco CSS 控制器组件的方法。它包含以下几章:


    快速入门配置

    此快速入门示例显示如何使用 Cisco CSS 控制器组件创建配置。Cisco CSS 控制器提供服务器权值信息,其辅助 Cisco CSS 交换机确定用于负载均衡决策的最佳服务器选择。

    图 26. 简单 Cisco CSS 控制器配置

    显示基本 Cisco CSS 控制器配置的图


    您需要什么?

    对于此快速入门配置示例,您将需要以下内容:


    如何准备?

    确保在开始配置此示例之前完成以下步骤:


    配置 Cisco CSS 控制器组件

    有了 Cisco CSS 控制器,您可以使用命令行或图形用户界面(GUI)创建配置。对于此快速入门示例,使用命令行演示配置步骤。

    注意:
    必须以英语字符输入参数值。 唯一的例外是用于主机名和文件名的参数值。

    使用命令行配置

    从命令提示符,遵循这些步骤:

    1. 在 Load Balancer 上启动 ccoserver。作为 root 用户或管理员,从命令提示符发出以下命令:ccoserver
    2. 将一个交换机咨询器添加到 Cisco CSS 控制器配置,指定 Cisco CSS 交换机 IP 接口地址和读-写共用名。这些值必须匹配 Cisco CSS 交换机上的相应属性:

      ccocontrol consultant add SwConsultant-1 address 9.17.32.50 community public

      这将检查与 Cisco CSS 交换机的连接性,并验证 SNMP 读-写共用名是否在正常工作。

    3. 将 ownercontent(OwnerContent-1)添加到交换机咨询器,指定 ownername(OwnerName-1)和 contentrule(ContentRule-1):

      ccocontrol ownercontent add SwConsultant-1:OwnerContent-1 ownername OwnerName-1 contentrule ContentRule-1

      这些值必须匹配 Cisco CSS 交换机上的相应属性。

      现在,Cisco CSS 控制器可以在 SNMP 上与交换机通信,并从此交换机获取必需的配置信息。此步骤后,您应查看 Cisco CSS 控制器中有关在 Cisco CSS 交换机上为指定的 ownercontent 配置哪些服务的信息。

    4. 配置要收集的度量类型(活动连接、连接率和 HTTP)和 ownercontent 上每个度量的比例:

      ccocontrol ownercontent metrics SwConsultant-1:OwnerContent-1 activeconn 45 connrate 45 http 10

      此命令将配置您要从服务收集的度量信息和比例,以用于权值计算。所有度量的总比例必须等于 100。

    5. 启动 Cisco CSS 控制器的交换机咨询器功能:

      ccocontrol consultant start SwConsultant-1

      使用此命令,所有度量收集器将启动,并且服务权值计算将开始。Cisco CSS 控制器通过 SNMP,使其服务权值计算结果与 Cisco CSS 交换机通信。

    现在,您的基本 Cisco CSS 控制器配置完成。

    测试您的配置

    测试配置是否在工作。

    1. 从客户机 Web 浏览器,转至位置 http://www.Intersplash.com。如果出现页面,则说明一切正常。
    2. 在 Web 浏览器中重新装入页面。
    3. 查看以下命令的结果:ccocontrol service report SwConsultant-1:OwnerContent-1:Service-1。两台 Web 服务器的“总连接数”列合计应为“2”。

    使用图形用户界面(GUI)配置

    要获取有关使用 Cisco CCS 控制器 GUI 的信息,请参阅GUI附录 A, GUI:一般说明


    计划 Cisco CSS 控制器组件

    本章描述安装和配置 Cisco CSS 控制器组件之前网络计划人员应考虑的问题。

    本章包含:


    硬件和软件要求

    硬件要求

    软件要求


    计划注意事项

    Cisco CSS 控制器管理一组交换机咨询器。每个咨询器确定由单个交换机负载均衡的服务的权值。 配置咨询器提供权值的交换机,以用于内容负载均衡。 咨询器使用 SNMP 协议,以将计算后的权值发送到交换机。当负载均衡算法是加权循环法时,此交换机使用这些权值,为其正在进行负载均衡的内容规则选择一台服务器。 要确定权值,咨询器使用以下一条或多条信息:

    请参阅 Cisco Content Services Switch Getting Started Guide,以获取有关内容负载均衡的描述以及配置交换机的详细信息。

    要使咨询器获取有关它确定服务权值所需的信息,您必须具有:

    咨询器在网络中的位置

    图 27 中所述,我们建议咨询器在其提供权值的一个或多个交换机之后连接到网络。某些参数必须在交换机上配置,而某些必须在控制器上配置,以在控制器、交换机和服务之间启用连接性。

    图 27 中:

    请参阅 Cisco Content Services Switch Getting Started Guide,以获取有关配置 VLAN 以及交换机上的 IP 路由的详细信息。

    图 27. 在交换机之后连接的咨询器的示例

    交换机之后的咨询器

    您可以使用以下任何界面管理 Cisco CSS 控制器:

    对于远程管理,在图 28 中:

    请参阅 Cisco Content Services Switch Getting Started Guide,以获取详细信息。

    图 28. 用户界面在交换机之前,在交换机之后配置的咨询器(使用可选高可用性伙伴)的示例

    交换机之后的咨询器;交换机之前的用户界面,可选高可用性伙伴

    高可用性

    控制器高可用性增强 Load Balancer 的容错能力。设计时注意信息包转发高可用性,控制器高可用性包含两个同步运行的控制器,一个具有主角色,另一个具有次角色。

    以等同的交换机信息配置每个控制器,并且在同一时刻只有一个控制器活动。这意味着,由高可用性逻辑所决定,只有活动控制器用新权值计算和更新交换机。

    控制器高可用性在您配置的地址和端口上使用简单用户数据报协议(UDP)信息包,以与其伙伴进行通信。这些信息包用于在两个控制器间交换信息,这些信息属于高可用性(到达信息),并用于确定伙伴控制器可用性(工作频率)。如果备用控制器确定活动控制器由于任何原因已导致失败,则备用控制器从失败的活动控制器接管。然后,备用控制器成为活动控制器,并开始使用新权值计算和更新交换机。

    除了伙伴可用性以外,到达目标还可以配置为高可用性。控制器高可用性使用到达信息确定哪个控制器是活动的以及哪个控制器是备用的。活动控制器是可以 ping 更多目标并可从其伙伴到达的控制器。

    请参阅高可用性,以获取更多信息。

    计算权值

    如果咨询器确定服务不可用,它将暂挂交换机上的服务,以避免交换机在负载均衡请求时考虑到此服务器。当服务再次可用时,控制器激活交换机上的服务,以便考虑对请求进行负载均衡。

    问题确定

    Cisco CSS 控制器将条目公布到以下日志中:

    这些日志位于以下目录:

    在每个日志中,您可以设置日志大小和日志记录级别。请参阅使用 Load Balancer 日志,以获取更多信息。


    配置 Cisco CSS 控制器组件

    执行本章所述步骤之前,请参阅计划 Cisco CSS 控制器组件。本章阐述了如何为 Load Balancer 的 Cisco CSS 控制器组件创建基本配置。


    配置任务概述

    在您开始本章的任何配置方法前:

    1. 确保您的 Cisco CSS 交换机和所有服务器配置正确。
    2. 配置 Cisco CSS 控制器,确保 Cisco CSS 交换机的地址和 SNMP 共用名匹配 Cisco CSS 交换机上的相应属性。请参阅ccocontrol consultant - 配置和控制咨询器,以获取有关配置咨询器的信息。


    表 11. Cisco CSS 控制器组件的配置任务

    任务 描述 相关信息
    设置 Cisco CSS 控制器机器 查找要求 设置 Cisco CSS 交换机的控制器机器
    测试您的配置 确认配置正在工作 测试您的配置

    配置方法

    要为 Load Balancer 的 Cisco CSS 控制器组件创建基本配置,有三种方法:

    命令行

    这是配置 Cisco CSS 控制器的最直接方法。此手册中的过程假设使用命令行。命令参数值必须以英文字符输入。唯一的例外是主机名(例如,用于 consultant add 命令中)和文件名。

    要从命令行启动 Cisco CSS 控制器:

    1. 从命令提示符发出 ccoserver 命令。要停止服务器,输入:ccoserver stop

      记录:

      1. 对于 Windows,单击启动 > 设置(对于 Windows 2000)>控制面板 > 管理工具 > 服务。右键单击 IBM Cisco CSS 控制器,然后选择启动。要停止服务,遵循相同的步骤,并选择停止

      2. 在 Windows 上,您可以在引导期间自动启动 ccoserver
        1. 单击启动 > 设置 > 控制面板 > 管理工具 > 服务
        2. 右键单击 IBM Cisco CSS 控制器,然后选择属性
        3. 单击启动类型字段的箭头,然后选择自动
        4. 单击确定
    2. 下一步,发出您需要的 Cisco CSS 控制器控制命令,以设置您的配置。此手册中的过程假设使用命令行。命令是 ccocontrol。要获取有关命令的更多信息,请参阅Cisco CSS 控制器的命令参考

    您可输入 ccocontrol 命令参数的缩写版本。仅需输入参数特有的字母。例如,要获取有关文件保存命令的帮助,您可以输入 ccocontrol he f 来替代 ccocontrol help file

    要启动命令行界面:发出 ccocontrol 以接收 ccocontrol 命令提示符。

    要结束命令行界面:发出 exitquit

    注意:
    在 Windows 平台上,自动启动分派器组件的 dsserver。如果您仅使用 Cisco CSS 控制器而不是分派器组件,您可以按如下所示阻止 dsserver 自动启动:
    1. 从 Windows“服务”,右键单击 IBM 分派器
    2. 选择属性
    3. 启动类型字段中,选择手工
    4. 单击确定,并关闭“服务”窗口。

    XML

    当前定义的配置可保存到 XML 文件。 这允许在稍后您想快速重新创建配置时装入此配置。

    要执行 XML 文件(例如,myscript.xml)的内容,使用以下任何命令:

    XML 文件保存在 ...ibm/edge/lb/servers/configurations/cco/ 目录中。

    GUI

    有关一般说明和图形用户界面(GUI)的示例,请参阅图 42

    要启动 GUI,遵循这些步骤

    1. 如果 ccoserver 尚未运行,现在作为 root 用户运行以下命令以启动它:

      ccoserver.

    2. 下一步,执行以下操作之一:

    要从 GUI 配置 Cisco CSS 控制器组件:

    1. 右键单击树结构中的 Cisco CSS 控制器。
    2. 连接到主机。
    3. 创建一个或多个包含期望的所有者内容及其关联度量的交换机咨询器。
    4. 启动咨询器。

    您可以使用 GUI 来执行任何您要用 ccocontrol 命令完成的任务。例如:

    要从 GUI 运行命令:

    1. 右键单击主机节点,并选择发送命令...
    2. 在命令输入字段中,输入您要运行的命令;例如,consultant report
    3. 单击“发送”。

    您在当前会话中运行的命令的结果和历史出现在“结果”框中。

    要访问帮助,单击 Load Balancer 窗口右上角的问号图标。

    要获取有关使用 GUI 的更多信息,请参阅附录 A, GUI:一般说明


    设置 Cisco CSS 交换机的控制器机器

    在设置Cisco CSS 控制器机器前,您必须是 root 用户(对于 AIX、HP-UX、Linux 或 Solaris)或管理员(对于 Windows)。

    咨询器必须能作为 Cisco CSS 交换机管理员连接到 Cisco CSS 交换机。

    当配置咨询器时,您必须配置地址和 SNMP 共用名,以匹配 Cisco CSS 交换机上相应的属性。

    要获取该过程中使用的命令的帮助信息,请参阅Cisco CSS 控制器的命令参考

    步骤 1. 启动服务器功能

    如果 ccoserver 尚未运行,现在作为 root 用户输入 ccoserver 来启动它。

    注意:
    对于 Windows,单击启动 > 设置(对于 Windows 2000)> 控制面板 > 管理工具 > 服务。右键单击 IBM Cisco 控制器,并选择“启动”。

    步骤 2. 启动命令行界面

    输入 ccocontrol 以启动命令行界面。

    步骤 3. 配置咨询器

    您必须配置交换机地址和 SNMP 共用名。这些值必须匹配 Cisco CSS 交换机上的相应属性。

    要添加咨询器,输入:

    consultant add switchConsultantID address switchIPAddress 
    community communityName
    

    步骤 3. 配置所有者内容

    所有者内容是在 Cisco CSS 交换机上定义的所有者的内容规则表示法。所有者名称和内容规则名称必须与在交换机上定义的方式相匹配。

    要定义所有者内容,输入:

    ownercontent add switchConsultantID:ownercontentID ownername ownerName 
    contentrule contentRuleName
    

    步骤 4. 验证是否正确定义服务

    当定义所有者内容时,咨询器通过检索在交换机上配置的服务来完成配置。将交换机上的配置与咨询器的配置相比较,以确保服务匹配。

    步骤 5. 配置度量

    度量是用于确定服务权值及关联比例的测量(一个度量与另一个度量比较的重要性),并且可以是连接数据度量、应用程序顾问程序度量和度量服务器度量的任何组合。这些比例必须始终总计为 100。

    当配置所有者内容时,缺省度量定义为 activeconnconnrate。如果您需要其它度量,或需要完全不同于缺省的度量,输入:

    ownercontent metrics switchConsultantID:ownercontentID metric1 proportion1 
    metric2 proportion2...metricN proportionN
    

    步骤 6. 启动咨询器

    要启动咨询器,输入:

    consultant start switchConsultantID
    

    这将启动度量收集器,并且权值计算将开始。

    步骤 7. 启动度量服务器(可选)

    如果在步骤 5 中定义系统度量,则必须在服务机器上启动度量服务器。请参阅度量服务器以获取有关使用度量服务器的信息。

    步骤 8. 配置高可用性(可选)

    要配置高可用性,输入:

    highavailability add address IPaddress partneraddress IPaddress port 80 
    role primary
    

    在高可用性环境中,您可以配置多个交换机。 要确保在一个交换机接管另一个交换机时权值信息总是可用,必须配置 Cisco CSS 控制器以为所有交换机及其备份提供权值。

    请参阅Cisco CSS 控制器和 Nortel Alteon 控制器的高级功能以获取有关如何使用及配置控制器高可用性的详细信息。


    测试您的配置

    测试配置是否在工作。

    1. 将咨询器 loglevel 设置为 4。
    2. 从 Cisco CSS 交换机断开连接服务器一分钟,,关闭应用程序服务器一分钟。
    3. 重新连接服务器,或重新启动应用程序服务器。
    4. 将咨询器 loglevel 设置回期望的级别(1)。
    5. 查看位于以下目录中的 consultant.log 文件,并查找 setServerWeights setting service

    Nortel Alteon 控制器组件

    此部分提供有关快速启动配置的信息,计划注意事项,并描述配置 Load Balancer 的 Nortel Alteon 控制器组件的方法。它包含以下几章:


    快速入门配置

    此快速入门示例显示如何使用 Nortel Alteon 控制器组件创建配置。Nortel Alteon 控制器将服务器权值提供给 Nortel Alteon Web 交换机。这些权值用于为交换机进行负载均衡的服务选择服务器。

    图 29. 简单 Nortel Alteon 控制器配置

    显示客户机、因特网云、Nortel Alteon 控制器机器、Nortel Alteon Web 交换机和服务器的图。


    您需要什么?

    对于此快速入门配置示例,您将需要以下内容:


    如何准备?

    确保在开始配置此示例之前完成以下步骤:


    配置 Nortel Alteon 控制器组件

    有了 Nortel Alteon 控制器,您可以使用命令行或图形用户界面(GUI)创建配置。对于此快速入门示例,使用命令行演示配置步骤。

    注意:
    必须以英语字符输入参数值。 唯一的例外是用于主机名和文件名的参数值。

    使用命令行配置

    从命令提示符,遵循这些步骤:

    1. 在 Nortel Alteon 控制器上启动 nalserver。作为 root 用户或管理员,从命令提示符发出以下命令:nalserver
    2. 将一个咨询器添加到 Nortel Alteon 控制器配置,指定 Nortel Alteon Web 交换机 IP 接口地址。(如果它不同于缺省(public 和 private),则仅指定读共用和写共用:

      nalcontrol consultant add Consultant-1 address 9.87.32.50

      这将检查与 Nortel Alteon Web 交换机的连接性,并验证 SNMP 共用名是否在正常工作。

    3. 将服务(Service-1)添加到咨询器(Consultant-1),指定服务的虚拟服务器标识(1)和虚拟端口号(80):

      nalcontrol service add Consultant-1:Service-1 vsid 1 vport 80

      Nortel Alteon 控制器将在 SNMP 上与交换机通信,并从此交换机获取必需的配置信息。此步骤后,您应查看 Nortel Alteon 控制器中有关在 Nortel Alteon Web 交换机上为服务配置什么服务器的信息。

    4. 配置要为与服务关联的服务器集收集的度量。

      nalcontrol service metrics Consultant-1:Service-1 http 40 activeconn 30 connrate 30

      此命令将配置您要从服务器收集哪些度量信息,以及权值计算期间这些度量的相对重要性。

    5. 启动 Nortel Alteon 控制器的咨询器功能:

      nalcontrol consultant start Consultant-1

      使用此命令,所有度量收集器将启动,并且服务器权值计算将开始。Nortel Alteon 控制器通过 SNMP,使其服务器权值计算结果与 Nortel Alteon Web 交换机通信。

    现在,您的基本 Nortel Alteon 控制器配置完成。

    测试您的配置

    测试配置是否在工作。

    1. 从客户机 Web 浏览器,转至位置 http://www.Intersplash.com。如果出现页面,则说明一切正常。
    2. 在 Web 浏览器中重新装入页面。
    3. 查看以下命令的结果:nalcontrol service report Consultant-1:Service-1。两台 Web 服务器的“总连接数”列合计应为“2”。

    使用图形用户界面(GUI)配置

    要获取有关使用 Nortel Alteon 控制器 GUI 的信息,请参阅GUI附录 A, GUI:一般说明


    计划 Nortel Alteon 控制器组件

    本章描述安装和配置 Nortel Alteon 控制器组件之前网络计划人员应考虑的问题。

    本章包含:


    硬件和软件要求

    硬件要求

    软件要求


    计划注意事项

    Nortel Alteon 控制器管理一组交换机咨询器。每个咨询器确定由单个交换机负载平衡的服务器的权值。 咨询器为其提供权值的交换机是为服务器负载平衡配置的。咨询器使用 SNMP 协议,以将计算后的权值发送到交换机。此交换机使用这些权值,以为其正在进行负载均衡的服务选择一台服务器。要确定权值,咨询器使用以下一条或多条信息:

    请参阅您的 Nortel Alteon Web OS Application Guide,以获取有关服务器负载均衡的描述以及配置交换机的详细信息。

    要使咨询器获取有关它确定服务器权值所需的信息,您必须具有:

    咨询器在网络中的位置

    咨询器可以在其提供权值的一个或多个交换机之前或之后连接到网络。某些参数必须在交换机上配置,而某些必须在控制器上配置,以在控制器、交换机和服务器之间启用连接性。

    图 30 中:

    请参阅您的 Nortel Alteon Web OS Application Guide 或 Command Reference,以获取有关配置 VLAN 以及交换机上的 IP 路由的详细信息。

    图 30. 在交换机之后连接的咨询器的示例

    交换机之后的咨询器

    图 31 中:

    图 31. 在交换机之前通过内部网连接的咨询器示例

    在交换机之前通过内部网连接的咨询器

    您可以使用以下任何界面管理 Nortel Alteon 控制器:

    图 32 中:

    图 32. 交换机之后的咨询器和交换机之前的用户界面的示例

    交换机之后的咨询器;交换机之前的用户界面

    交换机上的服务器属性(由控制器设置)

    当咨询器计算提供服务(由交换机负载均衡)的服务器的权值时,此咨询器禁用交换机的正常服务器健康状况检查,以减少到服务器的不必要流量。 此咨询器在停止为服务提供权值时重新启用健康状况检查。服务器健康状况检查间隔符合 MIB 变量 slbNewCgRealServerPingInterval。

    如果咨询器确定服务器不可用,则它将服务器的最大连接数设置为零,以避免交换机在负载均衡请求时考虑到此服务器。当服务器再次可用时,最大连接数恢复到其原始值。服务器最大连接数值符合 MIB 变量 slbNewCfgRealServerMaxCons。

    当为实服务器计算某一权值时,为此服务器设置此权值。服务器权值符合 MIB 变量 slbNewCfgRealServerWeight。

    配置备份服务器

    此交换机允许某些服务器配置为其它服务器的备份。如果此交换机确定具有备份的服务器不可用,则它可能会开始将请求发送到备份。当咨询器计算具有备份的服务的权值时,它计算备份服务器及主服务器的权值,随后在需要备份服务器时将权值用于服务器选择。

    备份服务器的权值可能比主服务器的权值高。这是因为无请求转发至备份服务器,因此它具有低负载,除非交换机确定要使用它。

    要避免使服务器资源空闲,一般惯例是指定给某一服务的服务器用作指定给另一不同服务的服务器的备份。当实现这样的配置时,避免将相同的实服务器指定给多个并行活动的服务。 如果发生这种情况,则用于每个服务的服务器(服务器是每个服务的一部分)的权值由咨询器覆盖。

    每台实服务器由一个整数标识,并具有权值和 IP 地址属性。两台实服务器可能具有同一 IP 地址。在这种情况下,两台实服务器与同一物理服务器关联。标识为备份的实服务器应仅配置为单个服务的备份。如果相同的物理服务器备份指定给多个服务的服务器,则必须为每个服务配置一次这些相同的服务器,并为它们给定一个对每个服务唯一的服务器标识。这允许备份对它们正在备份的每个服务具有指定给它们的唯一权值。

    图 33. 使用备份服务器配置的咨询器示例

    使用备份服务器配置的咨询器

    配置组

    交换机上的服务器可配置为多个组的一部分,并且可在交换机上配置组,以提供多个服务。

    因为可能会对多个服务配置同一服务,所以将为服务器作为其一部分的每个服务计算权值。因此,权值有可能不正确,因为在任何时候权值意指哪个服务是未知的。

    另外,如果咨询器确定一个服务而非另一个服务的权值,咨询器不为其计算权值的服务有可能禁用服务器健康状况检查。在这种情况下,此交换机可能不正确负载均衡该服务。

    由于这些可能性,您必须确保实服务器不指定给进行负载均衡的多个服务。这并不意味着同一服务器无法提供多个服务的请求。这意味着必须在交换机上为服务器将为其处理请求的每个服务配置具有唯一标识的实服务器。

    高可用性

    Nortel Alteon 控制器和 Nortel Alteon Web 交换机都具有高可用性能力。

    您可以两个控制器,以在热备用配置中的不同系统上运行。

    当您配置两个或多个交换机以充当一个虚拟 IP 接口路由器(VIR)或一个虚拟 IP 服务器路由器( VSR)时,这些交换机可以彼此备份。

    一个咨询器(由控制器管理)仅为一个交换机提供权值。由于任何时候备份交换机都可能接管主交换机,所以您必须对有可能成为主交换机的每个交换机使用咨询器配置控制器。这样,当某个交换机成为主交换机时,就确保了其拥有权值。

    另外,当控制器连接到 VIR 时,确保在 VIR 与其中一个交换机失去连接性时,控制器与服务器、交换机和备份控制器通信。

    请参阅您的 Nortel Alteon Web OS Application Guide,以获取有关交换机上的高可用性的信息。

    控制器高可用性增强 Load Balancer 的容错能力。设计时注意经典信息包转发高可用性,控制器高可用性包含两个同步运行的控制器,一个具有主角色,另一个具有次角色。

    每个控制器使用等同交换机信息配置。 类似于经典高可用性,在同一时刻只有一个控制器活动。 这意味着,由高可用性逻辑所决定,只有活动控制器用新权值计算和更新交换机。

    控制器高可用性在您配置的地址和端口上使用简单用户数据报协议(UDP)信息包,以与其伙伴进行通信。这些信息包用于在两个控制器间交换信息,这些信息属于高可用性(到达信息),并用于确定伙伴控制器可用性(工作频率)。如果备用控制器确定活动控制器由于任何原因已导致失败,则备用控制器从失败的活动控制器接管。然后,备用控制器成为活动控制器,并开始使用新权值计算和更新交换机。

    除了伙伴可用性以外,到达目标还可以配置为高可用性。如同经典高可用性一样,控制器高可用性使用到达信息确定哪个控制器是活动的以及哪个控制器是备用的。活动控制器是可以 ping 更多目标并可从其伙伴到达的控制器。

    请参阅高可用性,以获取更多信息。

    图 34 中:

    图 34. Nortel Alteon 控制器和 Nortel Alteon Web 交换机高可用性的示例

    控制器和交换机高可用性

    调整

    要避免权值更改太频繁,您可以使用灵敏度阈值配置咨询器。灵敏度阈值指定在权值可更改前必须在旧权值和新权值间发生的更改量。请参阅灵敏度阈值,以获取更多信息。

    如果交换机过度忙于更新权值,您可以增加咨询器休眠时间,以减少控制器、服务器和交换机之间的流量。休眠时间设置两个权值设置周期间的休眠秒数。

    如果服务器处理太多来自咨询器的监视请求,您可以修改度量收集器的休眠时间。请参阅权值计算休眠时间,以获取详细描述。

    问题确定

    Cisco CSS 控制器将条目公布到以下日志中:

    这些日志位于以下目录:

    在每个日志中,您可以设置日志大小和日志记录级别。请参阅使用 Load Balancer 日志,以获取更多信息。


    配置 Nortel Alteon 控制器组件

    执行本章所述步骤之前,请参阅计划 Nortel Alteon 控制器组件。本章阐述了如何为 Load Balancer 的 Nortel Alteon 控制器组件创建基本配置。


    配置任务概述

    在您开始本章中的任何配置方法前,确保正确地配置您的 Nortel Alteon Web 交换机和所有服务器。


    表 12. Nortel Alteon 控制器组件的配置任务

    任务 描述 相关信息
    配置 Nortel Alteon Web 交换机和服务器 配置交换机。 配置交换机,位于第 (SETSWITCH)
    设置 Nortel Alteon 控制器机器 配置控制器。 步骤 1. 启动服务器功能
    测试您的配置 确认配置正在工作 测试您的配置

    配置方法

    要为 Load Balancer 的 Nortel Alteon 控制器组件创建基本配置,有三种基本方法:

    命令行

    这是配置 Nortel Alteon 控制器的最直接方法。此手册中的过程假设使用命令行。

    要从命令行启动 Nortel Alteon 控制器:

    1. 从命令提示符发出 nalserver 命令。 要停止服务,输入:nalserver stop

      记录:

      1. 对于 Windows,单击启动 > 设置(对于 Windows 2000)>控制面板 > 管理工具 > 服务。右键单击 IBM Nortel Alteon 控制器,并选择“启动”。要停止服务,遵循相同的步骤,并选择“停止”。

      2. 对于 Windows,您可以在引导期间自动启动 nalserver:
        1. 单击 启动 > 设置(对于 Windows 2000)控制面板 > 管理工具 > 服务
        2. 右键单击 IBM Nortel Alteon 控制器,然后选择“属性”。
        3. 单击“启动”类型字段的箭头,然后选择“自动”。
        4. 单击“确定”。
    2. 下一步,发出您需要的 Nortel Alteon 控制器控制命令,以设置您的配置。此手册中的过程假设使用命令行。此命令是 nalcontrol。要获取有关命令的更多信息,请参阅Nortel Alteon 控制器的命令参考

    您可以通过输入参数特有的字母,以使用 nalcontrol 命令参数的缩写版本。例如,要获取有关文件保存命令的帮助,您可以输入 nalcontrol he f,而不是 nalcontrol help file

    要结束命令行界面:输入 exitquit

    记录:

    1. 您必须对所有命令参数值使用英文字符。唯一的例外是主机名(用于服务器命令中)和文件名(用于文件命令中)。

    2. 在 Windows 上,自动启动分派器组件的 dsserver。如果只使用 Nortel Alteon 控制器不使用分派器组件,可按如下所示阻止 ndserver 自动启动:
      1. 在 Windows“服务”中,右键单击 IBM 分派器。
      2. 选择“属性”。
      3. 启动类型字段,选择“手工”。
      4. 单击“确定”,并关闭“服务”窗口。

    XML

    当前定义的配置可保存到 XML 文件。 这允许在稍后您想快速重新创建配置时装入此配置。

    要执行 XML 文件(例如,myscript.xml)的内容,使用以下命令:

    XML 文件保存在 ...ibm/edge/lb/servers/configurations/nal/ 目录中。

    GUI

    对于图形用户界面(GUI)的示例,请参阅图 42

    要启动 GUI:

    1. 如果 nalserver 尚未运行,现在作为 root 用户输入 nalserver 来启动它。
    2. 下一步,执行以下操作之一:

    要从 GUI 配置 Nortel Alteon 控制器组件:

    1. 右键单击树结构中的 Nortel Alteon 控制器。
    2. 连接到主机。
    3. 创建一个或多个包含期望的服务及其关联度量的交换机咨询器。
    4. 启动咨询器。

    您可使用 GUI 来执行任何您要用 nalcontrol 命令完成的任务。例如:

    要从 GUI 运行命令:

    1. 右键单击主机节点,并选择发送命令....
    2. 在命令输入字段中,输入您要运行的命令;例如,consultant report
    3. 单击“发送”。

    您在当前会话中运行的命令的结果和历史出现在“结果”框中。

    要访问“帮助”,单击 Load Balancer 窗口右上角的问号图标。

    要获取有关使用 GUI 的更多信息,请参阅附录 A, GUI:一般说明


    设置 Nortel Alteon 控制器

    要获取该过程中使用的命令的帮助信息,请参阅Nortel Alteon 控制器的命令参考

    在设置 Nortel Alteon 控制器机器之前:

    步骤 1. 启动服务器功能

    如果 nalserver 尚未运行,现在作为 root 用户输入 nalserver 来启动它。

    注意:
    对于 Windows,单击开始 > 设置(对于 Windows 2000)> 控制面板 > 管理工具 > 服务。右键单击 IBM Nortel Alteon 控制器,并选择“启动”。

    步骤 2. 启动命令行界面

    输入 nalcontrol 以启动命令行界面。

    步骤 3. 定义 Nortel Alteon Web 交换机咨询器

    要添加交换机咨询器,输入:

    consultant add switchconsultantID address switchIPAddress
    

    步骤 4. 将服务添加到交换机咨询器

    要添加服务,输入:

    service add switchConsultantID:serviceID vsid virtualServerID vport 
    virtualPortNumber
    

    服务由虚拟服务器标识(VSID)和虚拟端口(VPORT)号标识,两者都与先前在交换机上配置的虚拟服务器关联。

    步骤 5. 配置度量

    度量是用于确定服务器权值的信息。 为每个度量指定一个比例来表明其相对于其它度量的重要性。可配置任何度量组合:连接数据度量、应用程序顾问程序度量和度量服务器度量。这些比例必须始终总计为 100。

    当配置服务时,缺省度量定义为 activeconnconnrate。如果您需要其它度量,或需要完全不同于缺省的度量,输入:

    service metrics switchConsultantID:serviceID metricName 50 
    metricName2 50
    

    步骤 6. 启动咨询器

    要启动咨询器,输入:

    consultant start switchConsultantID
    

    这将启动度量收集器,并且权值计算将开始。

    步骤 7. 配置高可用性(可选)

    要配置高可用性,输入:

    highavailability add address IPaddress partneraddress IPaddress port 80 
    role primary
    

    请参阅Cisco CSS 控制器和 Nortel Alteon 控制器的高级功能以获取有关如何使用及配置控制器高可用性的详细信息。

    步骤 8. 启动度量服务器(可选)

    如果在步骤 5 中定义系统度量,则必须在服务机器上启动度量服务器。请参阅度量服务器以获取有关使用度量服务器的信息。

    步骤 9. 刷新 Nortel Alteon 控制器配置

    如果您修改 Nortel Alteon Web 交换机上的配置,则您可以刷新控制器配置。输入:

    service refresh
    

    建议您在刷新配置之前,停止咨询器。刷新命令更新此配置后,重新启动咨询器。


    测试您的配置

    测试配置是否在工作。

    1. 将咨询器 loglevel 设置为 4。
    2. 从 Nortel Alteon Web 交换机断开连接服务器一分钟,,关闭应用程序服务器一分钟。
    3. 重新连接服务器,或重新启动应用程序服务器。
    4. 将咨询器 loglevel 设置回期望的级别(1)。
    5. 查看位于以下目录中的 consultant.log 文件,并查找 setServerWeights setting service。这意味着已尝试将权值发送到交换机。
    6. 显示交换机上的服务器权值,并验证这些权值是否匹配控制器报告中所显示的权值。

    Load Balancer 的功能和高级功能部件

    本部分提供有关 Load Balancer 可用的功能和高级配置功能部件的信息。它包含以下几章:


    分派器、CBR 和站点选择器的管理器、顾问程序和度量服务器功能

    本章说明如何配置负载均衡参数以及如何设置 Load Balancer 的管理器、顾问程序和度量服务器功能。

    注意:
    阅读本章时,如果您没有使用分派器组件,那么用下列项替换“dscontrol”:

    表 13. Load Balancer 的高级配置任务

    任务 描述 相关信息
    可选,更改负载均衡设置

    可更改以下负载均衡设置:

    • 赋予状态信息的重要性的比例

      缺省比例为 50-50-0-0。如果您使用缺省,则不使用来自顾问程序、度量服务器和 WLM 的信息。

    • 权值
    • 管理器固定权值
    • 管理器时间间隔
    • 灵敏度阈值
    • 平滑指数

    优化 Load Balancer 提供的负载均衡
    当管理器标记一台或多台服务器当机/运行时,使用脚本生成警告或记录服务器故障 Load Balancer 提供触发脚本(当管理器标记一台或多台服务器当机/运行时,您可定制此脚本)的用户出口 使用脚本以生成警告或记录服务器故障
    使用顾问程序 描述和列出报告有关服务器特定状态的顾问程序。 顾问程序
    使用 HTTP 顾问程序请求/响应(URL)选项 定义唯一的客户机 HTTP URL 字符串,特定给您要在机器上查询的服务 使用请求/响应(URL)选项配置 HTTP 顾问程序
    使用自顾问程序 在 Load Balancer 2 层 WAN 配置中提供后端服务器负载状态。 在 2 层 WAN 配置中使用自顾问程序
    创建定制顾问程序 描述如何写您自己的定制顾问程序 创建定制(可定制的)顾问程序
    使用度量服务器代理程序 度量服务器向 Load Balancer 提供系统负载信息 度量服务器
    使用工作负载管理器顾问程序(WLM) WLM 顾问程序向 Load Balancer 提供系统负载信息 工作负载管理器顾问程序

    优化 Load Balancer 提供的负载均衡

    Load Balancer 的管理器功能基于以下设置执行负载均衡:

    可以更改这些设置以优化网络负载均衡。

    状态信息的重要性比例

    管理器可在其权值确定中使用一些或所有以下外部因素:

    除每个服务器的当前权值和计算其权值所需要的一些其它信息外,管理器将从执行程序得到前两个值(活动和新建的连接)。这些值是根据执行程序内部生成和存储的信息得出的。

    注意:
    对于站点选择器,管理器获取度量服务器的前两个值(cpu 和内存)。

    您可更改每个群集(或站点名称)基础上的四个值的相对重要性比例。将比例看作百分比;相对比例之和必须等于 100%。缺省比率 50/50/0/0 将忽略顾问程序和系统信息。在您的环境中,您可能需要试用不同的比例来查找能提供最佳性能的组合。

    注意:
    当添加顾问程序(不是 WLM),如果端口比例是零,那么管理器增加此值至 1。因为相对比例和数必须总计 100,最高值就减少 1。

    添加 WLM 顾问程序,如果系统度量比例是零,那么管理器增加此值至 1。因为相对比例和数必须总计 100,最高值就减少 1。

    活动连接的数目不仅取决于客户机的数目,还取决于使用负载均衡服务器提供的 服务所必需的时间长度。如果客户机连接较快(如使用 HTTP GET 服务的小 Web 页面),则活动连接数就会相当小。如果客户机连接较慢(如数据库查询),则活动连接的数目就会较大。

    您应该避免设置活动和新建连接比例值太低。您将禁用负载均衡和平滑功能,除非您将最前面的两个值设置为 20 以上。

    要设置重要值比例,使用 dscontrol cluster set cluster proportions 命令。请参阅dscontrol cluster - 配置群集以获取更多信息。

    权值

    管理器功能根据执行程序的内部计数器、来自顾问程序的反馈和来自系统监视程序(如度量服务器)的反馈设置权值。运行管理器时如果您要手工设置权值,在 dscontrol server 命令上指定 fixedweight 选项。对于 fixedweight 选项的描述,请参阅管理器固定权值

    权值应用于一个端口上的所有服务器。对于任何特定端口,根据两台服务器之间的相对权值在它们之间分配请求。例如,如果一台服务器的权值设置为 10,而另一台的设置为 5,则权值设置为 10 的服务器获得的请求数应是权值设置为 5 的服务器的两倍。

    要指定任何服务器能够具有的最大权值,使用 dscontrol port set port weightbound weight 命令。此命令将影响 每台服务器将获得的请求的数量差异大小。如果将最大权重设置为 1,则所有服务器的权值都可以为 1;如果停顿,则为 0;如果标记当机,则为 -1。 增大此数值,则服务器之间的权值差异也相应增大。当最大权值为 2 时,一台服务器获取的请求数量可能是另一台服务器的两倍。当最大权值为 10 时,一台服务器获取的请求数量可能是另一台服务器的 10 倍。 缺省最大权值是 20。

    如果顾问程序发现服务器已经当机,将通知管理器,后者则将该服务器权值设置为零。这样,只要权值仍为零,执行程序就不发送任何其它连接给该服务器。在权值改变之前,如果还有任何活动的连接,则 将保留它们正常完成。

    管理器固定权值

    没有管理器,顾问程序将无法运行并不能检测服务器是否当机。如果选择运行顾问程序,但是希望管理器更新已经为特定服务器设定的权值,在 dscontrol server 命令中使用 fixedweight 选项。例如:

    dscontrol server set cluster:port:server fixedweight yes
    

    fixedweight 设置为 yes 以后,使用 dscontrol server set weight 命令将权值设置为您希望的值。当管理器运行时服务器权值将保持固定,直至您发出另一个 dscontrol server 命令并将 fixedweight 设置为 no。要获取更多信息,请参阅dscontrol server - 配置服务器

    发送 TCP 复位到当机服务器(仅分派器组件)

    如果已激活 TCP 复位,那么在客户机有到权值为 0 的服务器的连接时,分派器将发送 TCP 复位到客户机。当服务器的权值配置为 0 或当顾问程序将它标记为当机时,其权值可能为 0。 TCP 复位将导致立即关闭连接。此功能部件对使用期限长的连接有用,它能加快客户机重新协商已失败连接的能力。 要激活 TCP 复位,使用 dscontrol port add|set port reset yes 命令。复位的缺省值为 no。

    注意:
    TCP 复位适用于所有分派器的转发方法。但是,要使用 TCP 复位功能部件,dscontrol executor 命令的 clientgateway 必须设置为路由器地址。

    要配置与 TCP 复位联合的有用功能部件是顾问程序重试 在此功能部件中,顾问程序在标记服务器当机之前有能力重试连接。这有助于避免顾问程序过早地将服务器标记为当机,而这将导致连接复位问题。 即,仅因为顾问程序第一次尝试失败并不意味着现有连接还将失败。请参阅顾问程序重试,以获取更多信息。

    管理器时间间隔

    为了优化整体性能,需要限制管理器与执行程序相互作用的频率。可以通过输入 dscontrol manager intervaldscontrol manager refresh 命令更改此间隔。

    管理器时间间隔指定了管理器更新执行程序在路由连接中使用的服务器权值的频率。如果管理器时间间隔太短,就会由于管理器经常中断执行程序从而导致性能差。如果管理器时间间隔太长,则可能意味着执行程序请求路由将不是根据精确的和最新的信息得出的。

    例如,要将管理器时间间隔设置为 1 秒,需要输入以下命令:

     dscontrol manager interval 1
    

    管理器刷新周期指定管理器询问执行程序状态信息的频率。刷新周期根据间隔时间来确定。

    例如,要将管理器刷新周期设置为 3,则输入以下命令:

      dscontrol manager refresh 3
    

    这导致管理器在向执行程序询问状态信息之前,要等待 3 个时间间隔。

    灵敏度阈值

    其它方法可用于优化您服务器的负载均衡。为了以最快速度工 作,仅当权值更改很大时,才更新服务器权值。当服务器状态只有微小更改或无更改时,频繁更新权值将会导致不 必要的开销。当一个端口上的所有服务器总权值的百分率权值更改大于灵敏度阈值时,管理器将更新执行程序使用的权值以分配连接。例如,假设,总权值从 100 更改为 105。改 变为 5%。使用缺省灵敏度阈值 5,管理器将不更新执行程序所使用的权值,因 为百分比改变没有超过阈值。然而,如果 总权值从 100 改为 106,管理器就会更新权值。要将管理器的灵敏度阈值设置为不同于缺省(例如 6)时,请输入以下命令:

      dscontrol manager sensitivity 6
    

    大多数情况下,您不需要更改这个值。

    平滑指数

    管理器动态地计算服务器权值。因此,更新过的权值有可能相对以前的权值有很 大的不同。这在大多数情况下不会出现问题。但偶尔也会对负载均衡请求的方法产生一个振荡效应。例如,一个服务器由于权值很大可能会最终接收大部分请求。管理器 将会看到服务器具有大量活动连接而响应很慢。然后管理器将把权值转移到空闲服务器,但那里会出现同样情况,导致不能有效利用资源。

    要减轻这种问题,管理器使用了平滑指数。平滑 指数限制对服务器权值的更改量,有效地平滑请求分配中的更改。较大的平滑指数将使服务器权值的变动幅度较小。 较小的平滑指数将使服务器权值的变动幅度很大。平滑指数的缺省值为 1.5。在 1.5 时,服务器权值可以适当的变化。 指数为 4 或 5 将使权值更稳定。例如,要将平滑指数设置为 4,请输入如下命令:

      dscontrol manager smoothing 4
    

    大多数情况下,您不需要更改这个值。

    使用脚本以生成警告或记录服务器故障

    Load Balancer 提供触发可定制脚本的用户出口。您可创建脚本以执行自动操作,如当管理器标记服务器当机或仅记录故障事件时,提醒管理员。可定制的样本脚本位于 ...ibm/edge/lb/servers/samples 安装目录。为了运行这些文件,您必须将它们移动到 ...ibm/edge/lb/servers/bin 目录,并除去“sample”文件扩展名。提供下列样本脚本:

    使用 serverUpserverDown 脚本时的注意事项:


    顾问程序

    顾问程序是 Load Balancer 中的代理程序。它们的目的是访问服务器运行状况和负载。它们通过与服务器进行预设客户机式交换来操作。顾问程序可以当作应用程序服务器的轻量级客户机。

    对于大部分流行的协议,此产品提供几个特定协议的顾问程序。然而,不需要将提供的所有顾问程序与 Load Balancer 的每个组件一起使用。(例如,不会将 CBR 组件和 Telnet 顾问程序一起使用。)Load Balancer 也支持“定制顾问程序”概念,它允许用户编写自己的顾问程序。

    对于 Linux,使用绑定特定的服务器应用程序的限制是: 将具有绑定特定的服务器应用程序(包含其它 Load Balancer 组件,如 CBR 或站点选择器)的负载均衡服务器绑定到群集 IP 地址时,Load Balancer 支持使用顾问程序。

    对于 HP-UX 和 Solaris,使用绑定特定的服务器应用程序的限制是: 如果使用 arp publish 替代 ifconfig alias 命令,则将具有绑定特定的服务器应用程序(包含其它 Load Balancer 组件,如 CBR 或站点选择器)的负载均衡服务器绑定到群集 IP 地址时,Load Balancer 支持使用顾问程序。然而,在使用顾问程序而不是绑定特定的服务器应用程序时,不要在此服务器应用程序所在的同一台机器上并列配置 Load Balancer。

    注意:
    当 Load Balancer 在具有多个网络适配卡的计算机上运行时,如果您想要顾问程序流量流经某个特定适配器,则您可以强制信息包的源 IP 地址作为特定的地址。要强制顾问程序信息包源地址作为特定地址,请将以下内容添加到相应的 Load Balancer 启动脚本文件(dsserver、cbrserver 或 ssserver)的 java...SRV_XXXConfigServer... 行。
    -DND_ADV_SRC_ADDR=dotted-decimal_IP_address
    

    顾问程序是如何工作的

    顾问程序定期打开与每个服务器的 TCP 连接并将请求消息发送到该服务器。消息内容特定于运行在服务器上的协议。例如,HTTP 顾问程序发送 HTTP“HEAD”请求给服务器。

    然后顾问程序侦听服务器的响应。获取响应后,顾问程序评估此服务器。要计算此“负载”值,大部分顾问程序测量服务器的响应时间,然后用此值(以毫秒为单位)来作为负载值。

    然后顾问程序将负载值报告给管理器功能部件,结果将出现在管理器报告的“端口”列中。然后管理器计算所有源的聚集权值,每个源的比例,并将这些权值设置到执行程序功能中。然后执行程序使用这些权值对新进入的客户机连接进行负载均衡。

    如果顾问程序确定服务器是活动的并且工作正常,它将向管理器报告一个正的、非零负载值。如果顾问程序确定服务器不是活动的,它将返回一个特殊的负载值(-1)。管理器和执行程序直至服务器已恢复运行后才把任何进一步的连接转发至此服务器。

    启动和停止顾问程序

    您可跨越所有群集(组顾问程序)为特殊端口启动顾问程序。或,您可选择在相同端口,但在不同的群集(群集/站点特定顾问程序)上运行不同顾问程序。例如,如果有三个群集(clusterA、clusterB、clusterC)定义的 Load Balancer,每个有端口 80,您可执行下列操作:

    为组顾问程序使用上面的配置示例,您可选择为一个群集上端口 80 或两个群集(clusterBclusterC)停止定制顾问程序 ADV_custom

    顾问程序时间间隔

    注意:
    顾问程序缺省值应该对绝大多数可能的方案非常有效。输入其它非缺 省值时必须小心。

    顾问程序时间间隔指定了顾问程序向其正监视的端口上的服务器询问状态然后向管理器 报告结果的频率。如果顾问程序时间间隔太短,就会由于管理器经常中断服务器从而导致性能差。如果顾问程序时间间隔太长,则可能意味着 管理器关于权值的判定不是基于准确、最新的信息。

    例如,要将端口 80 的 HTTP 顾问程序时间间隔设置为 3 秒,请输入以下命令:

      dscontrol advisor interval http 80 3
    

    指定顾问程序时间间隔时间比管理器时间间隔短没有意义。缺省顾问程序间隔是 7 秒。

    顾问程序报告超时

    要确保管理器在其负载均衡判定中没有使用过时信息,管理器将不使用来自时间戳记比顾问程序报告超时中设置的时间还早的顾问程序的信息。顾问程序报告超时应比顾问程序轮询间隔长。如果超时值比间隔更小,则管理器将忽略逻辑上应使用的报告。缺省情况下,顾问程序报告不超时 - 缺省值是 unlimited。

    例如,要将端口 80 的 HTTP 顾问程序设置顾问程序报告超时为 30 秒,请输入以下命令:

    dscontrol advisor timeout http 80 30 
    

    要获取更多关于设置顾问程序报告超时的信息,请参阅dscontrol advisor - 控制顾问程序

    服务器的顾问程序连接超时和接收超时

    对于 Load Balancer,您可以设置顾问程序的超时值,在该值它检测到服务器(服务)上的特定端口发生故障。故障服务器超时值(connecttimeout 和 receivetimeout)确定在报告连接或接收故障之前,顾问程序可等待的时间。

    要获取最快故障服务器 检测,设置顾问程序连接和接收超时为最小值(一秒),并设置顾问程序和管理器间隔时间为最小值(一秒)。

    注意:
    如果您的环境遇到中到大流量,以至服务器的响应时间延长,请小心不要将 connecttimeout 和 receivetimeout 值设置得太小,否则顾问程序可能会过早地将繁忙的服务器标记为故障服务器。

    例如,要为端口 80 的 HTTP 顾问程序设置 connecttimeout 和 receivetimeout 为 9 秒,请输入以下命令:

    dscontrol advisor connecttimeout http 80 9
    dscontrol advisor receivetimeout http 80 9  
    

    连接和接收超时缺省值是为顾问程序间隔时间指定值的 3 倍。

    顾问程序重试

    在标记服务器当机之前,顾问程序将重试连接的能力。在服务器查询失败次数达到重试数加 1 之后,顾问程序将标记服务器当机。建议重试值不要大于 3。以下命令将为端口 389 上的 LDAP 顾问程序设置重试值 2。

    dscontrol advisor retry ldap 389 2
    

    顾问程序列表

    使用请求/响应(URL)选项配置 HTTP 顾问程序

    HTTP 顾问程序的 URL 选项可用于分派器和 CBR 组件。

    您启动 HTTP 顾问程序后,您可定义唯一的客户机 HTTP URL 字符串,特定给您要在服务器上查询的服务。这允许 HTTP 顾问程序访问服务器中的个别的服务状况。您可用唯一的服务器名(有相同的物理的 IP 地址)定义逻辑服务器来完成。请参阅服务器分区:配置到一个物理服务器(IP 地址)的逻辑服务器以获取更多信息。

    对于 HTTP 端口下的每一定义的逻辑服务器,您可指定唯一的客户机 HTTP URL 字符串,特定给您要在服务器上查询的服务。 HTTP 顾问程序使用 advisorrequest 字符串查询服务器的运行状况。缺省值为 HEAD / HTTP/1.0advisorresponse 字符串是 HTTP 顾问程序在 HTTP 响应中扫描的顾问程序响应。HTTP 顾问程序使用 advisorresponse 字符串比较从服务器接收的实响应。缺省值是空。

    重要:如果 HTTP URL 字符串中包含空格:

    当您创建 HTTP 顾问程序发送到后端服务器以查看它们是否在运行的请求时,输入 HTTP 请求的开始部分,并且 Load Balancer 使用以下命令完成请求的结束部分。

    \r\nAccept:
    */*\r\nUser-Agent:IBM_Network_Dispatcher_HTTP_Advisor\r\n\r\n 
    

    如果您要在 Load Balancer 将此字符串添加到请求的结束部分之前添加其它 HTTP 头字段,您可以通过在请求中包含自己的 \r\n 字符串来执行。以下是您将 HTTP 主机头字段添加到您的请求时可输入的命令示例:

    GET /pub/WWW/TheProject.html HTTP/1.0 \r\nHost: www.w3.org
    
    注意:
    为指定 HTTP 端口号启动 HTTP 顾问程序后,顾问程序请求/响应值是在 HTTP 端口为服务器启用的。

    请参阅dscontrol server - 配置服务器以获取更多信息。

    在 2 层 WAN 配置中使用自顾问程序

    自顾问程序可用于分派器组件。

    对于 2 层 WAN(广域网)中的 Load Balancer,分派器提供后端服务器上收集负载状态信息的顾问程序。

    图 35. 使用自顾问程序的 2 层 WAN 配置示例

    使用自顾问程序的 2 层 WAN 配置

    在此示例中,自顾问程序和度量服务器驻留在顶层 Load Balancer 负载均衡的两个分派器机器上。自顾问程序明确地测量在执行程序级别分派器的后端服务器上每秒速率的连接数。

    自顾问程序将结果写入 dsloadstat 文件。Load Balancer 还提供称为 dsload 的外部度量。每个分派器机器上的度量服务器代理程序运行其调用外部度量 dsload 的配置。dsload 脚本从 dsloadstat 文件抽取字符串,并将它返回度量服务器代理程序。然后,每个度量服务器代理程序(来自于每个分派器)将负载状态值返回顶层 Load Balancer,用于确定由哪个分派器转发客户机请求。

    dsload 可执行文件驻留在 Load Balancer 的 ...ibm/edge/lb/ms/script 目录中。

    请参阅配置广域分派器支持,以获取有关在 WAN 配置中使用分派器的更多信息。请参阅度量服务器,以获取有关度量服务器的更多信息。


    创建定制(可定制的)顾问程序

    定制(可定制的)顾问程序是一小段 Java 代码(以一个类文件提供),可使用基本代码调用。基本代码提供所有管理的服务,如启动 和停止定制顾问程序实例,提供状态和报告,并将历史信息记录到日志文件中。它还将结果报告给管理器组件。基本代码将定期执行顾问程序循环,它独立地评估配置中的所有服务器。它通过打开与服务器的连接启动。如果打开了套接字,基本代码将调用定制顾问程序中的“getLoad”方法(函数)。然后定制顾问程序执行评估服务器运行状况的必要步骤。在典型情况下,它将发送一条用户定义的消息至服务器,然后等待响应。(提供给定制顾问程序对打开套接字的访问权。)然后基本代码关闭与服务器的套接字,并向管理器报告负载信息。

    基本代码和定制顾问程序可以正常方式或置换方式操作。操作方式选项在定制顾问程序文件中指定为构造函数方法中的参数。

    在正常方式下,定制顾问程序与服务器交换数据,基本顾问程序代码计算交换时间并计算负载值。然后基本代码将负载值报告给管理器。定制顾问程序只需要返回 0(成功)或 -1(出错)。要指定正常方式,请将构造函数中的替换标志设置为假(false)。

    在置换方式中,基本代码不执行计时。定制顾问程序代码执行唯一要求的任何操作,然后返回实际负载数。基本代码将接受该数并将该它报告给管理器。要获得最好的结果,请将您的负载数规格化为 10 到 1000,10 代表快速服务 器,1000 代表慢速服务器。要指定置换方式,请将构造函数中的标志设置为真(true)。

    使用这种功能,用户可以写自己的顾问程序,它将提供所需的有关服务器的精确信息。样本定制顾问程序 ADV_sample.java 与 Load Balancer 产品一起提供。 安装 Load Balancer 后,您可以在 ...<install directory>/servers/samples/CustomAdvisors 安装目录中查找样本代码。

    缺省安装目录是:

    注意:
    如果您将定制顾问程序添加到分派器或任何其它可应用的 Load Balancer 组件,则您必须停止然后重新启动 dsserver(或 Windows 的服务),以启用 Java 进程来读新定制顾问程序类文件。定制顾问程序类文件仅在启动时装入。无需停止执行程序。即使当 dsserver 或服务已停止,执行程序仍继续运行。

    WAS 顾问程序

    Load Balancer 安装目录中特地提供了 WebSphere Application Server(WAS)顾问程序的样本定制顾问程序文件。

    WebSphere Application Server 顾问程序样本文件驻留在与 ADV_sample.java 文件相同的样本目录中。

    命名约定

    您的定制顾问程序文件名必须是“ADV_myadvisor.java”的格式。它必须以大写“ADV_”为前缀。所有后继字符都必须是小写字母。

    按 Java 约定,文件中定义的类名必须与文件名匹配。如果您复制样本代码,一定要将文件中的所有“ADV_sample”实例更改为新的类名。

    编译

    定制顾问程序是以 Java 语言编写的。您必须获取 Java 1.4 编译器,并安装在机器上。在编译期间引用这些文件:

    在编译期间,您的类路径必须指向定制顾问程序文件和基类文件。

    对于 Windows,样本编译命令为:

    javac -classpath install_dir\lb\servers\lib\ibmnd.jar:install_dir
    \lb\admin\lib\j2ee.jar  ADV_fred.java
     
    

    其中:

    例如,编译的输出是类文件

    ADV_fred.class
    

    启动顾问程序之前,将类文件复制到 ...ibm/edge/lb/servers/lib/CustomAdvisors 安装目录。

    注意:
    如果您愿意,定制顾问程序可在一个操作系统中编译 并在另一个操作系统上运行。例如,您可以在 Windows 上编译您的顾问程序,将类文件(二进制)复制到 AIX 机器,并在那里运行定制顾问程序。

    对于 AIX、HP-UX、Linux 和 Solaris,语法是类似的。

    运行

    要运行定制顾问程序,必须先将类文件复制到适当的安装目录:

    ...ibm/edge/lb/servers/lib/CustomAdvisors/ADV_fred.class
    

    配置此组件启动它的管理器功能,并发出命令以启动 定制顾问程序:

    dscontrol advisor start fred 123
     
    

    其中:

    需要的例程

    与所有顾问程序一样,定制顾问程序扩大了顾问程序基础部分(称为 ADV_Base)的功能。实 际上是顾问程序基础部分执行大多数顾问程序的功能,例如报告负载给管理器以在管理器的权值算法中使用。顾问程序基础部分还执行套接字连接和关闭操作,并提供顾问程序使用的发送和接收方法。顾问程序本身仅用于在正被咨询的服务器与端口之间发送和接收数据。顾问程序基础部分中的 TCP 方法 定时计算负载。如果需要,ADV_base 中构造函数内的标记用顾问程序返回的新负载值覆盖现有负载值。

    注意:
    根据构造函数内设置的值,顾问程序基础部分按指定时间间隔将负载值提供给权值算法。如果实际的顾问程序还未完成因此无法返回一个有效负载,则顾问程序基础部分将使用先前的负载值。

    这些是基类方法:

    搜索顺序

    Load Balancer 首先查看它本身提供的本机顾问程序列表。如果从中找不到给定的顾问程序,则 Load Balancer 查看定制顾问程序的客户列表。

    命名与路径

    样本顾问程序

    样本顾问程序中包含了一个样本顾问程序的程序清单。安装后,此样本顾问程序可在 ...ibm/edge/lb/servers/samples/CustomAdvisors 目录中找到。


    度量服务器

    此功能可用于所有 Load Balancer 组件。

    度量服务器以系统特定度量(报告服务器运行状况)格式向 Load Balancer 提供服务器负载信息。Load Balancer 管理器查询驻留在每台服务器上的度量服务器代理程序,使用从代理程序获得的度量给负载均衡进程指定权值。结果也放在管理器报告中。

    注意:
    当为每个服务器集中和规格化两个或更多度量到单个系统负载值时,可能发生舍入误差。

    关于配置的示例,请参阅图 5

    WLM 限制

    如同 WLM 顾问程序,度量服务器在服务器系统上作为一个整体报告,而不是在个别的特定协议服务器守护程序。WLM 和度量服务器都将它们的结果放至管理器报告的系统列。结果,不支持 WLM 顾问程序和度量服务器同时运行。

    先决条件

    度量服务器代理程序必须安装且运行在被负载均衡的所有服务器上。

    如何使用度量服务器

    下面是配置分派器的度量服务器的步骤。 可以使用类似于配置 Load Balancer 的其它组件的步骤来配置度量服务器。

    要在本地主机以外的地址上运行度量服务器,您需要编辑负载均衡服务器机器上的 metricserver 文件。 在 metricserver 文件中出现“java”的后面插入下列行:

    -Djava.rmi.server.hostname=OTHER_ADDRESS
    

    另外,在 metricserver 文件中的“if”语句之前,添加下列行:hostname OTHER_ADDRESS

    注意:
    对于 Windows 平台:您还需要在 Microsoft 堆栈上的 OTHER_ADDRESS 取别名。要在 Microsoft 堆栈上建立地址的别名,请参阅页面 ***

    当跨越不同的域收集度量值时,您必须在服务器脚本(dsserver、cbrserver 等)中显式地将 java.rmi.server.hostname 设置为正在请求度量值的机器的全限定域名(FQDN)。这是必需的,因为这取决于您的设置和操作系统,InetAddress.getLocalHost.getHostName() 可能不会返回 FQDN。


    工作负载管理器顾问程序

    WLM 是在 MVS 大型机上运行的代码。可以查询它来询问 MVS 机器上的负载。

    在 OS/390 系统上已经配置 MVS 工作负载管理时,分派器可接受来自 WLM 的容量信息并在负载均衡过程中使用它。使用 WLM 顾问程序,分派器将定期地打开通过分派器主机表中每个服务器上 WLM 端口的连接,并接受返回的容量整数。由于这些整数代表仍然可用的容量,分派器需要代表每台机器上的负载的值,顾问程序可将容量数转换成负载值(例如较大的容量数,较小的负载值代表较健康的服务器)。负载结果被放至管理器报告的系统列。

    WLM 顾问程序与其它分派器顾问程序之间有几个重要的区别:

    1. 其它顾问程序通过使用与正常客户机流量流经的端口相同的端口打开到服务器的连接。WLM 顾问程序通过使用与正常流量流经的端口不同的端口打开到服务器的连接。每台服务器上的 WLM 代理程序必须配置成在与启动分派器 WLM 顾问程序的端口相同的端口上侦听。缺省的 WLM 端口是 10007。
    2. 其它顾问程序只访问那些分派器 cluster:port:server 配置中定 义的服务器,该配置中服务器端口与顾问程序端口相匹配。WLM 顾问程序通知分派器cluster:port:server 配置中的每个服务器。因此,使用 WLM 顾问程序时,不可以定义非 WLM 服务器。
    3. 其它顾问程序将负载信息放入管理器报告的“端口”列中。WLM 顾问程序将负载信息放入管理器报告的“系统”列中。
    4. 可将指定协议的顾问程序和 WLM 顾问程序一起使用。协议特定的顾问程序将轮询其正常流量端口上的服务器,并且 WLM 顾问程序将使用 WLM 端口轮询系统负载。

    度量服务器限制

    如同度量服务器代理程序,WLM 代理程序在服务器系统上是作为一个整体进行报告,而不是对独立的特定于协议的服务器守护程序进行报告。度量服务器而且 WLM 把它们的结果放入管理器报告的系统列中。结果,不支持 WLM 顾问程序和度量服务器同时运行。


    分派器、CBR 和站点选择器的高级功能

    本章说明如何配置负载均衡参数以及如何设置 Load Balancer 高级功能。

    注意:
    阅读本章时,如果您没有使用分派器组件,那么用下列项替换“dscontrol”:

    表 14. Load Balancer 的高级配置任务

    任务 描述 相关信息
    在负载均衡的机器上并列配置 Load Balancer 设置已并列配置的 Load Balancer 机器。 使用并列配置的服务器
    配置高可用性或者相互高可用性 设置第二个分派器机器以提供备份。 高可用性
    配置基于规则的负载均衡 定义使用服务器子集的条件。 配置基于规则的负载均衡
    使用端口亲缘性覆盖提供一个机制以便服务器覆盖端口粘性特性 允许服务器覆盖其端口上的粘性时间设置。 端口亲缘性覆盖
    使用粘性亲缘性特性将一个群集的端口配置为粘性 允许将客户机请求导向到相同的服务器。 Load Balancer 的亲缘性功能如何工作
    使用交叉端口亲缘性通过端口扩展粘性(亲缘性)特性 允许将不同端口接收到的客户机请求导向到相同的服务器。 交叉端口亲缘性
    使用亲缘性地址掩码指定一个公共 IP 子网地址 允许将相同的子网接收到的客户机请求导向到相同的服务器。 亲缘性地址掩码(stickymask)
    使用活动 cookie 亲缘性以负载均衡 CBR 的服务器 规则选项允许会话维持特定服务器的亲缘性。 活动 cookie 亲缘性
    使用被动 cookie 亲缘性以为分派器基于内容路由和 CBR 组件负载均衡服务器 规则选项允许会话维持基于 cookie 名/cookie 值的特定服务器的亲缘性。 被动 cookie 亲缘性
    使用 URI 亲缘性负载均衡高速缓存代理服务器和在每个个别服务器上高速缓存的唯一的内容。 规则选项允许会话维持基于 URI 的特定服务器的亲缘性。 URI 亲缘性
    配置广域分派器支持 设置远程分派器通过广域网络进行负载均衡。或,使用支持 GRE 的服务器平台通过广域网络(没有远程分派器)进行负载均衡。 配置广域分派器支持
    使用显式链接 避免在链接中绕过分派器。 使用显式链接
    使用专用网 配置分派器对专用网上的服务器进行负载均衡。 使用专用网配置
    使用通配符群集来组合公共服务器配置 没有明确配置的地址将使用通配符群集作为负载均衡流量的方法。 使用通配符群集来组合服务器配置
    使用通配符群集为防火墙进行负载均衡 所有流量都将负载均衡到防火墙。 使用通配符群集为防火墙负载均衡
    将高速缓存代理和通配符群集一起用于透明代理 允许使用分派器启用透明代理。 将高速缓存代理和通配符群集一起用于透明代理
    使用通配符端口来定向未配置的端口流量 处理没有为任何特定端口配置过的流量。 使用通配符端口定向到未配置的端口流量
    使用“拒绝服务攻击”检测向管理员通知(通过警告)潜在的攻击 分派器分析服务器上的大量半开 TCP 连接进入请求。 拒绝服务攻击检测
    使用二进制日志记录分析服务器统计信息 允许在二进制文件中存储和从中检索服务器信息。 使用二进制日志记录分析服务器统计信息

    使用并列配置的服务器

    Load Balancer 可驻留在负载均衡请求的服务器相同的机器。这通常称为并列配置服务器。并列配置应用于分派器和站点选择器组件。CBR 也支持并列配置,但仅在使用特定绑定 Web 服务器和特定绑定高速缓存代理的时候。

    注意:
    并列配置的服务器在流量高峰时间与 Load Balancer 竞争资源。然而,在缺少超负载机器的情况下,使用并列配置的服务器可减少建立负载均衡的站点所必需的机器总数。

    对于分派器组件

    Linux:要同时配置并列配置和高可用性,使用 mac 转发方法运行分派器组件时,您必须安装 Linux 内核补丁。要获取有关安装此补丁的更多信息,请参阅安装 Linux 内核补丁(以抑制 arp 回送接口上的响应)。然 而,当遵循这些指示进行操作时,可跳过对回送适配器设置别名的步骤。您应在 goStandby 高可用性脚本文件中添加 ifconfig 指令,以对回送适 配器设置别名,该脚本文件会在分派器进入备用状态时执行。

    Solaris:并列配置入口点分派器时,存在无法配置 WAN 顾问程序的限制。请参阅使用带分派器广域支持的远程顾问程序

    在早期发行版中,必须指定的并列配置的服务器地址与此配置中的非转发地址(NFA)相同。此限制现在已被撤消。

    要配置并列配置的服务器,dscontrol server 命令提供称为并列配置 的选项,其可以设置为。缺省值是“否”。服务器的地址必须是机器上网络接口卡的有效 IP 地址。

    注意:
    对于 Windows 平台:您可以并列配置分派器,但不要使用并列配置的关键字。当使用分派器的 nat 和 cbr 转发方法时,支持并列配置,但当使用分派器 mac 转发方法时,不支持。要获取有关分派器转发方法的更多信息,请参阅分派器的 NAT/NAPT(nat 转发方法)分派器的基于内容路由(cbr 转发方法)分派器的 MAC 级别路由(mac 转发方法)

    您可用下列方法之一配置并列配置的服务器:

    有关 dscontrol server 命令语法的更多信息,请参阅dscontrol server - 配置服务器

    使用分派器的 nat 转发配置服务器并列配置

    如果在分派器机器上执行以下步骤,则现在可以在所有操作系统上执行配置分派器的 nat 转发方法时的并列配置支持:

    对于 CBR 组件

    CBR 支持所有所有平台上的并列配置而没有其它配置要求。然而,您使用的 Web 服务器和高速缓存代理必须是特定绑定的。

    对于站点选择器组件

    站点选择器支持所有平台上的并列配置(没有其它配置要求)。


    高可用性

    高可用性功能(使用 dscontrol highavailability 命令配置)可用于分派器组件(但不可用于 CBR 或站点选择器组件)。

    为提高分派器的可用性,分派器高可用性功能使用了下列机制:

    注意:
    要获取相互高可用性 配置(其中共享两个群集集合的两个分派器机器为对方提供备份)的描述和说明,请参阅相互高可用性。相互高可用性类似于高可用性,但是具体的说,它明确地基于群集地址而不是分派器机器。这两台机器必须将共享的群集集合配置为相同。

    配置高可用性

    dscontrol highavailability - 控制高可用性中给出了 dscontrol highavailability 的完整语法。

    要获取关于下列任务的更全面的讨论,请参阅设置分派器机器

    1. 启动在两台分派器服务器上的服务器程序。
    2. 在两台机器上启动执行程序。
    3. 保证已经为每个分派器机器配置了非转发地址(NFA),并且此 IP 地址对于是分派器机器的子网是有效的。

      仅适用于 Windows 平台:此外,使用 dsconfig 命令配置每个非转发的地址。例如:

      dsconfig en0 nfa_addr netmask netmask
      
    4. 设置两台机器上的群集、端口与服务器信息。
      注意:
      对于相互高可用性配置(图 14), 例如,按如下所示配置在两个分派器之间共享的群集集合:
      • 对于分派器 1,发出:
        dscontrol cluster set clusterA primaryhost NFAdispatcher1
        dscontrol cluster set clusterB primaryhost NFAdispatcher2
        
      • 对于分派器 2,发出:
        dscontrol cluster set clusterB primaryhost NFAdispatcher2
        dscontrol cluster set clusterA primaryhost NFAdispatcher1
        
    5. 在两台机器上启动管理器与顾问程序。
    6. 在两个分派器机器上均创建别名脚本文件。请参阅使用脚本
    7. 在两台计算机上添加工作频率信息:
      dscontrol highavailability heartbeat add sourceaddress destinationaddress
      
      注意:
      Sourceaddressdestinationaddress 是分派器机器的 IP 地址(可以是 DNS 名称,或是点分十进制地址)。两台机器上的这两个值将相反。示例:
      Primary - highavailability heartbeat add 9.67.111.3 9.67.186.8
      Backup  - highavailability heartbeat add 9.67.186.8 9.67.111.3
      
      至少一个工作频率对必须具有成对的 NFA 作为源和目的地地址。

      如果可能,建议至少一个工作频率对应该跨越单独的子网而不是常规群集流量。使工作频率流量保持不同,将帮助在网络负载很重的时候防止错误的接管,并且也可在故障恢复之后改进完整的恢复次数。

      设置执行程序用于高可用性心跳检测信号超时的秒数。示例:

      dscontrol executor hatimeout 3
      

      缺省值为 2 秒。

    8. 在两台机器上,配置分派器必须能够到达的 IP 地址列表以确保完全服务,使用 reach add 命令。示例:
      dscontrol highavailability reach add 9.67.125.18
      
      建议有到达目标,但是这并不是必要的。请参阅使用工作频率和到达目标的故障检测能力,以获取更多信息。
    9. 将备份信息添加到每台机器:
      注意:
      选择您的机器上未被使用的一个端口作为 port。 两台机器将通过此端口通信。
    10. 检查每台机器的高可用性状态:
      dscontrol highavailability status
      
      每台机器应该具有正确的角色(备份机器、主机器或者两者)、状态及子状态。主机器应是活动和同步的;备份机器应处于备用模式并且应在短时间内被同步化。策略必须相同。

    记录:

    1. 要配置单个分派器机器(无备份机器)来路由信息包,则不要在启动时发出任何高可用性命令。

    2. 要将为高可用性配置的两台分派器机器转换为一台机器单独运行,需要停止一台机器上的执行程序,然后删除另一台机器上的高可用性功能部件(工作频率、到达和备份)。

    3. 在以上两种情况下,需要时都必须使用群集地址作为网络接口卡的别名。

    4. 当两台分派器机器都在高可用性配置下运行并且处于同步状态时,建议先在备用机器上输入所有 dscontrol 命令(以更新配置),然后在活动的机器上再输入这些命令。

    5. 当两台分派器机器都在高可用性配置下运行时,如果将两台机器上的执行程序、群集、端口或服务器的任意参数(例如,port stickytime)设置为不同的值,则可能会出现异常的结果。

    6. 对于相互高可用性,考虑以下情况,分派器中的一个必须在活动状态下路由其主群集信息包的同时接管路由其备份群集的信息包。确保这不会超过此机器的吞吐能力。

    7. 对于 Linux,当使用分派器组件的 MAC 端口转发方法同时配置高可用性和并列配置时,您必须安装 Linux 内核补丁。要获取更多安装补丁的信息,请参阅安装 Linux 内核补丁(以抑制 arp 回送接口上的响应)

    使用工作频率和到达目标的故障检测能力

    除故障检测的基本标准(通过工作频率消息检测活动与备用的分派器之间的连接是否丢失)外,还有另一个名为可达性标准的故障检测机制。配置分派器时,要提供主机列表,每个分派器应该能够到达这些主机以正确工作。这两个高可用性伙伴通过心跳继续相互进行联系,并且根据它们中任一个可以 ping 到的目标数相互更新。如果备用 ping 所达到的目标数超过活动的 ping,则发生故障转移。

    心跳由活动的分派器发送,并且预期每半秒由备用分派器接收。如果备用分派器在 2 秒内未能接收心跳,则开始故障转移。所有心跳检测信号必须中断,以发生备用分派器接管。换句话说,当配置两个心跳对时,必须同时中断这两个心跳对。要使高可用性环境稳定并避免故障转移,建议您添加多个心跳对。

    对于到达的目标,您应该至少为分派器机器使用的每个子网选择一个主机。 主机可能是路由器、IP 服务器或其它类型的主机。主机可达性由 ping 主机的到达顾问程序获取。当心跳消息无法贯通时,或当备用分派器比主分派器更符合可达性标准时,发生故障转移。为能根据全部可用的消息做出决定,活动的分派器定期向备用分派器发送其可达性能力信息。 然后备用分派器将此能力与自己的情况进行比较,决定是否需要切换。

    注意:
    当您配置到达目标时,还必须启动到达顾问程序。当您启动管理器功能时,到达顾问程序自动启动。要获取到达顾问程序的更多信息,请参阅页面 (REACHADV)

    恢复策略

    配置两台分派器机器:主机器与另一个称为备份的机器。在启动时,主机器将全部连接数据发送到备份机器,直至两台机器同步。主机器变为活动状态,即:它开始进行负载均衡。这期间备份机器监视主机器的状态,被称为处于备用状态。

    如果任何时候备份机器检测到主机器已经发生故障,它就立即接管主机器的负载均衡功能并成为活动的机器。当主机器再次恢复运行后,机器将根据用户配置的恢复策略作出响应。有两种策略:

    自动
    一旦主机器再次可运行,就继续路由信息包。

    手工
    即使主机器可运行,备份计算机仍继续路由信息包。要将主机器恢复到活动状态并将备份机器复位为备份状态,必须进行手工干预。

    对两台机器必须设置相同的策略参数。

    手工恢复策略允许您使用 takeover 命令强制将信息包路由到特定的机器。当在其它机器上执行维护时,手工恢复有用。自动恢复策略是为通常的无人照管操作而设计的。

    对于相互高可用性 配置,没有每群集故障。如果有一个机器发生问题,即使仅仅影响一个群集,另一台机器也将接管所有的群集。

    注意:
    在接管状态期间,可能会丢失一些连接更新。这可能会引起接管期间正在进行存取的现有长期运行连接(如,telnet)结束。

    使用脚本

    为了使分派器路由信息包,每个群集地址必须是网络接口设备的别名。

    这是因为当检测到故障时分派器机器将更改状态,所以必须自动发出以上命令。分派器将执行用户创建的脚本以完成上 述操作。样本脚本可在 ...ibm/edge/lb/servers/samples 目录中查找到,且为了运行这些脚本,必须将其移动到 ...ibm/edge/lb/servers/bin 目录。

    注意:
    对于相互高可用性 配置,每个“go”脚本将由分派器通过一个标识主分派器地址的参数进行调用。该脚本必须查询此参数并对那些与主分派器关联的群集地址执行 ifconfig 命令(或 dsconfig 命令(如果使用的是 Windows 平台))。
    注意:
    为了配置分派器的 nat 转发方法的高可用性,您必须将返回地址添加到这些脚本文件。

    可以使用下列样本脚本:

    goActive
    当分派器进入活动状态并开始路由信息包时执行 goActive 脚本。

    goStandby
    当分派器进入备用状态时执行 goStandby 脚本,监视活动机器的状态,但是不路由任何信息包。

    goInOp
    当分派器执行程序停止时和执行程序第一次启动前执行 goInOp 脚本。

    goIdle
    当分派器进入空闲状态并开始路由信息包时执行 goIdle 脚本。 当还没有添加高可用性功能时会出现这种情况,与单机配置中相同。在添加高可用性功能之前或已经除去高可用性功能后,在高可用性配置中也会出现这种情况。

    highavailChange
    无论高可用性状态在分派器中如何更改,highavailChange 脚本都执行,如调用一个“go”脚本。传递到此脚本的单个参数正是分派器运行的“go”脚本名称。您可创建此脚本以使用状态更改信息,例如,提醒管理员或仅记录事件。

    在 Windows 系统上:在配置设置中,如果您使用站点选择器 负载均衡两个在高可用性环境中运行的分派器机器,那么您需要为度量服务器在 Microsoft 堆栈上添加别名。 此别名将被添加到 goActive 脚本中。例如:

    call netsh interface ip add address "Local Area Connection"
      addr=9.37.51.28 mask=255.255.240.0
    

    在 goStandby 和 GoInOp 中,需要除去别名。例如:

    call netsh interface ip delete address "Local Area Connection"
      addr=9.37.51.28
    

    如果机器上有多个 NIC,那么通过在命令提示符下发出以下命令以首先检查您将使用哪个接口:netsh interface ip show address。 此命令会返回一个当前已配置接口的列表,并编号“本地区域连接”(例如,“本地区域连接 2”),以此您可确定要使用哪个接口。

    重要信息:当在 Linux for S/390 上运行分派器时 -

    分派器发出无端的 ARP 将 IP 地址从一个分派器移动到另一个分派器。因此,此机制取决于底层的网络类型。在 Linux for S/390 上运行时,仅在能发出无端 ARP 并在本地接口上配置地址的那些接口上,分派器才能进行本机高可用性接管(通过移动 IP 地址完成)。此机制在点到点接口(例如,IUCB 和 CTC)上不会正常工作,并且在 QETH/QDIO 的某些配置中也不会正常工作。

    对于分派器的本机 IP 接管功能不会正常工作的接口和配置,客户可以将适当的命令放置在 go 脚本中来手工移动这些地址。这会确保那些网络拓扑也可以受益于高可用性。


    配置基于规则的负载均衡

    什么时候将什么信息包发送给哪些服务器,这些可以使用基于规则的负载均衡来很好地调节。Load Balancer 复查您按照优先级从高到低的顺序添加的任何规则,并在找到第一条符合条件的规则时停止,然后在与此规则关联的任何服务器之间对内容进行负载均衡处理。它虽然已根据目的地和端口来平衡负载,但是使用规则能扩展分发连接的能力。

    配置规则时的大多数情况下,您应该配置缺省总是为真规则以捕捉通过其余更高优先级规则的请求。当所有其它服务器没能捕捉到客户机请求时,响应可能是“对不起,站点当前当机,请稍后再试”。

    由于某种原因您要使用您的服务器子集,您应该使用分派器和站点选择器中基于规则的负载均衡。您必须总是对 CBR 组件使用规则。

    您可从下列规则类型选择:

    建议在开始向配置添加规则前,制定一个希望规则遵循的逻辑计划。

    如何评估规则?

    所有的规则都具有名称、类型、优先级,并可能具有开始范围和结束范围和一个服务器组。另外,CBR 组件的内容类型规则具有与其关联的匹配正则表达式。(如何使用内容规则和内容规则的有效模式语法的示例和方案,请参阅附录 B, 内容规则(模式)语法)。

    按照优先级次序评估规则。也就是说,优先级 1(较低数)的规则在优先级 2(较高数)的规则前评估。将使用第一个符合的规则。一旦满足了某个规则,就不再对更多的规则进行评估。

    要满足一个规则,必须符合下面两个条件:

    1. 规则谓词必须为真。也就是,要评估的值必须在开始范围和结束范围之间,或内容必须与内容规则模式中指定的正则表达式相匹配。对于类型为“true”的规则,谓词总是符合要求,而不用考虑开始和结束范围。
    2. 如果有若干服务器与该规则关联,其中至少有一个服务器可用于转发信息包。

    如果规则没有与其关联的服务器,规则只需符合条件一即为满足。在这种情况下,分派器将删除连接请求,站点选择器将返回一个有错误的名称服务器请求,CBR 将导致高速缓存代理返回一个错误页面。

    如果没有满足任何规则,分派器将从该端口上全部可用服务器集中选择一个服务器,站点选择器将从站点名称可用的全部服务器集中选择一个服务器,CBR 将导致高速缓存代理返回错误页面。

    使用基于客户机 IP 地址的规则

    此规则类型在分派器、CBR 或站点选择器组件中可用。

    如果想根据客户来源筛选客户并分配资源,就可能要使用基于客户机 IP 地址的规则。

    例如,您可能已经注意到,您的网络会收到许多未付费而且也不需要的流量,这些流量来自一组特定 IP 地址的客户机。可以使用 dscontrol rule 命令创建一条规则,例如:

    dscontrol rule add 9.67.131.153:80:ni type ip 
      beginrange 9.0.0.0 endrange 9.255.255.255
    

    此“ni”规则将筛选出任何来自 IBM 客户机的连接。然后您向此规则添加期望对于 IBM 用户可访问的服务器,或者如果您不向此规则添加任何服务器,您的任何服务器将不对来自 9.x.x.x 地址的请求提供服务。

    使用基于客户机端口的规则

    此规则类型仅可用于分派器组件。

    执行请求过程中,如果客户机使用某种需要 TCP/IP 的特定端口的软件,则可 能要使用基于客户机端口的规则。

    例如,可以创建一条规则,即客户机端口 10002 的任何请求将使用一组特殊的快速服务器,因为知道该端口的任何客户机请求都发自客户中的一组主要用户。

    使用基于时间的规则

    此规则类型在分派器、CBR 或站点选择器组件中可用。

    出于容量计划的原因,用户可能要使用基于时间的规则。例如,如果您的 Web 站点每天主要在相同的几个时间段有大量访问,您可能希望指定五台服务器全天执行 HTTP,然后在高峰期间另外增加五台。

    另一个可能使用这类规则的原因是,在每晚午夜要使几个服务器当机进行维修,因此必须设置一条规则以在需要的维修期间不使用那些服务器。

    使用基于服务类型(TOS)的规则

    此规则类型仅可用于分派器组件。

    可能希望基于 IP 头中“服务类型”(TOS)字段的内容使用规则。例如,如果一个客户机请求带有一个表明普通服务的 TOS 值,可以将它路由到一个服务器组。如果另一个客户机请求带有一个不同的 TOS 值,该值表明了更高的服务优先级,可以将它路由到一个不同的服务器集合。

    TOS 规则允许您使用 dscontrol rule 命令完全配置 TOS 字节中的每一位。对于重要的希望在 TOS 字节中匹配的位,使用 0 或 1。否则,使用值 x。以下是添加 TOS 规则的示例:

    dscontrol rule add 9.67.131.153:80:tsr type service tos 0xx1010x
    

    使用基于每秒连接数的规则

    此规则类型在分派器和 CBR 组件中可用。

    注意:
    为使如下部分工作,管理器必须正在运行。

    如果需要与其它应用程序共享您的某些服务器,则可能要使用基于每秒连接数的规则。例如,您可设置两个规则:

    1. 如果端口 80 上的每秒连接数在 0 和 2000 之间,则使用这 2 个服务器
    2. 如果端口 80 上的每秒连接数在大于 2000,则使用这 10 个服务器

    或者可能使用 Telnet 并想保留五个服务器中的两个用于 Telnet,除非当每秒连接数增长超过一定级别。通过该方法,分派器将在高峰时间平衡所有五台服务器上的负载。

    设置规则评估选项“upserversonrule”和“连接”类型规则:当使用连接类型规则和设置 upserversonrule 选项时,如果服务器集中的某些服务器当机,则您可以确保剩余的服务器不会过载。请参阅服务器评估规则选项以获取更多信息。

    使用基于总活动连接数的规则

    此规则在分派器或 CBR 组件中可用。

    注意:
    为使如下部分工作,管理器必须正在运行。

    如果服务器过载并开始将信息包丢弃,则可能要使用基于端口活动连接总数的规则。特定 Web 服务器将继续接收连接,即使没有足够的线程来响应请求。结果,客户机请求超时,访问 Web 站点的客户未得到服务。可使用基于活动连接数的规则来平衡服务器池的容量。

    例如,从经验中得知服务器接受 250 个连接之后将停止服务。可以使用 dscontrol rulecbrcontrol rule 命令创建一条规则,例如:

    dscontrol rule add 130.40.52.153:80:pool2 type active 
    beginrange 250 endrange 500
     
    或
     
     
    cbrcontrol rule add 130.40.52.153:80:pool2 type active
    beginrange 250 endrange 500
     
    

    然后向规则添加当前服务器及一些附加服务器,否则这些服务器将被用于其它进程。

    使用基于保留带宽和共享带宽的规则

    保留带宽和共享带宽规则仅可用于分派器组件。

    对于带宽规则,分派器将带宽计算为一组特定的服务器发送到客户机的数据率。分派器在服务器、规则、端口、群集和执行程序级别跟踪容量。对于这些级别中的每个级别,都有一个字节计数器字段:每秒转移的千字节数。分派器在 60 秒间隔以上计算这些比率。您可从 GUI 或命令行报告输出查看这些比率值。

    保留带宽规则

    保留带宽规则允许您控制一个服务器组发送的每秒千字节数。通过为整个配置中的每个服务器集设置阈值(分配指定的带宽范围),您可控制并保证每个群集端口组合使用的带宽量。

    以下是添加 reservedbandwidth 规则的示例:

    dscontrol rule add 9.67.131.153:80:rbw type reservedbandwidth 
      beginrange 0 endrange 300
    

    以千字节/秒指定开始范围和结束范围。

    共享带宽规则

    在配置共享带宽规则之前,您必须使用带有 sharedbandwidth 选项的 dscontrol executordscontrol cluster 命令,指定可在执行程序或群集级别共享的最大带宽量(每秒千字节数)。sharebandwidth 值应不超过可用的总带宽量(总网络容量)。 使用 dscontrol 命令设置共享带宽仅提供规则的上限。

    以下是命令语法的示例:

    dscontrol executor set sharedbandwidth size
    dscontrol cluster [add | set] 9.12.32.9 sharedbandwidth size
    

    sharedbandwidth 大小是整数值(千字节/秒)。缺省值为零。如果值为零,则不能共享带宽。

    群集级别的共享带宽允许此群集使用的指定最大带宽量。只要此群集所使用的带宽低于指定的量,则此规则将评估为“真”。如果使用的总带宽大于指定的量,则此规则将评估为“假”。

    在执行程序级别共享带宽允许整个分派器配置共享最大带宽量。只要在执行程序级别使用的带宽低于指定的量,则此规则将评估为“真”。如果使用的总带宽大于所定义的量,则此规则将评估为“假”。

    下列是共享宽带规则的添加或设置示例:

    dscontrol rule add 9.20.30.4:80:shbw type sharedbandwidth sharelevel value
    dscontrol rule set 9.20.34.11:80:shrule sharelevel value
    

    sharelevel 的 value 是执行程序或群集。Sharelevel 是 sharebandwidth 规则上的必需参数。

    使用保留和共享带宽规则

    分派器允许您使用保留带宽规则,把指定的带宽分配给配置中的服务器集。通过指定开始和结束范围,您可以控制一个服务器组发送到客户机的千字节数范围。一旦此规则不再评估为“真”(超出结束范围),将评估下一个较低优先级的规则。 如果下一个较低优先级的规则是“总是为真”规则,则可以选择某个服务器以响应具有“站点忙”响应的客户机。

    例如:考虑端口 2222 上的一组三台服务器。如果保留带宽设置为 300,则超过 60 秒的时间段每秒最大字节数将为 300。当超出此比率时,规则不再评估为“真”。如果这是唯一的规则,则分派器将选择三台服务器中的其中一台来处理此请求。如果有较低优先级的“总是为真”规则,则可以将此请求重定向到另一台服务器,并且回答为“站点忙”。

    共享带宽规则可以将附加服务器访问权提供给客户机。 明确地,当用作遵循保留带宽规则的较低优先级规则时,客户机仍可访问服务器,即使已超出保留带宽。

    例如:通过使用遵循保留带宽规则的共享带宽规则,您可以允许客户机在受控的方式下获取到三台服务器的访问权。只要存在可用的共享带宽,规则将评估为“真”,并且授予其访问权。如果不存在可用的共享带宽,则此规则不为“真”,并评估下一个规则。如果接着是一个“总是为真”规则,则可按所需重定向此请求。

    通过按先前的示例所述使用保留和共享带宽,较大的灵活性和控制可练习授予(或拒绝)对服务器的访问权。在带宽使用中可限制特定端口上的服务器,而其它服务器可使用其它带宽(只要它是可用的)。

    注意:
    分派器通过测量流动到服务器的客户机流量(如,数据“asks”)来跟踪带宽。如果由于任何原因,分派器未“看见”此流量,则在使用带宽规则时结果将不可预测。

    度量所有规则

    此规则类型仅可用于站点选择器组件。

    对于度量所有规则,您可选择系统度量(cpuload、memload 或您自己定制的系统度量脚本),站点选择器对系统度量值(由驻留在每个负载均衡服务器上的度量服务器代理程序返回)和您在规则中指定的开始范围和结束范围进行比较。服务器集中的所有服务器的当前系统度量值必 须在规则激发范围内。

    注意:
    您选择的系统度量脚本必须驻留在每个负载均衡的服务器上。

    下列是添加度量所有规则到您的配置的示例:

    sscontrol rule add dnsload.com:allrule1 type metricall 
      metricname cpuload beginrange 0 endrange 100
     
    

    度量平均规则

    此规则类型仅可用于站点选择器组件。

    对于度量平均规则,您可选择系统度量(cpuload、memload 或您自己定制的系统度量脚本),站点选择器对系统度量值(由驻留在每个负载均衡服务器上的度量服务器代理程序返回)和您在规则中指定的开始范围和结束范围进行比较。服务器集中的所有服务器的当前系统度量值 的平均必须在规则激发范围内。

    注意:
    您选择的系统度量脚本必须驻留在每个负载均衡的服务器上。

    下列是添加度量平均规则至您的配置的示例:

    sscontrol rule add dnsload.com:avgrule1 type metricavg 
      metricname cpuload beginrange 0 endrange 100
     
    

    使用总是为真规则

    此规则类型在分派器、CBR 或站点选择器组件中可用。

    可以创建“总是为真”规则。这样的规则将总被选中,除非所有与其关联的服务器都当机。因此它一般应具有比其它规则更低的优先级。

    甚至可以有多个“总是为真”规则,每个有一个服务器组与之关联。带有可用服务器的第一条为“真”的规则被选中。例如,假定有六台服务器。想要其中的两台在所有情况下处理流量,除非这两台服务器都当机。如果前两台服务器当机,需要第二个服务器组处理流量。如果这四台服务器都当机,则使用最后的两台服务器来处理流量。可以设置三 个“总是为真”规则。只要第一个服务器组中至少有一台在运行,则总是选择该服务器组。如果第一组都当机了,则将选择第二组中的一个,依次类推。

    又如,可能需要一条“总是为真”规则,来确保如果进入客户机与设置的任何一条规则均不匹配,则得不到服务。您可使用 dscontrol rule 命令创建一条规则,如:

    dscontrol rule add 130.40.52.153:80:jamais type true priority 100
    

    然后不要将任何服务器添加到规则中,以此导致客户机信息包无响应丢失。

    注意:
    创建“总是为真”规则时,您不需要设置开始范围或结束范围。

    可以定义多个“总是为真”规则,此后通过更改其优先级级别来调整执行哪一个。

    使用基于请求内容的规则

    此规则类型可用于 CBR 组件或分派器组件(当使用分派器的 cbr 转发方法时)。

    您将希望使用内容类型规则将请求发送至服务器组(设置该服务 器组处理您的站点流量的某些子集)。例如,您可能希望用一服务器组来处理所有 cgi-bin 请求,另一服务器组处理所有流式音频请求,第三组处理所有其它请求。您可添加三种规则,一种的模式与到 cgi-bin 目录的路径相匹配,另一种的模式与流式音频文件的文件类型相匹配,第三种总是为真规则用于处理其它流量。然后将适当的服务器添加到每个规则。

    重要:如何使用内容规则和内容规则的有效模式语法的示例和方案,请参阅附录 B, 内容规则(模式)语法

    端口亲缘性覆盖

    使用端口亲缘性覆盖,您可以覆盖指定服务器的端口粘性。例如,您使用规则限制连接到每个应用程序服务器的数目,并且有带总是为真规则的溢出服务器,此规则经常对该应用程序返回“请稍后重试”。 端口的 stickytime 值为 25 分钟,因此您不希望客户机粘着到那个服务器。使用端口亲缘性覆盖,您可以更改溢出服务器以覆盖通常与该端口关联的亲缘性。当下一次客户机请求该群集时,将对最有效的应用程序服务器进行负载均衡,而不是溢出服务器。

    请参阅dscontrol server - 配置服务器,以获取关于使用服务器粘性 选项的端口亲缘性覆盖的命令语法的详细信息。

    添加规则到您的配置

    您可使用 dscontrol rule add 命令,通过编辑样本配置文件或使用图形用户界面(GUI)来添加规则。您可以向已定义的每个端口添加一个或多个规则。

    这是一个两步过程:添加规则,然后定义如果规则为真,由哪些服务器提供服务。例如,系统管理员要跟踪代理服务器对站点上每部分的使用量。她知道每个部分获得哪个 IP 地址。她将基于客户机 IP 地址创建第一组规则,以分隔每部分的负载:

    dscontrol rule add 130.40.52.153:80:div1 type ip b 9.1.0.0 e 9.1.255.255
    dscontrol rule add 130.40.52.153:80:div2 type ip b 9.2.0.0 e 9.2.255.255
    dscontrol rule add 130.40.52.153:80:div3 type ip b 9.3.0.0 e 9.3.255.255
    

    然后,给每条规则添加一台不同的服务器,测量每台服务器上的负载,为每部分正确列出其使用的服务的数量。例如:

    dscontrol rule useserver 130.40.52.153:80:div1 207.72.33.45
    dscontrol rule useserver 130.40.52.153:80:div2 207.72.33.63
    dscontrol rule useserver 130.40.52.153:80:div3 207.72.33.47
    

    服务器评估规则选项

    服务器评估选项仅可用于分派器组件。

    dscontrol rule 命令上,有规则的服务器评估选项。使用评估选项选择在端口中的所有服务器上评估规则条件,或只在规则中的各服务器上评估规则条件。(在 Load Balancer 的早期版本中,您只能跨越端口上的所有服务器测量每个规则条件。)

    记录:

    1. 服务器评估选项仅对下列根据服务器的特征做出其决定的规则有效:总连接数(每秒)规则、活动连接数规则和保留带宽规则。

    2. “连接”类型规则具有一个要选择的附加评估选项 - upserversonrule。请参阅使用基于每秒连接数的规则以获取更多信息。

    下列是在保留带宽规则上添加或设置评估选项的示例:

    dscontrol rule add 9.22.21.3:80:rbweval type reservedbandwidth evaluate level
    dscontrol rule set 9.22.21.3:80:rbweval evaluate level
    

    评估 level 可设置为 port、rule 或 upserversonrule。缺省值是 port。

    在规则内评估服务器

    用于在规则中的各服务器上测量规则条件的选项,允许您配置具有下列特征的两个规则:

    结果是,当流量超过第一个规则中服务器的阈值时,流量将发送到第二个规则中的“站点忙”服务器。当流量降至低于第一个规则中服务器的阈值时,新的流量将再继续发送到第一个规则中的服务器。

    在端口上评估服务器

    使用前个示例描述的两个规则,如果您把第一个规则的评估选项设置为 port(评估跨端口中所有服务器的规则条件),当流量超过那个规则的阈值时,流量发送到与第二个规则关联的“站点忙”服务器。

    第一个规则测量端口中所有服务器的流量(包括“站点忙”服务器),以确定流量是否超过阈值。当拥塞减少和第一个规则关联的服务器的流量时,由于端口上的流量仍超过第一个规则的阈值,就可能发生意外的结果(此处流量继续发送至“站点忙”服务器)。


    Load Balancer 的亲缘性功能如何工作

    对于分派器和 CBR 组件:在您将群集端口配置为粘性时,启用亲缘性功能。将群集的端口配置为粘性允许后继的客户机请求定向到相同的服务器。 这是通过将执行程序、群集或端口级别的粘性时间设置为一定的秒数来完成的。可通过将粘性时间设为零来禁用此功能。

    注意:
    如果正在启用交叉端口亲缘性,共享端口的粘性时间值必须为相同的非零值。有关更多的信息,请参阅交叉端口亲缘性

    对于站点选择器组件:在您将站点名配置为粘性时,启用亲缘性功能。将站点名配置为粘性允许用户对多个名称服务请求使用同一服务器。这是通过将站点名称上的粘性时间设置为一定的秒数来完成的。可通过将粘性时间设为零来禁用此功能。

    禁用亲缘性时的行为

    在禁用亲缘性功能的情况下,当从客户机接收到新的 TCP 连接时,Load Balancer 将及时选择正确的服务器并将信息包转发给它。如果从同一客户机处传来了后继的连接,Load Balancer 将把它作为一个无关的新连接并再次及时选择正确的服务器。

    启用亲缘性时的行为

    在启用亲缘性功能的情况下,如果从同一客户机接收到一个后续请求,此请求将定向到同一服务器。

    在超时情况下,客户机将结束发送事务并且将丢失亲缘性记录。因此粘性“时间”的含义。每个亲缘性记录(以秒为单位)“粘性时间”的生命。当在粘性时间内接收到 后继的连接时,亲缘性记录将依然有效并且请求将转至相同的服务器。如果后继的连接不是在粘性时间内接收到的,则清除此记录;在此时间之后接收到的连接将转至一个新选中的服务器。

    交叉端口亲缘性

    交叉端口亲缘性仅适用于分派器组件的 MAC 和 NAT/NATP 转发方法。

    交叉端口亲缘性端口是扩展的粘性功能,可以涉及多个端口。例如,如果首先在一个端口上接收到客户机请求然后在另一个端口上接收到另一个请求,交叉端口亲缘性允许分派器将客户机请求发送到同一服务器。如果使用此功能,端口必须:

    可以将一个以上的端口连接到相同的交叉端口。当后继的连接都来自同一端口的或共享端口上的相同客户机时,将访问同一台服务器。以下是一个使用到端口 10 的交叉端口亲缘性配置多个端口的示例:

    dscontrol port set cluster:20 crossport 10
    dscontrol port set cluster:30 crossport 10
    dscontrol port set cluster:40 crossport 10
    

    在建立交叉端口亲缘性后,将可以灵活的为端口修改粘性时间值。但是,建议将所有共享的端口的粘性时间值更改为相同的值,否则可能导致不可预期的后果。

    要除去交叉端口亲缘性,将交叉端口值设置回它自己的端口号。请参阅dscontrol port - 配置端口,以获取关于 crossport 选项命令语法的详细信息。

    亲缘性地址掩码(stickymask)

    亲缘性地址掩码仅应用于分派器组件。

    亲缘性地址掩码是一种增强的粘性功能,它可根据公共子网地址对客户机进行分组。指定 stickymask dscontrol port 命令上允许您屏蔽 32 位 IP 地址的公共高位。如果配置了此功能,当客户机请求首次与此端口建立连接时,具有相同子网地址(由将要进行屏蔽的地址部分表示)的客户机发出的所有后续请求将定向到同一服务器。

    注意:
    要启用 stickymask,端口粘性时间必须为非零值。

    例如,如果您希望所有进入的具有相同的 A 类地址的客户机请求定向到相同的服务器,可以将 stickymask 值设置为对应端口的 8 位。要将具有相同的 B 类地址的客户机请求分组,将 stickymask 值设置为 16(位)。要将具有相同的 C 类地址的客户机请求分组,将 stickymask 值设置为 24(位)。

    要获得最佳的效果,在第一次启动 Load Balancer 时设置 stickymask 值。如果动态的更改 stickymask 值,结果可能不可预测。

    与交叉端口亲缘性交互作用:如果正准备启用交叉端口亲缘性,

    共享端口的 stickymask 值必须相同。有关更多的信息,请参阅交叉端口亲缘性

    要启用亲缘性地址掩码,发出类似于以下命令的 dscontrol port 命令:

    dscontrol port set cluster:port stickytime 10 stickymask 8
    

    可能的 stickymask 值是 8、16、24 和 32。值为 8 表明将屏蔽 IP 地址的第一个高 8 位(A 类地址)。值为 16 表明将屏蔽 IP 地址的第一个高 16 位(B 类地址)。值为 24 表明将屏蔽 IP 地址的第一个高 24 位(C 类地址)。如果指定值为 32,将屏蔽整个 IP 地址,其有效地禁用亲缘性地址掩码功能。stickymask 的缺省值是 32。

    请参阅dscontrol port - 配置端口,以获取 stickymask(亲缘性地址掩码功能)命令语法的详细信息。

    停顿服务器连接句柄

    停顿处理应用于分派器和 CBR 组件。

    由于任何原因(更新、升级和服务等)要从 Load Balancer 配置中除去服务器,您可使用 dscontrol manager quiesce 命令。quiesce 子命令允许现有连接完成(不被切断),如果将连接指定为粘性且粘性时间未到期,则此子命令仅将后继新连接从客户机转发至停顿的服务器。quiesce 子命令禁止任何其它新连接到服务器。

    停顿粘性连接的处理

    如果您设置了粘性时间,并且要在粘性时间到期之前把新连接发送到另一台服务器(以代替停顿的服务器),则使用停顿的“now”选项。下列是向停顿服务器 9.40.25.67 使用“now”选项的示例:

    dscontrol manager quiesce 9.40.25.67 now
    

    “now”选项决定如何处理粘性连接,如下所示:


    基于客户机请求内容的规则的亲缘性选项

    您可在 dscontrol rule 命令上指定以下亲缘性类型:

    亲缘性选项的缺省值为“无”。端口命令的粘性时间选项必须为零(不启用),以将规则命令的亲缘性选项设置为活动 cookie、被动 cookie 或 URI。 一旦为规则设置了亲缘性,您就无法启用端口的粘性时间。

    活动 cookie 亲缘性

    活动 cookie 亲缘性功能仅应用于 CBR 组件。

    它提供了一种使客户机“粘”到特殊服务器的方法。此功能通过设置规则的粘性时间为正数来启用,并且设置亲缘性为“activecookie”。当添加规则或使用规则设置命令时,可以执行它。 请参阅dscontrol rule - 配置规则,以获取命令语法上的详细信息。

    一旦已为活动 cookie 亲缘性启用规则,将使用标准 CBR 算法负载均衡新的客户机请求,当从相同的客户机继承将发送到最初选择的服务器的请求时。选择的服务器作为 cookie 存储在响应客户机中。只要客户机将来的请求包含 cookie,并且每个请求在粘性时间间隔内到达,客户机 将用初始服务器维护亲缘性。

    活动 cookie 亲缘性用于确保在某段时间内继续将客户机负载均衡到相同的服务器。这通过发送 cookie 以被客户机浏览器存储来完成。cookie 包含用于做出决定的 cluster:port:rule、负载均衡所至的服务器和亲缘性不再有效时的超时时间戳记。cookie 具有以下格式:IBMCBR=cluster:port:rule+server-time! 为了不泄露 CBR 配置,编码 cluster:port:ruleserver 信息。

    活动 cookie 亲缘性如何工作

    只要规则激发打开了 cookie 亲缘性,就会检测客户机发送的 cookie。

    然后新的 cookie 插入到回到客户机的头中,并且如果客户机的浏览器配置为接受 cookie,它将回送后继请求。

    cookie 中的每个亲缘性实例长度将为 65 个字节,并且以惊叹号结束。因此,4096 个字节的 cookie 每个域可容纳大约 60 个单独的活动 cookie 规则。如果 cookie 完全填满,则将清除所有到期的亲缘性实例。如果所有实例仍有效,则将删除最旧的一个,并添加当前规则的新实例。

    注意:
    CBR 将替换代理中出现的任何旧格式的 IBMCBR cookie。

    如果端口粘性时间为零(不启用),规则命令的活动 cookie 亲缘性选项仅可以设置为 activecookie。 一旦规则的活动 cookie 亲缘性是活动的,那么您将无法启用端口的粘性时间。

    如何启用活动 cookie 亲缘性

    要启用特定规则的活动 cookie 亲缘性,使用规则设置命令:

    rule set cluster:port:rule stickytime 60
    rule set cluster:port:rule affinity activecookie
    

    为什么使用活动 cookie 亲缘性

    使规则具有粘性通常用于存储服务器上的客户机状态的 CGI 或 servlet。状态由 cookie 标识来标识(这些是服务器 cookie)。客户机状态仅在所选的服务器上,所以服务器需要来自该服务器的 cookie 以维护请求之间的状态。

    重设活动 cookie 亲缘性的到期时间

    活动 cookie 亲缘性具有一个缺省到期,它等于当前服务器时间加粘性时间间隔再加 24 小时。 如果您的客户机(将请求发送到 CBR 机器的那些客户机)的系统时间不正确(例如,它们比服务器时间至少早一天),那么那些客户机的系统将忽略来自 CBR 的 cookie,因为系统假设 cookie 已经到期。要设置较长的到期时间,修改 cbrserver 脚本。在该脚本文件中,编辑 javaw 行,在 LB_SERVER_KEYS 之后添加下列参数:-DCOOKIEEXPIREINTERVAL=X,其中 X 是要添加到到期时间的天数。

    在 AIX、Solaris 和 Linux 上,cbrserver 文件位于 /usr/bin 目录。

    在 Windows 上,cbrserver 文件位于 \winnt\system32 目录中。

    被动 cookie 亲缘性

    被动 cookie 亲缘性应用到分派器组件的基于内容路由(cbr)转发方法和 CBR 组件。 请参阅分派器的基于内容路由(cbr 转发方法),以获取如何配置分派器的 cbr 转发方法的信息。

    被动 cookie 亲缘性提供了一个使客户机粘着到特定服务器的方法。当您对“passivecookie”启用规则的亲缘性时,被动 cookie 亲缘性允许您用亲缘性平衡负载 Web 流量到相同的服务器(基于服务器生成的自标识 cookie)。在规则级别配置被动 cookie 亲缘性。

    规则激发时,如果启用 被动 cookie 亲缘性,Load Balancer 将根据客户机请求的 HTTP 头中的 cookie 名称选择服务器。Load Balancer 开始将来自客户机的 HTTP 头与为每个服务器配置的 cookie 值进行比较。

    Load Balancer 首次发现服务器的 cookie 值包含客户机的 cookie 名时,Load Balancer 为请求选择该服务器。

    注意:
    Load Balancer 提供此灵活性以便处理下列情况:服务器生成的 cookie 值可能由一个静态部分和一个可变部分组成。例如,服务器的 cookie 值可以是服务器名(静态值),后加时间戳记(可变值)。

    如果客户机请求中未找到 cookie 名,或找到了但与服务器 cookie 值的任何内容都不匹配,则使用现有的服务器选择或加权循环法技术选择服务器。

    要配置被动 cookie 亲缘性

    如果端口粘性时间是零(不启用的),规则命令的被动 cookie 亲缘性选项仅可以设置为 passivecookie。一旦被动 cookie 亲缘性在规则上是活动的,那么您无法在端口上启用粘性时间。

    URI 亲缘性

    URI 亲缘性应用于分派器的 cbr 转发方法和 CBR 组件。请参阅分派器的基于内容路由(cbr 转发方法)如何配置 cbr 转发方法。

    URI 亲缘性允许您负载均衡 Web 流量到高速缓存代理服务器,此代理服务器仅允许唯一内容在每个单独的服务器上高速缓存。结果,您将通过在多个机器上消去冗余内容高速缓存以有效地增加您站点的高速缓存容量。在规则级别配置 URI 亲缘性。规则一旦激发,如果启用 URI 亲缘性,且同一服务器组激活并响应,则 Load Balancer 将把具有相同 URI 的新进入的客户机请求转发到同一服务器。

    通常,Load Balancer 可将请求分发到多个服务同样内容的服务器。与一组高速缓存服务器一起使用 Load Balancer 时,通常访问的内容最后变成在所有服务器上高速缓存。通过在多个机器上复制同样的高速缓存的内容支持非常高的客户机负载。这对于高容量 Web 站点是相当有用的。

    但是,如果您的 Web 站点支持中等容量的客户机流量到不同的内容,您最好使更大高速缓存跨越多个服务器,如果每个高速缓存服务器包含唯一的内容且 Load Balancer 只将请求分发到具有该内容的高速缓存服务器,那么您的站点将执行得更好。

    有了 URI 亲缘性,Load Balancer 允许您将高速缓存的内容分发到个别服务器,在多个机器上消除内容的冗余高速缓存。使用高速缓存代理服务器,不同内容的服务器站点的性能将因为此增强而改进。它将发送同样的请求到同一服务器,从而仅在单个服务器上高速缓存内容。并且高速缓存的有效大小将因为每个新服务器添加到池而变得更大。

    要配置 URI 亲缘性


    配置广域分派器支持

    此功能只用于分派器组件。

    如果您没有使用分派器广域支持,也没使用分派器的 nat 转发方法,分派器配置要求分派器机器和它的服务器都连接到相同的 LAN 段(请参阅图 36)。客户机的请求进入分派器机器并发送到服务器。从服务器,响应直接发送回客户机。

    图 36. 由单个 LAN 段组成的配置示例

    单个 LAN 段

    Wide Area 分派器增强添加了对非现场服务器(称为远程服务器)的支持(请参阅图 37)。 如果远程站点不支持 GRE 且您未使用分派器的 nat 转发方法,那么远程站点必须由远程分派器机器(分派器 2)组成

    及其本地连接的服务器(ServerG、ServerH 和 ServerI)。所有分派器机器必须使用相同的操作系统。 客户机信息包现在可以从因特网上发出,到达分派器机器,从那里再到达地理上远程的分派器机器,再到达一台其本地连接的服务器。

    图 37. 使用本地和远程服务器配置的示例

    本地和远程服务器

    这允许一个群集地址在分发负载给世界范围的服务器的同时,支持世界范围内所有客户机请求。

    最初接收信息包的分派器机器仍有本地服务器与它相连,它可以在本地服务器和远程服务器之间分发负载。

    命令语法

    广域命令不复杂。要配置广域支持:

    1. 添加服务器。如果给分派器添加一个服务器,必须定义该服务器是本地的还是远程的(见上)。要添加一个服务器并将其定义为本地,则发出 dscontrol server add 命令但不指定路由器。这是缺省。 要定义服务器为远程,必须指定路由器,分派器必须通过该路由器发送信息包以到达远程服务 器。此服务器必须为另一个分派器,且其地址必须为分派器的非转发地址。例如,在图 38 中,如果您添加 LB 2 作为 LB 1 下的远程服务器,则您必须将 router 1 定义为路由器地址。常规语法:
      dscontrol server add cluster:port:server router address
      

      要获取更多路由器关键字的信息,请参阅dscontrol server - 配置服务器

    2. 配置别名。在第一台分派器机器上(来自因特网的客户机请求到达这里),如前所述,必须使用 executor configureifconfigdsconfig 来设置此群集地址的别名。然而,在远程分派器机器上,群集地址作为网络接口卡的别名。

    使用带分派器广域支持的远程顾问程序

    在入口点分派器s 上:顾问程序将正确工作,而无需大多数平台的任何特殊配置。

    Linux

    Solaris

    在远程分派器s 上:为每个远程群集地址执行下列配置步骤。对于远程 Load Balancer 位置上的高可用性配置,您必须在两台机器上都执行这些步骤。

    AIX

    Linux

    Solaris

    Windows

    配置示例

    图 38. 使用远程 Load Balancer 的广域示例配置

    使用 Load Balancer 的广域配置

    该示例适用于图 38 中所描述的配置。

    这里讲述如何配置分派器机器以支持端口 80 上的群集地址 xebec。LB1 定义为『入口点』 Load Balancer。假设以太网连接。注意,LB1 定义了五台服务器:三台本地(服务器 A、服务器 B 和服务器 C)和两台远程(LB2 和 LB3)。 远程 LB2 和 LB3 各定义了三台本地服务器。

    在第一个分派器(LB1)的控制台上,执行下列操作:

    1. 启动执行程序。

      dscontrol executor start

    2. 设置分派器机器的非转发地址。

      dscontrol executor set nfa LB1

    3. 定义群集。

      dscontrol cluster add xebec

    4. 定义端口。

      dscontrol port add xebec:80

    5. 定义服务器。
      1. dscontrol server add xebec:80:ServerA
      2. dscontrol server add xebec:80:ServerB
      3. dscontrol server add xebec:80:ServerC
      4. dscontrol server add xebec:80:LB2 router Router1
      5. dscontrol server add xebec:80:LB3 router Router1
    6. 如果使用 Windows 平台,则配置分派器 LAN 适配器的 NFA。

      dscontrol executor configure LB1 还将 xebec 配置为 clusteraddr。

    7. 配置群集地址。

      dscontrol executor configure xebec

    在第二个分派器(LB2)的控制台:

    1. 启动执行程序。

      dscontrol executor start

    2. 设置分派器机器的非转发地址。

      dscontrol executor set nfa LB2

    3. 定义群集。

      dscontrol cluster add xebec

    4. 定义端口。

      dscontrol port add xebec:80

    5. 定义服务器。
      1. dscontrol server add xebec:80:ServerD
      2. dscontrol server add xebec:80:ServerE
      3. dscontrol server add xebec:80:ServerF
    6. 如果使用 Windows 平台,则配置分派器 LAN 适配器的 NFA。

      dscontrol executor configure LB2

    在第三个分派器(LB3)的控制台:

    1. 启动执行程序。

      dscontrol executor start

    2. 设置分派器机器的非转发地址。

      dscontrol executor set nfa LB3

    3. 定义群集。

      dscontrol cluster add xebec

    4. 定义端口。

      dscontrol port add xebec:80

    5. 定义服务器。
      1. dscontrol server add xebec:80:ServerG
      2. dscontrol server add xebec:80:ServerH
      3. dscontrol server add xebec:80:ServerI
    6. 如果使用 Windows 平台,则配置分派器 LAN 适配器的 NFA。

      dscontrol executor configure LB3

    注(R)

    1. 在所有服务器(A-I)上将群集地址的别名设置到回送设备。
    2. 在所有正参与管理的分派器机器(入口点和所有远程分派器)上,使用 dscontrol 命令添加群集和端口。
    3. 请参阅使用带分派器广域支持的远程顾问程序,以获取有关使用具有广域支持的远程顾问程序的帮助信息。
    4. 广域支持禁止无限的路由循环。(如果一个分派器机器从另一个分派器收到信息包,则将不会把它转发给第三个分派器。)广域仅支持一个远程级别。
    5. 广域支持 UDP 和 TCP。
    6. 广域可以与高可用性一同工作:每个分派器可能由相邻的备 用机器(在同一个 LAN 段上)备份。
    7. 管理器和顾问程序与广域功能一同工作,并且一旦使用它们,应在所有正参与的分派器机器上启动。
    8. Load Balancer 在类似的操作系统上支持 WAN。

    GRE(一般路由封装)支持

    一般路由封装(GRE)是 RFC 1701 和 RFC 1702 中指定的因特网协议。使用 GRE,Load Balancer 可以在 IP/GRE 信息包中封装客户机 IP 信息包,并把它们转发到服务器平台,例如 OS/390 。GRE 支持允许分派器组件将信息包负载均衡到与一个 MAC 地址关联的多个服务器地址。

    Load Balancer 作为其 WAN 功能的一部分实现 GRE。这使得 Load Balancer 向任何可解开 GRE 信息包的服务器系统直接提供广域负载均衡。如果远程服务器支持封装的 GRE 信息包,则不需要在远程站点安装 Load Balancer。Load Balancer 用其 GRE 键字段设置为十进制值 3735928559 来封装 WAN 信息包。

    图 39. 使用支持 GRE 的服务器平台的广域示例配置

    使用支持 GRE 的服务器平台的广域配置

    对于此示例(图 39),要添加支持 GRE 的远程 ServerD,在您的 Load Balancer 配置中定义它,如同在 cluster:port:server 层次结构中定义 WAN 服务器一样:

    dscontrol server add cluster:port:ServerD router Router1

    对于 Linux,配置 WAN 的 GRE 封装

    Linux 具有封装 GRE 的能力,这里的 GRE 允许 Load Balancer 负载均衡 Linux/390 服务器映象,其中许多服务器映象共享一个 MAC 地址。 这允许入口点 Load Balancer 直接负载均衡 Linux WAN 服务器,而无需通过远程站点上的 Load Balancer。 这也允许入口点 Load Balancer 的顾问程序直接操作每个远程服务器。

    在入口点 Load Balancer 上,按 WAN 的期望值配置。

    要配置每个 Linux 后端服务器,以 root 用户身份发出下列命令。 (这些命令可以被添加到系统的启动设施中,以通过重新引导来保存更改。)

    # modprobe ip_gre
    # ip tunnel add gre-nd mode gre ikey 3735928559 
    # ip link set gre-nd up
    # ip addr add cluster address dev gre-nd
     
    
    注意:
    使用这些说明配置的 Linux 服务器无须在作为入口点 Load Balancer 的相同物理段上。 这是因为 Linux 服务器将响应有关群集地址的“ARP who-has”请求,这将导致比赛条件引起可能的“短路”,在这种情况下所有到群集地址的流量将仅导向 ARP-race 的优胜者。

    使用显式链接

    一般情况下,分派器的负载均衡功能与使用该产品的站点的内容无关。但是,存在某一区域,其站点内容很重要,且与站点内容相关的决策对分派器的效率有重大影响。这就是链接寻址区域。

    如果页面指定指向站点中个别服务器的链接,则实际上正在迫使客户机转向特定的机器,因此会导致忽略可能有效的所有负载均衡功能。因此,建议在页面包含的所有链接中总是使用分派器地址。注意,如果站点使用动态创建 HTML 的自动编程,则使用的寻址类型并非总是显式的。要最大程度地实现负载均衡,应了解所有显式地址并尽可能避免使用。


    使用专用网配置

    可以设置使用专用网的分派器和 TCP 服务器。 该配置可以减少影响网络性能的公用网络或外部网络上的竞争。

    对于 AIX,如果在 SP(TM) 框架的节点上运行分派器和 TCP 服务器,则该配置还可以利用 SP High Performance Switch 的快速优势。

    要创建专用网,每台机器必须至少具有两个 LAN 卡,其中一个卡连接到专用网。还必须配置在另一个子网上的第二个 LAN 卡。分派器机器然后通过专用网将客户机请求发送到 TCP 服务器。

    Windows:执行下列命令:

    dsconfig en1 10.0.0.x netmask 255.255.255.0
    

    其中 en1 是分派器机器中第二个接口卡的名称、10.0.0.x 是第二个接口卡的网络地址,且 255.255.255.0 是专用网的网络掩码。

    必须使用专用网地址来添加使用 dscontrol server add 命令添加的服务器;例如,请参阅图 40 中的 Apple 服务器示例,命令应编码为:

    dscontrol server add cluster_address:80:10.0.0.1

    而不是

    dscontrol server add cluster_address:80:9.67.131.18

    如果正使用站点选择器对分派器提供负载信息,则必须配置站点选择器以报告 专用地址上的负载。

    图 40. 使用分派器的专用网示例

    专用网

    使用仅适用于分派器组件的专用网配置。


    使用通配符群集来组合服务器配置

    使用通配符群集来组合服务器配置仅适用于分派器组件。

    “通配符”指的是群集与多个 IP 地址相匹配的能力(例如,作为通配符)。群集地址 0.0.0.0 用于指定通配符群集。

    如果有许多群集地址需要负载均衡,且所有群集的端口/服务器配置是 相同的,则可将所有群集组合到一个星号配置中。

    您还必须在分派器工作站的网络适配器上明确地配置每个群集 地址。然而,您不能用 dscontrol cluster add 命令将群集地址添加到分派器配置中。

    只添加通配符群集(地址 0.0.0.0),并根据需要为负载均衡配置端口和服务器。到已配置地址的适配器上的任何流量都将使用通配符群集配置进行负载均衡。

    该方法的优点是确定要转至的最佳服务器时将考虑到所有群集地址的流量。如果一个群集获取许多流量,并已在其中一个服务器上创建许多活动连接,则到其它群集地址的流量将使用此信息进行负载均衡。

    如果您有一些具有唯一的端口/服务器配置和具有公共配置的群集地址,还可以将通配符群集与实际群集组合起来。必须为每个实际的群集地址指定唯一的配置。所有公共配置都可以指定到通配符群集中。


    使用通配符群集为防火墙负载均衡

    使用通配符群集对防火墙负载均衡仅适用于分派器组件。群集地址 0.0.0.0 用于指定通配符群集。

    可以使用通配符群集将流量负载均衡到分派器工作站的任何网络适配器上没有明确配置的地址。为了运行此功能,分派器至少需要看到所有要负载均衡的流量。没有在网络适配器上明确配置过的地址上的流量,分派器工作站是看不到的,除非该工作站配置为某一流量集的缺省路由。

    一旦分派器已配置为缺省路由,任何通过分派器机器的 TCP 或 UDP 流量都可用通配符群集配置进行负载均衡。

    一个此方面的应用程序是负载均衡防火墙。由于防火墙可处理任何目的地地址以及任何目的地端口上的信息包,所以您要能够不依赖目的地地址和端口来对流量进行负载均衡。

    防火墙用于处理从非安全客户机到安全服务器的流量、来自 安全服务器的响应以及从安全客户机端到非安全服务器端的流量和响应。

    您必须设置两个分派器机器,一个对到 非安全防火墙地址的非安全流量进行负载均衡,另一个对到安全防火墙地址的安全流量进行负载均衡。由于这两个分派器s 都必须使用通配符群集和具有不同服务器地址集的通配符端口,两个分派器必须在两个不同的工作站上。


    将高速缓存代理和通配符群集一起用于透明代理

    将高速缓存代理和通配符群集一起用于透明代理仅适用于分派器组件。群集地址 0.0.0.0 用于指定通配符群集。

    通配符群集功能还允许用分派器来启用高速缓存代理服务器的透明代理功能,该服务器与分派器驻留在同一处。仅 AIX 具有此功能,因为必须具有从分派器组件到操作系统的 TCP 组件的通信。

    要启用此功能,必须在端口 80 上启动客户机请求的高速缓存代理侦听。然后配置一个通配符群集(0.0.0.0)。在通配符群集中,配置端口 80。在端口 80 中,将分派器机器的 NFA 配置为唯一的服务器。现在到端口 80 上任何地址的 客户机流量都将被传递到在分派器工作站上运行的高速缓存代理服务器。通常,客户机请求将被代理,响应消息将从高速缓存代理发送回该客户机。在此方式中,分派器组件不执行负载均衡。


    使用通配符端口定向到未配置的端口流量

    通配符端口可用于处理没有明确配置端口的流量。它的一种用途是进行防火墙的负载均衡。另一种用途是确保适当处理未配置端口的流量。通过定义没有服务器的通配符端口,您将保证废弃到一个未配置的端口的任何请求,而不是将其回送到操作系统。 端口号 0(零)用于指定通配符端口,例如:

    dscontrol port add cluster:0
    

    处理 FTP 通信量的通配符端口

    当配置群集来处理被动的 FTP 和通配符端口时,缺省情况下,被动 FTP 利用整个没有特权的 TCP 端口范围进行数据连接。这表示附带通过负载均衡群集到 FTP 控制端口的现有连接的客户机将对由 Load Balancer 自动路由到与 FTP 控制连接相同的服务器的同一个群集具有后继控制连接和高端口连接(端口 > 1023)。

    如果同一个群集的通配符端口和 FTP 端口没有相同的服务器集,则当客户机具有现有的 FTP 控制连接时,高端口应用程序(端口 > 1023)可能失败。因此,建议不要在同一个群集上为 FTP 和通配符端口配置不同的服务器集。如果需要此方案,则必须在 Load Balancer 配置中配置 FTP 守护进程被动端口范围。


    拒绝服务攻击检测

    此功能只用于分派器组件。

    分派器提供检测潜在“拒绝服务”攻击和通过警告通知管理员的能力。分派器通过分析服务器上大量半开 TCP 连接的进入请求,简单拒绝服务攻击的公共特点,完成此工作。在拒绝服务攻击中,站点从大量源 IP 地址和源端口号接受大量伪 SYN 信息包,但是站点不接受 这些 TCP 连接的后继信息包。这将导致服务器上有大量半开的 TCP 连接,随着时间的进行,服务器可能变得很慢,不接受新到达连接。

    注意:
    如果分派器确定终止拒绝服务攻击,那么肯定有通过受攻击的群集和端口入网的通信量。分派器不能检测攻击停止,直到通信量再次开始流动。

    Load Balancer 向用户提供可以定制的触发脚本的出口 来提醒管理员可能的服务拒绝攻击。分派器在 ...ibm/edge/lb/servers/samples 目录中提供以下样本脚本文件:

    要运行文件,您必须移动它们至 ...ibm/edge/lb/servers/bin 目录并除去“.sample”文件扩展名。

    要实现 DoS 攻击检测,在 dscontrol port 命令上设置 maxhalfopen 参数,按如下所示:

    dscontrol port set 127.40.56.1:80 maxhalfopen 1000
    

    在上述示例中,分派器将当前半开连接(驻留在端口 80 上的群集 127.40.56.1 的所有服务器)总数与阈值 1000(由 maxhalfopen 参数指定)进行比较。如果当前半开连接超出阈值,则调用警告脚本(halfOpenAlert)。当半开连接的数量下降到低于阈值,调用另一个警告脚本(halfOpenAlertDone)表明攻击结束。

    确定如何设置 maxhalfopen 值:当站点正从正常到大流量时,周期性地(可能每隔 10 秒)运行半开连接报告(dscontrol port halfopenaddressreport cluster:port)。半开连接报告将返回当前状态“接收到所有半开连接”。您应该将 maxhalfopen 设置为大于您的站点有过的半开连接的最大数的 50% 到 200% 的值。

    除报告的统计数据外,halfopenaddressreport 还将为所有访问过服务器而导致半开连接的客户机地址(多达将近 8000 对地址对)在日志(..ibm/edge/lb/servers/logs/dispatcher/halfOpen.log)中生成条目。

    注意:
    有相应 halfOpenAlert 和 halfOpenAlertDone 脚本的 SNMP 陷阱。如果配置了 SNMP 子代理程序并且它正在运行,相应的陷阱将在触发脚本的相同情条件下发送。要获取更多 SNMP 子代理程序的信息,请参阅与分派器组件一起使用简单网络管理协议

    要为后端服务器提供其它拒绝服务攻击保护,您可以配置通配群集和端口。特别地,在每个配置的群集下添加无服务器的通配端口。同样,添加有一个通配端口且无服务器的通配群集。这会有废弃所有不寻址非通配群集和端口的信息包的结果。要获取通配群集和通配端口的信息,请参阅使用通配符群集来组合服务器配置使用通配符端口定向到未配置的端口流量


    使用二进制日志记录分析服务器统计信息

    注意:
    二进制记录日志功能适用于分派器和 CBR 组件。

    二进制日志记录 功能允许服务器信息存储在二进制文件中。然后可以处理这些文件,以分析在某一时间段内收集到的服务器信息。

    对于每个在配置中定义的服务器,以下信息存储在二进制日志中。

    从执行程序检索此信息中的某些信息作为管理器循环的一部分。因此,管理器必须运行以将信息记录到二进制日志中。

    使用 dscontrol binlog 命令集配置二进制日志记录。

    start 选项开始将服务器信息记录到位于日志目录中的二进制日志中。将在每小时的开始使用日期和时间作为文件名创建一个日志。

    stop 选项停止将服务器信息记录到二进制日志。缺省情况下日志服务是停止的。

    set interval 选项控制了信息写入日志的频繁程度。在每个管理器时间间隔,管理器都把服务器信息发送到日志服务器。只有在自上次写记录到日志以来,经过指定的日志间隔秒数后,这些信息才被写到日志中。缺省情况下,日志间隔设置为 60 秒。在管理器间隔和日志间隔的设置之间有一些交互作用。由于向日志服务器提供信息的时间间隔不会比管理器间隔秒数少,因此,如果日志间隔设置为小于管理器间隔,则将其设置为和管理器间隔相同将较为有效。此记录技术允许以任何间隔获取服务器信息。为了计算服务器权值,可以获取所有由管理器查看到的对服务器信息的更改。然而,可能不需要如此大量的信息分析服务器使用率和趋势。每 60 秒记录服务器信息将给予您在某一时间段内服务器信息的快照。将日志间隔设置过低会产生大量的数据。

    set retention 选项控制日志文件的保留时间。比指定的保留时间更旧的日志文件 将被日志服务器删除。只有当日志服务器是由管理器调用的情况下才可能发生上述 情况,因此,如果停止管理器,就不能删除旧的日志文件。

    status 选项返回日志服务的当前设置。这些设置是:服务是否启动、间隔是什么、保留小时是多少。

    ...ibm/edge/lb/servers/samples/BinaryLog 目录中提供了样本 Java 程序和命令文件。此样本显示如何从日志文件检索所有信息并将其打印到屏幕。还可以定制它对数据进行任何类型的分析。一个使用提供的用于分派器的脚本和程序的示例:

    dslogreport 2001/05/01 8:00 2001/05/01 17:00
    

    要获取 2001 年 5 月 1 日上午 8:00 到下午 5:00 期间的分派器组件的服务器信息。(对于 CBR,使用 cbrlogreport。)


    Cisco CSS 控制器和 Nortel Alteon 控制器的高级功能

    本章包含以下几节:

    注意:
    在本章中,xxxcontrol 表示 Cisco CSS 控制器的 ccocontrol 和 Nortel Alteon 控制器的 nalcontrol

    并列配置

    Cisco CSS 控制器或 Nortel Alteon 控制器可驻留在您负载均衡请求的服务器的同一机器上。这通常称为并列配置服务器。不需要附加配置步骤。

    注意:
    并列配置的服务器在流量高峰时间与 Load Balancer 竞争资源。然而,在缺少超负载机器的情况下,使用并列配置的服务器可减少建立负载均衡的站点所必需的机器总数。

    高可用性

    高可用性功能现在可用于 Cisco CSS 控制器和 Nortel Alteon 控制器。

    要改进控制器容错,高可用性功能包含这些功能:

    配置

    请参阅ccocontrol highavailability - 控制可用性nalcontrol highavailability - 控制高可用性,以获取有关 xxxcontrol highavailability 的完整语法。

    要配置控制器高可用性:

    1. 启动在两台控制器机器上的控制器服务器。
    2. 使用相同的配置来配置每个控制器。
    3. 按如下所示配置本地高可用性角色、地址和伙伴地址:
      xxxcontrol highavailability add address 10.10.10.10 
      partneraddress 10.10.10.20 port 143 role primary
      
    4. 按如下所示配置伙伴高可用性角色、地址和伙伴地址:
      xxxcontrol highavailability add address 10.10.10.20 
      partneraddress 10.10.10.10 port 143 role secondary
      

      address 和 partneraddress 参数在主和次机器上逆向。

    5. 可选地,在本地和伙伴控制器上配置高可用性参数;例如:
      xxxcontrol highavailability set beatinterval 1000
      
    6. 可选地,按如下所示在本地和伙伴控制器上配置到达目标:
      xxxcontrol highavailability usereach 10.20.20.20
      

      必须在本地和伙伴控制器上配置相同数量的到达目标。

    7. 按如下所示在本地和伙伴控制器上启动高可用性组件并定义恢复策略:
      xxxcontrol highavailability start auto
      
    8. 可选地,按如下所示在本地和伙伴控制器上显示高可用性信息:
      xxxcontrol highavailability report
      
    9. 可选地,按如下所示在备用控制器上指定 takeover,以从活动控制器接管:
      xxxcontrol highavailability takeover
      

      这仅为维护所需。

    记录:

    1. 要配置没有高可用性的单个控制器,请不要发出任何高可用性命令。

    2. 要将高可用性配置中的两个控制器转换到单个控制器,首先停止备用控制器上的高可用性;然后,可选地停止活动控制器上的高可用性。

    3. 当您运行高可用性配置中的两个控制器时,如果任何控制器特性在交换机间有差异,则会发生意外结果;例如 switchconsultantid、switch address 等。如果控制器高可用性特性不匹配,您还会获取意外的结果;例如,port、role、reach targets、beatinterval、takeoverinterval 和 recovery strategy。

    故障检测

    除了通过工作频率消息检测到的活动与备用控制器之间的连接丢失以外,可达性是另一个故障检测机制。

    当您配置控制器高可用性时,您可以提供每个控制器必须到达的主机列表,以正确工作。您的控制器机器使用的每个子网必须至少有一个主机。 这些主机可以是路由器、IP 服务器或其它主机类型。

    主机可达性由 ping 主机的到达顾问程序获取。如果工作频率消息不能通过,或备用控制器较活动控制更符合可达性标准,则发生切换。要基于所有可用信息做出决定,活动控制器定期向备用控制器发送其可达性能力,反之亦然。然后,这些控制器将其可达性信息与其伙伴信息相比较,并确定谁应该是活动的。

    恢复策略

    两个控制器机器的角色配置为主和次。启动时,控制器交换信息,直至每台机器同步化。此时,主控制器移至活动状态,并开始计算权值和更新交换机,而次机器移至备用状态并监视主机器的可用性。

    如果任何时候备用机器检测到活动机器已发生故障,则备用机器接管活动(已发生故障的)机器的负载均衡功能并成为活动机器。当主机器再次可运行时,这两台机器根据如何配置恢复策略来确定哪一台控制器将活动。

    有两种恢复策略:

    自动恢复

    一旦主控制器再次可运行,它便移至活动状态,计算并更新权值。次机器在主机器活动后移至备用状态。

    手工恢复

    即使在主控制器可运行后,活动次控制器仍保持活动状态。

    主控制器移至备用状态,并要求手工介入移至活动状态。

    对两台计算机必须设置相同的策略参数。

    示例

    有关 Cisco CSS 控制器高可用性配置的示例,请参阅示例

    有关 Nortel Alteon 控制器高可用性配置的示例,请参阅示例


    优化 Load Balancer 提供的负载均衡

    Load Balancer 的控制器功能基于以下设置执行负载均衡:

    可以更改这些设置以优化网络负载均衡。

    给予度量信息的重要性

    控制器可在其权值确定中使用一些或所有以下度量收集器:

    缺省度量是 activeconn 和 connrate。

    您可以更改度量值重要性的相对比例。将比例看作百分比;相对比例之和必须等于 100%。缺省情况下,使用活动连接数和新连接数度量,并将其比例设置为 50/50。在您的环境中,您可能要尝试不同的度量比例组合以查找提供最佳性能的组合。

    要设置比例值:

    对于 Cisco CSS 控制器
    ccocontrol ownercontent metrics metricName1 proportion1 metricName2 proportion2

    对于 Nortel Alteon 控制器
    nalcontrol service metrics metricName1 proportion1 metricName2 proportion2

    权值

    根据应用程序响应时间和可用性、来自顾问程序的反馈和来自系统监视程序(如,度量服务器)的反馈设置权值。如果您要手工设置权值,为服务器指定 fixedweight 选项。有关 fixedweight 选项的描述,请参阅控制器固定权值

    权值适用于提供服务的所有服务器。对于任何特定服务,根据两台服务器之间的相对权值在它们之间分配请求。例如,如果一台服务器的权值设置为 10,而另一台的设置为 5,则权值设置为 10 的服务器获得的请求数应是权值设置为 5 的服务器的两倍。

    如果顾问程序发现服务器已当机,则服务器的权值设置为 -1。对于 Cisco CSS 控制器和 Nortel Alteon 控制器,通知交换机此服务器不可用,并且此交换机停止将连接分配给服务器。

    控制器固定权值

    没有控制器,顾问程序无法运行,且无法检测服务器是否当机。如果您选择运行顾问程序,但希望控制器更新您已为特定服务器设置的权值,在用于 Cisco CSS 控制器的 ccocontrol service 命令或用于 Nortel Alteon 控制器的 nalcontrol server 命令中使用 fixedweight 选项。

    使用 fixedweight 命令将权值设置为您期望的值。当控制器运行时,服务器权值保持固定,直至您发出另一个 fixedweight 设置为 no 的命令。

    权值计算休眠时间

    要优化整个性能,您可以限制收集度量的频率。

    咨询器休眠时间指定咨询器更新服务器权值的频率。如果咨询器休眠时间太短,这可能意味着由于咨询器经常中断交换机而导致性能差。如果咨询器休眠时间太长,则可能意味着交换机的负载不是基于准确、最新的信息。

    例如,要将咨询器休眠时间设置为 1 秒:

    xxxcontrol consultant set consultantID sleeptime interval
    

    灵敏度阈值

    其它方法可用于优化您服务器的负载均衡。为了以最快速度工 作,仅当权值更改很大时,才更新服务器权值。当服务器状态只有微小更改或无更改时,频繁更新权值将会导致不 必要的开销。当提供某个服务的所有服务器总权值的百分率权值更改大于灵敏度阈值时,更新 load balancer 用于分配连接的权值。例如,假设,总权值从 100 更改为 105。改 变为 5%。使用缺省灵敏度阈值 5,不更新 load balancer 使用的权值,因为百分率更改不超出阈值。然而,如果总权值从 100 更改为 106,将更新权值。要将咨询器的灵敏度阈值设置为不同于缺省的值,请输入以下命令:

      xxxcontrol consultant set consultantID sensitivity percentageChange
    

    大多数情况下,您不需要更改这个值。


    顾问程序

    顾问程序是 Load Balancer 中的代理程序。它们的目的是访问服务器的运行状况和负载。它们通过与服务器进行预设客户机式交换来操作。将顾问程序作为应用程序服务器的轻量级客户机。

    注意:
    要获取有关顾问程序的详细列表,请参阅顾问程序列表

    顾问程序是如何工作的

    顾问程序定期打开与每个服务器的 TCP 连接并将请求消息发送到该服务器。消息内容特定于运行在服务器上的协议。例如,HTTP 顾问程序将 HTTP“HEAD”请求发送给服务器。

    然后顾问程序侦听服务器的响应。获取响应后,顾问程序评估此服务器。要计算此负载值,大部分顾问程序测量服务器的响应时间,然后使用此值(以毫秒为单位)作为负载。

    然后顾问程序将负载值报告给咨询器功能,结果将出现在咨询器报告中。然后咨询器计算所有源的聚集权值(基于每个咨询器比例),并将这些权值发送到交换机。此交换机使用这些权值对新进入的客户机连接进行负载均衡。

    如果顾问程序确定服务器是活动的并且工作正常,它将向咨询器报告一个正的、非零负载数。如果顾问程序确定服务器不是活动的,它将返回一个特殊的负载值(-1),以通知此交换机服务器当机。接着,直至服务器交换机已恢复运行后,交换机才把任何进一步的连接转发到该服务器。

    顾问程序休眠时间

    注意:
    顾问程序缺省值对绝大多数可能的方案有效。输入缺省值以外的值时必须小心。

    顾问程序休眠时间设置顾问程序向其监视的端口上的服务器询问状态然后向咨询器报告结果的频率。如果顾问程序休眠时间太短,可能会由于顾问程序经常中断服务器而导致性能差。如果顾问程序休眠时间太长,这可能意味着咨询器的权值判定不是基于准确、最新的信息。

    例如,要将 HTTP 顾问程序的间隔设置为 3 秒,请输入以下命令:

    xxxcontrol metriccollector set consultantID:HTTP sleeptime 3
    

    服务器的顾问程序连接超时和接收超时

    您可以设置顾问程序用于检测服务器上特定端口或服务发生故障所花的时间量。故障服务器超时值(connecttimeout 和 receivetimeout)确定在报告连接或接收已失败之前,顾问程序可等待的时间。

    要获取最快故障服务器 检测,将顾问程序连接和接收超时设置为最小值(一秒),并将顾问程序和咨询器休眠时间设置为最小值(一秒)。

    注意:
    如果您的环境经历了中到高容量的流量并且服务器响应时间增加,则不要将 timeoutconnect 和 timeoutreceive 值设置得太小。 如果这些值太小,则顾问程序可能过早地将忙的服务器标记为失败。

    要将 HTTP 顾问程序的 timeoutconnect 设置为 9 秒,请输入以下命令:

    xxxcontrol metriccollector set consultantID:HTTP timeoutconnect 9
    

    连接和接收超时的缺省值是为顾问程序休眠时间指定值的 3 倍。

    顾问程序重试

    在标记服务器当机之前,顾问程序将重试连接的能力。在服务器查询失败次数达到重试数加 1 之后,顾问程序将标记服务器当机。

    对于 Cisco CSS 控制器,使用 ccocontrol ownercontent set 命令来设置重试值。 要获得更多信息,请参阅ccocontrol ownercontent - 控制所有者名称和内容规则

    对于 Nortel Alteon 控制器,使用 nalcontrol service set 命令来设置重试值。要获得更多信息,请参阅nalcontrol service - 配置服务


    创建定制(可定制的)顾问程序

    注意:
    在本节中,服务器用作一般术语,指的是 Cisco CSS 控制器的服务或 Nortel Alteon 控制器的服务器。

    定制(可定制的)顾问程序是一小段 Java 代码(您以类文件提供),并由基本代码调用。基本代码提供所有管理服务,如:

    它还将结果报告给咨询器。基本代码定期执行顾问程序循环,它独立地评估配置中的所有服务器。它通过打开与服务器的连接启动。如果打开了套接字,基本代码将调用定制顾问程序中的 getLoad 方法(函数)。然后定制顾问程序执行一些必要步骤以评估服务器的运行状况。通常,它发送一条用户定义的消息至服务器,然后等待响应。(提供给定制顾问程序对打开套接字的访问权。)然后基本代码关闭与服务器的套接字,并向咨询器报告负载信息。

    基本代码和定制顾问程序可以正常方式或置换方式操作。操作方式选项在定制顾问程序文件中指定为构造函数方法中的参数。

    在正常方式下,定制顾问程序与服务器交换数据,基本顾问程序代码计算交换时间并计算负载值。然后基本代码将负载值报告给咨询器。定制顾问程序只需要返回 0(成功)或 -1(出错)。要指定正常方式,请将构造函数中的替换标志设置为假(false)。

    在置换方式中,基本代码不执行计时。定制顾问程序代码执行唯一要求的任何操作,然后返回实际负载数。基本代码将接受该数并将其报告给咨询器。要获得最好的结果,请将您的负载数规格化为 10 到 1000,10 代表快速服务 器,1000 代表慢速服务器。要指定置换方式,请将构造函数中的标志设置为真(true)。

    使用这种功能,用户可以写自己的顾问程序,它将提供所需的有关服务器的精确信息。样本定制顾问程序 ADV_ctlrsample.java 为控制器提供。安装 Load Balancer 后,您可以在 ...ibm/edge/lb/servers/samples/CustomAdvisors 安装目录中找到此样本代码。

    缺省安装目录是:

    注意:
    如果您将定制顾问程序添加到 Cisco CSS 控制器或 Nortel Alteon 控制器,您必须停止然后重新启动 ccoservernalserver(对于 Windows,使用“服务”),以启用 Java 进程来读新的定制顾问程序类文件。定制顾问程序类文件仅在启动时装入。

    命名约定

    您的定制顾问程序文件名必须是 ADV_myadvisor.java 格式。它必须以大写 ADV_ 作为前缀。所有后继字符都必须是小写字母。

    按 Java 约定,文件中定义的类名必须与文件名匹配。如果您复制样本代码,一定要将文件中的所有 ADV_sample 实例更改为新的类名。

    编译

    定制顾问程序是以 Java 语言编写的。您必须获取 Java 1.4 编译器,并安装在机器上。在编译期间引用以下文件:

    在编译期间,您的类路径必须指向定制顾问程序文件和基类文件。

    对于 Windows 平台,一条编译命令可能是这样的:

    javac -classpath install_dir\lb\servers\lib\ibmnd.jar ADV_pam.java
     
    

    其中:

    编译的输出是类文件;例如:

    ADV_pam.class
    

    启动顾问程序之前,将类文件复制到 ...ibm/edge/lb/servers/lib/CustomAdvisors 安装目录。

    注意:
    如果您愿意,定制顾问程序可在一个操作系统中编译并在另一个操作系统上运行。例如,您可以在 Windows 上编译您的顾问程序,将类文件(二进制)复制到 AIX 机器,并在那里运行定制顾问程序。

    对于 AIX、HP-UX、Linux

    运行

    要运行定制顾问程序,必须先将类文件复制到适当的安装目录:

    ...ibm/edge/lb/servers/lib/CustomAdvisors/ADV_pam.class
    

    启动咨询器,然后发出此命令以启动您的定制顾问程序:

    对于 Cisco CSS 控制器
    ccocontrol ownercontent metrics consultantID:ownerContentID pam 100

    对于 Nortel Alteon 控制器
    nalcontrol service metrics consultantID:serviceID pam 100

    其中:

    需要的例程

    与所有顾问程序一样,定制顾问程序扩大了顾问程序基础部分(称为 ADV_Base)的功能。实际上是顾问程序基础部分执行大多数顾问程序的功能,例如报告负载给咨询器以在咨询器的权值算法中使用。顾问程序基础部分还执行套接字连接和关闭操作,并提供顾问程序使用的发送和接收方法。顾问程序本身仅用于在正被咨询的服务器与端口之间发送和接收数据。顾问程序基础部分中的 TCP 方法 定时计算负载。如果需要,ADV_base 中构造函数内的标记用顾问程序返回的新负载值覆盖现有负载值。

    注意:
    顾问程序基础部分按指定时间间隔将负载值提供给权值算法。如果实际的顾问程序还未完成因此无法返回一个有效负载,则顾问程序基础部分将使用先前的负载值。

    这些是基类方法:

    搜索顺序

    控制器首先参看提供的本机顾问程序列表;如果它们在此找不到给定的顾问程序,则查看定制顾问程序的列表。

    命名与路径

    样本顾问程序

    样本顾问程序中包含了一个控制器样本顾问程序的程序清单。安装后,此样本顾问程序可在 ...ibm/edge/lb/servers/samples/CustomAdvisors 目录中找到。


    度量服务器

    度量服务器以系统特定度量(报告服务器运行状况)格式向 Load Balancer 提供服务器负载信息。Load Balancer 咨询器查询驻留在每台服务器上的度量服务器代理程序,使用从代理程序获得的度量给负载均衡进程指定权值。结果也放在 Cisco CSS 控制器的服务报告或 Nortel Alteon 控制器的服务器报告中。

    先决条件

    度量服务器代理程序必须安装且运行在被负载均衡的所有服务器上。

    如何使用度量服务器

    下面是配置控制器的度量服务器的步骤。

    要使度量服务器在本地主机以外的地址上运行,请编辑负载均衡服务器上的 metricserver 文件。在 metricserver 文件中出现 java 的后面插入以下内容:

    -Djava.rmi.server.hostname=OTHER_ADDRESS
    

    另外,在 metricserver 文件中的“if”语句之前,添加下列行:hostname OTHER_ADDRESS

    对于 Windows:为: Microsoft 堆栈上的 OTHER_ADDRESS 取别名。要在 Microsoft 堆栈上建立地址的别名,请参阅页面 ***


    工作负载管理器顾问程序

    WLM 是在 MVS 大型机上运行的代码。可以查询它来询问 MVS 机器上的负载。

    当在 OS/390 系统上配置 MVS 工作负载管理时,控制器可接受来自 WLM 的容量信息并在负载均衡过程中使用它。使用 WLM 顾问程序,控制器定期地打开通过咨询器主机表中每个服务器上 WLM 端口的连接,并接受返回的容量整数。由于这些整数代表仍然可用的容量,并且咨询器需要代表每台机器上负载的值,所以容量整数由顾问程序转换并规范化成负载值(例如,大容量整数和小负载值同时代表较健康的服务器)。WLM 顾问程序和其它控制器顾问程序之间有一些重要区别:

    1. 其它顾问程序通过使用与正常客户机流量流经的端口相同的端口打开到服务器的连接。WLM 顾问程序通过使用与正常流量流经的端口不同的端口打开到服务器的连接。每个服务器上的 WLM 代理程序必须配置成在与启动控制器 WLM 顾问程序的端口相同的端口上侦听。缺省的 WLM 端口是 10007。
    2. 可将指定协议的顾问程序和 WLM 顾问程序一起使用。协议特定的顾问程序将轮询其正常流量端口上的服务器,并且 WLM 顾问程序将使用 WLM 端口轮询系统负载。

    使用二进制日志记录分析服务器统计信息

    二进制日志记录 功能允许服务器信息存储在二进制文件中。然后可以处理这些文件,以分析在某一时间段内收集到的服务器信息。

    对于每个在配置中定义的服务器,以下信息存储在二进制日志中。

    必须运行咨询器,以将信息记录到二进制日志。

    使用 xxxcontrol consultant binarylog 命令集配置二进制日志记录。

    start 选项开始将服务器信息记录到位于日志目录中的二进制日志中。将在每小时的开始使用日期和时间作为文件名创建一个日志。

    stop 选项停止将服务器信息记录到二进制日志。缺省情况下日志服务是停止的。

    set interval 选项控制了信息写入日志的频繁程度。在每个咨询器时间间隔,咨询器都将服务器信息发送到日志服务器。只有自上一个记录写到日志以来,经过了指定的日志间隔秒数后,此信息才被写入日志中。缺省情况下,日志间隔设置为 60 秒。

    在咨询器间隔和日志间隔的设置之间有一些交互作用。由于向日志服务器提供信息的时间间隔不会比咨询器间隔秒数少,因此,如果日志间隔设置为小于咨询器间隔,则将其设置为和咨询器间隔相同较为有效。

    此日志记录技术允许以任何间隔捕捉服务器信息。为了计算服务器权值,您可以捕捉所有由咨询器查看到的对服务器信息的更改;然而,可能不需要如此大量的信息分析服务器使用率和趋势。每 60 秒记录服务器信息将给予您在某一时间段内服务器信息的快照。将日志间隔设置过低会产生大量的数据。

    set retention 选项控制日志文件的保留时间。日志服务器删除比指定的保留时间更旧的日志文件。只有当日志服务器被咨询器调用时才会发生这种情况,因此如果您停止咨询器,则旧的日志文件不被删除。

    ...ibm/edge/lb/servers/samples/BinaryLog 目录中提供样本 Java 程序和命令文件。此样本显示如何从日志文件检索所有信息并将其打印到屏幕。还可以定制它对数据进行任何类型的分析。

    以下是一个使用提供的脚本和程序的示例:

    xxxlogreport 2002/05/01 8:00 2002/05/01 17:00
    

    这产生从 2002 年 5 月 1 日上午 8:00 到下午 5:00 期间的控制器的服务器信息报告。


    使用脚本以生成警告或记录服务器故障

    Load Balancer 提供触发可定制脚本的用户出口。您可创建脚本以执行自动操作,如当服务器标记为当机或仅记录故障事件时,提醒管理员。可定制的样本脚本位于 ...ibm/edge/lb/servers/samples 安装目录。要运行这些文件,将其复制到 ...ibm/edge/lb/servers/bin 目录,然后根据脚本中包含的说明重命名每个文件。

    提供以下样本脚本,其中 xxx 是 Cisco CSS 控制器的 cco,以及 Nortel Alteon 控制器的 nal


    管理和故障诊断 Load Balancer

    此部分提供有关管理和故障诊断 Load Balancer 的信息。 它包含以下几章:


    操作和管理 Load Balancer

    注意:
    当阅读本章中不是特定于某一组件的概述部分时,如果您使用分派器组件,则用下列内容替代“dscontrol”和“dsserver”:

    本章说明如何操作和管理 Load Balancer 并包括下列部分:


    Load Balancer 的远程管理

    Load Balancer 提供在不同于 Load Balancer 所在的单独机器上运行其配置程序的两种不同方法。 配置程序(dscontrol、cbrcontrol、sscontrol、ccocontrol 和 nalcontrol)和服务器(dsserver、cbrserver 等)之间的通信可通过使用以下方法之一来执行:

    使用 RMI 的远程管理的优点是性能比基于 Web 的管理更快速。

    使用基于 Web 的管理的优点是它提供已认证的安全远程管理,并且即使当存在防火墙时也可与 Load Balancer 机器通信。同样,此管理方法需要在与 Load Balancer 机器通信的远程客户机上安装和使用认证密钥(lbkeys)。

    远程方法调用(RMI)

    对于 RMI,用于连接到 Load Balancer 机器以进行远程管理的命令是 dscontrol host:remote_host

    如果 RMI 调用来自不是本地机器的机器, 接受配置命令之前,必会发生公用密钥/专用密钥认证序列。

    与组件服务器在同一机器上运行的控制程序间的通信不被认证。

    使用以下命令生成用于远程认证的公用和专用密钥:

    lbkeys [create|delete]

    此命令仅在与 Load Balancer 的同一台机器上运行。

    使用 create 选项,在服务器密钥目录(...ibm/edge/lb/servers/key/)中创建一个专用密钥,并且在管理密钥目录(...ibm/edge/lb/admin/keys/)中为每个 Load Balancer 组件创建专用密钥。公用密钥的文件名为:component-ServerAddress-RMIport。必须将这些公用密钥传送到远程客户机,并放置在管理密钥目录中。

    对于每个组件使用缺省 RMI 端口的主机名地址为 10.0.0.25 的 Load Balancer 机器,lbkeys create 命令生成以下文件:

    管理文件集已安装在另一台机器上。公用密钥必须放置在远程客户机上的 ...ibm/edge/lb/admin/keys 目录。

    现在,将授权远程客户机在 10.0.0.25 上配置 Load Balancer。

    这些相同的密钥必须用于您要授权配置 10.0.0.25 上的 Load Balancer 的所有远程客户机。

    如果希望再次运行 lbkeys create 命令,则将生成一组新的公用/专用密钥。这意味着不会对所有尝试使用先前的密钥进行连接的远程客户机授权。新的密钥必须放在您要重新授权的那些客户机的正确目录中。

    lbkeys delete 命令删除服务器上的专用和公用密钥。如果删除了这些密钥,则将不会有远程客户机被授权连接到服务器。

    对于 lbkeys create 和 lbkeys delete,都有一个 force 选项。force 选项会抑制命令提示符询问您是否要覆盖或删除现有密钥。

    您一旦建立 RMI 连接,就可以从命令提示符使用 dscontrol、cbrcontrol、sscontrol、ccocontrol、nalcontrol、dswizard、cbrwizard 和 sswizard 命令在配置程序间通信。 您还可以通过从命令提示符输入 lbadmin,以通过 GUI 配置 Load Balancer。

    注意:
    由于对 Java 版本的安全性软件包进行的更改,为早期发行版生成的 Load Balancer 密钥可能与当前发行版的密钥不兼容,所以您在安装新的发行版前必须重新生成您的密钥。

    基于 Web 的管理

    先决条件

    要使用基于 Web 的管理,执行远程管理的客户机上需要以下内容:

    在您访问的主机上需要以下内容,以便执行远程基于 Web 的管理:

    配置高速缓存代理

    运行和访问基于 Web 的管理

    为了运行基于 Web 的管理,必须在 Load Balancer 主机上启动它:从主机的命令提示符发出 lbwebaccess

    还需要您远程访问主机的用户标识和密码。此用户标识和密码与高速缓存代理管理用户标识和密码相同。

    要调出 Load Balancer 的基于 Web 的管理,在 Web 浏览器上从远程位置访问以下 URL:

    http://host_name/lb-admin/lbadmin.html
    

    其中 host_name 是您访问以便与 Load Balancer 通信的机器名。

    一旦装入 Web 页面,Load Balancer GUI 将出现在浏览器窗口中,以便您执行远程基于 Web 的管理。

    从 Load Balancer GUI,您还可以发出配置控制命令。 为了从 GUI 发出命令:

    1. 从 GUI 树突出显示“主机”节点
    2. 从“主机”弹出菜单选择发送命令...
    3. 在命令输入字段中,输入您要执行的命令。 例如:executor report。在当前会话中运行的命令的结果和历史出现在提供的窗口中。

    远程地刷新配置

    使用远程基于 Web 的管理,如果有多个管理员从其它位置更新 Load Balancer 配置,则您将需要刷新此配置以便查看(例如)由另一个管理员添加(或删除)的群集、端口或服务器。远程基于 Web 的管理 GUI 提供刷新配置刷新所有配置功能。

    从基于 Web 的 GUI,刷新此配置


    使用 Load Balancer 日志

    对于分派器、CBR 和站点选择器

    Load Balancer 将条目公布到服务器日志、管理器日志、度量监视器日志(记录与度量服务器代理程序的通信)和您使用的每个顾问程序的日志。

    注意:
    另外,仅对分派器组件,可将条目记录到子代理程序(SNMP)日志。

    您可以设置记录级别以定义写到日志的消息范围。级别为 0 时,会记录错误,并且 Load Balancer 还记录仅发生一次的事件的头和记录(例如,关于开始写入管理器日志的顾问程序的消息)。级别 1 包括正在进行中的信息等;而级别 5 包括必要时产生的帮助解决问题的每 条消息。管理器、顾问程序、服务器或子代理程序日志的缺省为 1。

    您还可以设置最大日志大小。当设置日志文件的最大大小后,文件将回绕;当文件达到指定的大小时,后继条目将从文件顶部开始写入,同时覆盖先前的日志条目。不能将日志大小的值设置为小于当前值。日志条目带有时间戳记,以便识别写入日 志的顺序。

    设置的日志级别越高,则选择日志大小时越要小心。在级别 0,将日志大小保留为缺省的 1MB 可能是安全的;然而,当记录级别为 3 以及更高时,您应该限制大小,但不要设置得太小而无法使用。

    更改日志文件路径

    缺省情况下,Load Balancer 生成的日志将存储在 Load Balancer 安装的日志目录中。要更改此路径,在 dsserver 脚本中设置 lb_logdir 变量。

    AIX、HP-UX、Linux 和 Solaris:dsserver 脚本可在 /usr/bin 目录中找到。在此脚本中,变量 lb_logdir 设置为缺省目录。您可 以修改此变量来指定您的日志目录。示例:

    LB_LOGDIR=/path/to/my/logs/

    Windows:dsserver 文件可在 Windows 系统目录(通常为 C:\WINNT\SYSTEM32)中找到。在 dsserver 文件中,变量 lb_logdir 设置为缺省目录。您可 以修改此变量来指定您的日志目录。示例:

    set LB_LOGDIR=c:\path\to\my\logs\

    对于所有操作系统,确保等号两端没有空格且路径以斜杠结束(适合的“/”或“\”)。

    二进制日志记录

    注意:
    二进制日志记录不适用于站点选择器组件。

    Load Balancer 的二进制日志记录功能使用与其它日志文件相同的日志目录。请参阅使用二进制日志记录分析服务器统计信息

    对于 Cisco CSS 控制器和 Nortel Alteon 控制器

    您可以设置记录级别以定义写到日志的消息范围。级别为 0 时,会记录错误,并且 Load Balancer 还记录仅发生一次的事件的头和记录(例如,关于开始写入咨询器日志的顾问程序的消息)。级别 1 包括正在进行中的信息等;而级别 5 包括必要时产生的帮助解决问题的每 条消息。这些日志的缺省为 1。

    您还可以设置最大日志大小。当设置日志文件的最大大小后,文件将回绕;当文件达到指定的大小时,后继条目将从文件顶部开始写入,同时覆盖先前的日志条目。不能将日志大小的值设置为小于当前值。日志条目带有时间戳记,以便识别写入日 志的顺序。

    设置的日志级别越高,则选择日志大小时越要小心。在级别 0,将日志大小保留为缺省的 1MB 可能是安全的;然而,当记录级别为 3 以及更高时,您应该限制大小,但不要设置得太小而无法使用。

    控制器日志

    Cisco CSS 控制器和 Nortel Alteon 控制器具有如下所示的日志:

    以下是配置记录与度量服务器代理程序通信的度量监视器日志的日志记录级别和最大日志大小的示例:

    xxxcontrol metriccollector set consultantID:serviceID:metricName
       loglevel x logsize y
    

    更改日志文件路径

    缺省情况下,控制器生成的日志存储在控制器安装的日志目录中。要更改此路径,在 xxxserver 脚本中设置 xxx_logdir 变量。

    AIX、HP-UX、Linux 和 Solaris:xxxserver 脚本可在 /usr/bin 目录中找到。在此脚本中,变量 xxx_logdir 设置为缺省目录。您可 以修改此变量来指定您的日志目录。示例:

    xxx_LOGDIR=/path/to/my/logs/

    Windows:xxxserver 文件可在 Windows 系统目录(通常为 C:\WINNT\SYSTEM32)中找到。在 xxxserver 文件中,变量 xxx_logdir 设置为缺省目录。您可 以修改此变量来指定您的日志目录。示例:

    set xxx_LOGDIR=c:\path\to\my\logs\

    对于所有操作系统,确保等号两端没有空格且路径以斜杠结束(适合的“/”或“\”)。

    二进制日志记录

    Load Balancer 的二进制日志记录功能使用与其它日志文件相同的日志目录。请参阅使用二进制日志记录分析服务器统计信息


    使用分派器组件

    本节说明如何操作和管理分派器组件。

    启动和停止分派器

    使用失效超时值

    对于 Load Balancer,当在失效超时中指定的秒数内连接上没有活动时,则认为连接已失效。当已超过此秒数并且没有活动时,Load Balancer 将从它的表中除去此连接记录,并且将废弃此连接的后继流量。

    例如,在端口级别,您可在 dscontrol port set staletimeout 命令上指定失效超时值。

    可在执行程序、群集和端口级别设置失效超时。在执行程序和群集级别,缺省为 300 秒并且它会向下过滤至端口。在端口级别,缺省值取决于端口。一些较好定义的端口具有不同的缺省失效超时值。 例如,telnet 端口 23 的缺省值为 259,200 秒。

    一些服务可能还具有它们自己的失效超时值。例如,LDAP(轻量级目录访问协议)具有称为空闲超时的配置参数。当超过了空闲超时秒时,将强制关闭空闲客户机连接。空闲超时还可能设置为 0,这意味着永远不会强制关闭连接。

    当 Load Balancer 的失效超时值小于服务的超时值时,可能会发生连接性问题。如果为 LDAP,则 Load Balancer 失效超时值缺省为 300 秒。如果在 300 秒内连接上没有活动,则 Load Balancer 将从它的表中除去连接记录。如果空闲超时值大于 300 秒(或设 置为 0),则客户机可能仍然认为它具有到服务器的连接。当客户机发送信息包时,这些信息包将会被 Load Balancer 废弃。这将导致当向服务器发出请求时 LDAP 挂起。要避免此问题,将 LDAP 空闲超时设置为一个等于或小于 Load Balancer 失效超时值的非零值。

    使用 FIN 计数来控制垃圾收集

    当客户机发送了它的全部信息包后,它会发送 FIN 信息包,以使服务器知道事务已完成。当分派器收到 FIN 信息包时,它 将事务从活动状态标记为 FIN 状态。当事务标记为 FIN 时,为此连接保留的内存就可由执行程序内置的垃圾收集器清除。

    您可以使用 FIN 超时和计数设置执行程序执行垃圾收集的频率和数量。执 行程序周期性地检查已经分配的连接列表。当处于 FIN 状态的连接数大于或等 于 FIN 计数时,执行程序将尝试释放用于保存此连接信息的内存。通过输入 dscontrol executor set fincount 命令可更改 FIN 计数。

    垃圾收集器为处于 FIN 状态以及大于 FIN 超时中指定秒数的任何连接释放内存。通过输入 dscontrol executor set fintimeout 命令可以更改 FIN 超时。

    失效超时值是在除去不活动的连接之前,此连接上无活动可持续的秒数。有关更多的信息,请参阅使用失效超时值。FIN 计数还影响除去“失效”连接的频率。如果分派器机器的内存很小,则应将 FIN 计数设置得小些。如果 Web 站点较忙,则应将 FIN 计数 设置得大些。

    报告 GUI - “监视器”菜单选项

    根据来自执行程序和转送到管理器的信息,可以显示各种图表。(“GUI 监视器”菜单选项要求管理器功能在运行):

    与分派器组件一起使用简单网络管理协议

    网络管理系统是连续运行的程序,它用于监视网络、反映网络状态并控制网络。 简单网络管理协议(SNMP),一种用于与网络中设备通信的广泛应用的协议,是当前 网络管理标准。网络设备通常有一个 SNMP 代理程序和一个或多个 子代理程序。SNMP 代理程序与网络管理站通信或响 应命令行 SNMP 请求。SNMP 子代理程序检索并更新数据,并将该数据传给 SNMP 代理程序,以便传回到请求者。

    分派器 提供了一个 SNMP 管理信息库(ibmNetDispatcherMIB)和一个 SNMP 子代理程序。这允许您使用任何网络管理系统,如 -- Tivoli(R) NetView(R)、Tivoli Distributed Monitoring 或 HP OpenView --,以监视分派器的运行状况、吞吐量和活动。 MIB 数据描述了正被管理的分派器并反映了当前分派器状态。MIB 安装在 ..lb/admin/MIB 子目录中。

    注意:
    使用 Tivoli NetView xnmloadmib2 程序不装入 MIB,ibmNetDispatcherMIB.02。 要修正此问题,请注释掉 MIB 的 NOTIFICATION-GROUP 部分。即,在行“indMibNotifications Group NOTIFICATION-GROUP”及其后的 6 行前插入“--”。

    网络管理系统使用 SNMP GET 命令来查看其它机器上的 MIB 值。然后通知您是否超过指定的阈值。然后您可以通过修改 分派器 的配置数据来影响分派器性能,以便在分派器问题导致分派器或 Web 服务器运行中断前,预先调整或修正这些问题。

    SNMP 命令与协议

    系统通常为每个网络管理站提供一个 SNMP 代理程序。用户将 GET 命令发送到 SNMP 代理程序。而 SNMP 代理程序轮流发送 GET 命令,以从负责这些 MIB 变量的 子代理程序检索指定的 MIB 变量值。

    分派器 提供用于更新和检索 MIB 数据的子代理程序。当 SNMP 代理程序发送 GET 命令时,子代理程序 以适当的 MIB 数据响应。SNMP 代理程序将数据传送到网络管理站。网络管理站可通知您是否超过指定的阈值。

    分派器 SNMP 支持包括使用分布式程序接口(DPI(R))功能的 SNMP 子代理程序。DPI 是 SNMP 代理程序和其子代理程序之间的接口。Windows 操作系统使用 Windows 扩展代理程序作为 SNMP 代理程序及其子代理程序之间的接口。

    在 AIX、HP-UX、Linux 和 Solaris 上启用 SNMP

    图 41. 适用于基于 UNIX 系统的 SNMP 命令

    SNMP 命令和基于 UNIX 系统的服务器系统

    AIX 提供使用 SNMP 多路复用器协议(SMUX)的 SNMP 代理程序,并提供 DPID2,它是用作 DPI 和 SMUX 间转换程序的附加的可执行文件。

    对于 HP-UX,您必须获取启用 SMUX 的 SNMP 代理程序,因为 HP-UX 不提供此代理程序。Load Balancer 提供 DPID2 for HP-UX。

    Linux 提供使用 SMUX 的 SNMP 代理程序。大部分 Linux 版本(例如,Red Hat)附带 UCD SNMP 软件包。UCD SNMP V4.1 或更高版本具有启用 SMUX 的代理程序。Load Balancer 为 Linux 提供 DPID2。

    注意:
    对于 SuSE Linux,您必须获取启用 SMUX 的 SNMP 代理程序,因为 SuSE 不提供此代理程序。

    对于 Solaris,您必须获取启用 SMUX 的 SNMP 代理程序,因为 Solaris 不提供此代理程序。Load Balancer 为 Solaris 提供的 DPID2 位于 the /opt/ibm/edge/lb/servers/samples/SNMP 目录中。

    DPI 代理程序必须作为 root 用户运行。在执行 DPID2 守护程序之前,请按如下操作更新 /etc/snmpd.peers 文件和 /etc/snmpd.conf 文件:

    对于 AIX 和 Solaris:

    对于 Linux:

    在 HP-UX 上启用 SNMP

    要安装 HP-UX SNMP 支持:

    1. 如果您未安装 GNU SED 的版本,则从 HP Web 站点 http://www.hp.com 获取它。
    2. 从下列 Web 页面 http://sourceforge.net/project/showfiles.php?group_id=12694 获取 ucd-snmp-4.2.4 tar.gz。
    3. 确保您已在机器上安装“gcc”和“gmake 或 make”。 如果未安装,则您必须安装它们。
    4. 解压缩 ucd-snmp-4.2.4.tar.gz 文件,然后在目录中解取所有源文件。
    5. 转至源文件所在的目录,然后执行以下步骤:
      1. run ./configure --with-mib-modules=smux
      2. make
      3. 作为 root 用户运行接下来的两个命令。
        1. umask 022
        2. make install
      4. export SNMPCONFPATH=/etc/snmp
      5. start /usr/local/sbin/snmpd -s (这样启动 SNMP 代理程序)
      6. start dpid2(这样启动 DPI 转换程序)
      7. dscontrol subagent start(这样启动分派器子代理程序)

    在 SuSE Linux 上启用 SNMP

    为了与 SuSE Linux 一起使用 Load Balancer SNMP,您必须执行以下操作:

    1. 从 SuSE 框安装 ucd-snmp rpm。
    2. http://sourceforge.net/project/showfiles.php?group_id=12694 获取 ucd-snmp-4.2.4.tar.gz。
    3. 确保您已在 SuSE 框中安装“gcc”和“gmake or make”(如果它们不存在,您必须安装)。
    4. 解压缩 ucd-snmp-4.2.4.tar.gz 文件,然后在目录中解取所有源文件。
    5. 转至源文件所在的目录,然后执行以下步骤:
      1. run ./configure --with-mib-modules=smux
      2. make
      3. 作为 root 用户运行接下来的两个命令。
        1. umask 022 #
        2. make install
      4. export SNMPCONFPATH=/etc/snmp
      5. start /usr/local/sbin/snmpd -s
      6. start dpid2

    刷新 snmpd (如果它已在运行),以便它重读 snmpd.conf 文件:

    refresh -s snmpd
    

    启动 DPID SMUX 对等:

    dpid2
    

    必须按下列顺序启动守护程序:

    1. SNMP 代理程序
    2. DPI 转换程序
    3. 分派器 子代理程序

    在 Solaris 上启用 SNMP

    要安装 Solaris SNMP 支持:

    1. 杀死正在运行的 Solaris SNMP 守护程序(snmpdx 和 snmpXdmid)。
    2. 按如下所示重命名文件:

      /etc/rc3.d/S76snmpdx/etc/rc3.d/K76snmpdx

      /etc/rc3.d/S77dmi/etc/rc3.d/K77dmi

    3. 从 http://www.sunfreeware.com/ 下载以下软件包:
    4. 使用 pkgadd 安装下载的软件包。
    5. 从 http://sourceforge.net/project/showfiles.php?group_id=12694 下载 ucd-snmp-4.2.3-solaris8.tar.gz
    6. Gunzip 和 untar 位于根目录(/)的 ucd-snmp-4.2.3-solaris8.tar.gz
    7. 发出下列命令:

      export LD_LIBRARY_PATH=$LD_LIBRARY_PATH: /usr/local/lib:/usr/local/ssl/lib:/usr/lib

      export PATH=/usr/local/sbin:/usr/local/bin:$PATH

      export SNMPCONFPATH =/etc/snmp

      export MIBDIRS=/usr/local/share/snmp/mibs

      cp /opt/ibm/edge/lb/servers/samples/SNMP/dpid2 /usr/local/sbin/dpid2

    8. 如果它尚未存在,则创建 /etc/snmpd.peers。将以下内容插入 snmpd.peers:
      "dpid2" 1.3.6.1.4.1.2.3.1.2.2.1.1.2     "dpid_password"
      
    9. 如果它尚未存在,则创建 /etc/snmp/snmpd.conf。将以下内容插入 snmpd.confs:
      smuxpeer        1.3.6.1.4.1.2.3.1.2.2.1.1.2     dpid_password
      
    10. 启动 /usr/local/sbin/snmpd。
    11. 启动 /usr/local/sbin/dpid2。

    记录:

    1. 以下软件包使用软件包格式。

      在 http://sunfreeware.com/ Web 站点上,名称具有扩展名 .gz,因此请不要尝试 gunzip/untar 它们。而是使用 pkgadd packageName

    2. 当您在 /etc/snmp/snmpd.conf 中添加 smuxpeer 条目时,请确保在 dpid_password 字符串中不添加空格。

    3. 使用启用 smux 的 ucd-snmp V4.2.3 测试 Load Balancer SNMP 功能。使用 smux 的 ucd-snmp 将来发行版应该与类似的设置一起工作。

    在 Windows 操作系统上启用 SNMP

    要安装 Windows SNMP 支持:

    1. 单击“开始 > 设置(Windows 2000)> 控制面板 > 添加/删除程序”。
    2. 单击添加/删除 Windows 组件
    3. 在“Windows 组装向导”中,单击管理和监视工具(但是不要选择或清除其复选框),然后单击详细信息
    4. 选择简单网络管理协议复选框,并单击“确定”。
    5. 单击“下一步”。

    提供 SNMP 的群体名

    当执行程序运行时,使用 dscontrol subagent start [communityname] 命令定义 Windows OS 扩展代理程序和 SNMP 代理程序之间使用的共用名。

    重要事项:On Windows 2003,缺省情况下,SNMP 不响应存在的任何群体名。在这种情况下,SNMP 子代理程序将不响应任何 SNMP 请求。要确保 SNMP 子代理程序将响应群体名,您必须使用相应的群体名和目标主机设置 SNMP 服务属性。按如下所示配置 SNMP 安全性属性:

    1. 打开“计算机管理”
    2. 在控制台树中,单击服务
    3. 在详细信息窗格中,单击 SNMP 服务
    4. 在操作菜单上,单击属性
    5. 在“安全性”选项卡上,“接受的群体名”下,单击添加
    6. 在“群体权利”下,选择此主机的许可权级别,以处理来自所选群体(至少具有只读许可权)的 SNMP 请求
    7. 在“群体名”中,输入区分大小写的群体名,同您提供给 Load Balancer 子代理程序的一样(缺省群体名:public),然后单击添加
    8. 指定是否从主机接受 SNMP 信息包。选择下列选项之一:
    9. 重新启动 SNMP 服务,以便使更改生效

    陷阱

    SNMP 通过发送和接收陷阱通信,陷阱是由受管设备发送的消息,用来报告异常情况或重大 事件的发生,如已到达阈值。

    子代理程序使用以下陷阱:

    indHighAvailStatus 陷阱宣告高可用性状态的 state 变量(hasState)的值已经更改。hasState 可能的值为:

    -idle
    此机器正在进行负载均衡,并且不尝试与其伙伴分派器建立联系。

    -listen
    高可用性刚启动并且分派器在侦听其伙伴。

    -active
    此机器正在进行负载均衡。

    -standby
    此机器正在监视活动机器。

    -preempt
    这表示从主计算机到备份计算机转换过程中的此机器处于转换状态。

    -elect
    分派器 正在与其伙伴机协商关于谁将作为主计算机、谁将作为备份计算机。

    -no_exec
    执行器未运行。

    indSrvrGoneDown 陷阱宣告由对象标识的 csID(群集标识)、psNum(端口号)和 ssID(服务器标识)部分指定的服务器权值已变为 0。此服务器最终 已知的活动连接数在陷阱中发送。此陷阱表示据分派器所确定,指 定的服务器已当机。

    indDOSAttack 陷阱表明 numhalfopen(仅由 SYN 信息包组成的半开连接数)已超出由对象标识的 csID(群集标识)和 psNum(端口号)部分指定的端口的 maxhhalfopen 阈值。端口上配置的服务器数在陷阱中发送。此陷阱表明 Load Balancer 可能遇到拒绝服务攻击。

    indDOSAttackDone 陷阱表明 numhalfopen(仅由 SYN 信息包组成的半开连接数)已低于由对象标识的 csID 和 psNum 部分指定的端口的 maxhalfopen 阈值。端口上配置的服务器数在陷阱中发送。当 Load Balancer 确定可能的拒绝服务攻击已结束,发送 indDOSAttack 陷阱后将发送此陷阱。

    对于基于 UNIX 的系统,由于 SMUX API 中的限制,来自 ibmNetDispatcher 子代理的陷阱中报告的企业标识可能为 dpid2 的企业标识,而不是 ibmNetDispatcher 的企业标识 1.3.6.1.4.1.2.6.144。但是,SNMP 管理实用程序将能够确定陷阱的源,因为数据将包含来自 ibmNetDispathcer MIB 中的对象标识。

    从 dscontrol 命令打开或关闭 SNMP 支持

    dscontrol subagent start 命令打开 SNMP 支持。dscontrol subagent stop 命令关闭 SNMP 支持。

    要获取有关 dscontrol 命令的更多信息,请参阅dscontrol subagent - 配置 SNMP 子代理程序

    使用 ipchains 或 iptables 以拒绝所有流量来(加固)Load Balancer 框(在 Linux 上)

    构建到 Linux 内核中的是称为 ipchains 的防火墙设施。当 Load Balancer 和 ipchains 并行运行时,Load Balancer 首先会看到信息包,然后再看到 ipchains。这允许使用 ipchains 来加固 Linux Load Balancer 框,例如可以是用于负载均衡防火墙 Load Balancer 框。

    当 ipchains 或 iptables 配置为完全限制(不允许 inbound 或 outbound 流量),Load Balancer 的转发信息包部分能继续正常工作。

    注意,在负载均衡之前,不能使用 ipchains 和 iptables 来过滤入网流量。

    要使 Load Balancer 的所有功能正常工作,必须允许一些附加流量。此通信的一些示例为:

    通常,Load Balancer 框的适当 ipchains 策略是不接受除到后端服务器或来自后端服务器外的所有流量、伙伴高可用性 Load Balancer、所有到达目标或所有配置主机。

    当在 Linux 内核 V2.4.10.x 上运行 Load Balancer 时,建议不要激活 iptables。在此 Linux 内核版本上的激活可导致性能降低而引起超时。

    要释放 iptables,列出模块(lsmod)以查看哪个模块正在使用 ip_tables 和 ip_conntrack,然后通过发出 rmmod ip_tablesrmmod ip_conntrack 来除去它们。 当您重新引导机器时将再次添加这些模块,所以每次重新引导后需要重复这些步骤。

    要获取支持的 Linux 内核版本的信息,请参阅Linux 的要求


    使用基于内容路由组件

    本节说明了如何操作和管理 Load Balancer 的 CBR 组件。

    启动和停止 CBR

    CBR 和高速缓存代理通过高速缓存代理插件 API 来协作处理 HTTP 和 HTTPS(SSL)请求。高速缓存代理必须运行在同一台机器上,以使 CBR 开始负载均衡服务器。如CBR 配置示例中描述的设置 CBR 和高速缓存代理。

    控制 CBR

    在启动 CBR 之后,您可使用下列方法之一控制它:

    使用 CBR 日志

    用于 CBR 的日志与用于 分派器的日志类似。要获取更多的信息,请参阅使用 Load Balancer 日志

    注意:
    在前发行版中,对于 CBR,您可以在高速缓存代理配置文件中更改日志目录路径。现在,您可更改目录路径,日志存储在此目录路径中的 cbrserver 文件中。请参阅更改日志文件路径

    使用站点选择器组件

    启动和停止站点选择器

    控制站点选择器

    在启动站点选择器之后,您可使用下列方法之一控制它:

    使用站点选择器日志

    站点选择器使用的日志与分派器中使用的那些类似。 要获取更多描述信息,请参阅使用 Load Balancer 日志


    使用 Cisco CSS 控制器组件

    启动和停止 Cisco CSS 控制器

    1. 在命令行上输入 ccoserver 以启动 Cisco CSS 控制器。
    2. 在命令行上输入 ccoserver stop 以停止 Cisco CSS 控制器。

    控制 Cisco CSS 控制器

    在启动 Cisco CSS 控制器之后,您可使用下列方法之一控制它:

    使用 Cisco CSS 控制器日志

    Cisco CSS 控制器使用的日志与分派器中使用的那些日志类似。要获取更多描述信息,请参阅使用 Load Balancer 日志


    使用 Nortel Alteon 控制器组件

    启动和停止 Nortel Alteon 控制器

    1. 在命令行上输入 nalserver 以启动 Nortel Alteon 控制器。
    2. 在命令行上输入 nalserver stop 以停止 Nortel Alteon 控制器。

    控制 Nortel Alteon 控制器

    在启动 Nortel Alteon 控制器之后,您可使用下列方法之一控制它:

    使用 Nortel Alteon 控制器日志

    Nortel Alteon 控制器使用的日志与分派器中使用的那些日志类似。要获取更多描述信息,请参阅使用 Load Balancer 日志


    使用度量服务器组件

    启动和停止度量服务器

    度量服务器为 Load Balancer 提供服务器负载信息。度量服务器驻留在被负载均衡的每个服务器上。

    使用度量服务器日志

    更改度量服务器启动脚本中的日志级别。您可以指定日志级别范围为 0 到 5,类似于 Load Balancer 日志中的日志级别范围。这将在 ...ms/logs 目录中生成代理程序日志。


    故障诊断

    本章帮助您检测和解决与 Load Balancer 相关的问题。


    收集故障诊断信息

    使用本节中的信息收集 IBM 服务所需的数据。 该信息分为以下主题。

    一般信息(始终是必需的)

    有一种仅适用于分派器组件的问题确定工具,该工具自动收集操作系统特定的数据和组件特定的配置文件。要运行此工具,从相应的目录输入 lbpd

    对于基于 UNIX 的平台:/opt/ibm/edge/lb/servers/bin/

    对于 Windows 平台:C:\Program Files\IBM\edge\lb\servers\bin

    此问题确定工具将数据封装到如下所示的文件:

    对于基于 UNIX 的平台:/opt/ibm/edge/lb/lbpmr.tar.Z

    对于 Windows 平台:C:\Program Files\IBM\edge\lb\lbpmr.zip

    注意:
    您必须具有 Windows 的命令行 zip 实用程序。

    在您调用 IBM 服务前,了解下列信息。

    高可用性(HA)问题

    为 HA 环境中的问题收集以下必需信息。

    顾问程序问题

    为顾问程序问题收集以下必需信息;例如,当顾问程序错误地将服务器标记为当机时。

    注意:
    当写定制顾问程序时,使用 ADVLOG(loglevel,message) 可以帮助您验证顾问程序正在正确地运行。

    当级别小于与顾问程序相关联的记录级别时,ADVLOG 调用会打印语句到顾问程序日志文件。记录级别 0 将导致总是写语句。您无法从构造函数使用 ADVLOG。直到完成定制顾问程序的构造函数后才立即创建日志文件,因为日志文件名取决于设置在构造函数中的信息。

    有另一种方法调试您的定制顾问程序,它可以避免这种限制。您可以使用 System.out.println(message) 语句将消息打印到窗口。编辑 dsserver 脚本并更改 javaw 为 java 以使打印语句出现在窗口中。用来启动 dsserver 的窗口必须保持打开以显示打印。如果您正在使用 Windows 平台,则您必须停止作为服务运行的分派器,并从窗口手工启动它以查看消息。

    请参阅 Programming Guide for Edge Components 获取更多关于 ADVLOG 的信息。

    基于内容路由问题

    为基于内容路由问题收集以下必需信息。

    无法命中群集

    如果您无法命中群集,则有可能对这两台 Load Balancer 机器都建立或都不建立别名。要确定哪个框拥有群集:

    1. 在同一子网但在 Load Balancer 机器或服务器上:
      ping cluster
      arp -a
      
    2. 查看 arp 输出,并将 MAC(16 位十六进制地址)与 netstat -ni 输出之一相匹配,以确定哪台机器物理上拥有此群集。
    3. 使用以下命令解释这两台机器的输出,以查看它们是否都具有群集地址。

      在 AIX 和 HP-UX 上:netstat -ni

      在 Linux 和 Solaris 上:ifconfig -a

      在 Windows 上:ipconfig /all

    如果您没有从 ping 获取响应,有可能两台机器都没有为群集 IP 地址建立到其接口的别名;例如,en0 和 tr0 等。

    其它故障

    如果您无法解决路由问题,并且还有其它故障,则发出以下命令以在网络流量上运行跟踪:

    您还可以增加不同的日志级别(例如,管理器日志、顾问程序日志等。)并审查其输出。

    升级

    要标识已修正的问题,请检查升级:

    1. Ftp 到下列站点:
      ftp://ftp.software.ibm.com/ps/products/networkdispatcher/servicereleases
      
    2. 根据您的操作系统选择相应的文件,确保您获取最新的服务发行版。
    3. 单击您选择的文件,以下载代码。

    Java

    要升级 Load Balancer 的 Java 版本,请参阅页面 3

    帮助链接

    请参阅参考信息,以获取有关支持、技术注意事项(提示和技巧)和库 Web 页面的 Web 站点信息。


    故障诊断表

    请参阅以下内容:


    表 15.分派器故障诊断表

    症状 可能原因 转至...
    分派器未正确运行 端口号冲突 检查分派器端口号
    配置了并列配置的服务器而它不响应负载均衡请求 地址错误或冲突 问题:分派器和服务器不响应
    没有为来自客户机的连接提供服务或连接超时
    • 路由配置错误
    • NIC 不能作为群集地址的别名
    • 服务器不具有别名为群集地址的回送设备
    • 未删除额外路由
    • 没有为每个群集定义端口
    • 服务器当机或设置的权值为零

    问题:未平衡分派器请求
    客户机没有得到服务或超时 高可用性不工作 问题:分派器 高可用性功能不工作
    无法添加心跳检测信号(Windows 平台) 没有在适配器上配置源地址 问题:无法添加心跳检测信号(Windows 平台)
    服务器不向请求提供服务(Windows 平台) 在路由表中已创建了一个额外路由 问题:额外路由(Windows 平台)
    顾问程序在广域网中不能正确工作 顾问程序没在远程机器上运行 问题:顾问程序未正确地工作
    Dispatcher、Microsoft IIS 和 SSL 不工作或不继续工作 无法跨协议发送加密数据 问题:分派器、Microsoft IIS 和 SSL 不工作(Windows 平台)
    拒绝到远程机器的连接 仍然使用旧版本密钥 问题:到远程机器的分派器连接
    dscontrol 或 lbadmin 命令失败,并发出‘服务器没有响应’或‘无法访问 RMI 服务器’消息
    1. 由于 socksified 堆栈,命令执行失败。或由于未启动 dsserver 而导致命令失败
    2. 未正确设置 RMI 端口

    问题:dscontrol 或 lbadmin 命令失败
    “未找到文件...”错误消息,当运行 Netscape 作为缺省浏览器来查看联机帮助(Windows 平台)时 HTML 文件关联设置错误 问题:当尝试查看联机帮助(Windows 平台)时出现“无法找到文件...”错误消息
    当在 Solaris 2.7 上启动 dsserver 时,出现“stty::无这种设备或地址”错误消息。 请忽略此错误消息。这不是一个问题。dsserver 将正确运行 问题:在 Solaris 2.7 上启动 dsserver 时出现虚假的错误消息
    图形用户界面未正确启动 调页空间不足 问题:图形用户界面(GUI)未正确地启动
    运行安装了高速缓存代理的分派器时出错 高速缓存代理文件相关性 问题:运行安装了高速缓存代理的分派器时出错
    图形用户界面未正确地显示。 分辨率不正确。 问题:图形用户界面(GUI)未正确地显示
    “帮助”面板有时消失在其它窗口后面 Java 限制 问题:在 Windows 平台上,帮助窗口有时会消失在其它打开的窗口后面
    Load Balancer 无法处理和转发帧。 每个 NIC 需要唯一的 MAC 地址 问题:Load Balancer 无法处理和转发帧
    出现蓝屏 未安装和配置网络卡 问题:当您启动 Load Balancer 执行程序时显示蓝屏
    到 Discovery 的路径妨碍返回流量 在回送上建立群集的别名 问题:到 Discovery 的路径妨碍了 Load Balancer 返回流量
    顾问程序显示所有服务器当机 TCP 校验和未正确计算 问题:顾问程序显示所有服务器都当机(Windows 平台)
    Load Balancer 的广域方式中的高可用性不工作。 远程分派器必须定义为本地分派器上的群集中的服务器 问题:Load Balancer 的广域方式中的高可用性不工作
    尝试装入大型配置文件时 GUI 挂起(或意外行为)。 Java 无权访问足够的内存,以处理对 GUI 如此大的更改 问题:尝试装入大型配置文件时 GUI 挂起(或意外行为)
    在 Windows 上:偶尔的蓝屏或 Load Balancer 顾问程序错误地报告“-1”负载 使用 3Com 985B 千兆位以太网适配器 问题:在 Windows 平台上,出现蓝屏或顾问程序错误地报告“-1”负载
    在 Solaris 本地语言版本上,GUI 的“是”和“否”按钮可能显示为英文。 这是一个正在由 Sun Microsystems 处理的已知问题 问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示
    Load Balancer 管理(lbadmin)在更新配置后从服务器断开连接 lbadmin 或 dscontrol 可能是一个不同于 dsserver 的版本 问题:lbadmin 在更新配置后从服务器断开连接
    在远程连接上未正确解析的 IP 地址 在安全 socks 实现上使用远程客户机时,全限定域名或主机名可能未解析为正确的点分十进制 IP 地址 问题:在远程连接上未正确解析的 IP 地址
    韩国语 Load Balancer 界面在 AIX 和 Linux 上显示重叠或不是期望的字体 必须更改缺省字体 问题:韩国语 Load Balancer 界面在 AIX 和 Linux 上显示重叠或非期望的字体
    在 Windows 上,设置 MS Loopback 适配器的别名后,当发出某些命令(如 hostname)时,操作系统将不正确地以别名地址响应 在网络连接列表中,新添加的别名不得列在本地地址的上面 问题:在 Windows 上,在发出命令(如 hostname)时返回别名地址,而非本地地址
    在使用配有 Matrox AGP 视频卡的 Windows 平台时,发生意外 GUI 行为 在运行 Load Balancer GUI 时使用 Matrox AGP 视频卡时发生问题 问题:在 Windows 平台上,使用 Matrox AGP 视频卡时发生意外 GUI 行为
    在 Linux 上执行“rmmod ibmnd”时的意外行为,如系统挂起 在手工除去 Load Balancer 内核模块(ibmnd)时发生问题。 问题:在执行“rmmod ibmnd”(Linux)时的意外行为
    在分派器机器上运行命令时的慢响应时间 慢响应时间可能是由于机器因大量客户机流量而重载 问题:在分派器机器上运行命令时的慢响应时间
    对于分派器的 mac 转发方法,SSL 或 HTTPS 顾问程序不注册服务器负载 由于未用群集 IP 地址配置 SSL 服务器应用程序而发生问题 问题:(使用 mac 转发时)SSL 或 HTTPS 顾问程序不注册服务器负载
    在使用 lbwebaccess(Web 管理)或 lbadmin 装入大配置时发生问题 可能会发生问题,因为需要增加最大 Java 堆 问题:(使用 lbadmin、Web 管理)装入大配置时的困难
    在通过 Netscape 使用远程 Web 管理时从主机断开连接 在调整浏览器窗口的大小时将从主机断开连接 问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接
    启用套接字合用并且 Web 服务器正绑定到 0.0.0.0 将 Microsoft IIS 服务器配置为绑定特定的 问题:启用套接字合用,并且 Web 服务器绑定至 0.0.0.0
    在 Windows 平台上,在命令提示符中出现乱码的 Latin-1 本地字符 更改命令提示符窗口的字体属性 问题:在 Windows 上,在命令提示符窗口中出现乱码的 Latin-1 本地字符
    在基于 UNIX 平台上使用 Netscape 浏览器,信息中心中的联机帮助文本将以小字体显示 通过编辑 Netscape 浏览器的首选项选项可增加字体大小 问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本
    在 HP-UX 平台上,出现以下消息:java.lang.OutOfMemoryError 无法创建新的本机线程 一些 HP-UX 安装在缺省情况下每个进程允许 64 个线程。这是不够的。 问题:在 On HP-UX 上,发生 Java 内存/线程不够错误
    在 Windows 平台上,顾问程序和到达目标将所有服务器标记为当机 未禁用任务卸载或可能需要启用 ICMP。 问题:在 Windows 上,顾问程序和到达目标将所有服务器标记为当机
    在 Windows 平台上,当配置了多个地址到适配器时将 IP 地址解析为主机名时出现问题 您要作为主机名的 IP 地址必须首先出现在注册表中。 问题:在 Windows 上,当配置了多个地址到适配器时将 IP 地址解析为主机名
    在 Windows 平台上,网络中断后顾问程序没有以高可用性设置状态运行 当系统检测到网络中断,它会清除其地址解析协议(ARP)高速缓存 问题:在 Windows 上,在网络中断后,顾问程序在高可用性设置中不工作
    在 Linux 上,“IP address add”命令和多个群集回送别名是不兼容的 当别名判别回送设备上的多个地址时应该使用 ifconfig 命令而不是 ip address add 问题:在 Linux 上,当在回送设备上别名判别多个群集时不要使用“IP address add”命令

    表 16. CBR 故障诊断表

    症状 可能原因 转至...
    CBR 未正确运行 端口号冲突 检查 CBR 端口号
    cbrcontrol 或 lbadmin 命令失败,并发出‘服务器没有响应’或‘无法访问 RMI 服务器’消息 由于 socksified 堆栈,命令执行失败。或者由于未启动 cbrserver 而命令失败 问题:cbrcontrol 或 lbadmin 命令失败
    请求未被负载均衡 启动执行程序之前启动高速缓存代理 问题:未负载均衡请求
    在 Solaris 上,cbrcontrol executor start 命令失败,并发出‘错误:执行程序未启动’消息 因为系统 IPC 缺省值可能需要修改,所以命令失败 问题:在 Solaris 上,cbrcontrol executor start 命令失败
    URL 规则不工作 语法或配置错误 问题:语法或配置错误
    在 Windows 上:偶尔的蓝屏或 Load Balancer 顾问程序错误地报告“-1”负载 使用 3Com 985B 千兆位以太网适配器 问题:在 Windows 平台上,出现蓝屏或顾问程序错误地报告“-1”负载
    在 Solaris 本地语言版本上,GUI 的“是”和“否”按钮可能显示为英文。 这是一个正在由 Sun Microsystems 处理的已知问题 问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示
    在使用配有 Matrox AGP 视频卡的 Windows 系统时发生意外 GUI 行为 在运行 Load Balancer GUI 时使用 Matrox AGP 视频卡时发生问题 问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为
    在使用 lbwebaccess(Web 管理)或 lbadmin 装入大配置时发生问题 可能会发生问题,因为需要增加最大 Java 堆 问题:(使用 lbadmin、Web 管理)装入大配置时的困难
    在通过 Netscape 使用远程 Web 管理时从主机断开连接 在调整浏览器窗口的大小时将从主机断开连接 问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接
    在 Windows 平台上,在命令提示符中出现乱码的 Latin-1 本地字符 更改命令提示符窗口的字体属性 问题:在 Windows 平台上,在命令提示符窗口中出现乱码的 Latin-1 本地字符
    在基于 UNIX 平台上使用 Netscape 浏览器,信息中心中的联机帮助文本将以小字体显示 通过编辑 Netscape 浏览器的首选项选项可增加字体大小 问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本
    在 HP-UX 平台上,出现以下消息:java.lang.OutOfMemoryError 无法创建新的本机线程 一些 HP-UX 安装在缺省情况下每个进程允许 64 个线程。这是不够的。 问题:在 On HP-UX 上,发生 Java 内存/线程不够错误
    在 Windows 平台上,顾问程序和到达目标将所有服务器标记为当机 未禁用任务卸载或可能需要启用 icmp。 问题:在 Windows 上,顾问程序和到达目标将所有服务器标记为当机
    在 Windows 平台上,当配置了多个地址到适配器时将 IP 地址解析为主机名时出现问题 您要作为主机名的 IP 地址必须首先出现在注册表中。 问题:在 Windows 上,当配置了多个地址到适配器时将 IP 地址解析为主机名

    表 17. 站点选择器故障诊断表

    症状 可能原因 转至...
    站点选择器未正确地运行 端口号冲突 检查站点选择器端口号
    站点选择器不循环来自 Solaris 客户机的进入请求。 Solaris 系统运行“名称服务高速缓存守护程序” 问题:站点选择器不循环来自 Solaris 客户机的流量
    sscontrol 或 lbadmin 命令失败,并发出‘服务器没有响应’或‘无法访问 RMI 服务器’消息 由于 socksified 堆栈,命令执行失败。或由于未启动 ssserver,命令执行失败。 问题:sscontrol 或 lbadmin 命令失败
    在 Windows 平台上 ssserver 启动失败 Windows 不要求主机名在 DNS 中。 问题:ssserver 在 Windows 平台上启动失败
    具有重复路由的机器未正确地负载均衡 -- 名称解析失败 站点选择器机器具有多个连接到同一子网的适配器 问题:具有重复路由的站点选择器未正确地进行负载均衡
    在 Windows 上:偶尔的蓝屏或 Load Balancer 顾问程序错误地报告“-1”负载 使用 3Com 985B 千兆位以太网适配器 问题:在 Windows 上,出现蓝屏或顾问程序错误地报告“-1”负载
    在 Solaris 本地语言版本上,GUI 的“是”和“否”按钮可能显示为英文。 这是一个正在由 Sun Microsystems 处理的已知问题 问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示
    在使用配有 Matrox AGP 视频卡的 Windows 平台时发生意外 GUI 行为 在运行 Load Balancer GUI 时使用 Matrox AGP 视频卡时发生问题 问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为
    在使用 lbwebaccess(Web 管理)或 lbadmin 装入大配置时发生问题 可能会发生问题,因为需要增加最大 Java 堆 问题:(使用 lbadmin、Web 管理)装入大配置时的困难
    在通过 Netscape 使用远程 Web 管理时从主机断开连接 在调整浏览器窗口的大小时将从主机断开连接 问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接
    在 Windows 平台上,在命令提示符中出现乱码的 Latin-1 本地字符 更改命令提示符窗口的字体属性 问题:在 Windows 平台上,在命令提示符窗口中出现乱码的 Latin-1 本地字符
    在基于 UNIX 平台上使用 Netscape 浏览器,信息中心中的联机帮助文本将以小字体显示 通过编辑 Netscape 浏览器的首选项选项可增加字体大小 问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本
    在 HP-UX 平台上,出现以下消息:java.lang.OutOfMemoryError 无法创建新的本机线程 一些 HP-UX 安装在缺省情况下每个进程允许 64 个线程。这是不够的。 问题:在 On HP-UX 上,发生 Java 内存/线程不够错误
    在 Windows 平台上,顾问程序和到达目标将所有服务器标记为当机 未禁用任务卸载或可能需要启用 icmp。 问题:在 Windows 上,顾问程序和到达目标将所有服务器标记为当机

    表 18. Cisco CSS 交换机的控制器故障诊断表

    症状 可能原因 转至...
    ccoserver 将不启动 端口号冲突 检查 Cisco CSS 控制器端口号
    ccocontrol 或 lbadmin 命令失败,并发出‘服务器没有响应’或‘无法访问 RMI 服务器’消息 由于 socksified 堆栈,命令执行失败。或由于未启动 ccoserver,命令失败。 问题:ccocontrol 或 lbadmin 命令失败
    接收错误:无法在端口 13099 上创建注册表 到期的产品许可证 问题:无法在端口 13099 上创建注册表
    在 Solaris 本地语言版本上,GUI 的“是”和“否”按钮可能显示为英文。 这是一个正在由 Sun Microsystems 处理的已知问题 问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示
    在使用配有 Matrox AGP 视频卡的 Windows 平台时发生意外 GUI 行为 在运行 Load Balancer GUI 时使用 Matrox AGP 视频卡时发生问题 问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为
    在添加咨询器时接收到一个连接错误 交换机和控制器上配置设置不正确 问题:在添加咨询器时接收到一个连接错误
    交换机上权值不更新 控制器或交换机之间的通信不可用或中断 问题:交换机上权值不更新
    刷新命令不更新咨询器配置 交换机和控制器之间的通信不可用或中断 问题:刷新命令不更新咨询器配置
    在使用 lbwebaccess(Web 管理)或 lbadmin 装入大配置时发生问题 可能会发生问题,因为需要增加最大 Java 堆 问题:(使用 lbadmin、Web 管理)装入大配置时的困难
    在通过 Netscape 使用远程 Web 管理时从主机断开连接 在调整浏览器窗口的大小时将从主机断开连接 问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接
    在 Windows 平台上,在命令提示符中出现乱码的 Latin-1 本地字符 更改命令提示符窗口的字体属性 问题:在 Windows 平台上,在命令提示符窗口中出现乱码的 Latin-1 本地字符
    在基于 UNIX 平台上使用 Netscape 浏览器,信息中心中的联机帮助文本将以小字体显示 通过编辑 Netscape 浏览器的首选项选项可增加字体大小 问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本
    在 HP-UX 平台上,出现以下消息:java.lang.OutOfMemoryError 无法创建新的本机线程 一些 HP-UX 安装在缺省情况下每个进程允许 64 个线程。这是不够的。 问题:在 On HP-UX 上,发生 Java 内存/线程不够错误

    表 19. Nortel Alteon 控制器故障诊断表

    症状 可能原因 转至...
    nalserver 将不启动 端口号冲突 检查 Nortel Alteon 控制器端口号
    nalcontrol 或 lbadmin 命令失败,并发出‘服务器没有响应’或‘无法访问 RMI 服务器’消息 由于 socksified 堆栈,命令执行失败。或由于未启动 nalserver 而导致命令失败。 问题:nalcontrol 或 lbadmin 命令失败
    接收错误:无法在端口 14099 上创建注册表 到期的产品许可证 问题:无法在端口 14099 上创建注册表
    在使用配有 Matrox AGP 视频卡的 Windows 平台时发生意外 GUI 行为 在运行 Load Balancer GUI 时使用 Matrox AGP 视频卡时发生问题 问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为
    在使用 lbwebaccess(Web 管理)或 lbadmin 装入大配置时发生问题 可能会发生问题,因为需要增加最大 Java 堆 问题:(使用 lbadmin、Web 管理)装入大配置时的困难
    在通过 Netscape 使用远程 Web 管理时从主机断开连接 在调整浏览器窗口的大小时将从主机断开连接 问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接
    在添加咨询器时接收到一个连接错误 交换机和控制器上配置设置不正确 问题:在添加咨询器时接收到一个连接错误
    交换机上权值不更新 控制器或交换机之间的通信不可用或中断 问题:交换机上权值不更新
    刷新命令不更新咨询器配置 交换机和控制器之间的通信不可用或中断 问题:刷新命令不更新咨询器配置
    在 Windows 平台上,在命令提示符中出现乱码的 Latin-1 本地字符 更改命令提示符窗口的字体属性 问题:在 Windows 上,在命令提示符窗口中出现乱码的 Latin-1 本地字符
    在基于 UNIX 平台上使用 Netscape 浏览器,信息中心中的联机帮助文本将以小字体显示 通过编辑 Netscape 浏览器的首选项选项可增加字体大小 问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本
    在 HP-UX 平台上,出现以下消息:java.lang.OutOfMemoryError 无法创建新的本机线程 一些 HP-UX 安装在缺省情况下每个进程允许 64 个线程。这是不够的。 问题:在 On HP-UX 上,发生 Java 内存/线程不够错误

    表 20. 度量服务器故障诊断表

    症状 可能原因 转至...
    运行 .bat 或 .cmd 用户度量文件时在 Windows 平台上发生度量服务器 IOException 必需完整的度量名称 问题:在 Windows 平台上运行 .bat 或 .cmd 用户度量文件时发生度量服务器 IOException
    度量服务器不会将负载信息报告给 Load Balancer 机器 可能的原因包括:
    • 度量服务器机器没有密钥文件
    • 度量服务器机器的主机名未在本地名称服务器中注册
    • /etc/hosts 文件有解析到回送地址 127.0.0.1 的本地主机名
    问题:度量服务器未向 Load Balancer 机器报告负载
    当密钥文件传送到服务器时,度量服务器日志报告“签名是访问代理程序所必需的” 密钥文件授权失败,因为它已被破坏。 问题:度量服务器日志报告“签名是访问代理程序所必需的”
    在 AIX 上,当多处理器系统(4.3.3、32-bit 5.1 或 64-bit 5.1)在重负载情况下运行度量服务器时,ps -vg 命令输出可能会损坏 APAR IY33804 改正此已知 AIX 问题 问题:在 AIX 上,当在重负载情况下运行度量服务器时,ps -vg 命令输出可能会损坏
    使用站点选择器负载均衡跨高可用性分派器在两层配置中配置度量服务器 未配置度量服务器(驻留在第二层中)在新的 IP 地址上侦听。 问题:在使用站点选择器跨高可用性分派器负载均衡的两层配置中配置度量服务器

    检查分派器端口号

    在运行分派器时如果遇到问题,可能是由于某个应用程序正在使用分派器通常使用的端口号。请注意分派器服务器使用下列端口号:

    如果另一个应用程序正在使用分派器的某个端口号,则您可更改分派器的端口号更改应用程序的端口号。

    要更改分派器的端口号,执行下列步骤:

    要更改应用程序的 RMI 端口号,执行下列步骤:

    注意:
    对于 Windows 平台,dsserver 和 metricserver 文件位于 C:\winnt\system32 目录。对于其它平台,这些文件在 /usr/bin/ 目录中。

    检查 CBR 端口号

    当运行 CBR 时如果遇到问题,可能是您的某个应用程序正在使用 CBR 通常使用的端口号。请注意 CBR 使用以下端口号:

    如果另一个应用程序正在使用某个 CBR 的端口号,则您可以更改 CBR 的端口号更改应用程序的端口号。

    要更改 CBR 的端口号,执行下列步骤:

    要更改应用程序的 RMI 端口号,执行下列步骤:

    注意:
    对于 Windows 平台,cbrserver 和 metricserver 文件位于 C:\winnt\system32 目录。对于其它平台,这些文件在 /usr/bin/ 目录中。


    检查站点选择器端口号

    在运行站点选择器组件时如果遇到问题,可能是由于某个应用程序正在使用站点选择器通常使用的端口号。请注意站点选择器使用下列端口号:

    如果另一个应用程序正在使用站点选择器的某个端口号,则您可更改站点选择器的端口号更改应用程序的端口号。

    要更改站点选择器的端口号,执行下列步骤:

    要更改应用程序的 RMI 端口号,执行下列步骤:

    注意:
    对于 Windows 平台,ssserver 和 metricserver 文件位于 C:\winnt\system32 目录。对于其它平台,这些文件在 /usr/bin/ 目录中。

    检查 Cisco CSS 控制器端口号

    在运行 Cisco CSS 控制器组件时,如果遇到问题,可能是另一个应用程序在使用 Cisco CSS 控制器的 ccoserver 所使用的某个端口号。请注意 Cisco CSS 控制器使用下列端口号:

    13099 用于接收来自 ccocontrol 的命令

    10004 用于将度量查询发送给度量服务器

    13199 用于 RMI 服务器端口

    如果另一个应用程序正在使用 Cisco CSS 控制器的某个端口号,则您可以更改 Cisco CSS 控制器的端口号更改应用程序的端口号。

    要更改 Cisco CSS 控制器的端口号,执行下列步骤:

    要更改应用程序的 RMI 端口号,执行下列步骤:

    注意:
    对于 Windows 平台,ccoserver 和 metricserver 文件位于 C:\winnt\system32 目录。对于其它平台,这些文件在 /usr/bin 目录中。

    检查 Nortel Alteon 控制器端口号

    在运行 Nortel Alteon 控制器组件时,如果遇到问题,可能是另一个应用程序在使用 Nortel Alteon 控制器的 nalserver 所使用的某个端口号。请注意Nortel Alteon 控制器使用下列端口号:

    14099 用于从 nalcontrol 接收命令

    10004 用于将度量查询发送给度量服务器

    14199 用于 RMI 服务器端口

    如果另一个应用程序正在使用 Nortel Alteon 控制器的某个端口号,则您可以更改 Nortel Alteon 控制器的端口号更改应用程序的端口号。

    要更改 Nortel Alteon 控制器的端口号,执行下列步骤:

    要更改应用程序的 RMI 端口号,执行下列步骤:

    注意:
    对于 Windows 平台,nalserver 和 metricserver 文件位于 C:\winnt\system32 目录。对于其它平台,这些文件在 /usr/bin 目录中。

    解决常见问题 - 分派器

    问题:分派器 不运行

    当另一个应用程序正在使用由分派器使用的端口时,会发生这种问题。要获取更多信息,请转至检查分派器端口号

    问题:分派器和服务器不响应

    当使用不同于指定地址的另一个地址时,会发生此问题。 当并列配置分派器和服务器时,确保配置中使用的服务器地址是 NFA 地址或配置为已并列配置。

    问题:未平衡分派器请求

    此问题的症状为没有提供与客户机的连接或连接超时。检查以下内容以诊断此问题:

    1. 为了进行路由配置过非转发地址、群集、端口和服务器吗?检查配置文件。
    2. 网络接口卡的别名为群集地址吗?对于基于 UNIX 的操作系统,使用 netstat -ni 进行检查。
    3. 每个服务器上的回送设备是否具有被设置为群集地址的别名?对于基于 UNIX 的操作系统,使用 netstat -ni 进行检查。
    4. 删除额外路由了吗?对于基于 UNIX 的操作系统,使用 netstat -nr 进行检查。
    5. 使用 dscontrol cluster status 命令检查已定义的每个群集的信息。确保为每个群集都定义了端口。
    6. 使用 dscontrol server report:: 命令确保服务器未当机并且权值未设置为零。

    对于 Windows 和其它平台,另见为负载均衡设置服务器

    问题:分派器 高可用性功能不工作

    当配置了分派器高可用性环境并且未为来自客户机的连接提供服务或连接超时时,则会出现此问题。检查下列情况以改正或诊断问题:

    问题:无法添加心跳检测信号(Windows 平台)

    当适配器上未配置源地址时,会发生此 Windows 平台错误。检查下列情况以改正或诊断问题。

    问题:额外路由(Windows 平台)

    设置服务器后,您可能会发现无意中创建了一个或多个额外路由。如果不除去,这些额外路由将阻止分派器运行。要检查并删除它们,请参阅为负载均衡设置服务器

    问题:顾问程序未正确地工作

    如果使用广域支持且顾问程序看来不正确地工作,确保它们在本地和远程分派器上都已启动。请参阅使用带分派器广域支持的远程顾问程序

    问题:分派器、Microsoft IIS 和 SSL 不工作(Windows 平台)

    使用分派器、Microsoft IIS 和 SSL 时,如果它们不一起工作,则启用 SSL 安全性可能有问题。要获取更多关于生成密钥对、获取证书、安装具有密钥对的证书和配置需要 SSL 的目录的信息,请参阅 Microsoft Information and Peer Web Services Information and Planning Guide 文档。

    问题:到远程机器的分派器连接

    分派器使用密钥允许您连接到远程机器并对它进行配置。密钥指定一个用于连接的 RMI 端口。为安全性原因或冲突问题可以更改 RMI 端口。更改 RMI 端口时,密钥文件名是不同的。对于同一台远程机器,如果 密钥目录中有多个密钥,且它们指定不同的 RMI 端口,命令行只尝试它找到的第一个密钥。如果密钥不正确,则连接会被拒绝。连接将不会成功,除非您删除不正确的密钥。

    问题:dscontrol 或 lbadmin 命令失败

    1. dscontrol 命令返回:错误:服务器未响应。或,lbadmin 命令返回:错误:无法访问 RMI 服务器。当您的机器有一个 socksified 堆栈时会导致这些错误。要更正此问题,请编辑 socks.cnf 文件以包含下列行:

      EXCLUDE-MODULE java
      EXCLUDE-MODULE javaw
      
    2. Load Balancer 的管理控制台界面(命令行、 图形用户界面和向导)使用远程方法调用(RMI)与 dsserver 通信。 缺省通信使用三个端口;每个端口都设置在 dsserver 启动脚本中:

      当其中一个管理控制台运行在与防火墙相同的机器上或在通过防火墙的机器上,那么这会导致问题。例如,当 Load Balancer 在与防火墙所在的同一台机器上运行并且您发出 dscontrol 命令时,您可能会看到一些错误,如错误:服务器未响应

      要避免此问题,编辑 dsserver 脚本文件以设置防火墙(或其它应用程序)的 RMI 使用的端口。将行 LB_RMISERVERPORT=10199 更改为 LB_RMISERVERPORT= yourPort。其中 yourPort 是另一个端口。

      一旦完成,重新启动 dsserver,并打开端口 10099、10004、10199 和 10100 或将要运行管理控制台的主机地址中所选端口的流量。

    3. 如果您尚未启动 dsserver,也会发生这些错误。

    问题:当尝试查看联机帮助(Windows 平台)时出现“无法找到文件...”错误消息

    对于 Windows,当使用 Netscape 作为您的缺省浏览器时,以下错误消息可能导致:“无法找到文件‘<filename>.html’(或它的一个组件)。请确保路径和文件名正确并且所有必需的库可用。”

    发生此问题的原因是 HTML 文件关联设置错误。 解决方案如下:

    1. 单击我的电脑,单击工具,然后选择文件夹选项并单击文件类型选项卡
    2. 选择“Netscape 超文本文档”
    3. 单击高级按钮,选择打开并单击编辑按钮
    4. 应用程序:字段(不是“用于执行操作的应用程序:”字段)中输入 NSShell,然后单击确定

    问题:在 Solaris 2.7 上启动 dsserver 时出现虚假的错误消息

    在 Solaris 2.7 平台上启动 dsserver 时,出现以下虚假的错误消息:“stty::无这种设备或地址。”请忽略此错误消息。dsserver 将正确运行。

    问题:图形用户界面(GUI)未正确地启动

    图形用户界面(GUI)lbadmin 需要足够的调页空间量才能正确运行。如果可用的调页空间不足,GUI 可能无法完全启动。如果发生此问题,请检查您的调页空间,如有必要,增大调页空间。

    问题:运行安装了高速缓存代理的分派器时出错

    当您尝试启动分派器组件时,如果您卸载 Load Balancer 以重新安装另一个版本并获得一个错误,则检查是否安装了高速缓存代理。高速缓存代理与分派器的一个文件有相关性;仅当卸载高速缓存代理时才会卸载此文件。

    要避免此问题:

    1. 卸载高速缓存代理。
    2. 卸载 Load Balancer。
    3. 重新安装 Load Balancer 和高速缓存代理。

    问题:图形用户界面(GUI)未正确地显示

    如果您遇到 Load Balancer GUI 外观的问题,检查操作系统的桌面分辨率的设置。分辨率为 1024x768 像素时查看 GUI 的效果最佳。

    问题:在 Windows 平台上,帮助窗口有时会消失在其它打开的窗口后面

    当您在 Windows 平台上首次打开帮助窗口时,它们有时消失在现有窗口后面的背景中。如果发生此问题,单击此窗口使它再次回到前面。

    问题:Load Balancer 无法处理和转发帧

    在 Solaris 上,缺省情况下每个网络适配器都具有同一 MAC 地址。当适配器在不同的 IP 子网上时,会正确地工作;然而,在交换式环境中,当具有同一 MAC 和同一 IP 子网地址的多个 NIC 与同一交换机通信时,此交换机将为单个 MAC(以及二个 IP)绑定的所有流量沿着同一传输线发送。 仅最后将帧放在传输线上的适配器能看到为两个适配器绑定的 IP 信息包。Solaris 可能会废弃到达“错误”接口的有效 IP 地址的信息包。

    如果所有网络接口未按 ibmnd.conf 中配置的指定给 Load Balancer,并且如果在 ibmnd.conf 中未定义的 NIC 接收到一个帧,Load Balancer 则不能处理和转发帧。

    要避免此问题,您必须覆盖缺省值并设置每个接口的唯一 MAC 地址。使用此命令:

    ifconfig interface ether macAddr
    

    例如:

    ifconfig hme0 ether 01:02:03:04:05:06
    

    问题:当您启动 Load Balancer 执行程序时显示蓝屏

    在 Windows 平台上,在启动执行程序之前您必须已安装和配置网卡。

    问题:到 Discovery 的路径妨碍了 Load Balancer 返回流量

    AIX 操作系统包含称为路径 MTU 发现的联网参数。处理客户机事务期间,如果操作系统确定它必须将较小的最大传输单元(MTU)用于出网信息包,则路径 MTU 发现使 AIX 创建路由以记住该数据。 新的路由适用于该特定客户机 IP 并且记录到达它的必需 MTU。

    当创建路由时,在回送上建立别名的群集中的服务器可能会发生问题。如果路由的网关地址落在群集/网络掩码的子网中,则 AIX 在回送上创建路由。这会发生是因为这是用该子网建立别名的最后接口。

    例如,如果群集是 9.37.54.69 并且使用 255.255.255.0 网码掩码,而打算使用的网关为 9.37.54.1,则 AIX 为路由使用回送。这将导致服务器响应从不脱离框,以及客户机超时等待。通常,客户机看到一个来自群集的响应,然后创建路由,客户机再也接收不到任何东西。

    对于此问题有两个解决方案。

    1. 禁用路径 MTU 发现,以使 AIX 不会动态地添加路由。 使用下列命令:

      no -a
      列出 AIX 联网设置

      no -o option=value
      在 AIX 上设置 TCP 参数
    2. 用 255.255.255.255 网络掩码在回送上建立群集。这意味着建立别名的子网仅是群集 IP。当 AIX 创建动态路由时,目标网关 IP 不匹配该子网,产生使用正确网络接口的路由。然后删除新的 lo0 路由,其是在建立别名步骤创建的。要这样做,在具有群集 IP 的网络目的地的回送上查找路由,并删除该路由。 每次群集建立别名时,都必须这么做。

    记录:

    1. 在 AIX 4.3.2 以及更低版本的缺省情况下,禁用路径 MTU 发现,然而,在 AIX 4.3.3 以及更高的版本下,缺省情况下它是启用的。

    2. 下列命令关闭路径 MTU 发现并且在每次引导系统时都必须执行。添加这些命令到 /etc/rc.net 文件。

    问题:顾问程序显示所有服务器都当机(Windows 平台)

    Windows 平台具有称为任务卸载的功能,它允许适配卡而不是操作系统计算 TCP 校验和。 这改进系统上的性能。如果启用任务卸载,Load Balancer 顾问程序在服务器未当机时报告其当机。

    问题是未为来自群集地址的信息包正确计算 TCP 校验和,其是顾问程序流量发生的情况。

    要避免此问题,转至适配卡设置并禁用任务卸载。

    此问题是在 Adaptec 的 ANA62044 QuadPort 适配器中首先发现的。此适配卡称此特征为发送校验和卸载。禁用发送校验和卸载以避免该问题。

    问题:Load Balancer 的广域方式中的高可用性不工作

    当您设置广域 Load Balancer 时,您必须定义远程分派器作为您本地分派器上的群集中的服务器。通常,您将远程分派器的非转发地址(NFA)用作远程服务器的目的地地址。如果您这样做,然后在远程分派器上设置高可用性,则它将失败。会发生这种情况是因为当您使用它的 NFA 访问它时,本地分派器总是指向远程端的主机器。

    要避免此问题:

    1. 在远程分派器上定义其它群集。并不一定要为这个群集定义端口或服务器。
    2. 添加这个群集地址到您的 goActive 和 goStandy 脚本。
    3. 在您的本地分派器上,作为服务器定义此群集地址,而不是远程主分派器的 NFA。

    当使用远程主分派器时,它将在其适配器上建立此地址的别名,允许它接受流量。如果发生故障,地址移动到备份机器并且备份机器继续为该地址接受流量。

    问题:尝试装入大型配置文件时 GUI 挂起(或意外行为)

    尝试装入大型配置文件(大致有 200 或更多条 add 命令)时,GUI 可能挂起或显示意外行为,如屏幕更改时响应速率极慢。

    发生此情况是因为 Java 无权访问足够的内存以处理如此大的配置。

    可指定一个运行时环境上的选项,来增加 Java 可用的内存分配池。

    此选项是 -Xmxn,其中 n 是最大大小(以字节为单位)。n 必须是 1024 的倍数且必须大于 2MB。值 n 可能后跟 k 或 K 以表明千字节,或后跟 m 或 M 以表明兆字节。例如,-Xmx128M-Xmx81920k 都有效。缺省值是 64M。Solaris 8 具有最大值 4000M。

    例如,要添加此选项,编辑 lbadmin 脚本文件,按如下所示将“javaw”修改为“javaw -Xmxn”。(对于 AIX,将“java”修改为“java -Xmxn”):

    对于 n 没有建议使用的值,但它应大于缺省选项。最好以该缺省值的两倍开始。

    问题:在 Windows 平台上,出现蓝屏或顾问程序错误地报告“-1”负载

    在 Windows 平台上使用 3Com 985B 吉位以太网适配器时,您可能会遇到以下问题:

    要避免这些问题,使用另一个公司出品的千兆位以太网适配器。

    问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示

    在 Solaris 本地语言版本上,Load Balancer GUI 的“是”和“否”按钮可能显示为英文。这是一个正在由 Sun Microsystems 处理的已知问题。

    问题:lbadmin 在更新配置后从服务器断开连接

    如果 Load Balancer 管理(lbadmin)在您更新配置后从服务器断开连接,检查您正在尝试配置的服务器上的 dsserver 版本,并确保它与您的 lbadmin 或 dscontrol 版本相同。

    问题:在远程连接上未正确解析的 IP 地址

    在安全 socks 实现上使用远程客户机时,全限定域名或主机名可能不解析为以点分十进制记数法的正确 IP 地址。socks 实现可能将与 socks 相关的特定数据添加到 DNS 分辨率。

    如果在远程连接上 IP 地址未正确解析,我们建议您指定点分十进制记数法格式的 IP 地址。

    问题:韩国语 Load Balancer 界面在 AIX 和 Linux 上显示重叠或非期望的字体

    要改正韩国语 Load Balancer 界面中重叠或非期望的字体:

    在 AIX 上

    1. 停止 AIX 系统上所有 Java 进程。
    2. 在编辑器中打开 font.properties.ko 文件。此文件位于 home/jre/lib,其中 home 是 Java 起始对象。
    3. 搜索此字符串:
      -Monotype-TimesNewRomanWT-medium-r-normal
      --*-%d-75-75-*-*-ksc5601.1987-0
      
    4. 将字符串的所有实例替换为:
      -Monotype-SansMonoWT-medium-r-normal
      --*-%d-75-75-*-*-ksc5601.1987-0
      
    5. 保存此文件。

    在 Linux 上

    1. 停止系统上所有 Java 进程。
    2. 在编辑器中打开 font.properties.ko 文件。此文件位于 home/jre/lib,其中 home 是 Java 起始对象。
    3. 搜索此字符串(无空格):
      -monotype-
      timesnewromanwt-medium-r-normal--*-%d-75-75-p-*-microsoft-symbol
      
    4. 将字符串的所有实例替换为:
      -monotype-sansmonowt-medium-r-normal--*-%d-75-75-p-*-microsoft-symbol
      
    5. 保存此文件。

    问题:在 Windows 上,在发出命令(如 hostname)时返回别名地址,而非本地地址

    在 Windows 上,设置 MS 回送适配器的别名后,当发出某些命令(如 hostname)时,操作系统将不正确地以别名地址而非本地地址进行响应。要改正此问题,在网络连接列表中,新添加的别名必须列在本地地址的下面。 这将确保在回送别名之前访问本地地址。

    要检查网络连接列表:

    1. 单击开始 > 设置 > 网络和拨号连接
    2. 高级菜单选项,选择高级设置...
    3. 确保本地区域连接是列在连接框中的第一项
    4. 若有必要,使用右侧的定序按钮,在列表中向上或向下移动条目

    问题:在 Windows 平台上,使用 Matrox AGP 视频卡时发生意外 GUI 行为

    在 Windows 平台上,当使用 Matrox AGP 卡时,在 Load Balancer GUI 中会发生意外行为。当单击鼠标时,比鼠标指针稍大的块会被损坏,从而引起突出显示反向或使图像移出屏幕。较旧的 Matrox 卡未显示此行为。在使用 Matrox AGP 卡时,没有已知修正。

    问题:在执行“rmmod ibmnd”(Linux)时的意外行为

    在 Linux 上,如果 dsserver 在手工除去 Load Balancer 内核模块期间仍在运行,则可能会发生意外行为(如系统挂起或 javacores)。当手工除去 Load Balancer 内核模块时,您必须首先停止 dsserver。如果“dsserver stop”不工作,则使用 SRV_KNDConfigServer 停止 java 进程。例如:

    ps-ef | grep SRV_KNDConfigServer
    

    java 进程完成后,您可以安全地运行“rmmod ibmnd”命令,以从内核中除去 Load Balancer 模块。

    问题:在分派器机器上运行命令时的慢响应时间

    如果您运行分派器组件以用于负载均衡,可能会由于客户机流量而使计算机过载。Load Balancer 内核模块具有最高优先级,如果它经常处理客户机信息包,则系统的其余部分可能会成为无响应。在用户空间中运行命令可能要花很长的时间完成,或者可能从不完成。

    如果发生这种情况,您应开始重新构建设置以避免因流量而使 Load Balancer 机器过载。其他方法有:在多个 Load Balancer 机器上分散负载,或将机器替换为更强、更快的计算机。

    当尝试确定机器上的慢响应时间是否归因于高客户机流量时,请考虑这是否在客户机高峰流量时间发生。引起路由循环的错误配置的系统也会引起同样的症状。但在更改 Load Balancer 设置之前,确定症状是否可能由高客户机负载引起。

    问题:(使用 mac 转发时)SSL 或 HTTPS 顾问程序不注册服务器负载

    当使用基于 mac 的转发方法时,Load Balancer 将使用在回送上建立别名的群集地址,发送信息包至服务器。 某些服务器应用程序(如 SSL)要求配置信息(如证书)基于 IP 地址。IP 地址必须是在回送上配置的群集地址,以便匹配进入信息包的内容。如果在配置服务器应用程序时不使用群集的 IP 地址,则客户机请求将不会正确转发至服务器。

    问题:(使用 lbadmin、Web 管理)装入大配置时的困难

    如果您在装入一个大配置时,使用 lbadmin 或远程 Web 管理遇到了问题,则您可能需要增加最大 Java 堆大小。缺省情况下,Java 将虚拟机堆限制为 64 MB。某些 Load Balancer 配置程序(lbadmin 和 lbwebaccess)在用于管理很大的配置时,可能需要大于此 64 MB 的限制。 为了解决此问题,最大 Java 堆大小可增加至一个大于 64 MB 的值。要增加此最大堆大小,使用“-Xmx”Java 选项。例如,在 lbadmin 脚本中,修改“javaw”为“javaw -Xmx256m”,以便将最大 Java 堆大小更改为 256 MB。如果您在使用 Web 管理时遇到此问题,按描述修改 lbwebaccess 脚本。

    问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接

    如果您在使用远程 Web 管理配置 Load Balancer,则不要调整(最小化、最大化及还原等)Load Balancr GUI 所在的 Netscape 浏览器窗口大小。因为 Netscape 在每次调整浏览器窗口大小时重新装入一个页面,所以这将导致从主机断开连接。在每次调整窗口大小时,需要重新连接至主机。 如果在 Windows 平台上执行远程 Web 管理,请使用 Internet Explorer。

    问题:启用套接字合用,并且 Web 服务器绑定至 0.0.0.0

    在 Windows 后端服务器上运行 Microsoft IIS 服务器 V5.0 时,您必须将 Microsoft IIS 服务器配置为绑定特定的。 否则,作为缺省启用套接字合用,并且 Web 服务器绑定至 0.0.0.0 并侦听所有流量,而不是绑定至配置为站点的多个身份的虚拟 IP 地址。 如果本地主机上的应用程序在启用套接字合用时当机,则 AIX 或 Windows ND 服务器顾问程序检测此故障;但如果虚拟主机上的应用程序在本地主机保持运行时当机,则顾问程序不检测此故障,并且 Microsoft IIS 继续响应所有通信,包括当机的应用程序的通信。

    要确定是否启用套接字合用,以及 Web 服务器是否绑定至 0.0.0.0,请发出以下命令:

     netstat -an
    

    有关如何将 Microsoft IIS 服务器配置为绑定特定(禁用套接字合用)的说明位于 Microsoft 产品支持服务 Web 站点。您还可以转至这些 URL 中的一个来获取此信息:

    IIS5:硬件负载 Balance(R) 不检测停止的 Web 站点(Q300509)
    http://support.microsoft.com/default.aspx?scid=kb;en-us;Q300509

    如何禁用套接字合用(Q238131)
    http://support.microsoft.com/default.aspx?scid=kb;en-us;Q238131
    注意:
    只有 AIX 和 Windows 服务器上的 Load Balancer 顾问程序使用特定于绑定的顾问程序通信。 Linux 和 Solaris 服务器上的 Load Balancer 顾问程序导向本地主机地址;因此,此信息不适用。

    问题:在 Windows 上,在命令提示符窗口中出现乱码的 Latin-1 本地字符

    在 Windows 操作系统上的命令提示符窗口中,某些 Latin-1 系列的本地字符可能显示为乱码。例如,可能将有颚化符号的“a”字母显示为 pi 符号。要修正此问题,您必须更改命令提示符窗口的字体属性。要更改字体,执行下列步骤:

    1. 单击命令提示符窗口左上角中的图标。
    2. 选择“属性”,然后单击“字体”选项卡
    3. 缺省字体为 Raster 字体;将它更改为 Lucida Console 并单击“确定”

    问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本

    在基于 UNIX 平台上使用 Netscape 浏览器,信息中心中的联机帮助文本以小字体显示。通过编辑 Netscape 浏览器的首选项选项可增加字体大小。

    问题:在 On HP-UX 上,发生 Java 内存/线程不够错误

    有些 HP-UX 11i 安装被预配置为仅允许每个进程有 64 个线程。但是,有些 Load Balancer 配置要求多于此数量。我们建议对于 HP-UX 把每个进程的线程数至少设置为 256。要增加此值,使用“sam”实用程序设置 max_thread_proc 内核参数。如果预期有大量使用,可能需要把 max_thread_proc 增加到 256 以上。

    要增加 max_thread_proc,执行以下操作:

    1. 从命令行,输入:sam
    2. 选择内核配置 > 配置参数
    3. 从滚动条,选择 max_thread_proc
    4. 按空格键突出显示 max_thread_proc
    5. 按一次 Tab 键,然后按向右键直至选择到操作
    6. 按 Enter 键显示操作菜单,然后按 M 选择“修改可配置参数”。(如果您没有看见此选项,请突出显示 max_thread_proc
    7. 按 Tab 键直至选择到公式/值字段
    8. 输入 256 或更大的值。
    9. 单击确定
    10. 按一次 Tab 键,然后选择操作
    11. K 处理新内核..
    12. 选择
    13. 重新引导您的系统

    问题:在 Windows 上,顾问程序和到达目标将所有服务器标记为当机

    当在网络分派器机器上配置您的适配器时,为了让顾问程序工作,您必须确保以下两个设置正确:

    问题:在 Windows 上,当配置了多个地址到适配器时将 IP 地址解析为主机名

    在 Windows 平台上,当对一个适配器配置了多个 IP 地址时,请在注册表中配置您希望首先与主机名关联的 IP 地址。

    因为 Load Balancer 在许多实例(例如 lbkeys create)中从属于 InetAddress.getLocalHost(),所以一个适配器对应多个 IP 地址可能导致问题。为避免此问题,请在注册表中列出您希望主机名首先解析为的 IP 地址。例如:

    1. 启动 Regedit
    2. 按如下所示修改以下值:
    3. 重新引导
    4. 检查您的主机名是否解析为正确的 IP 地址。例如,ping yourhostname

    问题:在 Windows 上,在网络中断后,顾问程序在高可用性设置中不工作

    缺省情况下,当 Windows 操作系统检测到网络中断,它会清除其地址解析协议(ARP)高速缓存,包括所有静态条目。在网络可用后,ARP 高速缓存由在网络上发送的 ARP 请求重新填充。

    在高可用性配置下,当网络连接的丢失影响到两个服务器或其中一个时,这两个服务器都会接管主操作。当发送 ARP 请求以重新填充 ARP 高速缓存时,两个服务器都会响应,从而导致 ARP 高速缓存把条目标记为无效。因此,顾问程序无法创建到备份服务器的套接字。

    阻止 Windows 操作系统在连接丢失时清除 ARP 高速缓存可解决此问题。Microsoft 已发布一篇文章来说明如何完成此任务。此文章在 Microsoft Web 站点上,位于 Microsoft 知识库,文章号 239924:http://support.microsoft.com/default.aspx?scid=kb;en-us;239924。

    以下是该 Microsoft 文章中描述的阻止系统清除 ARP 高速缓存的步骤摘要:

    1. 使用注册表编辑器(regedit 或 regedit32)打开注册表。
    2. 在注册表中查看以下键:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Para。
    3. 添加以下注册表值:值名称:DisableDHCPMediaSense 值类型:REG_DWORD。
    4. 在添加该键后,编辑值并把它设置为 1。
    5. 重新引导机器使更改生效。
    注意:
    无论 DHCP 设置为何,这都会影响 ARP 高速缓存。

    问题:在 Linux 上,当在回送设备上别名判别多个群集时不要使用“IP address add”命令

    当使用 Linux kernel 2.4.x 服务器和分派器的 MAC 转发方法时必须考虑某些事项。如果服务器用 ip address add 命令在回送设备上配置了群集地址,则仅可对一个群集地址进行别名判别。

    当对回送设备别名判别多个群集时要使用 ifconfig 命令,例如:

    ifconfig lo:num clusterAddress netmask 255.255.255.255 up 
    

    此外,配置接口的 ifconfig 方法和配置接口的 ip 方法之间存在不兼容性。最佳实践建议站点选择一个方法并且只用该方法。


    解决常见问题 - CBR

    问题:CBR 不运行

    当另一个程序正在使用 CBR 使用的端口时,可发生这种问题。 要获取更多信息,请转至检查 CBR 端口号

    问题:cbrcontrol 或 lbadmin 命令失败

    1. cbrcontrol 命令返回:错误:服务器未响应。或,lbadmin 命令返回:错误:无法访问 RMI 服务器。当您的机器有一个 socksified 堆栈时会导致这些错误。要更正此问题,请编辑 socks.cnf 文件以包含下列行:

      EXCLUDE-MODULE java
      EXCLUDE-MODULE javaw
      
    2. Load Balancer 的管理控制台界面(命令行、 图形用户界面和向导)使用远程方法调用(RMI)与 cbrserver 通信。 缺省通信使用三个端口;每个端口都设置在 cbrserver 启动脚本中:

      当其中一个管理控制台运行在与防火墙相同的机器上或在通过防火墙的机器上,那么这会导致问题。 例如,当 Load Balancer 在与防火墙所在的同一台机器上运行并且您发出 cbrcontrol 命令时,您可能会看到一些错误,如错误:服务器未响应

      要避免此问题,编辑 cbrserver 脚本文件以设置防火墙(或其它应用程序)的 RMI 使用的端口。 将行 LB_RMISERVERPORT=11199 更改为 LB_RMISERVERPORT=yourPort。其中 yourPort 是另一个端口。

      一旦完成,重新启动 cbrserver,并打开端口 11099、10004、11199 和 11100 或将要运行管理控制台的主机地址中所选端口的流量。

    3. 如果您尚未启动 cbrserver,也会发生这些错误。

    问题:未负载均衡请求

    高速缓存代理和 CBR 已启动,但未负载均衡请求。如果您启动执行程序之前启动高速缓存代理,则会发生这个错误。如果它发生了,高速缓存代理的 stderr 日志将包含下列错误消息“ndServerInit:无法连接到执行程序”。 要避免此问题,启动高速缓存代理之前启动执行程序。

    问题:在 Solaris 上,cbrcontrol executor start 命令失败

    在 Solaris 上,cbrcontrol executor start 命令返回:“错误:执行程序未启动”。如果您不配置系统的 IPC(进程间通信),以使共享内存段和信号量标识的最大大小大于操作系统的缺省值,则会发生此错误。为了增加共享内存段和信号量标识的大小,您必须编辑 /etc/system 文件。要获取有关如何配置此文件的更多信息,请参阅第 *** 页。

    问题:语法或配置错误

    如果 URL 规则不工作,则这可能是语法或配置错误所导致的。要解决此问题,需进行以下检查:

    问题:在 Windows 平台上,出现蓝屏或顾问程序错误地报告“-1”负载

    在 Windows 平台上使用 3Com 985B 吉位以太网适配器时,您可能会遇到以下问题:

    要避免这些问题,使用另一个公司出品的千兆位以太网适配器。

    问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示

    在 Solaris 本地语言版本上,Load Balancer GUI 的“是”和“否”按钮可能显示为英文。这是一个正在由 Sun Microsystems 处理的已知问题。

    问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为

    在 Windows 平台上,当使用 Matrox AGP 卡时,在 Load Balancer GUI 中会发生意外行为。当单击鼠标时,比鼠标指针稍大的块会被损坏,从而引起突出显示反向或使图像移出屏幕。较旧的 Matrox 卡未显示此行为。在使用 Matrox AGP 卡时,没有已知修正。

    问题:(使用 lbadmin、Web 管理)装入大配置时的困难

    如果您在装入一个大配置时,使用 lbadmin 或远程 Web 管理遇到了问题,则您可能需要增加最大 Java 堆大小。缺省情况下,Java 将虚拟机堆限制为 64 MB。某些 Load Balancer 配置程序(lbadmin 和 lbwebaccess)在用于管理很大的配置时,可能需要大于此 64 MB 的限制。 为了解决此问题,最大 Java 堆大小可增加至一个大于 64 MB 的值。要增加此最大堆大小,使用“-Xmx”Java 选项。例如,在 lbadmin 脚本中,修改“javaw”为“javaw -Xmx256m”,以便将最大 Java 堆大小更改为 256 MB。如果您在使用 Web 管理时遇到此问题,按描述修改 lbwebaccess 脚本。

    问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接

    如果您在使用远程 Web 管理配置 Load Balancer,则不要调整(最小化、最大化及还原等)Load Balancr GUI 所在的 Netscape 浏览器窗口大小。因为 Netscape 在每次调整浏览器窗口大小时重新装入一个页面,所以这将导致从主机断开连接。在每次调整窗口大小时,需要重新连接至主机。 如果在 Windows 平台上执行远程 Web 管理,请使用 Internet Explorer。

    问题:在 Windows 平台上,在命令提示符窗口中出现乱码的 Latin-1 本地字符

    在 Windows 操作系统上的命令提示符窗口中,某些 Latin-1 系列的本地字符可能显示为乱码。例如,可能将有颚化符号的“a”字母显示为 pi 符号。要修正此问题,您必须更改命令提示符窗口的字体属性。要更改字体,执行下列步骤:

    1. 单击命令提示符窗口左上角中的图标。
    2. 选择“属性”,然后单击“字体”选项卡
    3. 缺省字体为 Raster 字体;将它更改为 Lucida Console 并单击“确定”

    问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本

    在基于 UNIX 平台上使用 Netscape 浏览器,信息中心中的联机帮助文本以小字体显示。通过编辑 Netscape 浏览器的首选项选项可增加字体大小。

    问题:在 On HP-UX 上,发生 Java 内存/线程不够错误

    有些 HP-UX 11i 安装预配置为仅允许每个进程有 64 个线程。但是,有些 Load Balancer 配置的要求多于此数量。我们建议对于 HP-UX 把每个进程的线程数至少设置为 256。要增加此值,使用“sam”实用程序设置 max_thread_proc 内核参数。如果预期有大量使用,可能需要把 max_thread_proc 增加到 256 以上。

    要增加 max_thread_proc,请参阅第 *** 页上的步骤。

    问题:在 Windows 上,顾问程序和到达目标将所有服务器标记为当机

    当在网络分派器机器上配置您的适配器时,为了让顾问程序工作,您必须确保以下两个设置正确:

    请参阅第 *** 页获取有关配置这些设置的说明。

    问题:在 Windows 上,当配置了多个地址到适配器时将 IP 地址解析为主机名

    在 Windows 平台上,当对一个适配器配置了多个 IP 地址时,请在注册表中配置您希望首先与主机名关联的 IP 地址。

    因为 Load Balancer 在许多实例(例如 lbkeys create)中从属于 InetAddress.getLocalHost(),所以一个适配器对应多个 IP 地址可能导致问题。为避免此问题,请在注册表中列出您希望主机名首先解析为的 IP 地址。

    请参阅第 *** 页获取在注册表中配置首选主机名的步骤。


    解决常见问题 - 站点选择器

    问题:站点选择器不运行

    当另一个应用程序使用站点选择器使用的一个端口时,会发生此问题。 要获取更多信息,请转至检查站点选择器端口号

    问题:站点选择器不循环来自 Solaris 客户机的流量

    症状:站点选择器组件不循环来自 Solaris 客户机的进入请求。

    可能的原因:Solaris 系统运行名称服务高速缓存守护程序。如果此守护程序正在运行,则将从此高速缓存回答后继解析器请求,而不是查询站点选择器。

    解决方案:关闭 Solaris 机器上的名称服务高速缓存守护程序。

    问题:sscontrol 或 lbadmin 命令失败

    1. sscontrol 命令返回:错误:服务器未响应。或,lbadmin 命令返回:错误:无法访问 RMI 服务器。当您的机器有一个 socksified 堆栈时会导致这些错误。要更正此问题,请编辑 socks.cnf 文件以包含下列行:

      EXCLUDE-MODULE java
      EXCLUDE-MODULE javaw
      
    2. Load Balancer 的管理控制台界面(命令行、 图形用户界面和向导)使用远程方法调用(RMI)与 ssserver 通信。 缺省通信使用三个端口;每个端口都设置在 ssserver 启动脚本中:

      当其中一个管理控制台运行在与防火墙相同的机器上或在通过防火墙的机器上,那么这会导致问题。 例如,当 Load Balancer 在与防火墙所在的同一台机器上运行并且您发出 sscontrol 命令时,您可能会看到一些错误,如错误:服务器未响应

      要避免此问题,编辑 ssserver 脚本文件以设置防火墙(或其它应用程序)的 RMI 使用的端口。将行 LB_RMISERVERPORT=10199 更改为 LB_RMISERVERPORT= yourPort。其中 yourPort 是另一个端口。

      一旦完成,重新启动 ssserver,并打开端口 12099、10004、12199 和 12100 或将要运行管理控制台的主机地址中所选端口的流量。

    3. 如果您尚未启动 ssserver,也会发生这些错误。

    问题:ssserver 在 Windows 平台上启动失败

    站点选择器必须可以参与在 DNS 中。配置中涉及的所有机器也应当参与在此系统中。 Windows 并不总要求配置的主机名在 DNS 中。站点选择器要求它的主机名定义在 DNS 中以能正确启动。

    验证此主机已定义在 DNS 中。编辑 ssserver.cmd 文件并从“javaw”中除去“w”。这将提供有关错误的更多信息。

    问题:具有重复路由的站点选择器未正确地进行负载均衡

    站点选择器的名称服务器未绑定到机器上的任何一个地址。 它将对发往机器上任何有效 IP 的请求做出响应。站点选择器依赖操作系统路由返回到客户机的响应。如果站点选择器机器具有多个适配器,并且许多适配器连接到同一子网,则 O/S 可能将从不同于接收地址的地址将响应发送到客户机。 一些客户机应用程序不接受从不是发送地址发送的接收响应。因此,名称解析失败。

    问题:在 Windows 上,出现蓝屏或顾问程序错误地报告“-1”负载

    在 Windows 平台上使用 3Com 985B 吉位以太网适配器时,您可能会遇到以下问题:

    要避免这些问题,使用另一个公司出品的千兆位以太网适配器。

    问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示

    在 Solaris 本地语言版本上,Load Balancer GUI 的“是”和“否”按钮可能显示为英文。这是一个正在由 Sun Microsystems 处理的已知问题。

    问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为

    在 Windows 平台上,当使用 Matrox AGP 卡时,在 Load Balancer GUI 中会发生意外行为。当单击鼠标时,比鼠标指针稍大的块会被损坏,从而引起突出显示反向或使图像移出屏幕。较旧的 Matrox 卡未显示此行为。在使用 Matrox AGP 卡时,没有已知修正。

    问题:(使用 lbadmin、Web 管理)装入大配置时的困难

    如果您在装入一个大配置时,使用 lbadmin 或远程 Web 管理遇到了问题,则您可能需要增加最大 Java 堆大小。缺省情况下,Java 将虚拟机堆限制为 64 MB。某些 Load Balancer 配置程序(lbadmin 和 lbwebaccess)在用于管理很大的配置时,可能需要大于此 64 MB 的限制。 为了解决此问题,最大 Java 堆大小可增加至一个大于 64 MB 的值。要增加此最大堆大小,使用“-Xmx”Java 选项。例如,在 lbadmin 脚本中,修改“javaw”为“javaw -Xmx256m”,以便将最大 Java 堆大小更改为 256 MB。如果您在使用 Web 管理时遇到此问题,按描述修改 lbwebaccess 脚本。

    问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接

    如果您在使用远程 Web 管理配置 Load Balancer,则不要调整(最小化、最大化及还原等)Load Balancr GUI 所在的 Netscape 浏览器窗口大小。因为 Netscape 在每次调整浏览器窗口大小时重新装入一个页面,所以这将导致从主机断开连接。在每次调整窗口大小时,需要重新连接至主机。 如果在 Windows 平台上执行远程 Web 管理,请使用 Internet Explorer。

    问题:在 Windows 平台上,在命令提示符窗口中出现乱码的 Latin-1 本地字符

    在 Windows 操作系统上的命令提示符窗口中,某些 Latin-1 系列的本地字符可能显示为乱码。例如,可能将有颚化符号的“a”字母显示为 pi 符号。要修正此问题,您必须更改命令提示符窗口的字体属性。要更改字体,执行下列步骤:

    1. 单击命令提示符窗口左上角中的图标。
    2. 选择“属性”,然后单击“字体”选项卡
    3. 缺省字体为 Raster 字体;将它更改为 Lucida Console 并单击“确定”

    问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本

    在基于 UNIX 平台上使用 Netscape 浏览器,信息中心中的联机帮助文本以小字体显示。通过编辑 Netscape 浏览器的首选项选项可增加字体大小。

    问题:在 On HP-UX 上,发生 Java 内存/线程不够错误

    有些 HP-UX 11i 安装预配置为仅允许每个进程有 64 个线程。但是,有些 Load Balancer 配置的要求多于此数量。我们建议对于 HP-UX 把每个进程的线程数至少设置为 256。要增加此值,使用“sam”实用程序设置 max_thread_proc 内核参数。如果预期有大量使用,可能需要把 max_thread_proc 增加到 256 以上。

    要增加 max_thread_proc,请参阅第 *** 页上的步骤。

    问题:在 Windows 上,顾问程序和到达目标将所有服务器标记为当机

    当在网络分派器机器上配置您的适配器时,为了让顾问程序工作,您必须确保以下两个设置正确:

    请参阅第 *** 页获取有关配置这些设置的说明。


    解决常见问题 - Cisco CSS 控制器

    问题:ccoserver 将不启动

    当另一个应用程序正在使用由Cisco CSS 控制器的 ccoserver 使用的一个端口时,会发生此问题。要获取更多的信息,请参阅检查 Cisco CSS 控制器端口号

    问题:ccocontrol 或 lbadmin 命令失败

    1. ccocontrol 命令返回:错误:服务器未响应。或,lbadmin 命令返回:错误:无法访问 RMI 服务器。当您的机器有一个 socksified 堆栈时会导致这些错误。要更正此问题,请编辑 socks.cnf 文件以包含下列行:

      EXCLUDE-MODULE java
      EXCLUDE-MODULE javaw
      
    2. Load Balancer 的管理控制台界面(命令行和图形用户界面)使用远程方法调用(RMI)与 ccoserver 通信。 缺省通信使用三个端口;每个端口都设置在 ccoserver 启动脚本中:

      当其中一个管理控制台运行在与防火墙相同的机器上或在通过防火墙的机器上,那么这会导致问题。 例如,当 Load Balancer 在与防火墙所在的同一台机器上运行并且您发出 ccocontrol 命令时,您可能会看到一些错误,如错误:服务器未响应

      要避免此问题,编辑 ccoserver 脚本文件以设置防火墙(或其它应用程序)的 RMI 使用的端口。 将行 CCO_RMISERVERPORT=14199 更改为 CCO_RMISERVERPORT=yourPort。其中 yourPort 是另一个端口。

      一旦完成,重新启动 ccoserver,并打开端口 13099、10004、13199 和 13100 或将要运行管理控制台的主机地址中所选端口的流量。

    3. 如果您尚未启动 ccoserver,也会发生这些错误。

    问题:无法在端口 13099 上创建注册表

    当缺少有效产品许可证时,会发生此问题。当您尝试启动 ccoserver 时,您会接收到以下消息:

    您的许可证已到期,请联系您本地 IBM
    代表或授权的 IBM 分销商。
    

    要改正此问题:

    1. 如果您已尝试启动 ccoserver,输入 ccoserver stop
    2. 将您的有效许可证复制到 ...ibm/edge/lb/servers/conf 目录。
    3. 输入 ccoserver 以启动服务器。

    问题:在 Solaris NLV 上,“是”和“否”按钮以英文显示

    在 Solaris 本地语言版本上,Load Balancer GUI 的“是”和“否”按钮可能显示为英文。这是一个正在由 Sun Microsystems 处理的已知问题。

    问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为

    在 Windows 平台上,当使用 Matrox AGP 卡时,在 Load Balancer GUI 中会发生意外行为。当单击鼠标时,比鼠标指针稍大的块会被损坏,从而引起突出显示反向或使图像移出屏幕。较旧的 Matrox 卡未显示此行为。在使用 Matrox AGP 卡时,没有已知修正。

    问题:在添加咨询器时接收到一个连接错误

    在添加咨询器时,您可能会由于不正确的配置设置而遇到连接错误。要修正此问题:

    问题:交换机上权值不更新

    要修正此问题

    问题:刷新命令不更新咨询器配置

    增加咨询器 loglevel 并重试此命令。如果它再次失败,则搜索 SNMP 超时的日志或其它 SNMP 通信错误。

    问题:(使用 lbadmin、Web 管理)装入大配置时的困难

    如果您在装入一个大配置时,使用 lbadmin 或远程 Web 管理遇到了问题,则您可能需要增加最大 Java 堆大小。缺省情况下,Java 将虚拟机堆限制为 64 MB。某些 Load Balancer 配置程序(lbadmin 和 lbwebaccess)在用于管理很大的配置时,可能需要大于此 64 MB 的限制。 为了解决此问题,最大 Java 堆大小可增加至一个大于 64 MB 的值。要增加此最大堆大小,使用“-Xmx”Java 选项。例如,在 lbadmin 脚本中,修改“javaw”为“javaw -Xmx256m”,以便将最大 Java 堆大小更改为 256 MB。如果您在使用 Web 管理时遇到此问题,按描述修改 lbwebaccess 脚本。

    问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接

    如果您在使用远程 Web 管理配置 Load Balancer,则不要调整(最小化、最大化及还原等)Load Balancr GUI 所在的 Netscape 浏览器窗口大小。因为 Netscape 在每次调整浏览器窗口大小时重新装入一个页面,所以这将导致从主机断开连接。在每次调整窗口大小时,需要重新连接至主机。 如果在 Windows 平台上执行远程 Web 管理,请使用 Internet Explorer。

    问题:在 Windows 平台上,在命令提示符窗口中出现乱码的 Latin-1 本地字符

    在 Windows 操作系统上的命令提示符窗口中,某些 Latin-1 系列的本地字符可能显示为乱码。例如,可能将有颚化符号的“a”字母显示为 pi 符号。要修正此问题,您必须更改命令提示符窗口的字体属性。要更改字体,执行下列步骤:

    1. 单击命令提示符窗口左上角中的图标。
    2. 选择“属性”,然后单击“字体”选项卡
    3. 缺省字体为 Raster 字体;将它更改为 Lucida Console 并单击“确定”

    问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本

    在基于 UNIX 平台上使用 Netscape 浏览器,信息中心中的联机帮助文本以小字体显示。通过编辑 Netscape 浏览器的首选项选项可增加字体大小。

    问题:在 On HP-UX 上,发生 Java 内存/线程不够错误

    有些 HP-UX 11i 安装预配置为仅允许每个进程有 64 个线程。但是,有些 Load Balancer 配置的要求多于此数量。我们建议对于 HP-UX 把每个进程的线程数至少设置为 256。要增加此值,使用“sam”实用程序设置 max_thread_proc 内核参数。如果预期有大量使用,可能需要把 max_thread_proc 增加到 256 以上。

    要增加 max_thread_proc,请参阅第 *** 页上的步骤。


    解决常见问题 - Nortel Alteon 控制器

    问题:nalserver 将不启动

    当另一个应用程序正在使用由Nortel Alteon 控制器的 nalserver 使用的一个端口时,会发生此问题。要获取更多的信息,请参阅检查 Nortel Alteon 控制器端口号

    问题:nalcontrol 或 lbadmin 命令失败

    1. nalcontrol 命令返回:错误:服务器未响应。或,lbadmin 命令返回:错误:无法访问 RMI 服务器。当您的机器有一个 socksified 堆栈时会导致这些错误。要更正此问题,请编辑 socks.cnf 文件以包含下列行:

      EXCLUDE-MODULE java
      EXCLUDE-MODULE javaw
      
    2. Load Balancer 的管理控制台界面(命令行和图形用户界面)使用远程方法调用(RMI)与 nalserver 通信。 缺省通信使用三个端口;每个端口都设置在 nalserver 启动脚本中:

      当其中一个管理控制台运行在与防火墙相同的机器上或在通过防火墙的机器上,那么这会导致问题。 例如,当 Load Balancer 在与防火墙所在的同一台机器上运行并且您发出 nalcontrol 命令时,您可能会看到一些错误,如错误:服务器未响应

      要避免此问题,编辑 nalserver 脚本文件以设置防火墙(或其它应用程序)的 RMI 使用的端口。 将行 NAL_RMISERVERPORT=14199 更改为 NAL_RMISERVERPORT=yourPort。其中 yourPort 是另一个端口。

      一旦完成,重新启动 nalserver,并打开端口 14099、10004、14199 和 14100 或将要运行管理控制台的主机地址中所选端口的流量。

    3. 如果您尚未启动 nalserver,也会发生这些错误。

    问题:无法在端口 14099 上创建注册表

    当缺少有效产品许可证时,会发生此问题。当您尝试启动 nalserver 时,您会接收到以下消息:

    您的许可证已到期,请联系您本地 IBM
    代表或授权的 IBM 分销商。
    

    要改正此问题:

    1. 如果您已尝试启动 nalserver,输入 nalserver stop
    2. 将您的有效许可证复制到 ...ibm/edge/lb/servers/conf 目录。
    3. 输入 nalserver 以启动服务器。

    问题:在 Windows 平台上,使用 Matrox AGP 视频卡时有意外 GUI 行为

    在 Windows 平台上,当使用 Matrox AGP 卡时,在 Load Balancer GUI 中会发生意外行为。当单击鼠标时,比鼠标指针稍大的块会被损坏,从而引起突出显示反向或使图像移出屏幕。较旧的 Matrox 卡未显示此行为。在使用 Matrox AGP 卡时,没有已知修正。

    问题:(使用 lbadmin、Web 管理)装入大配置时的困难

    如果您在装入一个大配置时,使用 lbadmin 或远程 Web 管理遇到了问题,则您可能需要增加最大 Java 堆大小。缺省情况下,Java 将虚拟机堆限制为 64 MB。某些 Load Balancer 配置程序(lbadmin 和 lbwebaccess)在用于管理很大的配置时,可能需要大于此 64 MB 的限制。 为了解决此问题,最大 Java 堆大小可增加至一个大于 64 MB 的值。要增加此最大堆大小,使用“-Xmx”Java 选项。例如,在 lbadmin 脚本中,修改“javaw”为“javaw -Xmx256m”,以便将最大 Java 堆大小更改为 256 MB。如果您在使用 Web 管理时遇到此问题,按描述修改 lbwebaccess 脚本。

    问题:在使用 Web 管理时,调整 Netscape 浏览器窗口的大小,会从主机断开连接

    如果您在使用远程 Web 管理配置 Load Balancer,则不要调整(最小化、最大化及还原等)Load Balancr GUI 所在的 Netscape 浏览器窗口大小。因为 Netscape 在每次调整浏览器窗口大小时重新装入一个页面,所以这将导致从主机断开连接。在每次调整窗口大小时,需要重新连接至主机。 如果在 Windows 平台上执行远程 Web 管理,请使用 Internet Explorer。

    问题:在添加咨询器时接收到一个连接错误

    在添加咨询器时,您可能会由于不正确的配置设置而遇到连接错误。要修正此问题:

    问题:交换机上权值不更新

    要修正此问题

    问题:刷新命令不更新咨询器配置

    增加咨询器 loglevel 并重试此命令。如果它再次失败,则搜索 SNMP 超时的日志或其它 SNMP 通信错误。

    问题:在 Windows 上,在命令提示符窗口中出现乱码的 Latin-1 本地字符

    在 Windows 平台操作系统上的命令提示符窗口中,某些 Latin-1 系列的本地字符可能显示为乱码。例如,可能将有颚化符号的“a”字母显示为 pi 符号。要修正此问题,您必须更改命令提示符窗口的字体属性。要更改字体,执行下列步骤:

    1. 单击命令提示符窗口左上角中的图标。
    2. 选择“属性”,然后单击“字体”选项卡
    3. 缺省字体为 Raster 字体;将它更改为 Lucida Console 并单击“确定”

    问题:在基于 UNIX 的平台上使用信息中心时,Netscape 浏览器会以小字体显示联机帮助文本

    在基于 UNIX 平台上使用 Netscape 浏览器,信息中心中的联机帮助文本以小字体显示。通过编辑 Netscape 浏览器的首选项选项可增加字体大小。

    问题:在 On HP-UX 上,发生 Java 内存/线程不够错误

    有些 HP-UX 11i 安装预配置为仅允许每个进程有 64 个线程。但是,有些 Load Balancer 配置的要求多于此数量。我们建议对于 HP-UX 把每个进程的线程数至少设置为 256。要增加此值,使用“sam”实用程序设置 max_thread_proc 内核参数。如果预期有大量使用,可能需要把 max_thread_proc 增加到 256 以上。

    要增加 max_thread_proc,请参阅第 *** 页上的步骤。


    解决常见问题 - 度量服务器

    问题:在 Windows 平台上运行 .bat 或 .cmd 用户度量文件时发生度量服务器 IOException

    要在 Windows 平台上运行度量服务器,您必须对用户所写的度量使用完整的度量名。例如,您必须指定 usermetric.bat 而不是 usermetric。名称 usermetric 在命令行上有效,但从运行时环境内执行时它不工作。如果您不使用完整的度量名,您将接收度量服务器 IOException。在 metricserver 命令文件中将 LOG_LEVEL 变量设置一个为 3 的值,然后检查日志输出。 在此示例中,异常表现为:

     ... java.io.IOException: CreateProcess: usermetric error=2
    

    问题:度量服务器未向 Load Balancer 机器报告负载

    度量服务器未将负载信息报告给 Load Balancer 的原因可能有几种。要确定原因,执行下列检查:

    问题:度量服务器日志报告“签名是访问代理程序所必需的”

    在密钥文件已传送到服务器上后,度量服务器日志会报告此错误消息。

    由于密钥对损坏引起未能用成对密钥授权时,将记录此错误。要改正此错误,尝试下列操作:

    问题:在 AIX 上,当在重负载情况下运行度量服务器时,ps -vg 命令输出可能会损坏

    当在多处理器 AIX 平台(4.3.3、32-bit 5.1 或 64-bit 5.1)重负载情况下运行度量服务器时,ps -vg 命令的输出可能会损坏。例如:

     55742 - A 88:19 42 18014398509449680  6396 32768 22 36 2.8 1.0 java -Xms
     
    

    ps 命令的 SIZE 和/或 RSS 字段可能显示将使用过多的内存量。

    这是一个已知的 AIX 内核问题。Apar IY33804 将改正此问题。请从位于 http://techsupport.services.ibm.com/server/fixes 的 AIX 支持获取修订,或联系您的本地 AIX 支持代表。

    问题:在使用站点选择器跨高可用性分派器负载均衡的两层配置中配置度量服务器

    在两层 Load Balancer 配置中,如果站点选择器(第一层)跨越一对分派器高可用性伙伴(第二层)进行负载均衡,则您必须完成一些步骤以配置度量服务器组件。您必须配置度量服务器在专供度量服务器使用的新 IP 地址上侦听。在两个高可用性分派器机器上,度量服务器仅在活动的分派器上活动。

    要正确配置此设置,完成以下步骤:


    命令参考

    此部分提供所有 Load Balancer 组件的命令参考信息。 它包含以下几章:


    如何阅读语法图

    语法图向您显示了如何指定一个命令,以便使操作系统 能够正确地解释您所输入的内容。应按照水平线(主路径)从左到右,从上到下读语法图。


    符号和标点符号

    语法图中使用下列符号:

    符号
    描述

    >>
    标记命令语法的开始。

    ><
    标记命令语法的结尾。

    您必须包含显示在语法图中所有标点符号,如冒号、引号和减号等。


    参数

    在语法图中使用下列参数类型。

    参数
    描述
    必需
    必需的参数在主路径上显示。
    可选
    可选的参数显示在主路径的下面。

    参数分类为关键字或变量。关键字按小写字母显示,并且可以小写输入。例如,命令名是关键字。变量是斜体,并表示您提供的名称或值。


    语法示例

    在以下示例中,用户命令是一个关键字。必需变量 是 user_id,可选变量是 password。用您自己的值替换变量。

    >>-user--user_id--+----------+---------------------------------><
                      '-password-'
     
     
    

    必需关键字:必需关键字和变量显示在主路径线上。

    >>-required_keyword--------------------------------------------><
     
     
    

    您必须对必需的关键字和值编码。

    从堆栈选择一个必需的项:如果有 多个互斥的必需关键字或变量可以选择,则它们按照字母 顺序垂直堆叠排列。

    >>-+-required_parameter_1-+------------------------------------><
       '-required_parameter_2-'
     
     
    

    可选值:可选关键字和变量显示在主路径线的下面。

    >>-+---------+-------------------------------------------------><
       '-keyword-'
     
     
    

    您可以选择不对可选关键字和变量进行编码。

    从堆栈中选择一个可选关键字:如果有 多个互斥的可选关键字或变量可以选择,则它们按照字母 顺序在主路径线下垂直堆叠排列。

    >>-+-------------+---------------------------------------------><
       +-parameter_1-+
       '-parameter_2-'
     
     
    

    变量:整个为斜体的字为变量。在语法中看到变量,您必须 按照文本中的定义,用它的一个允许名称或值来替换它。

    >>-variable----------------------------------------------------><
     
     
    

    非字母字符:如果图中显示一个不是字母(如冒号、引号或减号)的字符,您必须将此字符编码为语法的一部分。在此示例中,您必须对 cluster:port 进行编码。

    >>-cluster:port------------------------------------------------><
     
     
    

    分派器 和 CBR 的命令参考

    本附录描述如何使用分派器dscontrol 命令。它也是 CBR 的命令参考。CBR 使用分派器命令的子集。请参阅CBR 和分派器之间的配置差异以获取更多信息。

    记录:

    1. 在使用 CBR 的这些语法图解时,用 cbrcontrol 替换 dscontrol

    2. 对于先前的版本,当产品称为网络分派器时,分派器控制命令名称是 ndcontrol。现在,分派器控制命令名称称为 dscontrol

    下面是此附录中的命令列表:

    您可以输入 dscontrol 命令参数的最小化版本。仅需输入参数特有的字母。例如,要获取有关文件保存命令的帮助,您可以输入 dscontrol he f 来替代 dscontrol help file

    要启动命令行界面:发出 dscontrol 以接收 dscontrol 命令提示符。

    要结束命令行界面:发出 exitquit

    注意:
    命令参数值必须以英文字符输入。唯一的例外是主机名(用于群集、服务器和高可用性命令)和文件名(用于文件命令)。

    CBR 和分派器之间的配置差异

    CBR 命令行界面适用于大部分分派器命令行界面的子集。对于 CBR,用 cbrcontrol 命令替换 dscontrol,以配置组件。

    下面列出了 CBR 中省略的一些命令。

    1. highavailability
    2. subagent
    3. executor
    4. cluster
    5. port
    6. rule add {c:p:r} type port
    7. server

    dscontrol advisor - 控制顾问程序

    >>-dscontrol--advisor--+-connecttimeout--name--+-port---------+--timeoutseconds-+-><
                           |                       '-cluster:port-'                 |
                           +-interval--name--+-port---------+--seconds--------------+
                           |                 '-cluster:port-'                       |
                           +-list---------------------------------------------------+
                           +-loglevel--name--+-port---------+--level----------------+
                           |                 '-cluster:port-'                       |
                           +-logsize--name--+-port---------+--+-unlimited---------+-+
                           |                '-cluster:port-'  '-number of records-' |
                           +-receivetimeout--name--+-port---------+--timeoutseconds-+
                           |                       '-cluster:port-'                 |
                           +-report--name--+-port---------+-------------------------+
                           |               '-cluster:port-'                         |
                           +-retries--name--+-port---------+--numretries------------+
                           |                '-cluster:port-'                        |
                           +-start--name--+-port---------+--+----------+------------+
                           |              '-cluster:port-'  '-log file-'            |
                           +-status--name--+-port---------+-------------------------+
                           |               '-cluster:port-'                         |
                           +-stop--name--+-port---------+---------------------------+
                           |             '-cluster:port-'                           |
                           +-timeout--name--+-port---------+--+-unlimited-+---------+
                           |                '-cluster:port-'  '-seconds---'         |
                           '-version--name--+-port---------+------------------------'
                                            '-cluster:port-'
     
     
    

    connecttimeout
    设置报告连接某台服务器(某个服务)上的特定端口的服务器失败之前,顾问程序等待的时间。 要获取更多的信息,请参阅服务器的顾问程序连接超时和接收超时
    name
    顾问程序的名称。可能的值包括 connectdb2dnsftphttphttpscachingproxyimapldapnntppingpop3selfsmtpsslssl2httptelnetwlm

    请参阅顾问程序列表,以获取有关 Load Balancer 提供的顾问程序的更多信息。

    定制顾问程序名称的格式为 xxxx,其中 ADV_xxxx 是实现定制顾问程序的类名。请参阅创建定制(可定制的)顾问程序以获取更多信息。

    port
    顾问程序正在监视的端口号。
    cluster:port
    在顾问程序命令上群集值是可选的,但是端口值是必需的。如果未指定群集值,那么顾问程序将开始在所有群集的端口上运行。如果您指定群集,则顾问程序将开始在端口上运行,但仅限于您指定的群集。请参阅启动和停止顾问程序以获取更多信息。

    群集是点分十进制格式或符号名的地址。端口是顾问程序监视的端口号。

    timeoutseconds
    表示报告连接到服务器失败之前顾问程序等待的超时(以秒为单位)的正整数。缺省值是为顾问程序间隔指定的值的 3 倍。
    interval
    设置顾问程序向服务器查询信息的频率。
    seconds
    表示向服务器询问其当前状态的请求间隔秒数的正整数。缺省值是 7 秒。
    list
    显示当前向管理器提供信息的顾问程序列表。
    loglevel
    设置顾问程序日志的记录级别。
    level
    级别数(0-5)。缺省值是 1。数字越大,写到顾问程序日志的信息越多。下列是可能的值:0 是无,1 是最小,2 是基本,3 是中等,4 是高级,5 是详细。
    logsize
    设置顾问程序日志的最大大小。当设置日志文件的最大大小时,文件将会回绕;当文件达到指定的大小时,后继条目将从文件顶部开始写入,覆盖以前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便识别用户写入的顺序。设置的日志级别越高,则选择日志大小时应越仔细,因为当在较高级别日志记录时可能会很快地溢出空间。
    number of records
    顾问程序日志文件的最大大小(以字节为单位)。可以指定大于零的正数,或字 unlimited。在覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。缺省值是 1 MB。
    receivetimeout
    设置报告从某台服务器(某个服务)上的特定端口接收失败之前,顾问程序等待的时间。要获取更多的信息,请参阅服务器的顾问程序连接超时和接收超时
    timeoutseconds
    表示报告从服务器接收失败之前顾问程序等待的超时(以秒为单位)的正整数。缺省值是为顾问程序间隔指定的值的 3 倍。
    report
    显示顾问程序的状态报告。
    retry
    重试设置在标记服务器当机之前顾问程序可进行的重试数。
    numretries
    大于或等于 0 的整数。建议该值不要大于 3。如果未配置重试关键字,则重试数将缺省为 0。
    start
    启动顾问程序。每个协议都有对应的顾问程序。缺省端口如下:


    顾问程序名称 协议 端口
    cachingproxy HTTP(通过高速缓存代理) 80
    connect ICMP 12345
    db2 private 50000
    dns DNS 53
    ftp FTP 21
    http HTTP 80
    https SSL 443
    imap IMAP 143
    ldap LDAP 389
    nntp NNTP 119
    ping PING 0
    pop3 POP3 110
    self private 12345
    smtp SMTP 25
    ssl SSL 443
    ssl2http SSL 443
    telnet Telnet 23
    WLM private 10,007
    注意:
    FTP 顾问程序应当只在 FTP 控制端口(21)上使用。不要在 FTP 数据端口(20)上启动 FTP 顾问程序。
    log file
    记录管理数据的文件名。日志中的每条记录都带有时间戳记。

    缺省文件为 advisorname_port.log,例如,http_80.log。要更改日志文件所在的目录,请参阅更改日志文件路径。群集(或站点)特定顾问程序的缺省日志文件是使用群集地址创建的,例如 http_127.40.50.1_80.log

    status
    显示顾问程序中可全局设置的全部值的当前状态及其缺省值。
    stop
    停止顾问程序。
    timeout
    设置管理器将认为来自顾问程序的信息有效的秒数。 如果管理器发现顾问程序信息比超时期还要早,则管理器将不再使用该信息来确 定顾问程序正监视的端口上的服务器的权值。此超时的例外是在顾问程序已经通知管理器特定的服务器已当机时。管理器将使用有关此服务器的信息,即使顾问程序信息已经超时。
    seconds
    表示秒数的正数或字 unlimited。缺省值是 unlimited。
    version
    显示顾问程序的当前版本。

    示例

    dscontrol binlog - 控制二进制日志文件


    >>-dscontrol--binlog--+-start----------------------+-----------><
                          +-stop-----------------------+
                          +-set--+-retention--hours--+-+
                          |      '-interval--seconds-' |
                          '-status---------------------'
     
     
    

    start
    启动二进制日志。
    stop
    停止二进制日志。
    set
    设置二进制日志记录字段。要获取设置二进制日志记录字段的更多信息,请参阅使用二进制日志记录分析服务器统计信息
    retention
    保存二进制日志文件的小时数。保留时间的缺省值是 24。
    hours
    小时数。
    interval
    日志条目之间的秒数。间隔的缺省值是 60。
    seconds
    秒数。
    status
    显示二进制日志记录的间隔和保留时间。

    dscontrol cluster - 配置群集


    >>-dscontrol--cluster--+-add--cluster+c2+...--+----------------------------------------+-+-><
                           |                      +-address--address-----------------------+ |
                           |                      +-proportions--active--new--port--system-+ |
                           |                      +-maxports--size-------------------------+ |
                           |                      +-maxservers--size-----------------------+ |
                           |                      +-stickytime--time-----------------------+ |
                           |                      +-weightbound--weight--------------------+ |
                           |                      +-porttype--type-------------------------+ |
                           |                      +-primaryhost--address-------------------+ |
                           |                      +-staletimeout--staletimeout-------------+ |
                           |                      '-sharedbandwidth--size------------------' |
                           +-set--cluster+c2+...--+-proportions--active--new--port--system-+-+
                           |                      +-maxports--size-------------------------+ |
                           |                      +-maxservers--size-----------------------+ |
                           |                      +-stickytime--time-----------------------+ |
                           |                      +-weightbound--weight--------------------+ |
                           |                      +-porttype--type-------------------------+ |
                           |                      +-primaryhost--address-------------------+ |
                           |                      +-staletimeout--staletimeout-------------+ |
                           |                      '-sharedbandwidth--size------------------' |
                           +-remove--cluster-------------------------------------------------+
                           +-report--cluster-------------------------------------------------+
                           '-status--cluster-------------------------------------------------'
     
     
    

    add
    添加此群集。您必须至少定义一个群集。
    cluster
    客户机连接的群集名称或地址。群集值是符号名或点分十进制格式。0.0.0.0 的群集值可用于指定一个通配符群集。请参阅使用通配符群集来组合服务器配置以获取更多信息。

    除 dscontrol cluster add 命令是例外,您可使用一个冒号(:)作为通配符。例如,下列命令 dscontrol cluster set : weightbound 80,将会设置权值范围 80 给所有群集。

    注意:
    其它群集由加号(+)分隔。
    address
    TCP 机器的唯一 IP 地址,可以是主机名或点分十进制格式。如果群集值不可解析,则您必须提供物理机器的 IP 地址。
    注意:
    地址仅应用于分派器组件。
    address
    群集的地址值。
    proportions
    在群集级别上,设置活动连接(active)、新连接(new)、来自任何顾问程序的信息(port)和来自系统监视程序的信息(如,度量服务器(system),管理器用它设置服务器权值)的重要性比例。如下描述的每个值都表示为总计值的一个百分比,因此它们的总和总是为 100。要获取更多的信息,请参阅状态信息的重要性比例
    active
    0-100 的数,表示分配给活动连接的权值比例。缺省值是 50。
    new
    0-100 的数,表示分配给新连接的权值比例。缺省值是 50。
    port
    0-100 的数,表示分配给来自顾问程序信息的权值比例。缺省值是 0。
    注意:
    启动顾问程序时,如果端口比例是 0,Load Balancer 会自动设置此值为 1 以使管理器使用顾问程序信息作为输入来计算服务器权值。
    system
    0-100 的数,表示分配给来自于系统度量(如,来自于度量服务器)的信息的权值比例。缺省值是 0。
    maxports
    最大端口号。maxports 的缺省值是 8。
    size
    允许的端口数。
    maxservers
    每个端口上的缺省最多服务器数量。对于单个端口使用 port maxservers 可以重设该值。maxservers 的缺省值是 32。
    size
    每个端口上允许的服务器数。
    stickytime
    创建端口的缺省粘性时间。对于单个端口使用 port stickytime 可以重设该值。粘性时间的缺省值是 0。
    注意:
    对于分派器的 cbr 转发方法,如果您设置粘性时间(为非零值),且端口是 SSL(而非 HTTP),则将启用端口粘性时间。如果创建的端口粘性时间为非零的值,且添加的新端口是 SLL,则将为端口启用 SSL ID 亲缘性。要禁用端口的 SSL 标识亲缘性,您需要明确地将端口粘性时间设置为 0。
    time
    粘性时间值(以秒为单位)。
    weightbound
    缺省端口权值范围。对于单个端口使用 port weightbound 可以重设该值。权值范围的缺省值是 20。
    weight
    权值范围的值。
    porttype
    缺省端口类型。对于单个端口使用 port porttype 可以重设该值。
    注意:
    Porttype 应用于分派器组件。
    type
    可能值为 tcpudp两者
    primaryhost
    此分派器机器或者备份分派器机器的 NFA 地址。 相互高可用性中 配置中,群集和主或备份机器相关联。

    如果已启动主和备份机器并且正在运行相互高可用性时更改群集的 primaryhost,则必须强制新的主主机接管任务。 同时,您需要正确地更新脚本,并手工取消配置和配置此群集。 请参阅相互高可用性以获取更多信息。

    address
    primaryhost 的地址值。缺省值是机器的 NFA 地址。
    staletimeout
    除去连接之前该连接上的无活动状态持续的秒数。FTP 的缺省值为 900;Telnet 的缺省值为 32,000,000。所有其它协议的缺省值为 300。对于单个端口使用 port staletimeout 可以重设该值。请参阅使用失效超时值,以获取更多信息。
    staletimout
    staletimeout 值。
    sharedbandwidth
    群集级别可共享的最大的带宽(以千字节/秒为单位)。要获取更多共享带宽的信息,请参阅使用基于保留带宽和共享带宽的规则共享带宽规则
    注意:
    共享带宽应用于分派器组件。
    size
    sharedbandwidth 的大小是整数值。缺省值为零。如果值是零,则带宽不能在群集级别上共享。
    set
    设置群集特性。
    remove
    除去此群集。
    report
    显示群集的内部字段。
    注意:
    报告应用于分派器组件。
    status
    显示特定群集的当前状态。

    示例

    dscontrol executor - 控制执行程序


    >>-dscontrol--executor--+-report-----------------------------------------------------------+-><
                            +-set--+-nfa--IP address------------+------------------------------+
                            |      +-maxclusters--size----------+                              |
                            |      +-maxports--size-------------+                              |
                            |      +-fincount--fincount---------+                              |
                            |      +-fintimeout--fintimeout-----+                              |
                            |      +-hatimeout--time------------+                              |
                            |      +-maxservers--size-----------+                              |
                            |      +-staletimeout--staletimeout-+                              |
                            |      +-stickytime--time-----------+                              |
                            |      +-clientgateway--address-----+                              |
                            |      +-weightbound--weight--------+                              |
                            |      +-porttype--type-------------+                              |
                            |      +-wideportnumber--port-------+                              |
                            |      '-sharedbandwidth--size------'                              |
                            +-configure--interface_address+i2+...--+-------------------------+-+
                            |                                      '-interface_name--netmask-' |
                            +-unconfigure--interface_address-----------------------------------+
                            +-start------------------------------------------------------------+
                            +-status-----------------------------------------------------------+
                            '-stop-------------------------------------------------------------'
     
     
    

    report
    显示统计信息快照报告。例如:接收的总信息包、废弃的信息包和转发有错误的信息包等。
    注意:
    报告应用于分派器组件。
    set
    设置执行程序字段。
    nfa
    设置非转发地址。分派器 机器将不转发发送到该地址的任何信息包。
    注意:
    NFA 应用于分派器组件。
    IP address
    因特网协议地址,可以是符号名,或者是点分十进制格式。
    maxclusters
    可配置的最大群集数。maxclusters 的缺省值是 100。
    size
    可配置的最大群集数。
    maxports
    要创建的群集的 maxports 的缺省值。使用 cluster setcluster add 命令可以重设此值。maxports 的缺省值是 8。
    size
    端口数。
    fincount
    将启动连接的垃圾收集之前,必须处于 FIN 状态的连接数。 fincount 的缺省值是 4000。
    fincount
    fincount 值。
    注意:
    Fincount 应用于分派器组件。
    fintimeout
    它是当连接置为 FIN 状态后,让该连接保存在内存中的秒数。缺省 fintimeout 值是 60。
    fintimeout
    fintimeout 值。
    注意:
    Fintimeout 应用于分派器组件。
    hatimeout
    执行程序用于超时可用性心跳的秒数。缺省值是 2 秒。
    time
    hatimeout 值。
    注意:
    hatimeout 值适用于分派器组件。
    maxservers
    每一端口的缺省最大服务器数量。使用 clusterport 命令可以重设该值。maxservers 的缺省值是 32。
    size
    服务器的数目。
    staletimeout
    除去连接之前该连接上的无活动状态持续的秒数。FTP 的缺省值为 900;Telnet 的缺省值为 32,000,000。所有其它端口的缺省值为 300。使用 clusterport 命令可以重设该值。请参阅使用失效超时值,以获取更多信息。
    staletimeout
    staletimeout 值。
    stickytime
    所有未来群集的缺省端口粘性时间值。使用 clusterport 命令可以重设该值。缺省 stickytime 值是 0。
    time
    以秒为单位的 stickytime 值。
    clientgateway
    Clientgateway 是用于 NAT/NAPT 或分派器的基于内容路由的 IP 地址。 通过路由器寻址,返回方向的流量从 Load Balancer 转发到客户机。在添加有 NAT/NAPT 或分派器的基于内容路由转发方法的端口前,clientgateway 必须设置为非零值。请参阅分派器的 NAT/NAPT(nat 转发方法)分派器的基于内容路由(cbr 转发方法)以获取更多的信息。
    注意:
    Clientgateway 仅应用于分派器组件。
    address
    clientgateway 地址,可以是符号名,或者是点分十进制格式。缺省值是 0.0.0.0。
    weightbound
    所有未来端口的缺省端口权值范围值。使用 clusterport 命令可以重设该值。缺省 weightbound 值是 20。
    weight
    weightbound 值。
    porttype
    所有其它未来端口的缺省端口 porttype 值。使用 clusterport 命令可以重设该值。
    注意:
    Porttype 应用于分派器组件。
    type
    可能值为 tcpudp两者
    wideportnumber
    每台分派器机器上未使用的 TCP 端口。对于所 有分派器机器,wideportnumber 必须相同。wideportnumber 的缺省值是 0,表示现在没有使用广域支持。
    注意:
    Wideportnumber 应用于分派器组件。
    port
    wideportnumber 的值。
    sharedbandwidth
    执行程序级别可共享的最大带宽量(以千字节/秒为单位)。要获取更多共享带宽的信息,请参阅使用基于保留带宽和共享带宽的规则共享带宽规则
    注意:
    共享带宽应用于分派器组件。
    size
    sharedbandwidth 的大小是整数值。缺省值为零。如果值是零,则带宽不能在执行程序级别上共享。
    configure
    将地址(例如,群集地址、返回地址或高可用性工作频率地址)配置到分派器机器的网络接口卡。这也称为在分派器机器上配置别名。
    注意:
    Configure 应用于分派器组件。
    interface_address
    地址可以是符号名或点分十进制格式。
    注意:
    附加接口地址由加号(+)分隔。
    interface_name netmask
    只有在地址不匹配现有地址的任何子网时才需要。interface_name 可以是一个诸如 en0、eth1 和 hme0 的值。netmask 是用于标识 IP 地址的主机部分中的子网地址位的 32 位掩码。
    unconfigure
    从网络接口卡删除别名地址。
    注意:
    Unconfigure 应用于分派器组件。
    start
    启动执行程序。
    status
    显示可以设置的执行程序中的值的当前状态及其缺省。
    stop
    停止执行程序。对于分派器,在 Windows 平台上 stop 不是有效参数。
    注意:
    Stop 应用于分派器和 CBR。

    示例

    dscontrol file - 管理配置文件


    >>-dscontrol--file--+-delete--file[.ext]----------+------------><
                        +-appendload--file[.ext]------+
                        +-report----------------------+
                        +-save--file[.ext]--+-------+-+
                        |                   '-force-' |
                        '-newload--file[.ext]---------'
     
     
    

    delete
    删除文件。
    file[.ext]
    包含 dscontrol 命令的配置文件。

    文件扩展名(.ext)可以是想用的任何扩展名并可以省略。

    appendload
    要更新当前配置,appendload 命令从您的脚本文件运行可执行命令。
    report
    有关一个或多个可用文件的报告。
    save
    将 Load Balancer 的当前配置保存到文件。
    注意:
    将文件保存到以下目录以及从以下目录装入文件,其中 component 是分派器或 cbr:
    • 基于 UNIX 的平台:/opt/ibm/edge/lb/servers/configurations/component
    • Windows 平台:C:\Program Files\ibm\edge\lb\servers\configurations\component
    force
    要将您的文件保存到名称相同的现有文件,在保存新文件之前使用 force 以删除现有文件。如果您不使用 force 选项,现有文件不会被覆盖。
    newload
    装入并运行新的配置文件到 Load Balancer。新配置文件替换当前配置。

    示例

    dscontrol help - 显示或打印此命令的帮助


    >>-dscontrol--help--+-advisor----------+-----------------------><
                        +-binlog-----------+
                        +-cluster----------+
                        +-executor---------+
                        +-file-------------+
                        +-help-------------+
                        +-highavailability-+
                        +-host-------------+
                        +-logstatus--------+
                        +-manager----------+
                        +-metric-----------+
                        +-port-------------+
                        +-rule-------------+
                        +-server-----------+
                        +-set--------------+
                        +-status-----------+
                        '-subagent---------'
     
     
    

    示例

    dscontrol highavailability - 控制高可用性


    注意:
    dscontrol high availability 语法图解仅应用于分派器组件。
    >>-dscontrol--highavailability--+-status--------------------------------------+-><
                                    +-backup--+-add--+-primary-+--+-auto---+--p-+-+
                                    |         |      +-backup--+  '-manual-'    | |
                                    |         |      '-both----'                | |
                                    |         '-delete--------------------------' |
                                    +-reach--+-add----+--address--mask------------+
                                    |        '-delete-'                           |
                                    +-heartbeat--+-add--srcaddress--dstaddress-+--+
                                    |            '-delete--address-------------'  |
                                    '-takeover--+---------+-----------------------'
                                                '-address-'
     
     
    

    status
    返回有关高可用性的报告。机器被标识为具有三种状态条件或状态之一:

    Active
    给定的机器(主机器、备份机器或两者)正在路由信息包。

    Standby
    给定的机器(主机器、备份机器或两者)没有路由信息包;它正在监视活动分派器的状态。

    Idle
    给定的机器正在路由信息包,并且它不尝试与其伙伴分派器建立联系。

    此外,status 关键字返回关于各种 子状态的信息:

    Synchronized
    给定的机器已经与另一台分派器建立联系。

    Other substates
    此机器正尝试与其伙伴分派器建立联系,但是还没有成功。
    backup
    指定有关主机器或备份机器的信息。
    add
    为此机器定义和运行高可用性功能。
    primary
    标识充当角色的分派器机器。
    backup
    标识充当备份角色的分派器机器。
    both
    标识同时充当主和备份机器角色的分派器机器。这是在每个群集设置基础上关联的主和备份角色中的相互高可用性功能。 请参阅相互高可用性,以获取更多信息。
    auto
    指定自动恢复策略,在该策略中,只要主计算机一恢复到服务中,就继续路由信息包。
    manual
    指定手工恢复策略,在该策略中,主机器直到管理员发出 takeover 命令时才继续路由信息包。
    p[ort]
    两台机器上都未用的 TCP 端口,分派器 为工作频率消息使用此 TCP 端口。主机器和备份机器的 port 必须相同。
    delete
    从高可用性中除去该机器,因此它将不再被用作备份或主机器。
    reach
    添加或删除主分派器和备份分派器的目标地址,到达顾问程序从备份分派器和主分派器发出 ping 以确定如何到达它们的目标。
    注意:
    当配置到达目标时,您还必须启动到达顾问程序。到达顾问程序由管理器功能自动启动。
    add
    为到达顾问程序添加目标地址。
    delete
    从到达顾问程序除去目标地址。
    address
    目标节点的 IP 地址(点分十进制数或符号)。
    mask
    子网掩码。
    heartbeat
    定义主和备份分派器机器之间的通信会话。
    add
    告知源分派器其伙伴机的地址(目的地地址)。
    srcaddress
    源地址。此分派器机器的地址(IP 或符号地址)。
    dstaddress
    目的地地址。另一分派器机器的地址(IP 或符号地址)。
    注意:
    srcaddress 和 dstaddress 必须是至少一个工作频率对的机器的 NFA。
    delete
    从工作频率信息除去地址对。您可指定工作频率对的目的地或源地址。
    address
    目的地或源的地址(IP 或符号)。
    takeover
    简单高可用性配置(分派器机器充当的角色为备份):

    相互高可用性配置(每个分派器机器的角色是两者):

    记录:

    1. 注意,机器的角色备份两者)不更改。只更改其相对状态活动备用)。

    2. 有三个可能接管脚本:goActive、goStandby 和 goInOp。请参阅使用脚本
    address
    接管地址值是可选的。当机器的角色是主和备份两者(相互高可用性配置)时才应使用它。 指定的地址通常是路由此群集流量的分派器机器的 NFA。 当两个群集发生接管时,请指定分派器自己的 NFA 地址。

    示例

    dscontrol host - 配置远程机器


    >>-dscontrol--host:--remote_host-------------------------------><
     
     
    

    remote_host
    正在配置的远程 Load Balancer 机器的名称。当输入此命令时,确保 host:remote_host 之间没有空格,例如:
    dscontrol host:remote_host
    

    在命令提示符下发出此命令后,输入任何一个要向远程 Load Balancer 机器发出的有效 dscontrol 命令。

    dscontrol logstatus - 显示服务器日志设置


    >>-dscontrol--logstatus----------------------------------------><
     
     
    

    logstatus
    显示服务器日志设置(日志文件名、日志记录级别和日志大小)。

    示例

    要显示 logstatus:

    dscontrol logstatus
    

    该命令产生类似于下列的输出:

    分派器日志状态:
    ------------------------------
    日志文件名 ................. C:\PROGRA~1\IBM\edge\lb\servers\logs\dispatcher
    \server.log
    日志级别 ................... 1
    最大日志大小(字节)........ 1048576
    

    dscontrol manager - 控制管理器

    >>-dscontrol--manager--+-interval--seconds----------------------+-><
                           +-loglevel--level------------------------+
                           +-logsize--+-unlimited-+-----------------+
                           |          '-bytes-----'                 |
                           +-metric set--+-loglevel--level--------+-+
                           |             '-logsize--+-unlimited-+-' |
                           |                        '-bytes-----'   |
                           +-quiesce--server--+-----+---------------+
                           |                  '-now-'               |
                           +-reach set--+-interval--seconds------+--+
                           |            +-loglevel--level--------+  |
                           |            '-logsize--+-unlimited-+-'  |
                           |                       '-bytes-----'    |
                           +-refresh--refresh cycle-----------------+
                           +-report--+----------------+-------------+
                           |         '-cluster+c2+...-'             |
                           +-restart--message-----------------------+
                           +-sensitivity--weight--------------------+
                           +-smoothing--smoothing index-------------+
                           +-start--+-----------------------+-------+
                           |        '-log file--metric_port-'       |
                           +-status---------------------------------+
                           +-stop-----------------------------------+
                           +-unquiesce--server----------------------+
                           '-version--------------------------------'
     
     
    

    interval
    设置管理器更新服务器权值至执行程序的频率,更新执行程序用于路由客户机请求的准则。
    seconds
    表示管理器更新权值至执行程序的频率的正数(以秒为单位)。缺省值是 2。
    loglevel
    设置管理器日志的记录级别。
    level
    级别数(0-5)。数字越高,表示写入管理器日志的信息越多。缺省值是 1。下列是可能的值:0 是无,1 是最小,2 是基本,3 是中等,4 是高级,5 是详细。
    logsize
    设置管理器日志的最大大小。当设置日志文件的最大大小时,文件将会回绕;当文件达到指定的大小时,后继条目将从文件顶部开始写入,覆盖以前的日志条目。不能将日志大小设置为小于当前日志大小。将日志条目加上时间戳记,以便您可以识别写入日志条目的顺序。设置的日志级别越高,则选择日志大小时应越仔细,因为当在较高级别日志记录时可能会很快地溢出空间。
    bytes
    管理器日志文件的最大大小(以字节为单位)。可以指定大于零的正数,或字 unlimited。在覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。缺省值是 1 MB。
    metric set
    为度量监视器日志设置 loglevellogsize。loglevel 是度量监视器日志记录级别(0 - 无、1 - 最小、2 - 基本、3 - 中等、4 - 高级或 5 - 详细)。 缺省 loglevel 是 1。logsize 是将记录到度量监视器日志文件中的最大字节数。您可以指定大于零的正数,或 unlimited。缺省 logsize 是 1 MB。
    quiesce
    指定不再将连接发送到服务器,除非连接指定为粘性且粘性时间没有到期,则将来自客户机的后继新连接发送到停顿的服务器。在定义了这个服务器的所有端口上,管理器 都将这个服务器的权值设置为 0。如果想快速维护服务器然后激活它,那么可使用该命令。如果从配置中删除已停顿的服务器,然后 再恢复使用它,则该服务器将不保留它停顿以前的状态。要获取更多的信息,请参阅停顿服务器连接句柄
    server
    服务器的 IP 地址,可以是符号名,或者是点分十进制格式。

    或,如果您使用服务器分区,使用逻辑服务器的唯一的名称。请参阅服务器分区:配置到一个物理服务器(IP 地址)的逻辑服务器以获取更多信息。

    now
    仅当您设置了粘性时间,并且要在粘性时间到期之前把新连接发送到另一个服务器(不是停顿的服务器)时,才使用停顿“now”。要获取更多的信息,请参阅停顿服务器连接句柄
    reach set
    为到达顾问程序设置时间间隔、日志级别和日志大小。
    refresh
    设置查询执行程序(用以刷新关于新连接与活动连接的信息)前的间隔数。
    refresh cycle
    表示间隔数的正数。缺省值是 2。
    report
    显示统计信息快照报告。
    cluster
    您希望在报告中显示的群集地址。 地址可以是符号名或点分十进制格式。缺省是所有群集的管理器报告显示。

    注意:
    其它群集由加号(+)分隔。
    restart
    重新启动所有(未当机的)服务器以规格化权值(最大权值的 1/2)。
    message
    要写入管理器日志文件的消息。
    sensitivity
    设置权值更新的最小灵敏度。此设置定义何时管理器应该为服务器更改其基于外部信息的权值。
    weight
    1-100 的数,用作权值的百分比。缺省 5 创建最小灵敏度 5%。
    smoothing
    设置指数,它平滑负载均衡时的权值变化。较大的平滑指数将使网络条件改变时服务器权值的变动量明显减少。较小的平 滑指数将使服务器权值的变动量明显增加。
    index
    正的浮点数。缺省值是 1.5。
    start
    启动管理器。
    log file
    记录管理器数据的文件名。在日志中的每个记录都带有时间戳记。

    缺省文件将安装在 logs 目录下。请参阅附录 C, 样本配置文件。要更改日志文件所在的目录,请参阅更改日志文件路径

    metric_port
    度量服务器用来报告系统负载的端口。如果指定度量端口,则必须指定日志文件名。缺省度量端口是 10004。
    status
    显示管理器中可全局设置的所有值的当前状态及其缺省值。
    stop
    停止管理器。
    unquiesce
    指定管理器可以开始在以前停顿的服务器被定义的每个端口上为该服务器分配大于 0 的权值。
    server
    服务器的 IP 地址,可以是符号名,或者是点分十进制格式。
    version
    显示管理器的当前版本。

    示例

    dscontrol metric - 配置系统度量

    >>-dscontrol--metric--+-add--cluster+c2+...+cN:metric+metric1+...+metricN--------------+-><
                          +-remove--cluster+c2+...+cN:metric+metric1+...+metricN-----------+
                          +-proportions--cluster+c2+...+cN proportion1 prop2 prop3...propN-+
                          '-status--cluster+c2+...+cN:metric+metric1+...+metricN-----------'
     
     
    

    add
    添加指定的度量。
    cluster
    客户机连接的地址。地址可以是机器的主机名,也可以是点分十进制 IP 地址。其它群集由加号(+)分隔。
    metric
    系统度量名称。这必须是度量服务器的 script 目录中的可执行文件或脚本文件的名称。
    remove
    除去指定的度量。
    proportions
    设置与此对象关联的所有度量的比例。
    status
    显示此度量的当前值。

    示例

    dscontrol port - 配置端口

    >>-dscontrol--port--+-add--cluster:port--+----------------------+-+-><
                        |                    +-crossport--otherport-+ |
                        |                    +-maxservers--size-----+ |
                        |                    +-stickymask--value----+ |
                        |                    +-stickytime--time-----+ |
                        |                    +-method--type---------+ |
                        |                    +-staletimeout--value--+ |
                        |                    +-weightbound--weight--+ |
                        |                    +-porttype--type-------+ |
                        |                    +-protocol--type-------+ |
                        |                    '-reset--value---------' |
                        +-set--cluster:port--+-crossport--otherport-+-+
                        |                    +-maxservers--size-----+ |
                        |                    +-stickymask--value----+ |
                        |                    +-stickytime--time-----+ |
                        |                    +-staletimeout--value--+ |
                        |                    +-weightbound--weight--+ |
                        |                    +-porttype--type-------+ |
                        |                    +-maxhalfopen--value---+ |
                        |                    '-reset--value---------' |
                        +-remove--cluster:port------------------------+
                        +-report--cluster:port------------------------+
                        +-status--cluster:port------------------------+
                        '-halfopenaddressreport--cluster:port---------'
     
     
    

    add
    将端口添加到群集。在能够向一个端口添加任何服务器前,必须将该端口添加到群集。如果群集没有端口,则只能本地处理所有客户机请求。使用该命令,一次可以添加多个端口。
    cluster
    群集地址,可以是符号名或点分十进制格式。您可使用一个冒号(:)作为通配符。例如,以下命令 dscontrol port add :80 将会添加端口 80 给所有群集。
    注意:
    其它群集由加号(+)分隔。
    port
    端口号。端口号 0(零)用于指定通配符端口。
    注意:
    其它端口由加号(+)分隔。
    crossport
    交叉端口允许粘性/亲缘性功能扩展到多个端口,以使不同端口上接收到的客户机请求仍可以为后续请求而发送到同一台服务器。 对于 crossport 值,指定您希望共享交叉端口亲缘性功能的 otherport 数字。 如果使用此功能,端口必须:

    要除去交叉端口功能,请将 crossport 值重新设置为其自己的端口号。 有关交叉端口亲缘性功能的更多信息,请参阅交叉端口亲缘性

    注意:
    Crossport 仅应用于分派器组件的 MAC 和 NAT/NATP 转发方法。
    otherport
    crossport 的值。缺省值与自己的 port 号相同。
    maxservers
    服务器的最大数目。maxservers 的缺省值是 32。
    size
    maxservers 的值。
    stickymask
    亲缘性地址掩码 特性将入网客户机请求按公共子网地址进行分组。当客户机请求首次连接到此端口时,具有相同子网地址(由将要进行掩码的 IP 地址部分指定)的客户机发出的后续请求将定向到同一台服务器。 要启用 stickymask,端口粘性时间必须是非零值。请参阅亲缘性地址掩码(stickymask),以获取更多信息。
    注意:
    stickymask 关键字仅应用于分派器组件。
    value
    stickymask 值是您要进行掩码的 32 位 IP 地址的高位数。可能的值是:8、16、24 和 32。缺省值是 32,即禁用亲缘性地址掩码功能。
    stickytime
    关闭一个连接与打开另一个新连接之间的时间间隔,在此期间客户机将被返回至第一次连接期间使用的服务器。超过此粘性时间后,客户机可能被发送至与第一次不同的服务器上。

    对于分派器主机

    对于 CBR 组件:如果您将端口粘性时间设置为非零值,那么规则的亲缘性类型必须为无(缺省值)。 当设置了端口的粘性时间,那么基于规则亲缘性(被动 cookie,URI,活动 cookie)就无法共存。

    time
    端口的粘性时间(以秒为单位)。零表示端口无粘性。
    method
    转发方法。可能的转发方法是:mac 转发、nat 转发或基于内容的路由(cbr)转发。您可以添加 nat 或 cbr 转发方法,除非您首先在 dscontrol executor 命令的 clientgateway 参数中指定非零 IP 地址。请参阅分派器的 NAT/NAPT(nat 转发方法)分派器的基于内容路由(cbr 转发方法)以获取更多的信息。

    记录:

    1. 方法仅适用于分派器组件。

    2. 如果后端服务器在与返回地址相同的子网上,并且您使用 cbr 转发方法或 nat 转发方法,则您必须将路由器地址定义为后端服务器地址。

    3. 如果您添加 mac 转发方法,则您需要将“protocol”参数指定为 HTTP 或 SSL。
    type
    转发方法类型。可能的值是:mac、nat 或 cbr。缺省是 mac 转发。
    staletimeout
    除去连接之前该连接上的无活动状态持续的秒数。对于分派器组件,端口 21(FTP)的缺省值为 900,端口 23(Telnet)的缺省值为 32,000,000。对于所有其它分派器端口,缺省值是 300。 Staletimeout 也可在执行程序或群集级别设置。请参阅使用失效超时值,以获取更多信息。
    value
    staletimeout 的值(以秒为单位)。
    weightbound
    设置该端口上服务器的最大权值。该参数影响执行程序对每台服务器的请求数量间的差异程度。缺省值是 20。
    weight
    1-100 的值表示最大权值范围。
    porttype
    端口类型。
    注意:
    Porttype 仅应用于分派器。
    type
    可能值为 tcpudp两者。缺省值是两者(tcp/udp)。
    protocol
    协议类型。对于分派器组件,这是在端口上指定“cbr”方法时的必需参数。如果您选择端口协议类型 SSL,则您还应该指定一个非零粘性时间,以启用 SSL ID 亲缘性。如果您选择 HTTP 协议,您可使用“content”规则建立服务器亲缘性。请参阅分派器的基于内容路由(cbr 转发方法)以获取更多信息。
    注意:
    Protocol 仅应用于分派器的 cbr 转发方法。
    type
    可能的值是 HTTPSSL
    maxhalfopen
    最大半开连接的阈值。使用此参数检测可能导致服务器上大量半开 TCP 连接的拒绝服务攻击。

    正值表明将进行检查以确定当前半开连接数是否超出阈值。如果当前值在阈值之上,将调用警告脚本。请参阅拒绝服务攻击检测以获取更多信息。

    注意:
    maxhalfopen 仅应用于分派器。
    value
    maxhalfopen 的值。缺省是零(将不检查)。
    reset
    复位允许您指定 Load Balancer 是否将 TCP 复位发送到端口上的当机服务器。 TCP 复位将导致立即关闭连接。请参阅发送 TCP 复位到当机服务器(仅分派器组件)以获取更多信息。
    注意:
    复位仅适用于分派器组件。dscontrol executor 命令的 clientgateway 必须设置为路由器地址,以使用复位关键字。
    value
    复位可能的值有 yes 和 no。缺省值为 no(不向当机服务器发送 TCP 请求)。 当复位为 yes 时,将向当机服务器发送 TCP 请求。
    set
    设置端口字段。
    remove
    除去此端口。
    report
    报告该端口的情况。
    status
    显示该端口上服务器的状态。如果想查看所有端口上的状态,则不要使用此命令指定端口。但不要忘记冒号。
    numSeconds
    重新设置半开连接之前的时间(以秒为单位)。
    halfopenaddressreport
    为所有客户机地址(多达将近 8000 对地址对)在日志(halfOpen.log)中生成条目,这些地址已访问具有任何半开连接的服务器。而且,统计数据将被报告回命令行,例如:半开连接的总计、最大和平均数,以及平均半开连接时间(以秒为单位)。请参阅拒绝服务攻击检测以获取更多信息。

    示例

    dscontrol rule - 配置规则

    >>-dscontrol--rule--+-add--cluster:port:rule--type--type--| opts |-+-><
                        +-dropserver--cluster:port:rule--server--------+
                        +-remove--cluster:port:rule--------------------+
                        +-report--cluster:port:rule--------------------+
                        +-set--cluster:port:rule--| opts |-------------+
                        +-status--cluster:port:rule--------------------+
                        '-useserver--cluster:port:rule--server+s2+...--'
     
    opts:
     
    |--+---------------------------------+--------------------------|
       +-beginrange--low--endrange--high-+
       +-priority--level-----------------+
       +-pattern--pattern----------------+
       +-tos--value----------------------+
       +-stickytime--time----------------+
       +-affinity--affinity_type---------+
       +-cookiename--value---------------+
       +-evaluate--level-----------------+
       '-sharelevel--level---------------'
     
     
    

    add
    将此规则添加到端口。
    cluster
    群集地址,可以是符号名或点分十进制格式。您可使用一个冒号(:)作为通配符。例如,下列命令 dscontrol rule add :80:RuleA type type 将会添加 RuleA 给所有群集的端口 80。
    注意:
    其它群集由加号(+)分隔。
    port
    端口号。您可使用一个冒号(:)作为通配符。例如,下列命令 dscontrol rule add clusterA::RuleA type type 将会添加 RuleA 给 ClusterA 的所有端口。
    注意:
    其它端口由加号(+)分隔。
    rule
    为规则选择的名称。此名称可以包含任何字母数字字符、下划线、连字号或句点。它可为 1 至 20 个字符并且不能包含任何空格。
    注意:
    附加规则由加号(+)分隔。
    type
    规则类型。
    type
    type 的选项有:

    ip
    此规则基于客户机 IP 地址。

    time
    此规则基于时间(按天计)。

    connection
    此规则基于此端口每秒连接的数量。此规则仅在管理器运行时生效。

    active
    此规则基于此端口活动连接的总数量。此规则仅在管理器运行时生效。

    port
    此规则基于客户机端口。
    注意:
    Port 应用于分派器组件。

    service
    此规则基于 IP 头中的服务类型(TOS)字节字段。
    注意:
    Service 仅应用于分派器组件。

    reservedbandwidth
    此规则是基于服务器组发送的带宽(千字节/秒)。要获取更多的信息,请参阅使用基于保留带宽和共享带宽的规则保留带宽规则
    注意:
    Reservedbandwidth 仅应用于分派器组件。

    sharedbandwidth
    此规则基于带宽(千字节/秒)数量,此带宽将在执行程序或群集级别上共享。要获取更多的信息,请参阅使用基于保留带宽和共享带宽的规则共享带宽规则
    注意:
    Sharedbandwidth 仅应用于分派器组件。

    true
    此规则总是为真。将它视为编程逻辑中的 else 语句。

    content
    此规则描述了将与客户机请求的 URL 进行比较的正则表达式。 对于分派器和 CBR,这是有效的。
    beginrange
    用于确定规则是否为真的范围中的较小值。
    low
    取决于规则类型。值的类别及其缺省值在此按规则类型列出:

    ip
    客户机的地址,可以是符号名或点分十进制格式。缺省值是 0.0.0.0。

    time
    整数。缺省值是 0,表示午夜。

    connection
    整数。缺省值是 0。

    active
    整数。缺省值是 0。

    port
    整数。缺省值是 0。

    reservedbandwidth
    整数(千字节/秒)。缺省值是 0。
    endrange
    用于确定规则是否为真的范围中的较大值。
    high
    取决于规则类型。值的类别及其缺省值在此按规则类型列出:

    ip
    客户机的地址,可以是符号名或点分十进制格式。缺省值为 255.255.255.254。

    time
    整数。缺省值是 24,表示午夜。
    注意:
    当指定时间间隔的开始范围和结束范围时,注意每个值必须为整数 ,仅代表该时间的小时部分;小时内的部分没有指定。因此,要指定一个小时 - 例如 3:00 至 4:00 am - 可以指定开始范围为 3 而结束范围也为 3。这将指定 3:00 开始至 3:59 结束期间的所有时间。指定开始时间为 3 而终止时间为 4 将覆盖从 3:00 到 4:59 两个小时的时间范围。

    connections
    整数。缺省值为 2 的 32 次幂减 1。

    active
    整数。缺省值为 2 的 32 次幂减 1。

    port
    整数。缺省值是 65535。

    reservedbandwidth
    整数(千字节/秒)。缺省值为 2 的 32 次幂减 1。
    priority
    复查规则的顺序。
    level
    整数。如果不指定添加的第一个规则的优先级,分派器 将把它缺省设置为 1。随后添加的规则,按缺省情况,其优先级为 10 + 任何现有规则的当前最低优先级。例如,假设有一个优先级为 30 的现有规则。添加一个新规则并设置其优先级为 25(记住:25 于优先级 30)。然后添加第三个没有设置优先级的规则。则第三个规则的优先级计算为 40(30 + 10)。
    pattern
    指定用于内容类型规则的模式。
    pattern
    要使用的模式。要获取更多有效值的信息,请参阅附录 B, 内容规则(模式)语法
    tos
    指定 service 类型规则使用的“服务类型”(TOS)。

    注意:
    TOS 仅适用于分派器组件。
    value
    用于 tos 值的具有 8 个字符的字符串,其中有效字符是:0(二进制零)、1(二进制一)和 x(随意)。例如:0xx1010x。要获取更多的信息,请参阅使用基于服务类型(TOS)的规则
    stickytime
    指定用于规则的粘性时间。当将规则命令的亲缘性参数设置为“activecookie”时,粘性时间应该设置为非零值以启用此亲缘性类型。 规则的粘性时间不会应用于“passivecookie”或“uri”亲缘性规则类型中。

    请参阅活动 cookie 亲缘性,以获取更多信息。

    注意:
    规则粘性时间仅应用于 CBR 组件中。
    time
    以秒为单位的时间。
    affinity
    指定用于规则的亲缘性类型:活动 cookie、被动 cookie、URI 或无。

    “activecookie”的亲缘性类型允许将具有亲缘性的 Web 流量负载均衡到基于 Load Balancer 生成的 cookie 的同一台服务器上。

    “passivecookie”的亲缘性类型允许用亲缘性负载均衡 Web 流量到基于服务器生成的自标识 cookie 的相同的服务器上。您必须结合被动 cookie 亲缘性使用 cookiename 参数。

    “URI”亲缘性类型允许将 Web 流量负载均衡到高速缓存代理服务器,在某种意义上,有效地增加了高速缓存的大小。

    请参阅活动 cookie 亲缘性被动 cookie 亲缘性URI 亲缘性,以获取更多的信息。

    注意:
    亲缘性应用于用分派器组件的 cbr 转发方法配置的规则和 CBR 组件。
    affinity_type
    亲缘性类型可能的值:无(缺省)、activecookie、passivecookie 或 uri。
    cookiename
    作为 Load Balancer 标识的管理器设置的任意名称。它是 Load Balancer 应该在客户机 HTTP 头请求中查找的名称。cookie 名称和 cookie 值一起作为 Load Balancer 的标识,允许 Load Balancer 发送 Web 站点的后继请求到同一台服务器。Cookie 名称仅适合于“被动 cookie”亲缘性。

    请参阅被动 cookie 亲缘性以获取更多信息。

    注意:
    亲缘性应用于用分派器组件的 cbr 转发方法配置的规则和 CBR 组件。
    value
    cookie 名称值。
    evaluate
    此选项仅在分派器组件中可用。指定是评估端口中所有服务器的规则条件还是评估规则中的所有服务器的规则条件。选项仅对根据服务器的特征做出其决定的规则有效,如:connetion、active 和 reservedbandwidth 规则。要获取更多的信息,请参阅服务器评估规则选项

    对于连接类型规则,您还可以指定评估选项 - upserversonrule.通过指定 upserversonrule,您可以确保在服务器集中的某些服务器当机时,不过载规则内的剩余服务器。

    level
    可能的值是 port、rule 或 upserversonrule。缺省值是 port。upserversonrule 仅应用于连接类型规则。
    sharelevel
    此参数仅供共享带宽规则使用。指定共享带宽在群集级别上还是执行程序级别上。群集级别的共享带宽允许一个端口(或多个端口)共享相同的群集中的几个端口的最大带宽数。在执行程序级别共享带宽允许一个群集(或多个群集)在整个分派器配置中共享最大带宽量。要获 取更多的信息,请参阅共享带宽规则
    level
    可能的值是执行程序或群集。
    dropserver
    从规则集除去服务器。
    server
    TCP 服务器的 IP 地址,可以是符号名或点分十进制格式。

    或,如果您使用服务器分区,使用逻辑服务器的唯一的名称。请参阅服务器分区:配置到一个物理服务器(IP 地址)的逻辑服务器以获取更多信息。

    注意:
    其它服务器由加号(+)分隔。
    remove
    除去一个或多个规则,二者之间由加号分开。
    report
    显示一个或多个规则的内部值。
    set
    为此规则设置值。
    status
    显示一个或多个规则的可设置值。
    useserver
    将服务器插入规则集。

    示例

    dscontrol server - 配置服务器

    >>-dscontrol--server--+-add--cluster:port:server--+-------------------------+-+-><
                          |                           +-address--address--------+ |
                          |                           +-collocated--value-------+ |
                          |                           +-sticky--value-----------+ |
                          |                           +-weight--value-----------+ |
                          |                           +-fixedweight--value------+ |
                          |                           +-cookievalue--value------+ |
                          |                           +-mapport--portvalue------+ |
                          |                           +-router--addr------------+ |
                          |                           +-returnaddress--addr-----+ |
                          |                           +-advisorrequest--string--+ |
                          |                           '-advisorresponse--string-' |
                          +-set--cluster:port:server--+-collocated--value-------+-+
                          |                           +-sticky--value-----------+ |
                          |                           +-weight--value-----------+ |
                          |                           +-fixedweight--value------+ |
                          |                           +-cookievalue--value------+ |
                          |                           +-router--addr------------+ |
                          |                           +-advisorrequest--string--+ |
                          |                           '-advisorresponse--string-' |
                          +-down--cluster:port:server-----------------------------+
                          +-remove--cluster:port:server---------------------------+
                          +-report--cluster:port:server---------------------------+
                          +-up--cluster:port:server-------------------------------+
                          '-status--cluster:port:server---------------------------'
     
     
    

    add
    添加此服务器。
    cluster
    群集地址,可以是符号名或点分十进制格式。您可使用一个冒号(:)作为通配符。例如,下列命令 dscontrol server add :80:ServerA 将会添加服务器 A 到所有群集上的端口 80。
    注意:
    其它群集由加号(+)分隔。
    port
    端口号。您可使用一个冒号(:)作为通配符。例如,下列命令 dscontrol server add ::ServerA 将会添加服务器 A 到所有端口的所有群集。
    注意:
    其它端口由加号(+)分隔。
    server
    server 是 TCP 服务器的唯一 IP 地址,可以是符号名或点分十进制格式。

    或,如果您使用不解析为 IP 地址的唯一名称,您必须在 dscontrol server add 命令上提供此服务器 address 参数。请参阅服务器分区:配置到一个物理服务器(IP 地址)的逻辑服务器以获取更多信息。

    注意:
    其它服务器由加号(+)分隔。
    address
    TCP 服务器的唯一 IP 地址,可以是主机名或点分十进制格式。如果服务器是不可解析的,您必须提供物理服务器的地址。请参阅服务器分区:配置到一个物理服务器(IP 地址)的逻辑服务器以获取更多信息。
    address
    服务器的地址值。
    collocated
    Collocated 允许指定分派器是否安装在它负载均衡的其中一台服务器上。并列配置的选项不适用于 Windows 平台。
    注意:
    仅当使用分派器的 mac 或 nat 转发方法时,collocated 参数才有效。站点选择器和 Cisco 咨询器可在所有平台上并列配置,但不需要此关键字。要获取更多的信息,请参阅使用并列配置的服务器
    value
    collocated 的值:yes 或 no。缺省值是 no。
    sticky
    允许服务器覆盖在其端口上的粘性时间设置。 缺省值是“yes”,表示服务器将保留端口上定义的正常亲缘性。 如果值为“no”,下一次客户机在此端口发出请求时,无论此端口的粘性时间是多少,客户机将返回到此服务器。 在使用规则时的某些特定情况下非常有用。 要获取更多的信息,请参阅端口亲缘性覆盖
    value
    sticky 的值:yes 或 no。缺省值是 yes。
    weight
    数 0-100(但不超出指定端口的权值范围值)表示该服务器的权值。设置权值为 0 将防止任何新的请求发送到该服务器,但是它不会结束当前到该服务器的任何活动的连接。缺省值是指定端口的最大权值的 1/2。如果管理器正在运行,此设置将很快被覆盖。
    value
    服务器权值的值。
    fixedweight
    fixedweight 选项允许指定是否要管理器修改服务器权值。 如果 fixedweight 值设置为 yes,当管理器运行时,它就不能修改服务器权值。 要获取更多的信息,请参阅管理器固定权值
    value
    fixedweight 的值:yes 或 no。缺省值是 no。
    cookievalue
    Cookievalue 是任意值,它代表 cookie 名称/cookie 值对的服务器端。cookie 值和 cookie 名称一起作为标识允许 Load Balancer 发送后继客户机请求到同一台服务器。请参阅被动 cookie 亲缘性以获取更多信息。
    注意:
    Cookievalue 对于分派器(使用 cbr 转发方法)和 CBR 是有效的。
    value
    Value 是任意值。缺省值是非 cookie 值。
    mapport
    映射客户机请求目的地端口号(对于分派器)到分派器用于负载均衡客户机请求的服务器端口号。允许 Load Balancer 在一个端口接收客户机的请求,并将它传送到服务器上的不同端口。用 mapport,您可负载均衡客户机请求到可能有多个服务器守护程序运行的服务器上。
    注意:
    Mapport 应用于分派器(使用 nat 或 cbr 转发方法)和 CBR。对于分派器,请参阅分派器的 NAT/NAPT(nat 转发方法)分派器的基于内容路由(cbr 转发方法)。对于 CBR,请参阅负载均衡 SSL 中的客户机到代理和 HTTP 中的代理到服务器
    portvalue
    映射端口号的值。缺省是客户机请求的目的地端口号。
    router
    如果您正在设置广域网,至远程服务器的路由器地址。缺省值为 0,表示一个本地服 务器。注意一旦服务器的路由器地址设置为非零(表示远程服务器),则它无法重新设置为零以使服务器再次成为本地。然而,必须除去服务器,然后在不指定路由器地址的情况下再次添加。类似地,一个定义为本地的服务器(路由器地址 = 0)不能通过改变路由器地址来设置为远程。必须除去此服务器然后再添加。请参阅配置广域分派器支持以获取更多信息。
    注意:
    路由器仅应用于分派器。如果您使用 nat 或 cbr 转发方法,当添加服务器到配置时,您必须指定路由器地址。
    addr
    路由器的地址值。
    returnaddress
    唯一的 IP 地址或主机名。它是分派器机器上配置的地址,当负载均衡客户机请求到服务器时,分派器使用它作为源地址。这确保了服务器将把信息包返回到分派器机器以处理请求的内容,而不是直接发送信息包到客户机。(分派器然后将转发 IP 信息包到客户机。)添加服务器时,您必须指定返回地址值。无法更改返回地址,除非您除去服务器然后再次添加。返回地址不能与群集、服务器或 NFA 地址相同。
    注意:
    Returnaddress 仅应用于分派器中。如果您使用 nat 或 cbr 转发方法,那么当将服务器添加到配置中时,您必须指定 returndaddress。
    addr
    返回地址的值。
    advisorrequest
    HTTP 顾问程序使用顾问程序请求字符串以查询服务器的状况。它仅对 HTTP 顾问程序上建议的服务器有效。您必须启动 HTTP 顾问程序以启用此值。请参阅使用请求/响应(URL)选项配置 HTTP 顾问程序以获取更多信息。
    注意:
    Advisorrequest 应用于分派器和 CBR 组件。
    string
    由 HTTP 顾问程序使用的字符串值。缺省值为 HEAD / HTTP/1.0
    注意:
    如果字符串中包含空格 -
    • 当从 dscontrol>> shell 提示下发出命令时,您必须为此字符串加上引号。 例如;server set cluster:port:server advisorrequest "head / http/2.0"
    • 当从操作系统提示符下发出 dscontrol 命令时,您必须在文本之前加上 "\" 且后跟 \""。例如:dscontrol server set cluster:port:server advisorrequest "\"head / http/2.0\""

    advisorresponse
    顾问程序响应 HTTP 顾问程序在 HTTP 响应中扫描的字符串。它仅对 HTTP 顾问程序上建议的服务器有效。您必须启动 HTTP 顾问程序以启用此值。请参阅使用请求/响应(URL)选项配置 HTTP 顾问程序以获取更多信息。
    注意:
    Advisorresponse 应用于分派器和 CBR 组件。
    string
    由 HTTP 顾问程序使用的字符串值。缺省是空。
    注意:
    如果字符串中包含空格 -
    • 当从 dscontrol>> shell 提示下发出命令时,您必须为此字符串加上引号。
    • 当从操作系统提示符下发出 dscontrol 命令时,您必须在文本之前加上 "\" 且后跟 \""
    down
    标记此服务器当机。此命令使所有到该服务器的活动连接都中断并防止任何其它的连接或信息包发送到该服务器。
    remove
    除去此服务器。
    report
    报告此服务器的情况。此报告包含每台服务器的以下信息:当前每秒连接数(CPS)、间隔一秒中转移的千字节数(KBPS)、总连接数(Total)、处于活动状态的连接数(Active)、处于 FIN 状态的连接数(FINed)和任何完成的连接数(Comp)。
    set
    为此服务器设置值。
    status
    显示服务器的状态。
    up
    将此服务器标记为运行。分派器 现在将把新的连接发送到该服务器。

    示例

    dscontrol set - 配置服务器日志

    >>-dscontrol--set--+-loglevel--level--------+------------------><
                       '-logsize--+-unlimited-+-'
                                  '-size------'
     
     
    

    loglevel
    dsserver 记录其活动的级别。
    level
    loglevel 缺省值是 0。范围是 0-5。下列是可能的值:0 是无,1 是最小,2 是基本,3 是中等,4 是高级,5 是详细。
    logsize
    记录到日志文件中的最大字节数。
    size
    logsize 的缺省值是 1 MB。

    dscontrol status - 显示管理器和顾问程序是否在运行

    >>-dscontrol--status-------------------------------------------><
     
     
    

    示例

    dscontrol subagent - 配置 SNMP 子代理程序

    注意:
    dscontrol subagent 命令语法图解应用于分派器组件。
    >>-dscontrol--subagent--+-loglevel--level--------------------+-><
                            +-logsize--+-bytes-----+-------------+
                            |          '-unlimited-'             |
                            +-report-----------------------------+
                            +-start--+-------------------------+-+
                            |        '-community_name--logfile-' |
                            +-status-----------------------------+
                            +-stop-------------------------------+
                            '-version----------------------------'
     
     
    

    loglevel
    子代理程序将其活动记录到文件的级别。
    level
    级别数(0-5)。数字越高,表示写入管理器日志的信息越多。缺省值是 1。下列是可能的值:0 是无,1 是最小,2 是基本,3 是中等,4 是高级,5 是详细。
    logsize
    设置记录到子代理程序日志中的最大字节数。缺省值是 1 MB。当设置日志文件的最大大小时,文件将会回绕;当文件达到指定的大小时,后继条目将从文件顶部开始写入,覆盖以前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便识别用户写入的顺序。设置的日志级别越高,则选择日志大小时应越仔细,因为当在较高级别日志记录时可能会很快地溢出空间。
    bytes
    子代理程序日志文件的最大大小(以字节为单位)。可以指定大于零的正数,或字 unlimited。在覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。缺省值是 unlimited。
    report
    显示统计信息快照报告。
    start
    启动子代理程序。
    community_name
    共用名的 SNMP 值的名称,可以用作安全密码。缺省值为 public。

    对于 Windows 平台:使用操作系统的共用名。

    log file
    记录 SNMP 子代理程序数据的文件名。在日志中的每个记录都带有时间戳记。缺省值为 subagent.log。缺省文件将安装在 logs 目录下。请参阅附录 C, 样本配置文件。要更改日志文件所在的目录,请参阅更改日志文件路径
    status
    显示 SNMP 子代理程序中可全局设置的所有值的当前状态及其缺省。
    version
    显示子代理程序的当前版本。

    示例


    站点选择器的命令参考

    本附录描述如何使用下列站点选择器 sscontrol 命令:

    您可以输入 sscontrol 命令参数的最小化版本。仅需输入参数特有的字母。例如,要获取关于文件保存命令的帮助,您可以输入 sscontrol he f ,而不是 sscontrol help file

    注意:
    命令参数值必须以英文字符输入。唯一的例外是主机名(用于群集和服务器命令中)和文件名(用于文件命令中)。

    sscontrol advisor - 控制顾问程序


    >>-sscontrol--advisor--+-connecttimeout--name--+-port----------+--seconds-------+-><
                           |                       '-sitename:port-'                |
                           +-interval--name--+-port----------+--seconds-------------+
                           |                 '-sitename:port-'                      |
                           +-list---------------------------------------------------+
                           +-loglevel--name--+-port----------+--level---------------+
                           |                 '-sitename:port-'                      |
                           +-logsize--name--+-port----------+--+-size | unlimited-+-+
                           |                '-sitename:port-'  '-bytes------------' |
                           +-receivetimeout--name--+-port----------+--seconds-------+
                           |                       '-sitename:port-'                |
                           +-report--name--+-port----------+------------------------+
                           |               '-sitename:port-'                        |
                           +-retries--name--+-port----------+--numretries-----------+
                           |                '-sitename:port-'                       |
                           +-start--name--+-port----------+--+----------+-----------+
                           |              '-sitename:port-'  '-log file-'           |
                           +-status--name--+-port----------+------------------------+
                           |               '-sitename:port-'                        |
                           +-stop--name--+-port----------+--------------------------+
                           |             '-sitename:port-'                          |
                           +-timeout--name--+-port----------+-----------------------+
                           |                '-sitename:port-'                       |
                           '-version--name--+-port----------+--seconds--------------'
                                            '-sitename:port-'
     
     
    

    connecttimeout
    设置报告连接服务器失败之前顾问程序等待的时间。要获取更多的信息,请参阅服务器的顾问程序连接超时和接收超时
    name
    顾问程序的名称。可能的值包含 httphttpsftpsslsmtpimappop3ldapnntptelnetconnectpingWLMWTE。定制顾问程序的名称格式为 xxxx,其中 ADV_xxxx 是实现定制顾问程序的类名。
    port
    顾问程序正在监视的端口号。
    seconds
    报告连接服务器已失败之前,顾问程序等待时间的正整数(以秒表示)。缺省值是为顾问程序间隔指定的值的 3 倍。
    interval
    设置顾问程序向服务器查询信息的频率。
    seconds
    表示向服务器询问状态的间隔秒数的一个正整数。缺省值是 7 秒。
    list
    显示当前向管理器提供信息的顾问程序列表。
    loglevel
    设置顾问程序日志的记录级别。
    level
    级别数(0-5)。缺省值是 1。数字越大,写到顾问程序日志的信息越多。可能的值是:

    .

    logsize
    设置顾问程序日志的最大大小。当您设置日志文件的最大大小后,文件会回绕;当文件达到指定大小时,后续条目将覆盖先前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便您可以识别写入它们的顺序。设置的日志级别越高,选择日志大小时越要仔细,因为当记录处于较高级别时可能会很快地溢出空间。
    size | unlimited
    顾问程序日志文件的最大大小(以字节为单位)。您可以指定大于 0 的正数,也可以是 unlimited。被覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。缺省值是 1 MB。
    receivetimeout
    设置报告从服务器接收失败之前顾问程序等待的时间。要获取更多的信息,请参阅服务器的顾问程序连接超时和接收超时
    seconds
    报告从服务器接收已失败之前,表示顾问程序等待时间的正整数(以秒计)。缺省值是为顾问程序间隔指定的值的 3 倍。
    report
    显示顾问程序的状态报告。
    retries
    在标记服务器当机之前,顾问程序可进行的重试数。
    numretries
    大于或等于 0 的整数。建议该值不要大于 3。如果未配置重试关键字,则重试数将缺省为 0。
    start
    启动顾问程序。每个协议都有对应的顾问程序。缺省端口是:
    顾问程序名称 协议 端口
    Connect n/a 用户定义的
    db2 private 50000
    ftp FTP 21
    http HTTP 80
    https SSL 443
    imap IMAP 143
    ldap LDAP 389
    nntp NNTP 119
    PING PING 0
    pop3 POP3 110
    smtp SMTP 25
    ssl SSL 443
    telnet Telnet 23
    name
    顾问程序名称。
    sitename:port
    站点名值在顾问程序命令上是可选的;然而,端口值是必需的。如果站点名值未指定,则顾问程序在所有可用的配置站点名上启动运行。如果您指定站点名,顾问程序仅为您指定的站点名启动运行。其它站点名由加号(+)分隔。
    log file
    记录管理数据的文件名。日志中的每条记录都带有时间戳记。

    缺省文件是 advisorname_port.log,例如,http_80.log。要更改存储日志文件的目录,请参阅更改日志文件路径

    对于每个站点名,您仅可以启动一个顾问程序。

    status
    显示顾问程序的当前状态和所有全局值的缺省值。
    stop
    停止顾问程序。
    timeout
    设置管理器认为来自顾问程序的信息有效的秒数。如果管理器发现顾问程序信息比超时期还要旧,则管理器将不再使用该信息来确定顾问程序正监视的端口上的服务器的权值。 此超时的例外是在顾问程序已经通知管理器特定的服务器已当机时。管理器将使用有关此服务器的信息,即使顾问程序信息已经超时。
    seconds
    表示秒数的正数或 unlimited。缺省值是 unlimited。
    version
    显示顾问程序的当前版本。

    示例

    sscontrol file - 管理配置文件

    >>-sscontrol--file--+-delete--filename.ext----------+----------><
                        +-appendload--filename.ext------+
                        +-report------------------------+
                        +-save--filename.ext--+-------+-+
                        |                     '-force-' |
                        '-newload--filename.ext---------'
     
     
    

    delete
    删除文件。
    file.ext
    一个配置文件。

    文件扩展名(.ext)可以是任何您想用的名称并且是可选的。

    appendload
    将配置文件附加到当前配置文件并装入站点选择器。
    report
    有关一个或多个可用文件的报告。
    save
    将站点选择器的当前配置保存到文件。
    注意:
    文件保存到下列目录并从这些目录装入:
    • 基于 UNIX 的平台:/opt/ibm/edge/lb/servers/configurations/ss
    • Windows 平台:C:\Program Files\ibm\edge\lb\servers\configurations\component
    force
    要将您的文件保存到名称相同的现有文件,在保存新文件之前使用 force 以删除现有文件。如果您不使用 force 选项,现有文件不会被覆盖。
    newload
    将新配置文件装入站点选择器。新配置文件将替换当前配置。

    示例

    sscontrol help - 显示或打印此命令的帮助

    >>-sscontrol--help--+-advisor----+-----------------------------><
                        +-file-------+
                        +-help-------+
                        +-host-------+
                        +-logstatus--+
                        +-manager----+
                        +-metric-----+
                        +-nameserver-+
                        +-rule-------+
                        +-server-----+
                        +-set--------+
                        +-sitename---+
                        '-status-----'
     
     
    

    示例

    sscontrol logstatus - 显示服务器日志设置


    >>-sscontrol--logstatus----------------------------------------><
     
     
    

    logstatus
    显示服务器日志设置(日志文件名、日志记录级别和日志大小)。

    sscontrol manager - 控制管理器


    >>-sscontrol--manager--+-interval--seconds----------------------+-><
                           +-loglevel--level------------------------+
                           +-logsize--+-unlimited-+-----------------+
                           |          '-bytes-----'                 |
                           +-metric set--+-loglevel--level--------+-+
                           |             '-logsize--+-unlimited-+-' |
                           |                        '-bytes-----'   |
                           +-reach set--+-interval--seconds------+--+
                           |            +-loglevel--level--------+  |
                           |            '-logsize--+-unlimited-+-'  |
                           |                       '-bytes-----'    |
                           +-report--sitename+sn2+...+snN-----------+
                           +-restart--message-----------------------+
                           +-sensitivity--weight--------------------+
                           +-smoothing--smoothing index-------------+
                           +-start--+----------------------+--------+
                           |        '-logfile--metric_port-'        |
                           +-status---------------------------------+
                           +-stop-----------------------------------+
                           '-version--------------------------------'
     
     
    

    interval
    设置管理器更新服务器权值的频率。
    seconds
    表示管理器更新权值的频率的正数(以秒计)。缺省值是 2。
    loglevel
    设置管理器日志的记录级别。
    level
    级别数(0-5)。数字越高,表示写入管理器日志的信息越多。缺省值是 1。可能的值是:
    logsize
    设置管理器日志的最大大小。当设置日志文件的最大大小后,文件会回绕;当文件达到指定的大小时,后续条目将从文件顶部开始写,覆盖先前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便您可以识别写入它们的顺序。设置的日志级别越高,选择日志大小时越要仔细,因为当记录处于较高级别时可能会很快地溢出空间。
    bytes
    管理器日志文件的最大大小(以字节为单位)。您可以指定大于 0 的正数,也可以是 unlimited。被覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。缺省值是 1 MB。
    metric set
    为度量监视器日志设置 loglevellogsize。loglevel 是度量监视器日志记录级别(0 - 无、1 - 最小、2 - 基本、3 - 中等、4 - 高级或 5 - 详细)。 缺省 loglevel 是 1。logsize 是将记录到度量监视器日志文件中的最大字节数。您可以设置大于零的正数或 unlimited。缺省 logsize 是 1。
    reach set
    为到达顾问程序设置时间间隔、日志级别和日志大小。
    report
    显示统计信息快照报告。
    sitename
    您希望在报告中显示的站点名。这是客户机将请求的不可解析的主机名。站点名必须是全限定的域名。
    注意:
    其它站点名由加号(+)分隔。
    restart
    重新启动所有(未当机的)服务器以规格化权值(最大权值的 1/2)。
    message
    要写入管理器日志文件的消息。
    sensitivity
    设置权值更新的最小灵敏度。此设置定义何时管理器应该为服务器更改其基于外部信息的权值。
    weight
    一个从 0 到 100 的,用作权值百分比的数字。缺省 5 创建最小灵敏度 5%。
    smoothing
    设置指数,它平滑负载均衡时的权值变化。网络条件更改时,较高的平滑指数导致服务器权值更改明显地较少。较低的平滑指数将使服务器权值的更改明显地较多。
    index
    正的浮点数。缺省值是 1.5。
    start
    启动管理器。
    log file
    记录管理器数据的文件名。日志中的每条记录都带有时间戳记。

    缺省文件安装在 logs 目录中。请参阅附录 C, 样本配置文件。要更改日志文件所在的目录,请参阅更改日志文件路径

    metric_port
    度量服务器用于报告系统负载的端口。如果指定度量端口,则必须指定日志文件名。缺省度量端口是 10004。
    status
    显示管理器的当前状态和所有全局值的缺省值。
    stop
    停止管理器。
    version
    显示管理器的当前版本。

    示例

    sscontrol metric - 配置系统度量

    >>-sscontrol--metric--+-add--sitename+sn2+...+snN:metric+metric1+...+metricN--------------+-><
                          +-remove--sitename+sn2+...+snN:metric+metric1+...+metricN-----------+
                          +-proportions--sitename+sn2+...+snN:proportion1 prop2 prop3...propN-+
                          '-status--sitename+sn2+...+snN metric+metric1+...+metricN-----------'
     
     
    

    add
    添加指定的度量。
    sitename
    配置的站点名。其它站点名由加号(+)分隔。
    metric
    系统度量名称。这必须是度量服务器的 script 目录中的可执行文件或脚本文件的名称。
    remove
    除去指定的度量。
    proportions
    当它们组合到服务器的单个系统负载中时,比例确定每个度量与其余比较的重要性。
    status
    显示此度量的当前服务器值。

    示例

    sscontrol nameserver - 控制名称服务器

    >>-sscontrol--nameserver--+-start--+----------------------+-+--><
                              |        '-bindaddress--address-' |
                              +-stop----------------------------+
                              '-status--------------------------'
     
     
    

    start
    启动名称服务器。
    bindaddress
    启动约束到指定地址的名称服务器。名称服务器仅响应到此地址的请求。
    address
    站点选择器框上配置的地址(IP 或符号)。
    stop
    停止名称服务器。
    status
    显示名称服务器的状态。

    sscontrol rule - 配置规则

    >>-sscontrol--rule--+-add--sitename+sn2+...+snN:rule+r2+...+rN--type--value--| value |--| opts |-+-><
                        +-dropserver--sitename+sn2+...+snN:rule+r2+...+rN--server+s2+...+snN---------+
                        +-remove--sitename+sn2+...+snN:rule+r2+...+rN--------------------------------+
                        +-set--sitename+sn2+...+snN:rule+r2+...+rN--| value |--| opts |--------------+
                        +-status--sitename+sn2+...+snN:rule+r2+...+rN--------------------------------+
                        '-useserver--sitename+sn2+...+snN:rule+r2+...+rN--server+s2+...+snN----------'
     
    opts:
     
    |--+---------------------------------+--------------------------|
       +-beginrange--low--endrange--high-+
       +-priority--value-----------------+
       '-metricname--value---------------'
     
     
    

    add
    添加此规则到站点名。
    sitename
    这是客户机将请求的不可解析的主机名。站点名必须是全限定的域名。其它站点名由加号(+)分隔。
    rule
    为规则选择的名称。此名称可以包含任何字母数字字符、下划线、连字号或句点。它可为 1 至 20 个字符并且不能包含任何空格。
    注意:
    附加规则由加号(+)分隔。
    type
    规则类型。
    type
    type 的选项有:

    ip
    此规则基于客户机 IP 地址。

    metricall
    此规则基于服务器设置集中的所有服务器的当前度量值。

    metricavg
    此规则基于服务器集中的所有服务器的当前度量平均值。

    time
    此规则基于时间(按天计)。

    true
    此规则总是为真。将它视为编程逻辑中的 else 语句。
    beginrange
    用于确定规则是否为真的范围中的较小值。
    low
    取决于规则类型。值的类别及其缺省值在此按规则类型列出:

    ip
    客户机的地址,可以是符号名或点分十进制格式。缺省值是 0.0.0.0。

    time
    整数。缺省值是 0,表示午夜。

    metricall
    整数。缺省值是 100。

    metricavg
    整数。缺省值是 100。
    endrange
    用于确定规则是否为真的范围中的较大值。
    high
    取决于规则类型。值的类别及其缺省值在此按规则类型列出:

    ip
    客户机的地址,可以是符号名或点分十进制格式。缺省值为 255.255.255.254。

    time
    整数。缺省值是 24,表示午夜。
    注意:
    当指定时间间隔的开始范围和结束范围时,注意每个值必须为整数 ,仅代表该时间的小时部分;小时内的部分没有指定。因此,要指定一个小时 - 例如 3:00 至 4:00 am - 可以指定开始范围为 3 而结束范围也为 3。这将指定 3:00 开始至 3:59 结束期间的所有时间。指定开始范围为 3 和结束范围为 4 将包括从 3:00 到 4:59 的两个小时时间段。

    metricall
    整数。缺省值为 2 的 32 次幂减 1。

    metricavg
    整数。缺省值为 2 的 32 次幂减 1。
    priority
    复查规则的顺序。
    level
    整数。如果您不指定添加的第一个规则的优先级,站点选择器将它缺省设置为 1。以后添加的规则,按缺省情况,其优先级将计算为 10 + 任何现有规则的当前最低优先级。例如,假设有一个优先级为 30 的现有规则。您添加一个新的规则并将其优先级设置为 25(它的优先级高于优先级 30)。然后添加第三个没有设置优先级的规则。则第三个规则的优先级计算为 40(30 + 10)。
    metricname
    规则的测量度量名称。
    dropserver
    从规则集除去服务器。
    server
    TCP 服务器的 IP 地址,可以是符号名或点分十进制格式。
    注意:
    其它站点名由加号(+)分隔。
    remove
    除去一个或多个规则,二者之间由加号分开。
    set
    为此规则设置值。
    status
    显示一个或多个规则的所有值。
    useserver
    将服务器插入规则集。

    示例

    sscontrol server - 配置服务器

    >>-sscontrol--server--+-add--sitename+sn2+...+snN:server+s2+...+sN--+------------------------+-+-><
                          |                                             +-metricaddress--address-+ |
                          |                                             '-weight--value----------' |
                          +-down--sitename+sn2+...+snN:server+s2+...+sN----------------------------+
                          +-remove--sitename+sn2+...+snN:server+s2+...+sN--------------------------+
                          +-set--sitename+sn2+...+snN:server+s2+...+sN--+------------------------+-+
                          |                                             +-metricaddress--address-+ |
                          |                                             '-weight--value----------' |
                          +-status--sitename+sn2+...+snN:server+s2+...+sN--------------------------+
                          '-up--sitename+sn2+...+snN:server+s2+...+sN------------------------------'
     
     
    

    add
    添加此服务器。
    sitename
    这是客户机请求的不可解析的主机名。站点名必须是全限定的域名。其它站点名由加号(+)分隔。
    server
    TCP 服务器的 IP 地址,可以是符号名或点分十进制格式。
    注意:
    其它服务器由加号(+)分隔。
    metricaddress
    度量服务器的地址。
    address
    服务器的地址,可以是符号名也可以点分十进制格式。
    weight
    一个从 0 到 100 的数(不能超过指定的站点名的最大权值范围值),其表示此服务器的权值。设置权值为零将防止任何新的请求发送到该服务器。 缺省值是指定的站点名的最大权值范围值的 1/2。如果管理器正在运行,此设置将很快被覆盖。
    value
    服务器权值。
    down
    标记此服务器当机。此命令防止任何其它请求被解析到该服务器。
    remove
    除去此服务器。
    set
    为此服务器设置值。
    status
    显示服务器的状态。
    up
    将此服务器标记为运行。站点选择器现在将把新的请求解析到该服务器。

    示例

    sscontrol set - 配置服务器日志

    >>-sscontrol--set--+-loglevel--level--------+------------------><
                       '-logsize--+-unlimited-+-'
                                  '-size------'
     
     
    

    loglevel
    ssserver 记录其活动的级别。
    level
    loglevel 的缺省值是 0。可能的值是:
    logsize
    记录到日志文件中的最大字节数。
    size
    logsize 的缺省值是 1 MB。

    sscontrol sitename - 配置站点名

    >>-sscontrol--sitename--+-add--sitename+sn2+...+snN--+----------------------------------------+-+-><
                            |                            +-cachelife--value-----------------------+ |
                            |                            +-networkproximity--yes | no-------------+ |
                            |                            +-proportions--cpu--memory--port--metric-+ |
                            |                            +-proximitypercentage--value-------------+ |
                            |                            +-stickytime--time-----------------------+ |
                            |                            +-ttl--time------------------------------+ |
                            |                            +-waitforallresponses--yes | no----------+ |
                            |                            '-weightbound--weight--------------------' |
                            +-remove--sitename+sn2+...+snN------------------------------------------+
                            +-set--sitename+sn2+...+snN--+----------------------------------------+-+
                            |                            +-cachelife--value-----------------------+ |
                            |                            +-networkproximity--yes | no-------------+ |
                            |                            +-proportions--cpu--memory--port--metric-+ |
                            |                            +-proximitypercentage--value-------------+ |
                            |                            +-stickytime--time-----------------------+ |
                            |                            +-ttl--time------------------------------+ |
                            |                            +-waitforallresponses--yes | no----------+ |
                            |                            '-weightbound--weight--------------------' |
                            '-status--sitename+sn2+...+snN------------------------------------------'
     
     
    

    add
    添加新站点名。
    sitename
    客户机请求的不能解析的主机名。其它站点名由加号(+)分隔。
    cachelife
    接近响应的总时间将是有效的并保存在高速缓存中。缺省值为 1800。请参阅使用网络接近功能,以获取更多信息。
    value
    表示接近响应在高速缓存中有效和保存的秒数的正数。
    networkproximity
    确定每个服务器的网络接近于请求客户机。 在负载均衡判定中使用此接近响应。设置接近为开或关。请参阅使用网络接近功能,以获取更多信息。
    value
    此选项为是或否。缺省值是否,其意味着网络接近关闭。
    proportions
    设置 cpu、内存、端口(来自任何顾问程序的信息),和由管理器使用的度量服务器的系统度量的重要比例,以设置服务器权值。这些值的每个都以总计百分比表示,该总计总为 100。

    cpu
    每个负载均衡的服务器上使用的 CPU 的百分率(从度量服务器代理程序输入)。

    memory
    每个负载均衡的服务器上使用的内存的百分率(从度量服务器代理程序输入)

    port
    在端口上侦听的顾问程序的输入。

    system
    来自度量服务器的输入。
    proximitypercentage
    设置接近响应与服务器的健康状态(管理器权值)的重要性。请参阅使用网络接近功能,以获取更多信息。
    value
    缺省值是 50。
    stickytime
    客户机将接收首个请求先前返回的相同服务器标识期间的间隔。粘性时间的缺省值是 0,其表示该站点名是无粘性的。
    time
    一个正的非零数字,表示客户机为先前返回的第一个请求接收相同的服务器标识期间经过的秒数。
    ttl
    设置存活的时间。这表明另一个名称服务器多久将高速缓存解析的响应。缺省值是 5。
    value
    表示名称服务器将高速缓存解析的响应的秒数的正数。
    waitforallresponses
    设置响应客户机请求之前,是否等待来自服务器的所有接近响应。请参阅使用网络接近功能,以获取更多信息。
    value
    此选项为是或否。缺省值为是。
    weightbound
    表示可以设置给此站点名上的服务器的最大权值的数字。对于个别服务器使用 server weight 可以重设站点名设置的权值范围值。站点名权值范围的缺省值是 20。
    weight
    权值范围的值。
    set
    设置站点名的特性。
    remove
    除去此站点名。
    status
    显示特定站点名的当前状态。

    示例

    sscontrol status - 显示管理器和顾问程序是否正在运行

    >>-sscontrol--status-------------------------------------------><
     
     
    

    示例


    Cisco CSS 控制器的命令参考

    本附录描述如何使用 Cisco CSS 控制器的以下 ccocontrol 命令:

    您可以通过输入参数特有的字母,以使用 ccocontrol 命令参数的缩写版本。例如,要获取有关文件保存命令的帮助,您可以输入 ccocontrol he f 来替代 ccocontrol help file

    要获取 ccocontrol 命令提示符:输入 ccocontrol

    要结束命令行界面:输入 exitquit

    注意:
    您必须对所有命令参数值使用英文字符。唯一的例外是主机名(用于服务器命令中)和文件名(用于文件命令中)。

    ccocontrol consultant - 配置和控制咨询器

    >>-ccocontrol--consultant--+-add--scID--address--swIPAddr--community--commName-+-><
                               +-binarylog--scID+scID2...--+-report-------------+--+
                               |                           +-set--+-interval--+-+  |
                               |                           |      '-retention-' |  |
                               |                           +-start--------------+  |
                               |                           '-stop---------------'  |
                               +-remove--scID+scID2...-----------------------------+
                               +-report--scID+scID2...-----------------------------+
                               +-set--+-loglevel--level----------------+-----------+
                               |      +-logsize--+-size------+---------+           |
                               |      |          '-unlimited-'         |           |
                               |      +-sensitivity--weight percentage-+           |
                               |      '-sleeptime--sec-----------------'           |
                               +-start--scID+scID2...------------------------------+
                               '-stop--scID+scID2...-------------------------------'
     
     
    

    add
    添加交换机咨询器。
    scID (switchConsultantID)
    用户定义的引用咨询器的字符串。
    address
    咨询器对其提供权值的 Cisco CSS 交换机 IP 地址。
    swIPAddr (switchIPAddress)
    交换机的点分十进制地址。
    community
    SNMP 中用于获取和设置与 Cisco CSS 交换机通信的名称。
    commName
    Cisco CSS 交换机的读/写共用名。
    binarylog
    控制咨询器的二进制日志记录。
    report
    报告二进制日志记录的特征。
    set
    设置信息写入二进制日志的频率(以秒为单位)。 二进制日志记录功能允许配置中定义的每个服务的服务信息存储在二进制日志文件中。只有自上一个记录写到日志以来,经过了指定的日志间隔秒数后,此信息才被写入日志中。缺省二进制日志记录间隔是 60。
    interval
    设置二进制日志中的条目间的秒数。
    retention
    设置保留二进制日志文件的小时数。
    start
    启动二进制日志记录。
    stop
    停止二进制日志记录。
    remove
    除去交换机咨询器。
    report
    报告交换机咨询器的特征。
    set
    设置交换机咨询器的特征。
    loglevel
    设置交换机咨询器记录活动的级别。缺省值是 1。
    level
    级别数从 0 到 5。缺省值是 1。可能的值是:

    0 = 无

    1 = 最小

    2 = 基本

    3 = 中等

    4 = 高级

    5 = 详细

    logsize
    设置记录到日志文件中的最大字节数。缺省值是 1048576。当设置日志文件的最大大小后,文件会回绕;当文件达到指定的大小时,后续条目将从文件顶部开始写,覆盖先前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便您可以识别写入它们的顺序。设置的日志级别越高,选择日志大小时越要仔细,因为当记录处于较高级别时可能会很快地溢出空间。
    size
    记录到咨询器日志中的最大字节数。可以指定大于零的正数,或字 unlimited。覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。
    sensitivity
    表明要使权值更改,在旧权值与新权值之间必须发生的更改量。新权值和旧权值之间的差异必须大于要更改的权值的灵敏度百分率。有效范围是 0 到 100;缺省值是 5。
    weight percentage
    一个从 0 到 100 的整数,表示灵敏度值。
    sleeptime
    设置在两个权值设置周期间的休眠秒数。缺省值是 7 秒。
    sec
    一个整数,表示休眠时间(以秒为单位)。有效范围从 0 到 2,147,460。
    start
    开始收集度量和设置权值。
    stop
    停止收集度量和设置权值。

    示例

    ccocontrol controller - 管理控制器

    >>-ccocontrol--controller--+-report--------------------------+-><
                               '-set--+------------------------+-'
                                      +-loglevel--level--------+
                                      '-logsize--+-size------+-'
                                                 '-unlimited-'
     
     
    

    report
    显示控制器的特征。版本信息显示为此报告的一部分。
    set
    设置控制器的特征。
    loglevel
    设置控制器记录活动的级别。缺省值是 1。
    level
    级别数从 0 到 5。缺省值是 1。可能的值是:

    0 = 无

    1 = 最小

    2 = 基本

    3 = 中等

    4 = 高级

    5 = 详细

    logsize
    设置记录到日志文件中的最大字节数。缺省值是 1048576。当设置日志文件的最大大小后,文件会回绕;当文件达到指定的大小时,后续条目将从文件顶部开始写,覆盖先前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便您可以识别写入它们的顺序。设置的日志级别越高,选择日志大小时越要仔细,因为当记录处于较高级别时可能会很快地溢出空间。
    size | unlimited
    记录到咨询器日志中的最大字节数。可以指定大于零的正数,或字 unlimited。覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。

    示例

    ccocontrol file - 管理配置文件

    >>-ccocontrol--file--+-delete--filename----------+-------------><
                         +-load--filename------------+
                         +-report--------------------+
                         '-save--filename--+-------+-'
                                           '-force-'
     
     
    

    delete
    删除指定的配置文件。
    filename
    一个配置文件。文件扩展名必须是 .xml。如果不指定此扩展名,将假设它。
    load
    装入存储在指定文件中的配置。
    注意:
    装入一个文件,将存储在该文件中的配置附加到运行的配置中。如果您要装入配置,您必须在装入文件前停止并重新启动服务器。
    report
    列出配置文件。
    save
    将当前配置保存到指定的文件。
    注意:
    文件保存到下列目录并从这些目录装入:
    • AIX:/opt/ibm/edge/lb/servers/configurations/cco
    • Linux:/opt/ibm/edge/lb//servers/configurations/cco
    • Solaris:/opt/ibm/edge/lb/servers/configurations/cco
    • Windows:

      安装(缺省)目录:C:\Program Files\ibm\edge\lb\servers\configurations\cco

    force
    保存到现有文件。

    示例

    ccocontrol help - 显示或打印此命令的帮助

    >>-ccocontrol--help--+-controller-------+----------------------><
                         +-consultant-------+
                         +-file-------------+
                         +-help-------------+
                         +-highavailability-+
                         +-metriccollector--+
                         +-ownercontent-----+
                         '-service----------'
     
     
    

    示例

    ccocontrol highavailability - 控制可用性


    >>-ccocontrol--highavailability--+-add--+-address--address---------------+-+-><
                                     |      +-partneraddress--partneraddress-+ |
                                     |      +-port--port---------------------+ |
                                     |      '-role--+-primary---+------------' |
                                     |              '-secondary-'              |
                                     +-dropreach--address----------------------+
                                     +-remove----------------------------------+
                                     +-report----------------------------------+
                                     +-set--+-beatinterval--time-----+---------+
                                     |      +-takeoverinterval--time-+         |
                                     |      +-loglevel--level--------+         |
                                     |      '-logsize--+-size------+-'         |
                                     |                 '-unlimited-'           |
                                     +-start--+-auto---+-----------------------+
                                     |        '-manual-'                       |
                                     +-stop------------------------------------+
                                     +-takeover--------------------------------+
                                     '-usereach--address-----------------------'
     
     
    

    add
    配置高可用性节点、伙伴和到达目标。
    address
    接收工作频率的地址。
    address
    高可用性节点的点分十进制地址。
    partneraddress
    发送工作频率所达的地址。这是在伙伴节点上配置的点分十进制 IP 地址或主机名。此地址用于与伙伴高可用性机器通信。
    address
    伙伴的点分十进制 IP 地址。
    port
    用于与伙伴通信的端口。缺省值是 12345。
    port
    端口号。
    role
    高可用性角色。
    primary | secondary
    主或次角色。
    dropreach
    从高可用性条件除去此到达目标。
    address
    到达目标的点分十进制 IP 地址。
    remove
    从高可用性配置除去节点、伙伴和到达目标。在使用此命令之前必须停止高可用性。
    report
    显示高可用性信息。
    set
    设置高可用性特征。
    beatinterval
    设置发送工作频率到伙伴的频率(以毫秒为单位)。 缺省值是 500。
    time
    表示频率间隔时间(以毫秒为单位)的正整数。
    takeoverinterval
    设置在接管之前必须经过(在此期间不接收工作频率)的时间量(以毫秒为单位)。缺省值是 2000。
    time
    表示接管间隔时间(以毫秒为单位)的正整数。
    loglevel
    设置记录活动的级别。缺省值是 1。
    level
    级别数从 0 到 5。缺省值是 1。可能的值是:

    0 = 无

    1 = 最小

    2 = 基本

    3 = 中等

    4 = 高级

    5 = 详细

    logsize
    设置记录到高可用性日志文件中的最大字节数。缺省值是 1048576。当设置日志文件的最大大小后,文件会回绕;当文件达到指定的大小时,后续条目将从文件顶部开始写,覆盖先前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便您可以识别写入它们的顺序。设置的日志级别越高,选择日志大小时越要仔细,因为当记录处于较高级别时可能会很快地溢出空间。
    size | unlimited
    记录到高可用性日志中的最大字节数。可以指定大于零的正数,或字 unlimited。覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。
    start
    开始使用高可用性。在使用此命令之前必须配置高可用性节点、伙伴和到达目标。
    auto | manual
    确定是使用自动还是手工恢复策略来启动高可用性。
    stop
    停止使用高可用性。
    takeover
    从活动高可用性节点获取控制。
    usereach
    将开始使用高可用性的到达目标地址。添加一个可被 ping 到的到达目标,以便高可用性伙伴可以确定其到达目标的可达性如何。
    address
    到达目标的点分十进制 IP 地址。

    示例

    ccocontrol metriccollector - 配置度量收集器

    >>-ccocontrol--metriccollector--+-report--scID+scID2+...:mN+mN2...--------------------------+-><
                                    '-set--scID+scID2+...:mN+mN2...--+-timeoutconnect--sec----+-'
                                                                     +-loglevel--level--------+
                                                                     +-logsize--+-size------+-+
                                                                     |          '-unlimited-' |
                                                                     +-timeoutreceive--sec----+
                                                                     '-sleeptime--sec---------'
     
     
    

    report
    显示度量收集器的特征。
    scID (switch consultant ID)
    用户定义的引用咨询器的字符串。
    mN (metric name)
    标识提供或定制度量的名称。
    set
    设置度量收集器的特征。
    timeoutconnect
    设置度量收集器在报告连接失败之前等待的时间。
    sec
    表示度量收集器在报告连接服务已失败之前所等待的时间量(以秒为单位)的正整数。
    loglevel
    设置指定的咨询器记录活动的级别。缺省值是 1。
    level
    级别数。缺省值是 1。数字越大,写入咨询器日志的信息越多。可能的值是:

    0 = 无

    1 = 最小

    2 = 基本

    3 = 中等

    4 = 高级

    5 = 详细

    logsize
    设置记录到日志文件中的最大字节数。缺省值是 1048576。当设置日志文件的最大大小后,文件会回绕;当文件达到指定的大小时,后续条目将从文件顶部开始写,覆盖先前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便您可以识别写入它们的顺序。设置的日志级别越高,选择日志大小时越要仔细,因为当记录处于较高级别时可能会很快地溢出空间。
    size | unlimited
    记录到咨询器日志中的最大字节数。可以指定大于零的正数,或字 unlimited。覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。
    timeoutreceive
    设置咨询器在报告从服务接收失败之前等待的时间。
    sec
    表示咨询器在报告从服务接收已失败之前所等待的时间量(以秒为单位)的正整数。
    sleeptime
    设置度量收集器在度量收集周期间的休眠时间(以秒为单位)。
    表示休眠时间秒数的正整数。

    示例

    ccocontrol ownercontent - 控制所有者名称和内容规则

    >>-ccocontrol--ownerContent--+-add--scID:ocN--ownername--oN--contentrule--cN------------------------------+-><
                                 +-metrics--scID+scID2...:ocN+ocN2...--mN--importance--mN2--i2----------------+
                                 +-refresh--scID+scID2...:ocN+ocN2...-----------------------------------------+
                                 +-remove--scID+scID2...:ocN+ocN2...------------------------------------------+
                                 +-report--scID+scID2...:ocN+ocN2...------------------------------------------+
                                 '-set--scID+scID2...:ocN+ocN2...----metric--mN--+------------------------+---'
                                                                                 +-requeststring--string--+
                                                                                 +-responsestring--string-+
                                                                                 '-retry--numretries------'
     
     
    

    add
    将所有者内容添加到指定的咨询器。
    scID (switch consultant ID)
    用户定义的表示咨询器的字符串。
    OCName (ownercontent name)
    用户定义的表示交换机上的所有者名称和内容规则的字符串。
    ownername
    在交换机上配置的名称,标识所有者配置。
    oN (ownername)
    无空格的唯一文本字符串。所有者名称必须与在 Cisco 交换机上指定的名称相同。
    contentrule
    在交换机上配置的名称,标识所有者的内容规则配置。
    cN (contentname)
    无空格的唯一文本字符串。内容名称必须与在 Cisco 交换机上指定的名称相同。
    metrics
    指定用于计算权值和每个度量重要性的度量集。重要性用总计的百分率表示。重要性值的和数必须总计为 100。度量可以是连接数据度量、应用程序顾问程序度量和度量服务器度量的任何组合。缺省是重要性为 50/50 的活动连接(activeconn)和连接率(connrate)度量。
    mN (metricname)
    标识将收集测量值以确定服务器权值的度量收集器名称。

    以下是有效度量名称及其关联端口的列表。

    顾问程序名称 协议 端口
    connect ICMP 12345
    db2 private 50000
    dns DNS 53
    ftp FTP 21
    http HTTP 80
    https SSL 443
    cachingproxy HTTP(通过高速缓存代理) 80
    imap IMAP 143
    ldap LDAP 389
    nntp NNTP 119
    ping PING 0
    pop3 POP3 110
    smtp SMTP 25
    ssl SSL 443
    telnet Telnet 23
    WLM private 10,007
    activeconn n/a n/a
    connrate n/a n/a
    cpuload n/a n/a
    memload n/a n/a
    importance
    表示此度量计算服务器权值的重要性的数(从 0 到 100)。
    refresh
    使用 Cisco CSS 交换机的配置刷新已配置的服务。
    remove
    除去所有者内容
    report
    报告所有者内容的特征。
    set
    设置所有者内容的特征。
    metric
    设置度量的特征。
    mN
    所期望度量的名称。
    requeststring
    设置指定度量的请求字符串。这表示由度量收集器发出的收集度量信息的请求。
    string
    由度量收集器发送到服务器的请求字符串。
    responsestring
    设置指定度量的响应字符串。度量收集器使用指定的响应字符串以比较它从服务器接收到的响应,随后确定服务器的可用性。
    string
    度量收集器用于和接收到的服务器响应相比较的响应字符串。
    retry
    重试设置在标记服务器当机之前可进行的重试数。
    numretries
    大于或等于 0 的整数。建议该值不要大于 3。如果未配置重试关键字,则重试数将缺省为 0。

    示例

    ccocontrol service - 配置服务

    >>-ccocontrol--service--+-report--scID+scID2...:ocN+ocN2...:svc+svc2...---------------------------------+-><
                            '---set--scID+scID2...:ocN+ocN2...:svc+svc2...--+---------------------------+---'
                                                                            +-fixedweight--+-integer-+--+
                                                                            |              '-off-----'  |
                                                                            +-requestsourceip--IPAd-----+
                                                                            +-metricserveraddress--IPAd-+
                                                                            '-metricserverport--portN---'
     
     
    

    report
    显示服务的特征。
    scID (switch consultant ID)
    用户定义的表示咨询器的字符串。
    OCName (ownercontent name)
    用户定义的表示交换机上的所有者名称和内容规则的字符串。
    svc (service)
    用户定义的有关表示服务的交换机的字符串。
    set
    设置服务的特征
    fixedweight
    设置此服务的固定权值。缺省值是 off。
    integer | off
    表示此服务的固定权值的正整数(范围 0 到 10),或指定无固定权值的字 off
    requestsourceip
    设置为应用程序请求从其联系服务的地址。
    IPAd (IP address)
    用于联系服务的 IP 地址,可以是符号名或点分十进制格式。
    metricserveraddress
    设置联系度量服务器请求的服务的地址。
    IPAd (IP address)
    度量服务器的 IP 地址,可以是符号名或点分十进制格式。
    metricserverport
    设置用于联系度量服务器的端口。
    portN (port number)
    用于联系度量服务器的端口号。

    示例


    Nortel Alteon 控制器的命令参考

    本附录描述如何使用 Nortel Alteon 控制器的以下 nalcontrol 命令:

    您可以通过输入参数特有的字母,以使用 nalcontrol 命令参数的缩写版本。例如,要获取有关文件保存命令的帮助,您可以输入 nalcontrol he f,而不是 nalcontrol help file

    要获取 nalcontrol 命令提示符:输入 nalcontrol

    要结束命令行界面:输入 exitquit

    注意:
    您必须对所有命令参数值使用英文字符。唯一的例外是主机名(用于服务器命令中)和文件名(用于文件命令中)。

    nalcontrol consultant - 配置和控制咨询器

    >>-nalcontrol--consultant--+-add--scID--address--swIPAddr--+---------------------------+-+-><
                               |                               +-rcommunity--readCommName--+ |
                               |                               '-wcommunity--writeCommName-' |
                               +-binarylog--scID+scID2...--+-report------------------------+-+
                               |                           +-set--+-interval--interval---+-+ |
                               |                           |      '-retention--retention-' | |
                               |                           +-start-------------------------+ |
                               |                           '-stop--------------------------' |
                               +-remove--scID+scID2...---------------------------------------+
                               +-report--scID+scID2...---------------------------------------+
                               +-set--+--------------------------------+---------------------+
                               |      +-loglevel--level----------------+                     |
                               |      +-logsize--+-size------+---------+                     |
                               |      |          '-unlimited-'         |                     |
                               |      +-sensitivity--weight percentage-+                     |
                               |      '-sleeptime--sec-----------------'                     |
                               +-start--scID+scID2...----------------------------------------+
                               '-stop--scID+scID2...-----------------------------------------'
     
     
    

    add
    添加交换机咨询器。
    scID
    用户定义的引用咨询器的字符串。
    address
    咨询器对其提供权值的 Nortel Alteon Web 交换机 IP 地址。
    swIPAddr
    交换机的点分十进制地址。
    rcommunity
    在 SNMP 中使用的读共用名与 Nortel Alteon Web 交换机通信。 缺省值为 public。
    readCommName
    表示读共用名的字符串,其在 Nortel Alteon Web 交换机上配置。缺省值为 public。
    wcommunity
    在 SNMP 集通信中使用的写共用名
    writeCommName
    表示写共用名的字符串,其在 Nortel Alteon Web 交换机上配置。缺省值是 private。
    binarylog
    控制咨询器的二进制日志记录。
    report
    报告二进制日志记录的特征。
    set
    设置信息写入二进制日志的频率(以秒为单位)。 二进制日志记录功能允许配置中定义的每个服务的服务信息存储在二进制日志文件中。只有自上一个记录写到日志以来,经过了指定的日志间隔秒数后,此信息才被写入日志中。缺省二进制日志记录间隔是 60。
    interval
    设置二进制日志中的条目间的秒数。
    retention
    设置保留二进制日志文件的小时数。
    start
    启动二进制日志记录。
    stop
    停止二进制日志记录。
    remove
    除去交换机咨询器。
    report
    报告交换机咨询器的特征。
    set
    设置交换机咨询器的特征。
    loglevel
    设置交换机咨询器记录活动的级别。缺省值是 1。
    level
    级别数从 0 到 5。缺省值是 1。可能的值是:

    0 = 无

    1 = 最小

    2 = 基本

    3 = 中等

    4 = 高级

    5 = 详细

    logsize
    设置记录到日志文件中的最大字节数。缺省值是 1048576。当设置日志文件的最大大小后,文件会回绕;当文件达到指定的大小时,后续条目将从文件顶部开始写,覆盖先前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便您可以识别写入它们的顺序。设置的日志级别越高,选择日志大小时越要仔细,因为当记录处于较高级别时可能会很快地溢出空间。
    size
    记录到咨询器日志中的最大字节数。可以指定大于零的正数,或字 unlimited。覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。
    sensitivity
    表明要使权值更改,在旧权值与新权值之间必须发生的更改量。新权值和旧权值之间的差异必须大于要更改的权值的灵敏度百分率。有效范围是 0 到 100;缺省值是 5。
    weight percentage
    一个从 0 到 100 的整数,表示灵敏度值。
    sleeptime
    设置在两个权值设置周期间的休眠秒数。缺省值是 7 秒。
    seconds
    一个整数,表示休眠时间(以秒为单位)。有效范围从 0 到 2,147,460。
    start
    开始收集度量和设置权值。
    stop
    停止收集度量和设置权值。

    示例

    nalcontrol controller - 管理控制器

    >>-nalcontrol--controller--+-report--------------------------+-><
                               '-set--+------------------------+-'
                                      +-loglevel--level--------+
                                      '-logsize--+-size------+-'
                                                 '-unlimited-'
     
     
    

    report
    显示控制器的特征。版本信息显示为此报告的一部分。
    set
    设置控制器的特征。
    loglevel
    设置控制器记录活动的级别。缺省值是 1。
    level
    级别数从 0 到 5。缺省值是 1。可能的值是:

    0 = 无

    1 = 最小

    2 = 基本

    3 = 中等

    4 = 高级

    5 = 详细

    logsize
    设置记录到日志文件中的最大字节数。缺省值是 1048576。当设置日志文件的最大大小后,文件会回绕;当文件达到指定的大小时,后续条目将从文件顶部开始写,覆盖先前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便您可以识别写入它们的顺序。设置的日志级别越高,选择日志大小时越要仔细,因为当记录处于较高级别时可能会很快地溢出空间。
    size | unlimited
    记录到咨询器日志中的最大字节数。可以指定大于零的正数,或字 unlimited。覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。

    示例

    nalcontrol file - 管理配置文件

    >>-nalcontrol--file--+-delete--filename-+----------------------><
                         +-load--filename---+
                         +-report-----------+
                         '-save--filename---'
     
     
    

    delete
    删除指定的配置文件。
    filename
    一个配置文件。文件扩展名必须是 .xml。如果不指定此扩展名,将假设它。
    load
    装入存储在指定文件中的配置。
    注意:
    装入一个文件,将存储在该文件中的配置附加到运行的配置中。如果您要装入配置,您必须在装入文件前停止并重新启动服务器。
    report
    列出配置文件。
    save
    将当前配置保存到指定的文件。
    注意:
    文件保存到下列目录并从这些目录装入:
    • AIX:/opt/ibm/edge/lb/servers/configurations/nal
    • Linux:/opt/ibm/edge/lb//servers/configurations/nal
    • Solaris:/opt/ibm/edge/lb/servers/configurations/nal
    • Windows:

      公共安装目录路径 - C:\Program Files\ibm\edge\lb\servers\configurations\nal

      本机安装目录路径 - C:\Program Files\ibm\lb\servers\configurations\nal

    示例

    nalcontrol help - 显示或打印此命令的帮助

    >>-nalcontrol--help--+-controller-------+----------------------><
                         +-consultant-------+
                         +-file-------------+
                         +-help-------------+
                         +-highavailability-+
                         +-metrinalllector--+
                         +-ownercontent-----+
                         '-service----------'
     
     
    

    示例

    nalcontrol highavailability - 控制高可用性


    >>-nalcontrol--highavailability--+-add--+-address--address---------------+-+-><
                                     |      +-partneraddress--partneraddress-+ |
                                     |      +-port--port---------------------+ |
                                     |      '-role--+-primary---+------------' |
                                     |              '-secondary-'              |
                                     +-dropreach--address----------------------+
                                     +-remove----------------------------------+
                                     +-report----------------------------------+
                                     +-set--+-beatinterval--time-----+---------+
                                     |      +-takeoverinterval--time-+         |
                                     |      +-loglevel--level--------+         |
                                     |      '-logsize--+-size------+-'         |
                                     |                 '-unlimited-'           |
                                     +-start--+-auto---+-----------------------+
                                     |        '-manual-'                       |
                                     +-stop------------------------------------+
                                     +-takeover--------------------------------+
                                     '-usereach--address-----------------------'
     
     
    

    add
    配置高可用性节点、伙伴和到达目标。
    address
    接收工作频率的地址。
    address
    高可用性节点的点分十进制地址。
    partneraddress
    发送工作频率所达的地址。这是在伙伴节点上配置的点分十进制 IP 地址或主机名。此地址用于与伙伴高可用性机器通信。
    address
    伙伴的点分十进制 IP 地址。
    port
    用于与伙伴通信的端口。缺省值是 12345。
    port
    端口号。
    role
    高可用性角色。
    primary | secondary
    主或次角色。
    dropreach
    从高可用性条件除去此到达目标。
    address
    到达目标的点分十进制 IP 地址。
    remove
    从高可用性配置除去节点、伙伴和到达目标。在使用此命令之前必须停止高可用性。
    report
    显示高可用性信息。
    set
    设置高可用性特征。
    beatinterval
    设置发送工作频率到伙伴的频率(以毫秒为单位)。 缺省值是 500。
    time
    表示频率间隔时间(以毫秒为单位)的正整数。
    takeoverinterval
    设置在接管之前必须经过(在此期间不接收工作频率)的时间量(以毫秒为单位)。缺省值是 2000。
    time
    表示接管间隔时间(以毫秒为单位)的正整数。
    loglevel
    设置记录活动的级别。缺省值是 1。
    level
    级别数从 0 到 5。缺省值是 1。可能的值是:

    0 = 无

    1 = 最小

    2 = 基本

    3 = 中等

    4 = 高级

    5 = 详细

    logsize
    设置记录到高可用性日志文件中的最大字节数。缺省值是 1048576。当设置日志文件的最大大小后,文件会回绕;当文件达到指定的大小时,后续条目将从文件顶部开始写,覆盖先前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便您可以识别写入它们的顺序。设置的日志级别越高,选择日志大小时越要仔细,因为当记录处于较高级别时可能会很快地溢出空间。
    size | unlimited
    记录到高可用性日志中的最大字节数。可以指定大于零的正数,或字 unlimited。覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。
    start
    开始使用高可用性。在使用此命令之前必须配置高可用性节点、伙伴和到达目标。
    auto | manual
    确定是使用自动还是手工恢复策略来启动高可用性。
    stop
    停止使用高可用性。
    takeover
    从活动高可用性节点获取控制。
    usereach
    将开始使用高可用性的到达目标地址。添加一个可被 ping 到的到达目标,以便高可用性伙伴可以确定其到达目标的可达性如何。
    address
    到达目标的点分十进制 IP 地址。

    示例

    nalcontrol metriccollector - 配置度量收集器

    >>-nalcontrol--metricollector--+-report--scID+scID2+...:mN+mN2...--------------------------+-><
                                   '-set--scID+scID2+...:mN+mN2...--+-connecttimeout--sec----+-'
                                                                    +-loglevel--level--------+
                                                                    +-logsize--+-size------+-+
                                                                    |          '-unlimited-' |
                                                                    +-receivetimeout--sec----+
                                                                    '-sleeptime--sec---------'
     
     
    

    report
    显示度量收集器的特征。
    scID (switch consultant ID)
    用户定义的引用咨询器的字符串。
    mN (metric name)
    标识提供或定制度量的名称。
    set
    设置度量收集器的特征。
    connecttimeout
    设置度量收集器在报告连接失败之前等待的时间。
    sec
    表示度量收集器在报告连接服务已失败之前所等待的时间量(以秒为单位)的正整数。
    loglevel
    设置指定的咨询器记录活动的级别。缺省值是 1。
    level
    级别数。缺省值是 1。数字越大,写入咨询器日志的信息越多。可能的值是:

    0 = 无

    1 = 最小

    2 = 基本

    3 = 中等

    4 = 高级

    5 = 详细

    logsize
    设置记录到日志文件中的最大字节数。缺省值是 1048576。当设置日志文件的最大大小后,文件会回绕;当文件达到指定的大小时,后续条目将从文件顶部开始写,覆盖先前的日志条目。不能将日志大小设置为小于当前日志大小。日志条目带有时间戳记,以便您可以识别写入它们的顺序。设置的日志级别越高,选择日志大小时越要仔细,因为当记录处于较高级别时可能会很快地溢出空间。
    size | unlimited
    记录到咨询器日志中的最大字节数。可以指定大于零的正数,或字 unlimited。覆盖之前,日志文件可能还没有完全到达最大大小,因为日志条目本身大小也不同。
    receivetimeout
    设置咨询器在报告从服务接收失败之前等待的时间。
    sec
    表示咨询器在报告从服务接收已失败之前所等待的时间量(以秒为单位)的正整数。
    sleeptime
    设置度量收集器在度量收集周期间的休眠时间(以秒为单位)。
    sec
    表示休眠时间秒数的正整数。

    示例

    nalcontrol server - 配置服务器

    >>-nalcontrol--serer--+-report--scID+scID2...:svcID+svcID2...:serverID+svrID2...-----------------------------------+-><
                          '---set--scID+scID2...:svcID+svcID2...:serverID+svrID2--+--------------------------------+---'
                                                                                  +-fixedweight--+-integer-+-------+
                                                                                  |              '-off-----'       |
                                                                                  +-requestsourceip--IPAddress-----+
                                                                                  +-metricserveraddress--IPAddress-+
                                                                                  '-metricserverport--portNumber---'
     
     
    

    report
    显示服务器的特征。
    scID
    用户定义的表示咨询器的字符串。
    svcID
    用户定义的表示虚拟服务标识和交换机上的虚拟端口号的字符串。
    serverID
    表示交换机上的服务器的整数。
    set
    设置服务器的特征
    fixedweight
    设置此服务器的固定权值。缺省值是 off。最大的 fixedweight 是 48。
    integer | off
    表示此服务器的固定权值的正整数,或指定无固定权值的字 off
    requestsourceip
    设置为应用程序请求从其联系服务器的地址。
    IPAddress
    用于联系服务器的 IP 地址,可以是符号名或点分十进制格式。
    metricserveraddress
    设置为度量服务器请求从其联系服务器的地址。
    IPAddress
    度量服务器的 IP 地址,可以是符号名或点分十进制格式。
    metricserverport
    设置用于联系度量服务器的端口。
    portNumber
    用于联系度量服务器的端口号。

    示例

    nalcontrol service - 配置服务

    >>-nalcontrol--service--+-add--scID+scID2...:serviceID+svcID2...--vsid--virSvrID--vport--virPortNum------+-><
                            +-metrics--scID+scID2...:svcID+svcID2...--mN--importance--mCN2--i2---------------+
                            +-refresh--scID+scID2...:svcID+svcID2...-----------------------------------------+
                            +-remove--scID+scID2...:svcID+svcID2...------------------------------------------+
                            +-report--scID+scID2...:svcID+svcID2...------------------------------------------+
                            '-set--scID+scID2...:svcID+svcID2...----metric--mN----+-requeststring--string--+-'
                                                                                  +-responsestring--string-+
                                                                                  '-retry--numretries------'
     
     
    

    add
    将服务添加到指定的咨询器。
    scID (switchConsultantID)
    用户定义的引用咨询器的字符串。
    svcID (serviceID)
    用户定义的标识服务的字符串。
    vsid
    虚拟服务标识关键字。
    virSvrID (virtualServerID)
    表示虚拟服务器的交换机数量。
    vport
    虚拟端口关键字。
    virPortNum (virtualPortNumber)
    当前在交换机上配置的服务端口号。
    metrics
    指定用于计算权值和每个度量重要性的度量集。重要性用总计的百分率表示。重要性值的和数必须总计为 100。度量可以是连接数据度量、应用程序顾问程序度量和度量服务器度量的任何组合。缺省是重要性为 50/50 的活动连接(activeconn)和连接率(connrate)度量。
    mN (metric name)
    标识将收集测量值以确定服务器权值的度量收集器名称。

    以下是有效度量名称及其关联端口的列表。

    顾问程序名称 协议 端口
    connect ICMP 12345
    db2 private 50000
    dns DNS 53
    ftp FTP 21
    http HTTP 80
    https SSL 443
    cachingproxy HTTP(通过高速缓存代理) 80
    imap IMAP 143
    ldap LDAP 389
    nntp NNTP 119
    ping PING 0
    pop3 POP3 110
    smtp SMTP 25
    ssl SSL 443
    telnet Telnet 23
    WLM private 10,007
    activeconn n/a n/a
    connrate n/a n/a
    cpuload n/a n/a
    memload n/a n/a
    importance
    表示此度量计算服务器权值的重要性的数(从 0 到 100)。
    refresh
    使用 Nortel Alteon Web 交换机的信息刷新服务。
    remove
    除去服务。
    report
    报告服务的特征。
    set
    设置服务的特征。
    metric
    设置已配置度量的特征。
    mN (metric name)
    所期望度量的名称。
    requeststring
    设置指定度量的请求字符串。这表示由度量收集器发出的收集度量信息的请求。
    string
    由度量收集器发送到服务器的请求字符串。
    responsestring
    设置指定度量的响应字符串。度量收集器使用指定的响应字符串以比较它从服务器接收到的响应,随后确定服务器的可用性。
    string
    度量收集器用于和接收到的服务器响应相比较的响应字符串。
    retry
    重试设置在标记服务器当机之前可进行的重试数。
    numretries
    大于或等于 0 的整数。建议该值不要大于 3。如果未配置重试关键字,则重试数将缺省为 0。

    示例


    附录及附属资料


    附录 A. GUI:一般说明

    在 Load Balancer 图形用户界面(GUI)中,面板的左端显示一个树结构,其中 Load Balancer 在顶层,而分派器、基于内容路由(CBR)、站点选择器、Cisco CSS 控制器和 Nortel Alteon 控制器作为组件。

    有关突出显示每个不同组件的 Load Balancer GUI 的图形示例,请参阅以下内容:

    图 42. 显示分派器组件的 GUI 树结构扩展的图形用户界面(GUI)

    显示分派器组件的 GUI 树结构扩展的 Load Balancer 图形用户界面

    图 43. 显示 CBR 组件的 GUI 树结构扩展的图形用户界面(GUI)

    显示 CBR 组件的 GUI 树结构扩展的 Load Balancer 图形用户界面

    图 44. 显示站点选择器组件的 GUI 树结构扩展的图形用户界面(GUI)

    显示站点选择器组件的 GUI 树结构扩展的 Load Balancer 图形用户界面

    图 45. 显示 Cisco CSS 控制器组件的 GUI 树结构扩展的图形用户界面(GUI)

    显示 Cisco CSS 控制器组件的 GUI 树结构扩展的 Load Balancer 图形用户界面

    图 46. 显示 Nortel Alteon 控制器组件的 GUI 树结构扩展的图形用户界面(GUI)

    显示 Nortel Alteon 控制器组件的 GUI 树结构扩展的 Load Balancer 图形用户界面

    所有组件都可从 GUI 来配置。您可以通过单击鼠标按键 1(通常是左键)在树结构中选择一个元素,然后通过单击鼠标按键 2(通常是右键)显示弹出菜单。还可从位于面板顶部的菜单栏访问树元素的弹出菜单。

    单击加或减号以展开或折叠树结构中的项。

    为了从 GUI 执行命令:从 GUI 树突出显示“主机”节点,并从“主机”弹出菜单中选择发送命令....。.在命令输入字段中,输入您要执行的命令,例如:executor report。在当前会话中运行的命令的结果和历史出现在提供的窗口中。

    面板右侧显示了当前所选元素的状态指示符选项卡。

    要访问帮助,单击 Load Balancer 窗口右上角的问号(?)。


    附录 B. 内容规则(模式)语法

    本附录描述了如何使用 CBR 组件的内容规则(模式)语法和分派器组件的 cbr 转发方法,以及它们的使用方案和示例。


    内容规则(模式)语法:

    仅当您为规则类型选择了“内容”时才适用。

    使用以下限制输入您要使用的模式语法

    保留的关键字

    保留的关键字总是后跟等号 『=』。

    Method
    请求中的 HTTP 方法,例如 GET、POST 等。

    URI
    URL 请求的路径

    Version
    请求的特定版本,HTTP/1.0 或 HTTP/1.1

    Host
    来自主机的值:头。
    注意:
    在 HTTP/1.0 协议中是可选的

    <key>
    分派器能搜索到的任何有效的 HTTP 头名称。HTTP 头的示例是 User-Agent、Connection、Referer 等。

    浏览器目标 http://www.company.com/path/webpage.htm 可能有这样的值:

    Method=GET
    URI=/path/webpage.htm
    Version=HTTP/1.1
    Host=www.company.com
    Connection=Keep-Alive
    Referer=http://www.company.com/path/parentwebpage.htm
    
    注意:
    操作系统的 shell 可以解释特殊字符(例如 &),并在 cbrcontrol 评估它们之前将其转换成备用文本。

    例如,仅当使用 cbrcontrol>> 提示符时以下命令有效。

    rule add 10.1.203.4:80:cbr_prod_rule_ek type content
      pattern client=181.0.153.222&uri=/nipoek/*
    

    使用特殊字符时,对于在操作系统提示符下工作的这个相同命令,模式必须加上双引号(" "),按如下所示:

    cbrcontrol rule add 10.1.203.4:80:cbr_prod_rule_ek type content
      pattern "client=181.0.153.222&uri=/nipoek/*"
    

    如果不使用双引号,当规则保存到 CBR 时某些模式可能被截断。注意当使用 cbrcontrol>> 命令提示符时不支持双引号。

    下列是可能方案的集合和使用模式语法的示例

    方案 1:

    设置一个群集名称涉及一组用于标准 HTML 内容的 Web 服务器,另一组 WebSphere Application Server 的用于 servlet 请求的 Web 服务器,以及一组用于 NSF 文件的 Lotus(R) Notes 服务器。访问客户机数据是必需的,这样可以分辨那些请求的页面。还需要发送它 们到适当的服务器。内容模式匹配规则提供了需要的分离以完成这些任务。配置一系列规则,这样必需的请求分离会自动发生。例如,下列命令完成三个提到的分割:

    >>rule add cluster1:80:servlets type content pattern uri=*/servlet/*priority 1
    >>rule uses cluster1:80:servlets server1+server2
    
    >>rule add cluster1:80:notes type content pattern uri=*.nsf* priority 2
    >>rule uses cluster1:80:notes server3+server4
    
    >>rule add cluster1:80:regular type true priority 3
    >>rule uses cluster1:80:regular server5+server6
    

    如果 NSF 文件的请求到达 Load Balancer,首先检查 servlet 规则,但是不匹配。然后,notes 规则会检查请求,请求返回匹配。客户机在 server3 和 server4 之间负载均衡。

    方案 2

    另一个常见的方案是当主 Web 站点控制几个不同的内部组时。例如,www.company.com/software 包含了不同于 www.company.com/hardware 部分的服务器组和内容。因为请求是全部不基于根 www.company.com 群集的,所以需要内容规则来查找 URI 差异并完成负载均衡。方案的规则和类似于下列命令:

    >>rule add cluster1:80:div1 type content pattern uri=/software/* priority 1
    >>rule uses cluster1:80:div1 server1+server2
    
    >>rule add cluster1:80:div2 type content pattern uri=/hardware/* priority 2
    >>rule uses cluster1:80:div2 server3+server4
    

    方案 3

    某些组合对搜索规则的顺序是敏感的。例如,方案 2 中,客户机基于它们请求路径的目录分割;然而目标目录可能出现在路径的多个级别上且在不同的位置上意思不同。例如,www.company.com/pcs/fixes/softwarewww.company.com/mainframe/fixes/software 是不同的目标。考虑到这种可能性必须定义规则,且不同时捕捉很多方案。例如,在这种情况下,“uri=*/software/*”测试是很广的通配搜索。在下列方式中,可能结构备用规则:

    组合搜索可减少当机:

    >>rule add cluster1:80:pcs type content pattern (uri=/pcs/*)&(uri=*/software/*)
    >>rule uses cluster 1:80:pcs server1
    

    如果没有使用组合,顺序就变得重要了:

    >>rule add cluster1:80:pc1 type content pattern uri=/pcs/*
    >>rule uses cluster1:80:pc1 server2
    

    当“pcs”出现在以后的目录而不是第一个中,第二个规则捕捉。

    >>rule add cluster1:80:pc2 type content pattern uri=/*/pcs/*
    >>rule uses cluster1:80:pc2 server3
    

    大多数情况下,您要用缺省总是为真规则完成规则以捕捉通过其他规则的任何规则。这也可能是一个“对不起,站点当前当机,请稍后再试一次”的服务器,它是所有其它服务器对客户机故障的方案中的服务器。

    >>rule add cluster1:80:sorry type true priority 100
    >>rule uses cluster1:80:sorry server5
    

    附录 C. 样本配置文件

    此附录包含Load Balancer的分派器组件的样本配置文件。


    样本 Load Balancer 配置文件

    样本文件位于 ...ibm/edge/lb/servers/samples/ 目录。

    分派器 配置文件 - AIX、Linux 和 Solaris

    #!/bin/bash
    #
    # configuration.sample - Sample configuration file for the
    Dispatcher component
    #
    #
    # Ensure the root user is the one executing this script.
    #
    # iam=`whoami`
     
    # if [ "$iam" != "root" ]if [ "$iam" != "root" ]
    #  then 
    #  echo "You must login as root to run this script"
    #   exit 2
    # fi 
     
    #
    # First start the server
    #
    # dsserver start
    # sleep 5
     
    #
    # Then start the executor
    #
    # dscontrol executor start
     
    #
    #  The Dispatcher can be removed at any time using the 
    # "dscontrol executor stop" and "dsserver stop" commands to 
    # stop the executor and server respectively prior to removing 
    # the Dispatcher software.
    #
    # The next step in configuring the Dispatcher is to set the 
    # NFA (non-forwarding address) and the cluster address(es).
    #
    # The NFA is used to remotely access the Dispatcher machine 
    # for administration or  configuration purposes.  This 
    # address is required since the Dispatcher will forward  packets 
    # to the cluster address(es).
    # 
    # The CLUSTER address is the hostname (or IP address) to 
    # which remote clients will connect.
    #
    # Anywhere in this file, you may use hostnames and IP 
    # addresses interchangeably.
    #
     
    # NFA=hostname.domain.name
    # CLUSTER=www.yourcompany.com
     
    # echo "Loading the non-forwarding address"
    # dscontrol executor set nfa $NFA
     
    #
    #  The next step in configuring the Dispatcher is to create 
    # a cluster.  The Dispatcher will route requests sent to 
    # the cluster address to the corresponding server machines
    # defined to that cluster.  You may configure and server 
    # multiple cluster address using Dispatcher. 
     
    # Use a similar configuration for CLUSTER2, CLUSTER3, etc.
    #
     
    # echo "Loading first CLUSTER address "
    # dscontrol cluster add $CLUSTER
     
    #
    # Now we must define the ports this cluster will use.  Any 
    # requests received by the Dispatcher on a defined port will 
    # be forwared to the corresponding port of one of the server 
    # machines.
    #
     
    # echo "Creating ports for CLUSTER: $CLUSTER"
     
    # dscontrol port add $CLUSTER:20+21+80
     
    #
    # The last step is to add each of the server machines to the 
    # ports in this cluster.
    # Again, you can use either the hostname or the IP address 
    # of the server machines.
    #
     
    # SERVER1=server1name.domain.name
    # SERVER2=server2name.domain.name 
    # SERVER3=server3name.domain.name
     
    # echo "Adding server machines"
    # dscontrol server add $CLUSTER:20+21+80:
    # $SERVER1+$SERVER2+$SERVER3
     
    #
    #  We will now start the load balancing components of the 
    # Dispatcher.  The main load  balancing component is called 
    # the manager and the second load balancing components are the 
    # advisors.  If the manager and advisors are not running the 
    # Dispatcher sends requests in a round-robin format.  Once the 
    # manager is started, weighting decisions based on the number 
    # of new and active connections is employed and incoming 
    # requests are sent to the best server.  The advisors give the 
    # manager further insight into a servers ability to service 
    # requests as well as detecting whether a server is up.  If
    # an advisor detects that a server is down it will be 
    # marked down (providing the manager proportions have been 
    # set to include advisor input) and no further requests will be
    # routed to the server.
     
    #  The last step in setting up the load balancing components 
    # is to set the manager proportions.  The manager updates the 
    # weight of each of the servers based on four policies:
    #   1. The number of active connections on each server.
    #   2. The number of new connections to each server.
    #   3. Input from the advisors.
    #   4. Input from the system level advisor.
    # These proportions must add up to 100.  As an example, setting 
    # the manager proportions to
    #    dscontrol manager proportions 48 48 0 0
    # will give active and new connections 48% input into the 
    # weighting decision, the advisors will contribute 4% and 
    # the system input will not be considered.
    #
    # NOTE: By default the manager proportions are set to 50 50 0 0
    #
     
    # echo "Starting the manager..."
    # dscontrol manager start
     
    # echo "Starting the FTP advisor on port 21 ..."
    # dscontrol advisor start ftp 21
    # echo "Starting the HTTP advisor on port 80 ..."
    # dscontrol advisor start http 80
    # echo "Starting the Telnet advisor on port 23 ..."
    # dscontrol advisor start telnet 23
    # echo "Starting the SMTP advisor on port 25 ..."
    # dscontrol advisor start smtp 25
    # echo "Starting the POP3 advisor on port 110 ..."
    # dscontrol advisor start pop3 110
    # echo "Starting the NNTP advisor on port 119 ..."
    # dscontrol advisor start nntp 119
    # echo "Starting the SSL advisor on port 443 ..."
    # dscontrol advisor start ssl 443
    #
     
    # echo "Setting the manager proportions..."
    # dscontrol manager proportions 58 40 2 0
     
    #
    # The final step in setting up the Dispatcher machine is to 
    # alias the Network Interface Card (NIC).
    #
    # NOTE: Do NOT use this command in a high availability 
    # environment.  The go* scripts will configure the NIC and 
    # loopback as necessary.
    # dscontrol executor configure $CLUSTER
     
    #  If your cluster address is on a different NIC or subnet 
    from the NFA use the following format for the cluster configure 
    command.
    #  dscontrol executor configure $CLUSTER tr0 0xfffff800
    # where tr0 is your NIC (tr1 for the second token ring card, en0 
    # for the first ethernet card) and 0xfffff800 is a valid 
    # subnet mask for your site.
    #
     
    #
    # The following commands are set to the default values.  
    # Use these commands as a guide to change from the defaults.
    #  dscontrol manager loglevel    1
    #  dscontrol manager logsize     1048576
    #  dscontrol manager sensitivity 5.000000
    #  dscontrol manager interval    2
    #  dscontrol manager refresh     2
    #
    #  dscontrol advisor interval ftp  21  5
    #  dscontrol advisor loglevel ftp  21  1
    #  dscontrol advisor logsize  ftp  21  1048576
    #  dscontrol advisor timeout  ftp  21  unlimited
    #  dscontrol advisor interval telnet 23 5
    #  dscontrol advisor loglevel telnet 23 1
    #  dscontrol advisor logsize  telnet 23 1048576
    #  dscontrol advisor timeout  telnet 23 unlimited
    #  dscontrol advisor interval smtp 25  5
    #  dscontrol advisor loglevel smtp 25  1
    #  dscontrol advisor logsize  smtp 25  1048576
    #  dscontrol advisor timeout  smtp 25  unlimited
    #  dscontrol advisor interval http 80  5
    #  dscontrol advisor loglevel http 80  1
    #  dscontrol advisor logsize  http 80  1048576
    #  dscontrol advisor timeout  http 80  unlimited
    #  dscontrol advisor interval pop3 110 5    
    #  dscontrol advisor loglevel pop3 110 1
    #  dscontrol advisor logsize  pop3 110 1048576
    #  dscontrol advisor timeout  pop3 110 unlimited
    #  dscontrol advisor interval nntp 119 5
    #  dscontrol advisor loglevel nntp 119 1
    #  dscontrol advisor logsize  nntp 119 1048576
    #  dscontrol advisor timeout  nntp 119 unlimited
    #  dscontrol advisor interval ssl  443 5
    #  dscontrol advisor loglevel ssl  443 1
    #  dscontrol advisor logsize  ssl  443 1048576
    #  dscontrol advisor timeout  ssl  443 unlimited
    #
     
    

    分派器 配置文件 - Windows

    以下是使用 Window 时的样本 Load Balancer 配置文件,称为 configuration.cmd.sample

    @echo off
    rem configuration.cmd.sample - Sample configuration file for the
    rem Dispatcher component.
    rem
     
    rem dsserver must be started via Services
     
    rem
     
    rem
    rem Then start the executor
    rem
    rem call dscontrol executor start
     
    rem
     
    rem The next step in configuring the Dispatcher is to set the
    rem NFA (non-forwarding address) and to set the cluster 
    rem address(es).
    rem
     
    rem The NFA is used to remotely access the Dispatcher 
    rem machine for administration configuration purposes.  This 
    rem address is required since the Dispatcher will forward 
    rem packets to the cluster address(es).
     
    rem
    rem The CLUSTER address is the hostname (or IP address) to which 
    rem remote clients will connect.
    rem
     
    rem Anywhere in this file, you may use hostnames and IP 
    rem addresses interchangeably. 
    rem NFA=[non-forwarding address]
    rem CLUSTER=[your clustername]
    rem
     
    rem set NFA=hostname.domain.name
    rem set CLUSTER=www.yourcompany.com
     
    rem echo "Loading the non-forwarding address"
    rem call dscontrol executor set nfa %NFA%
     
    rem
    rem The following commands are set to the default values.
    rem Use these commands to change the defaults
     
    rem  call dscontrol executor set fintimeout 30
    rem  call dscontrol executor set fincount 4000
    rem
    rem The next step in configuring the Dispatcher is to create 
    rem a cluster.  The Dispatcher will route requests sent to 
    rem the cluster address to the corresponding server machines 
    rem defined to that cluster.  You may configure and server
    rem multiple cluster addresses using Dispatcher.
    rem Use a similar configuration for CLUSTER2, CLUSTER3, etc.
    rem
     
    rem echo "Loading first CLUSTER address "
    rem call dscontrol cluster add %CLUSTER%
     
    rem
    rem Now we must define the ports this cluster will use. Any 
    rem requests received by the Dispatcher on a defined port 
    rem will be forwarded to the corresponding
    rem port of one of the server machines.
    rem
     
    rem echo "Creating ports for CLUSTER: %CLUSTER%"
    rem call dscontrol port add %CLUSTER%:20+21+80
     
    rem
    rem The last step is to add each of the server machines to 
    rem the ports in this cluster.  Again, you can use either the 
    rem hostname or the IP address of the server machines.
    rem
     
    rem set SERVER1=server1name.domain.name
    rem set SERVER2=server2name.domain.name
    rem set SERVER3=server3name.domain.name
     
    rem echo "Adding server machines"
    rem call dscontrol server add %CLUSTER%:20+21+80:
    rem %SERVER1%+%SERVER2%+%SERVER3%
     
    rem
    rem  We will now start the load balancing components of the 
    rem Dispatcher.  The main load balancing component is called 
    rem the manager and the second load balancing components are the 
    rem advisors.  If the manager and advisors are not
    rem running the Dispatcher sends requests in a round-robin 
    rem format.  Once the manager is started, weighting decisions 
    rem based on the number of new and active connections is 
    rem employed and incoming requests are sent to the best
    rem server.  The advisors give the manager further insight 
    rem into a servers ability to service requests as well as 
    rem detecting whether a server is up.  If an advisor detects 
    rem that a server is down it will be marked down (providing the
    rem manager proportions have been set to include advisor 
    rem input) and no further requests will be routed to the server.
    rem The last step in setting up the load balancing 
    rem components is to set the manager proportions.  The 
    rem manager updates the weight of each of the servers based 
    rem on four policies:
     
    rem   1.  The number of active connections on each server
    rem   2.  The number of new connections for each server
    rem   3.  Input from the advisors.
    rem   4.  Input from the system level advisor.
    rem
    rem  These proportions must add up to 100.  As an example, 
    rem  setting the cluster proportions via
    rem      dscontrol cluster set <cluster> proportions 48 48 4 0
    rem  will give active and new connections 48% input into the 
    rem  weighting decision, the advisor will contribute 4% and 
    rem  the system input will not be considered.
    rem
    rem NOTE: By default the manager proportions are set to 
    rem 50 50 0 0
     
    rem echo "Starting the manager..."
    rem call dscontrol manager start
     
    rem echo "Starting the FTP advisor on port 21 ..."
    rem call dscontrol advisor start ftp 21
    rem echo "Starting the HTTP advisor on port 80 ..."
    rem call dscontrol advisor start http 80
    rem echo "Starting the Telnet advisor on port 23 ..."
    rem call dscontrol advisor start telnet 23
    rem echo "Starting the SMTP advisor on port 25 ..."
    rem call dscontrol advisor start smtp 25
    rem echo "Starting the POP3 advisor on port 110 ..."
    rem call dscontrol advisor start pop3 110
    rem echo "Starting the NNTP advisor on port 119 ..."
    rem call dscontrol advisor start nntp 119
    rem echo "Starting the SSL advisor on port 443 ..."
    rem call dscontrol advisor start ssl 443
    rem
     
    rem echo "Setting the cluster proportions..."
    rem call dscontrol cluster set %CLUSTER% proportions 58 40 2 0
     
    rem
    rem The final step in setting up the Dispatcher machine is
    rem  to alias the Network Interface Card (NIC).
    rem
    rem NOTE: Do NOT use this command in a high availability 
    rem environment.  The go* scripts will configure the NIC and 
    rem loopback as necessary.
    rem
    rem dscontrol executor configure %CLUSTER%
     
    rem  If your cluster address is on a different NIC or subnet 
    rem  from the NFA use the following format for the cluster 
    rem  configure command.
    rem  dscontrol executor configure %CLUSTER% tr0 0xfffff800
    rem  where tr0 is your NIC (tr1 for the second token ring card,
    rem  en0 for the first ethernet card) and 0xfffff800 is 
    rem  a valid subnet mask for your site.
    rem
     
    rem
    rem The following commands are set to the default values.
    rem Use these commands to guide to change from the defaults.
    rem call dscontrol manager loglevel    1
    rem call dscontrol manager logsize     1048576
    rem call dscontrol manager sensitivity 5.000000
    rem call dscontrol manager interval    2
    rem call dscontrol manager refresh     2
    rem
    rem call dscontrol advisor interval ftp  21  5
    rem call dscontrol advisor loglevel ftp  21  1
    rem call dscontrol advisor logsize  ftp  21  1048576
    rem call dscontrol advisor timeout  ftp  21  unlimited
    rem call dscontrol advisor interval telnet 23 5
    rem call dscontrol advisor loglevel telnet 23 1
    rem call dscontrol advisor logsize  telnet 23 1048576
    rem call dscontrol advisor timeout  telnet 23 unlimited
    rem call dscontrol advisor interval smtp 25  5
    rem call dscontrol advisor loglevel smtp 25  1
    rem call dscontrol advisor logsize  smtp 25  1048576
    rem call dscontrol advisor timeout  smtp 25  unlimited
    rem call dscontrol advisor interval http 80  5
    rem call dscontrol advisor loglevel http 80  1
    rem call dscontrol advisor logsize  http 80  1048576
    rem call dscontrol advisor timeout  http 80  unlimited
    rem call dscontrol advisor interval pop3 110 5
    rem call dscontrol advisor loglevel pop3 110 1
    rem call dscontrol advisor logsize  pop3 110 1048576
    rem call dscontrol advisor timeout  pop3 110 unlimited
    rem call dscontrol advisor interval nntp 119 5
    rem call dscontrol advisor loglevel nntp 119 1
    rem call dscontrol advisor logsize  nntp 119 1048576
    rem call dscontrol advisor timeout  nntp 119 unlimited
    rem call dscontrol advisor interval ssl  443 5
    rem call dscontrol advisor loglevel ssl  443 1
    rem call dscontrol advisor logsize  ssl  443 1048576
    rem call dscontrol advisor timeout  ssl  443 unlimited
    rem
     
    

    样本顾问程序

    下面是一个样本顾问程序文件,名为 ADV_sample

    /**
     * ADV_sample:  The Load Balancer HTTP advisor
     * 
     * 
     * This class defines a sample custom advisor for Load Balancer.  Like all
     * advisors, this custom advisor extends the function of the advisor base,
     * called ADV_Base.  It is the advisor base that actually performs most of
     * the advisor's functions, such as reporting loads back to the Load Balancer
     * for use in the Load Balancer's weight algorithm.  The advisor base also
     * performs socket connect and close operations and provides send and receive 
     * methods for use by the advisor.  The advisor itself is used only for
     * sending and receiving data to and from the port on the server being
     * advised.  The TCP methods within the advisor base are timed to calculate 
     * the load.  A flag within the constructor in the ADV_base overwrites the 
     * existing load with the new load returned from the advisor if desired.
     *
     * Note: Based on a value set in the constructor, the advisor base supplies
     * the load to the weight algorithm at specified intervals.  If the actual
     * advisor has not completed so that it can return a valid load, the advisor 
     * base uses the previous load.
     *  
     * NAMING 
     * 
     * The naming convention is as follows:
     *
     *  - The file must be located in the following Load Balancer directory:
     *   
     *    lb/servers/lib/CustomAdvisors/ (lb\servers\lib\CustomAdvisors on Windows)
     *
     * - The Advisor name must be preceded with "ADV_".  The advisor can be 
     *    started with only the name, however; for instance, the "ADV_sample"
     *    advisor can be started with "sample".
     *
     * - The advisor name must be in lowercase.
     *
     *  With these rules in mind, therefore, this sample is referred to as:
     * 
     *    <base directory>/lib/CustomAdvisors/ADV_sample.class
     *
     *
     
    
     * Advisors, as with the rest of Load Balancer, must be compiled with the 
     * prereq version of Java.  To ensure access to Load Balancer classes, make
     * sure that the ibmnd.jar file (located in the lib subdirectory of the base
     * directory) is included in the system's CLASSPATH.
     *
     * Methods provided by ADV_Base:
     * 
     * - ADV_Base (Constructor):
     *
     *   - Parms
     *     - String sName = Name of the advisor
     *     - String sVersion = Version of the advisor
     *     - int iDefaultPort = Default port number to advise on
     *     - int iInterval = Interval on which to advise on the servers
     *     - String sDefaultName = Unused.  Must be passed in as "".
     *     - boolean replace = True - replace the load value being calculated 
     *                                by the advisor base
     *	                     False - add to the load value being calculated 
     *                                by the advisor base
     *   - Return
     *     - Constructors do not have return values.
     *
     * Because the advisor base is thread based, it has several other methods 
     * available for use by an advisor.  These methods can be referenced using 
     * the CALLER parameter passed in getLoad().
     *
     * These methods are as follows:
     * 
     * - send - Send a packet of information on the established socket connection
     *           to the server on the specified port.
     *   - Parms
     *     - String sDataString - The data to be sent in the form of a string
     *   - Return
     *     - int RC - Whether the data was sucessfully sent or not: zero indicates
     *                 data was sent; a negative integer indicates an error.
     * 
     * - receive - Receive information from the socket connection.
     *   - Parms
     *     - StringBuffer sbDataBuffer - The data received during the receive call
     *   - Return
     *     - int RC - Whether the data was successfully received or not; zero 
     *                indicates data was sent; a negative integer indicates
     *                an error.
     *
     * If the function provided by the advisor base is not sufficient, 
     * you can create the appropriate function within the advisor and
     * the methods provided by the advisor base will then be ignored.  
     *
     * An important question regarding the load returned is whether to apply 
     * it to the load being generated within the advisor base, 
     * or to replace it; there are valid instances of both situations.
     * 
     * This sample is essentially the Load Balancer HTTP advisor. It functions
     * very simply: a send request--an http head request--is issued.  Once a
     * response is received, the getLoad method terminates, flagging the advisor
     * base to stop timing the request.  The method is then complete.  The
     * information returned is not parsed; the load is based on the time
     * required to perform the send and receive operations.
     */
     
    package CustomAdvisors;
    import com.ibm.internet.nd.advisors.*;
     
    public class ADV_sample extends ADV_Base implements ADV_MethodInterface
    {
      String COPYRIGHT = 
                "(C) Copyright IBM Corporation 1997, All Rights Reserved.\n";
     
      static final String  ADV_NAME              = "Sample";
      static final int     ADV_DEF_ADV_ON_PORT   = 80;
      static final int     ADV_DEF_INTERVAL      = 7;
     
      // Note: Most server protocols require a carriage return ("\r") and line 
      //       feed ("\n") at the end of messages.  If so, include them in
      //       your string here.
      static final String  ADV_SEND_REQUEST      = 
        "HEAD / HTTP/1.0\r\nAccept: */*\r\nUser-Agent: " +
        "IBM_Load_Balancer_HTTP_Advisor\r\n\r\n";
     
      /**
       * Constructor.
       *
       * Parms:  None; but the constructor for ADV_Base has several parameters 
       * that must be passed to it.
       *
       */
      public ADV_sample()
      {
        super( ADV_NAME,
    		   "2.0.0.0-03.27.98",
               ADV_DEF_ADV_ON_PORT,
               ADV_DEF_INTERVAL,
               "",     // not used
               false);
        super.setAdvisor( this );
      }
     
     
      /**
       * ADV_AdvisorInitialize
       *
       * Any Advisor-specific initialization that must take place after the 
       * advisor base is started. This method is called only once and is 
       * typically not used.
       */
      public void ADV_AdvisorInitialize()
      {
        return;
      }
     
     
      /**
       * getLoad()
       *
       * This method is called by the advisor base to complete the advisor's 
       * operation, based on details specific to the protocol.  In this sample 
       * advisor, only a single send and receive are necessary; if more complex 
       * logic is necessary, multiple sends and receives can be issued.  For
       * example, a response might be received and parsed.  Based on the 
       * information learned thereby, another send and receive could be issued.
       *
       * Parameters:
       * 
       * - iConnectTime - The current load as it refers to the length of time it 
       *                  took to complete the connection to the server through 
    ]   *                  the specified port.
       *
       * - caller - A reference to the advisor base class where the Load 
       *            Balancer-supplied methods are to perform simple TCP requests,
       *            mainly send and receive.
       *
       * Results:
       *
       * - The load - A value, expressed in milliseconds, that can either be added
       *   to the existing load, or that can replace the existing load, as 
       *   determined by the constructor's "replace" flag.
       *
       *   The larger the load, the longer it took the server to respond; 
       *   therefore, the lower the weight will become within the Load Balancer.
       *
       *   If the value is negative, an error is assumed.  An error from an 
       *   advisor indicates that the server the advisor is trying to reach is not
       *   accessible and has been identified as being down.  Load Balancer will
       *   not attempt to load balance to a server that is down. Load Balancer will 
       *   resume load balancing to the server when a positive value is received.
       *
       */
      public int getLoad(int iConnectTime, ADV_Thread caller)
      {
    	int iRc;
    	int iLoad = ADV_HOST_INACCESSIBLE;  // -1
     
    	// Send tcp request
    	iRc = caller.send(ADV_SEND_REQUEST);
    	if (iRc >= 0)
        {
    		// Perform a receive
    		StringBuffer sbReceiveData = new StringBuffer("");
    		iRc = caller.receive(sbReceiveData);
     
          /**
          *  In the normal advisor mode ("replace" flag is false), the load
          *  returned is either 0 or 1 indicating the server is up or down. 
          *  If the receive is successful, a load of zero is returned
          *  indicating that the load built within the base advisor is to be used.
          * 
          *  Otherwise ("replace" flag is true), return the desired load value.
          */
     
    	if (iRc >= 0)
          {
    			iLoad = 0;
          }
        }
    	return iLoad;
      }
     
    } // End - ADV_sample                                                     
     
    

    附录 D. 使用分派器、CBR 和高速缓存代理时的 2 层高可用性配置示例

    本附录描述了如何设置联合两个 Load Balancer 组件(分派器组件和 CBR 组件)能力的 2 层高可用性配置,以与高速缓存代理一起使用。


    服务器设置

    图 47. 使用分派器、CBR 和高速缓存代理时的 2 层高可用性配置示例

    使用分派器、CBR 和高速缓存代理时的高可用性配置

    图 47 的服务器设置如下所示:

    图 47 显示对多个后端 Web 服务器进行负载均衡的多个服务器(EdgeServer1,EdgeServer2,EdgeServer3)的基本表示法。CBR 组件使用高速缓存代理,以根据 URL 内容将请求转发到后端 Web 服务器。分派器组件用于对 EdgeServer 间的 CBR 组件进行负载均衡。分派器组件的高可用性功能用于确保当主高可用性机器(EdgeServer1)发生故障时,请求能继续转发到后端服务器。

    基本配置准则:

    注意:
    1. 要避免后端服务器地址显示在客户机上的 URL 中,您需要为高速缓存代理配置文件中的每台后端服务器地址设置 ReversePass 伪指令。
    2. 为了确保有效地使用 Web 内存高速缓存,将高速缓存代理配置文件中的“Caching”伪指令设置成“ON”并将“CacheMemory”伪指令增加到请求的大小。
    3. 在注意事项 1 - 4(以上)中应用的样本行为:
      Caching              ON
      CacheMemory          128000 K
      ReversePass /* http://websrvA.company.com/* http://www.company.com/*
      
    4. 记得为 EdgeServer1 建立网络接口卡上群集地址的别名,并建立其余 EdgeServer 回送设备上群集地址的别名。
    5. 如果对 EdgeServer 使用 Linux 平台,您需要为 Linux 内核安装补丁。要获取更多的信息,请参阅安装 Linux 内核补丁(以抑制 arp 回送接口上的响应)
    6. 对于 CBR,使用内容规则时不能使用端口亲缘性(粘性时间),否则处理后端 Web 服务器的请求时不会激发内容规则。

    样本配置文件:

    以下样本配置文件类似于设置 Edge Component 配置时所创建的文件,如图 47 中所示。样本配置文件代表 Load Balancer 的分派器和 CBR 组件的文件。在样本配置中,每台 EdgeServer 机器都使用了单独的以太网适配器,且所有地址都用专用子网表示。 样本配置文件使用了指定机器的下列 IP 地址:

    主高可用性 EdgeServer 上的分派器组件的样本配置文件:

      dscontrol executor start
     
    dscontrol cluster add 192.168.1.11 primaryhost 192.168.1.10
     
    dscontrol port add 192.168.1.11:80
     
    dscontrol server add 192.168.1.11:80:edgeserver1 address 192.168.1.10
     
    dscontrol server add 192.168.1.11:80:edgeserver2 address 192.168.1.20
     
    dscontrol server add 192.168.1.11:80:edgeserver3 address 192.168.1.30
     
    dscontrol manager start manager.log 10004
     
    dscontrol highavailability heartbeat add 192.168.1.10 192.168.1.20
    dscontrol highavailability backup add primary auto 4567
     
     
    

    EdgeServer 上的 CBR 组件的样本配置文件:

    cbrcontrol set loglevel 1
    cbrcontrol executor start
     
    cbrcontrol cluster add 192.168.1.11
     
    cbrcontrol port add 192.168.1.11:80
     
    cbrcontrol server add 192.168.1.11:80:webserverA address 192.168.1.71
     
    cbrcontrol server add 192.168.1.11:80:webserverB address 192.168.1.72
     
    cbrcontrol server add 192.168.1.11:80:webserverC address 192.168.1.73
     
    cbrcontrol rule add 192.168.1.11:80:webA_rule type content 
      pattern (URI=*WSA*)|(URI=*wsA*) priority 21 
    cbrcontrol rule useserver 192.168.1.11:80:webA_rule webserverA
     
    cbrcontrol rule add 192.168.1.11:80:webB_rule type content 
      pattern (URI=/WS_B*) priority 22 
    cbrcontrol rule useserver 192.168.1.11:80:webB_rule webserverB
     
    cbrcontrol rule add 192.168.1.11:80:webC_rule type content 
      pattern URI=*webC* priority 23 
    cbrcontrol rule useserver 192.168.1.21:80:webC_rule webserverC
     
    

    附录 E. 声明

    本信息是为在美国提供的产品和服务编写的。

    IBM 可能在其它国家或地区不提供本文档中讨论的产品、服务或功能特性。有关您当前所在区域的产品和服务的信息,请向您当地的 IBM 代表咨询。任何对 IBM 产品、程序或服务的引用并非意在明示或暗示只能使用 IBM 的产品、程序或服务。 只要不侵犯 IBM 的知识产权,任何同等功能的产品、程序或服务,都可以代替 IBM 产品、程序或服务。但是,评估和验证任何非 IBM 产品、程序或服务,则由用户自行负责。

    IBM 公司可能已拥有或正在申请与本文档内容有关的各项专利。提供本文档并未授予用户使用这些专利的任何许可证。您可以用书面方式将许可证查询寄往:
    IBM Director of Licensing
    IBM Corporation
    500 Columbus Avenue
    Thornwood, NY 10594
    U.S.A.

    有关双字节(DBCS)信息的许可证查询,请与您所在国家或地区的 IBM 知识产权部门联系,或用书面方式将查询寄往:
    IBM World Trade Asia Corporation
    Licensing
    2-31 Roppongi 3-chome, Minato-ku
    Tokyo 106, Japan

    本条款不适用英国或任何这样的条款与当地法律不一致的国家或地区:

    国际商业机器公司以“按现状”的基础提供本出版物,不附有任何形式的(无论是明示的,还是默示的)保证,包括(但不限于)对非侵权性、适销性和适用于某特定用途的默示保证。某些国家或地区在某些交易中不允许免除明示或默示的保证。因此本条款可能不适用于您。

    本信息中可能包含技术方面不够准确的地方或印刷错误。此处的信息将定期更改;这些更改将编入本资料的新版本中。IBM 可以随时对本资料中描述的产品和/或程序进行改进和/或更改,而不另行通知。

    本信息中对非 IBM Web 站点的任何引用都只是为了方便起见才提供的,不以任何方式充当对那些 Web 站点的保证。那些 Web 站点中的资料不是 IBM 产品资料的一部分,使用那些 Web 站点带来的风险将由您自行承担。

    IBM 可以按它认为适当的任何方式使用或分发您所提供的任何信息而无须对您承担任何责任。

    本程序的被许可方如果要了解有关程序的信息以达到如下目的:(i)允许在独立创建的程序和其它程序(包括本程序)之间进行信息交换,以及(ii)允许对已经交换的信息进行相互使用,请与下列地址联系:
    IBM Corporation
    Attn.: G7IA./503.
    P.O. Box 12195
    3039 Cornwallis Rd.
    Research Triangle Park, N.C. 27709-2195
    U.S.A.

    只要遵守适当的条件和条款,包括某些情形下的一定数量的付费,都可获得这方面的信息。

    本资料中描述的许可程序及其所有可用的许可资料均由 IBM 依据 IBM 国际程序许可证协议或任何同等协议中的条款提供。

    此处包含的任何性能数据都是在受控环境中测得的。因此,在其它操作环境中获得的数据可能会有明显的不同。有些测量可能是在开发级的系统上进行的,因此不保证与在一般可用系统上进行的测量结果相同。此外,有些测量是通过推算而估计的,实际结果可能会有差异。本文档的用户应当验证其特定环境的适用数据。

    涉及非 IBM 产品的信息可从这些产品的供应商、其出版说明或其它可公开获得的资料中获取。IBM 没有对这些产品进行测试,也无法确认其性能的精确性、兼容性或任何其它关于非 IBM 产品的声明。有关非 IBM 产品性能的问题应当向这些产品的供应商提出。

    所有关于 IBM 未来方向或意向的声明都可随时更改或收回,而不另行通知,它们仅仅表示了目标和意愿而已。

    本信息包含了在日常业务运作中所使用到的数据和报告的示例。为了尽可能能够完整地对其说明,示例可能包含了个人、公司、商标和产品的名称。所有的这些名称都是虚构的,如有和这些名称及地址相似的真实公司企业,纯属巧合。

    如果您查看该信息的软拷贝,则图片和彩色图例可能无法显示。


    商标

    下列术语是 IBM 公司在美国和/或其它国家或地区的注册商标或商标。

    AFS

    AIX

    DFS

    Everyplace(R)

    IBM

    iSeries(TM)

    NetView

    OS/2

    Redbooks(TM)

    RS/6000

    SecureWay

    ViaVoice

    WebSphere

    zSeries(R)

    Lotus 和 WordPro 是国际商业机器公司和 Lotus Development Corporation 在美国和/或其它国家或地区的商标。

    Tivoli 是 Tivoli Systems, Inc. 在美国和/或国家或地区的注册商标。

    Java 和所有基于 Java 的商标和徽标是 Sun Microsystems, Inc. 在美国和/或其它国家或地区的商标或注册商标。

    Solaris 是 Sun Microsystems, Inc. 在美国和/或其它国家或地区的商标。

    Microsoft、Windows 2000 和 Windows Server 2003 是 Microsoft Corporation 在美国和/或其它国家或地区的商标或注册商标。

    UNIX 是 The Open Group 在美国和其它国家或地区的注册商标。

    其它公司、产品和服务名称可能是其它公司的商标或服务标记。


    词汇表

    〔B〕

    备份(backup)
    分派器 的高可用性中,主机器的伙伴。它监视主机器的状态并在需要的时候接管。另见“高可用性,主”。

    标记为当机(mark down)
    中断至服务器的全部活动连接,并停止正在发送到该服务器的所有新连接或信息包。

    标记为运行(mark up)
    允许服务器接收新的连接。

    别名(alias)
    为服务器指定的附加名称。别名使服务器独立于其主机名。别名必须在域名服务器中定义。

    并列配置(collocate)
    当 Load Balancer 安装在它负载均衡的同一台机器上时。

    〔C〕

    策略(strategy)
    在分派器的高可用性中,用于指定在活动计算机发生故障后如何进行恢复的一个关键字。

    超时(timeout)
    指定操作发生的时间间隔。

    〔D〕

    带宽(bandwidth)
    传输通道的最高和最低频率之间的差值;可通过给定通信电路每秒发送的数据量。

    代理(agent)
    (1) 在系统管理中,指在某些特定的交互作用中充当代理角色的用户。
    (2) 表示一个或多个受管对象的实体,表示方法为 (a) 发出关于对象的通知 (b) 处理管理器为修改或查询对象而发出的管理操作请求。

    到达地址(reach address)
    在分派器的高可用性中,指顾问程序应该向其发出 ping 命令,以查看此目标有否响应的目标地址。

    到达(reach)
    在分派器中,指对给定目标发出 ping 命令,并报告该目标有否响应的顾问程序。

    地址(address)
    指定给与网络连接的每个设备或工作站的唯一代码。标准的 IP 地址为 32 位的地址字段。此字段包含两部分。第一部分为网络地址;第二部分为主机号。

    点分十进制表示法(dotted-decimal notation)
    由 4 个 8 位数字组成的 32 位整数的语法表示法,以十进制表示,用句点(点)分开。它用于表示 IP 地址。

    度量地址(metric address)
    度量服务器连接的地址。

    度量服务器(Metric Server)
    以前称为服务器监视器代理程序(SMA)。度量服务器向 Load Balancer 管理器提供系统特定的度量。

    度量收集器(metric collector)
    驻留在咨询器中,并负责收集一个或多个度量。

    度量(metric)
    返回一个可用于实现网络中负载均衡的数值的进程或命令,例如当前已登录的用户数。

    端口(port)
    标识抽象通信设备的号码。缺省情况下,Web 服务器使用端口 80。

    多地址并列配置(multiple address collocation)
    多地址并列配置允许客户指定并列配置后的服务器地址,使之不同于此配置中的非转发地址(NFA)。另见“并列配置”。

    〔E〕

    二进制日志记录(binary logging)
    允许服务器信息存储在二进制文件中,然后处理以分析这些按时间集中的服务器信息。

    〔F〕

    返回地址(return address)
    唯一的 IP 地址或主机名。它在分派器机器上配置,并在将客户机的请求负载均衡到服务器时,由分派器用作其源地址。

    防火墙(Firewall)
    连接专用网(如商业网)和公用网(如因特网)的计算机。它包含限制两个网络间访问的程序。另见代理网关

    分派器(Dispatcher)
    Load Balancer 的一个组件,它有效平衡单独链接的服务器组间的 TCP 或 UDP 流量。分派器 机器是运行 分派器 代码的服务器。

    服务器地址(server address)
    分配给网络中为其它计算机提供共享服务的每个计算机(例如,文件服务器、打印服务器或邮件服务器)的唯一代码。标准 IP 地址是一个 32 位地址字段。服务器地址可以是点分十进制 IP 地址或主机名。

    服务器(server machine)
    一台服务器,分派器 将其与其它服务器组成单个虚拟服务器。分派器 平衡服务器间的流量。与群集服务器同义。

    服务器(server)
    通过网络为其它计算机提供共享服务的计算机;例如,文件服务器、打印服务器或邮件服务器。

    服务质量(QoS)(Quality of Service (QoS))
    网络服务的性能特性,包含吞吐量、传送延迟和优先级。一些协议允许信息包或流包含 QoS 要求。

    服务(service)
    (1) 由一个或多个节点提供的功能;例如 HTTP、FTP 和 Telnet。
    (2) 对于 Nortel Alteon 控制器,服务是站点的最终用户所请求的功能和信息。它由最终用户请求的虚拟 IP 地址和虚拟端口号标识。在交换机上,它由虚拟服务器标识(它是一个整数和一个虚拟端口号或服务名)标识。
    (3) 对于 Cisco CSS 咨询器,服务是一段内容物理上驻留的目的地位置。例如,本地或远程服务器和端口。

    〔G〕

    高可用性(high availability)
    Load Balancer 的一个特征,Load Balancer 可以接管另一个部分功能失效的功能。

    高速缓存代理(Caching Proxy)
    可通过高效的高速缓存方案加快终端用户响应时间的高速缓存代理服务器。灵活的 PICS 过滤功能可以帮助网络管理员控制对中央位置上基于 Web 的信息的访问。

    工作频率(heartbeat)
    在两个处于高可用性方式的 Load Balancer 机器之间发送的简单信息包,以供备用 Load Balancer 监视活动 Load Balancer 的工作状况。

    顾问程序(advisor)
    顾问程序是 Load Balancer 的一个功能。顾问程序收集并分析各个服务器的反馈信息并通知管理器功能。

    管理器(manager)
    几个 Load Balancer 功能中的其中一个。管理器根据执行程序中的内部计数器和顾问程序提供的反馈来设置权值。然后,执行程序使用此权值来执行负载均衡。

    规则类型(rule type)
    在基于规则的负载均衡中,应进行评估以确定规则是否为真的信息指示符。

    规则(rule)
    在基于规则的负载均衡中,将服务器分组,从而可根据除目的地地址和端口外的信息来选择服务器的一种机制。

    〔H〕

    回送别名(loopback alias)
    与回送接口关联的备用 IP 地址。备用地址具有不通知实际接口的有用影响。

    回送接口(loopback interface)
    一种接口,当信息针对同一系统中的实体时,它会忽略不需要的通信功能。

    〔J〕

    交叉端口亲缘性(cross port affinity)
    交叉端口亲缘性是扩展为覆盖多个端口的亲缘性(粘性)特征。另见“粘性时间”。

    结束范围(end range)
    在基于规则的负载均衡中规则指定的上限值。其缺省值取决于规则的类型。

    〔K〕

    开始范围(begin range)
    在基于规则的负载均衡中规则指定的下限值。其缺省值取决于规则的类型。

    可伸缩(scalable)
    指系统对较大或较小强度的使用、容量或需求快速适应的能力。例如,可伸缩系统能有效地适应使用更大型或小型网络执行复杂程度不同的任务。

    客户机(client)
    请求另一个计算机系统或进程的服务的计算机系统或进程。例如,请求 Lotus Domino(TM) Go Webserver 上 HTML 文档的工作站或个人计算机就是此服务器的一个客户机。

    控制器(controller)
    一个或多个咨询器的集合。

    〔L〕

    路由器(router)
    在网络间转发信息包的设备。转发决策基于网络层信息和通常由路由产品构造的路由表。

    路由(route)
    从源到目的地的网络流量的路径。

    〔M〕

    目的地地址(destination address)
    向其发送工作频率和响应的高可用性伙伴机器的地址。

    〔N〕

    内部网(intranet)
    一种安全的专用网,它使因特网标准和应用程序(如 Web 浏览器)与组织的现有计算机网络基础结构集成在一起。

    〔Q〕

    缺省(default)
    未明确指定时所假设的值、属性或选项。

    群集地址(cluster address)
    在分派器中,指客户机连接的地址。

    群集服务器(clustered server)
    一台服务器,分派器 将其与其它服务器组成单个虚拟服务器。Load Balancer 在这些群集服务器间平衡 TCP 或 UDP 流量。

    群集(cluster)
    分派器 中用于相同目的并用单独的主机名标识的一组 TCP 或 UDP 服务器。另见“单元”。

    〔S〕

    守护程序(daemon)
    磁盘和执行监视程序。不明确参与但静待某些条件发生的程序。该想法是犯罪条件不需要知道守护程序潜伏着(虽然程序经常提交一个操作,仅因为它知道它将隐含地调用守护程序)。

    受管节点(managed node)
    指在因特网通信中,包含网络管理代理程序的工作站、服务器或路由器。在网际协议(IP)中,受管节点通常包含一个简单网络管理协议(SNMP)代理程序。

    所有者内容(owner content)
    代表所有者的所有者名称和内容规则,两者均在 Cisco CSS 交换机上定义。

    〔T〕

    停顿(quiesce)
    通过允许操作正常完成而结束一个进程。

    〔W〕

    网关(gateway)
    用于使两个体系结构不同的计算机网络互相连接的功能单元。

    网络地址端口转换(Network Address Port Translation)
    NAPT,也称为端口映射。它允许您在一台物理服务器中配置多个服务器守护程序,以在不同的端口号上侦听。

    网络地址转换(Network Address Translation)
    NAT 或网络地址转换程序、虚拟 LAN。当前正在开发的并用于扩展已在使用的因特网地址的硬件设备。它允许重复 IP 地址以在公司内部或独特的外部地址中使用。

    网络管理站(network management station)
    在简单网络管理协议(SNMP)中,执行用于监视和控制网络元素的管理应用程序的站。

    网络接近(network proximity)
    两个构成网络的实体的接近,例如客户机和服务器,站点选择器通过测量往返时间确定。

    网络(network)
    硬件和软件数据通信系统。网络通常根据其地理范围、局域网(LAN)、城域网(MAN)、广域网(WAN)以及所使用的协议进行分类。

    〔X〕

    相互高可用性(mutual high availability)
    相互高可用性允许两台分派器机器互为彼此的主计算机和备用计算机。另见“备份、高可用性、主”。

    向导(wizard)
    应用程序内的一个对话框,它使用循序渐进的说明,以指导用户完成特定的任务。

    协议(protocol)
    在进行通信时,控制通信系统的功能单元操作的规则集。协议可以确定机器间接口的低级别详细信息,如字节按位发送的顺序;也可以确定应用程序间的高级别交换,如文件传输。

    信息包(packet)
    在因特网或任何其它信息包交换网络中,在源和目的地之间进行路由的数据单位。

    〔Y〕

    以太网(Ethernet)
    局域网(lan)的标准类型。它允许多站任意访问传输媒体而无需预先协调,它通过使用载波侦听和检测避免争用,并通过使用冲突检测和传输解决争用。以太网系统使用的软件协议不同,但都包含 TCP/IP。

    因特网(Internet)
    全世界的互连网集合,这些网络使用一套网际协议并允许公共访问。

    优先级(priority)
    在基于规则的负载均衡中,赋予任何给定规则的重要性级别。分派器 按第一优先级到最低优先级的顺序评估规则。

    域名服务器(domain name server)
    DNS。一种通用的分布式重复数据查询服务,主要用于在因特网上将主机名转换成因特网地址。因特网上使用的主机名样式也一样,尽管这种名称严格地称为全限定域名。DNS 可以配置成使用一系列名称服务器,基于所寻找名称的域,直至找到匹配的名称服务器。

    源地址(source address)
    在分派器的高可用性中,指发送工作频率的高可用性伙伴机地址。

    〔Z〕

    粘性时间(sticky time)
    关闭一个连接与打开另一个新连接之间的时间间隔,在此期间客户机将被返回至第一次连接期间使用的服务器。超过此粘性时间后,客户机可能被发送至与第一次不同的服务器上。

    站点名(site name)
    站点名是客户机所请求的不可解析的主机名。例如,Web 站点为 www.dnsload.com 配置了 3 台服务器(1.2.3.4、1.2.3.5 和 1.2.3.6)。当客户机请求此站点名时,将返回这三个服务器 IP 地址中的一个以作为解析结果。站点名称必须是全限定域名,例如:dnsload.com。非限定的名称,例如,dnsload 对于站点名称是无效的。

    站点选择器(Site Selector)
    Load Balancer 的一个基于 DNS 的负载均衡组件。站点选择器使用从运行在广域网(WAN)内服务器上的度量服务器组件所收集到的测量值和权值,对那些服务器上的负载进行平衡。

    执行程序(executor)
    几个 Load Balancer 功能中的其中一个。执行程序将请求路由至 TCP 或 UDP 服务器,它还会监视新的、活动的和已完成的连接数量,并对已完成的或复位的连接执行垃圾收集。执行程序向管理器功能提供了新的连接数和活动的连接数。

    主机名(host name)
    为主机指定的符号名。主机名通过域名服务器解析为 IP 地址。

    主机(host)
    一台与网络连接并提供至此网络访问点的计算机。主机可以作为客户机、服务器或二者同时兼任。

    主(primary)
    在分派器的高可用性中,作为活动路由信息包的机器启动的机器。其伙伴机(备份机器)监视主机器的状态,并在必要时进行接管。另见“备份,高可用性”。

    专用网(private network)
    分派器因性能原因而与群集服务器通信的独立网络。

    咨询器(consultant)
    从正在负载均衡的服务器收集服务器度量,并将服务器权值信息发送到执行负载均衡的交换机。

    子网掩码(subnet mask)
    对于因特网子网,用于标识 IP 地址中主机部分的子网地址位的 32 位掩码。

    A

    ACK
    不占用序列空间的控制位(确认),其指示此段的确认字段指定此段发送者期待接收的下一个序列号,从而确认接收到所有先前的序列号。

    API
    应用程序编程接口。应用程序访问操作系统和其它服务的接口(调用约定)。API 在源代码级别定义,并在应用程序和内核(或其它特权实用程序)之间提供一个抽象级别,以确保代码的可移植性。

    C

    CBR
    基本内容路由。Load Balancer 的一个组件。CBR 与高速缓存一起根据使用指定规则类型的 Web 页面内容,将进入请求负载均衡到 HTTP 或 HTTPS 服务器。

    cbrcontrol
    提供到 Load Balancer 基于内容路由器组件的接口。

    cbrserver
    在基于内容路由器中,处理从命令行到执行程序、管理器和顾问程序的请求。

    ccocontrol
    在 Cisco CSS 控制器中,提供到 Cisco CSS 交换机的接口。

    ccoserver
    在 Cisco CSS 控制器中,处理从命令行到咨询器的请求。

    CGI
    公共网关接口。指 Web 服务器与外部程序间信息交换的标准。外部程序可以用此操作系统支持的任何语言编写,执行通常不由服务器完成的任务,例如表单处理。

    CGI 脚本(CGI script)
    以脚本语言如 Perl 或 REXX 编写的 CGI 程序,这些脚本语言使用公共网关接口来执行通常不由服务器执行的任务,如表单处理。

    Cisco CSS 交换机(Cisco CSS Switch)
    任何 Cisco 的 CSS 11000 系列转换,用作信息包转发和内容路由。

    Cisco CSS 控制器(Cisco CSS Controller)
    IBM Load Balancer 的一个组件。Cisco CSS 控制器使用 Load Balancer 技术,以为 Cisco 内容服务交换机提供实时负载均衡信息。

    D

    dscontrol
    提供到 Load Balancer 的分派器组件的接口。

    dsserver
    在分派器中,处理从命令行到执行程序、管理器和顾问程序的请求。

    F

    FIN
    占一个序列号的控制位(finis),其表明发送者不再发送占据序列空间的数据或控制。

    FIN 状态(FIN state)
    已完成事务的状态。一旦事务处于 FIN 状态,Load Balancer 垃圾收集器就会清除为连接所保留的内存。

    FQDN
    全限定域名。由其本地主机名和域名组成的系统的全名,其包含顶层域(tld)。例如,“venera”是主机名而“venera.isi.edu”是 FQDN。FQDN 应该足以确定因特网上任何主机的唯一因特网地址。此称为“名称解析”的过程使用域名系统(DNS)。

    FTP(文件传送协议)(FTP (File Transfer Protocol))
    用于在网络计算机间传送文件的应用程序协议。FTP 需要用户标识,有时还需要密码才能访问远程主机系统上的文件。

    G

    GRE
    一般路由封装。通过将任意网络协议 A 的信息包封装在 GRE 信息包中(此信息包反过来又包含在任意协议 B 的信息包中),以使任意网络协议 A 可在任何其它任意协议 B 上传送的协议。

    H

    HTML(超文本标记语言)(HTML (Hypertext Markup Language))
    用于创建超文本文档的语言。超文本文档包含到其它文档的链接,这些文档中包含关于突出显示术语或主题的附加信息。例如,HTML 控制文本的格式和表单输入区域的位置,以及可浏览的链接。

    HTTP(超文本传送协议)(HTTP (Hypertext Transfer Protocol))
    用于传送和显示超文本文档的协议。

    HTTPS(超文本传送协议,安全)(HTTPS (Hypertext Transfer Protocol, Secure))
    用于使用 SSL 转移和显示超文本文档的协议。

    I

    ICMP
    因特网控制消息协议。主机服务器和至因特网的网关之间的消息控制和错误报告协议。

    IMAP
    因特网消息访问协议。允许客户机访问和操纵服务器上电子邮件消息的协议。它允许将远程消息文件夹(邮箱)作为功能上等价的本地邮箱进行处理。

    IP
    网际协议。通过网络或互相连接的网络对数据进行路由的无连接协议。IP 充当的是较高协议层与物理层之间的中间介质。

    IP 地址(IP address)
    网际协议地址。指定网络上每个设备或工作站实际的物理位置的唯一 32 位地址。它也称为因特网地址。

    IPSEC
    网际协议安全性。网络通信的信息包处理层或网络上的开发安全性标准。

    L

    LAN
    局域网。有限的地理区域内用于通信而连接的计算机设备网络,它也可以连接到更大型的网络中。

    M

    MAC 地址(MAC address)
    媒体访问控制地址。连接到共享网络媒体的设备的硬件地址。

    MIB
    (1) 管理信息库。通过网络管理协议可访问的对象集合。
    (2) 对管理信息的定义,它指定可从主机或网关获取的信息以及允许的操作。

    N

    nalcontrol
    提供到 Load Balancer 的 Nortel Alteon 控制器组件的接口。

    nalserver
    在 Nortel Alteon 控制器中,处理从命令行到咨询器的请求。

    netmask
    对于因特网子网,用于标识 IP 地址中主机部分的子网地址位的 32 位掩码。

    nfa(非转发地址)(nfa (nonforwarding address))
    Load Balancer 机器中用于管理和配置的主 IP 地址。

    NIC
    网络接口卡。安装在计算机中以提供到网络的物理连接的适配器电路板。

    NNTP
    网络新闻传输协议。用于传输新闻条目的 TCP/IP 协议。

    Nortel Alteon 控制器(Nortel Alteon Contaller)
    IBM Load Balancer 的一个组件。Nortel Alteon 控制器使用 Load Balancer 技术,以为 Nortel Alteon Web 交换机提供实时负载均衡信息。

    Nortel Alteon Web 交换机(Nortel Alteon Web Switch)
    来自 Alteon Web 交换公文包的 Nortel Alteon ACE 导向器系列交换机和 Nortel Alteon 180 系列交换机,用于信息包转发和内容路由。

    P

    PICS
    因特网内容选择平台。启用 PICS 的客户机允许用户确定他们要使用哪些评级服务,对于每种评级服务,哪些评级是可接受的,哪些是不可接受的。

    ping
    用于将因特网控制消息协议(ICMP)回送请求信息包发送到主机、网关或路由器,并期待接收应答的命令。

    POP3
    邮局协议 3。用于交换网络邮件和访问邮箱的协议。

    R

    RMI
    远程方法调用。Java 编程语言库的一部分,其允许运行在一台计算机上的 Java 程序访问运行在另一台不同计算机上的另一个 Java 程序的对象和方法。

    root 用户(root user)
    不受限制地访问和修改 AIX、Red Hat Linux 或 Solaris 操作系统任何部分的权限,通常与管理系统的用户相关联。

    RPM
    Red Hat 软件包管理器。

    S

    shell
    从用户工作站接受并处理命令行的软件。bash shell 是众多可用的 UNIX shell 之一。

    SMTP
    简单邮件传送协议。在网际协议组中,用于在因特网环境下的用户间传送邮件的应用程序协议。SMTP 指定邮件交换顺序和消息格式。它假定传输控制协议(TCP)为其基础协议。

    SNMP
    简单网络管理协议。因特网标准协议,在 STD 15 和 RFC 1157 中定义,为管理 IP 网络上的节点而开发。SNMP 不限定为 TCP/IP。它可用于管理和监视所有种类的设备,包括计算机、路由器、布线集线器、烘炉和点播机。

    SPARC
    可伸缩处理程序体系结构。

    sscontrol
    提供到 Load Balancer 的站点选择器组件的接口。

    SSL
    安全套接字层。由 Netscape Communications Corp. 与 RSA Data Security Inc 共同开发的通用安全性方案。SSL 允许客户机认证服务器和要加密的所有数据和请求。受 SSL 保护的安全服务器 URL 以 https 开头(而非 HTTP)。

    ssserver
    在站点选择器中,处理从命令行到站点名、管理器和顾问程序的请求。

    SYN
    进入段中占一个序列号的控制位,在连接启动时使用,指示序列号开始的位置。

    T

    TCP
    传输控制协议。因特网上使用的一种通信协议。TCP 提供可靠的主机间信息交换。它使用 IP 作为基础协议。

    TCP 服务器(TCP server machine)
    一种服务器,Load Balancer 将其与其它服务器链接成为单一的虚拟服务器。Load Balancer 平衡 TCP 服务器间的 TCP 流量。与群集服务器同义。

    TCP/IP
    传输控制协议/网际协议。为允许网络间通信而不用考虑每个网络中所用的通信技术而设计的一组协议。

    Telnet
    终端仿真协议,它是用于远程连接服务的 TCP/IP 应用程序协议。Telnet 允许一个站点的用户访问远程主机,如同用户的工作站是直接与远程主机相连的一样。

    TOS
    服务类型。SYN 信息包的 IP 头中的单字节字段。

    TTL
    DNS TTL(存活时间)是客户机可以高速缓存名称解析响应的一段时间。

    U

    UDP
    用户数据报协议。在网际协议组中提供不可靠的无连接数据报服务的协议。它允许一台机器或进程上的应用程序将数据报发送给另一台机器或进程上的应用程序。UDP 使用网际协议(IP)来发送数据报。

    URI
    统一资源标识。 Web 上的任何资源(例如 HTML 文档、图像、视频片段、程序等)的编码地址。

    URL
    统一资源定位器。指定因特网上对象(通常为 Web 页面)位置的标准方法。URL 是用于万维网上的地址格式。它们用在 HTML 文档中以指定经常是另一个 HTML 文档(可能存储在另一台计算机上)的超链接的目标。

    V

    VPN
    虚拟专用网(VPN)。由一个或多个安全 IP 隧道连接两个或多个网络而组成的一个网络。

    W

    WAN
    广域网。为比起由局域网或城域网服务的区域更为宽广的地理区域提供通信服务的网络,并可以使用或提供公共通信设施。

    WAP
    无线应用程序协议。使用无线通信的应用程序的开放国际标准。例如,从移动电话访问因特网。

    WAS
    WebSphere Application Server。

    Web
    包含程序和文件的 HTTP 服务器网络,这些程序和文件中多数是包含到 HTTP 服务器上其它文档链接的超文本文档。另见“万维网”。

    WLM
    工作负载管理器。分派器提供的一个顾问程序。它设计为只能与运行 MVS 工作负载管理器(WLM)组件的 OS/390 大型机上的服务器配合运行。

    索引

     〔A〕   〔B〕   〔C〕   〔D〕   〔E〕   〔F〕   〔G〕   〔H〕   〔J〕   〔K〕   〔L〕   〔M〕   〔N〕   〔P〕   〔Q〕   〔R〕   〔S〕   〔T〕   〔W〕   〔X〕   〔Y〕   〔Z〕   特殊文字及符号   A   B   C   D   E   F   G   H   I   J   L   M   N   O   P   R   S   U   V   W 
    〔A〕 〔B〕 〔C〕 〔D〕 〔E〕 〔F〕 〔G〕 〔H〕 〔J〕 〔K〕 〔L〕 〔M〕 〔N〕 〔P〕 〔Q〕 〔R〕 〔S〕 〔T〕 〔W〕 〔X〕 〔Y〕 〔Z〕 特殊文字及符号 A B C D E F G H I J L M N O P R S U V W