对Microsoft Exchange服务器进行负载均衡
本文档提供了使用Citrix ADC设备实现Microsoft Exchange服务器负载平衡的推荐配置示例。
Citrix ADM StyleBooks简化了用于Exchange的Citrix ADC负载均衡配置。有关更多信息,请参见Microsoft Exchange样本.
注:
使用单个负载均衡虚拟服务器是不可能实现Microsoft Exchange的负载均衡的。相反,请遵循本文档中提供的推荐配置。
Microsoft Exchange 2016和更新版本的差异
您不需要在Exchange 2016上配置静态RPC端口,因为RPC端口没有被使用。
在Exchange 2016中,所有命名为“适用于2016年以下Exchange版本”的部分都是不必要的。
如果您已经配置了任何非2016版本,并迁移到2016年,则不必删除它们。因为即使它们存在,也没有问题。
注意事项
对于Exchange服务器2016年以下的远程过程调用(RPC),必须将Exchange CAS服务器配置为静态端口分配。有关更多信息,请参见Exchange 2010客户端访问服务器:配置静态RPC端口微软文档。
此配置假定使用Citrix ADC设备进行SSL卸载。有关详细信息,请参阅如何在Exchange 2010中配置SSL卸载或在Exchange 2013中配置SSL卸载.
如果不想使用Citrix ADC设备的SSL卸载功能,请更改服务组
CAS\U服务组\U http
并监控输入SSL
以及它的端口绑定443
.电涌保护与Microsoft Exchange不兼容。不要在任何与Microsoft Exchange相关的服务或服务组上启用它。启用防雷功能会导致连接和可靠性问题。
用正确的信息替换以下变量:
- {HTTP Public IP} - Public Exchange HTTP端点的IP地址
- {RPC Public IP}-公用Exchange RPC终结点的IP地址(可以与HTTP公用IP相同)
- {Timeout}-所需的超时(秒)。建议与标准轮班时间一样长(即8小时)
- {PersTimeout}-所需的超时(分钟)。必须与前面的超时设置相对应。
- AB端口-RPC地址簿TCP端口(通常为59601)
- rpc客户端访问TCP端口(通常为59600)
- {CertKey}-SSL证书密钥
- {CAS-1 Server} -IP CAS服务器地址
- {CAS-2服务器}-CAS服务器的IP地址
所有版本的Microsoft Exchange服务器的推荐配置示例
服务类:
添加服务组CAS_serviceGroup_http-maxClient 0-maxReq 0-cip DISABLED-usip NO-SP OFF-useproxyport YES-cltTimeout{Timeout}-svrTimeout{Timeout}-CKA NO-TCPB NO-CMP YES添加服务组CAS_serviceGroup_rpc_epm TCP-maxClient 0-maxReq 0-cip DISABLED-usip NO-SP OFF-useproxyport YES-cltTimeout{Timeout}-svrTimeout{Timeout}-CKA NO-TCPB NO-CMP NO bind serviceGroup CAS\u serviceGroup\u http{CAS-1 Server}80-CustomServerID“\'None\”bind serviceGroup CAS\u serviceGroup\u serviceGroup\CAS-2 Server}80-CustomServerID“\'None\”bind serviceGroup CAS\u serviceGroup\u rpc\u epm{CAS 1 Server}135-CustomServerID“\'None\”bind serviceGroup CAS135-CustomServerID“无”<--需要复制-->
监控:
添加lb监视器CAS_monitor_rpc_epm TCP-启用LRTM-destPort 135设置lb监视器http ecv http-ecv-recv 403-禁用LRTM的绑定服务组CAS_serviceGroup_http-监视器名称http ecv绑定服务组CAS_serviceGroup_rpc_epm-监视器名称CAS_monitor_rpc_epm<--需要复制-->
负载平衡虚拟服务器:
add lb vserver CAS_vserver_as SSL 0.0.0.0 0 -persistenceType COOKIEINSERT -timeout {PersTimeout} -lbMethod LEASTCONNECTION -cltTimeout {Timeout}-cltTimeout {Timeout} add lb vserver CAS_vserver_oa SSL 0.0.0.0 0 -timeout {PersTimeout} -lbMethod LEASTCONNECTION -cltTimeout {Timeout} add lb vserver CAS_vserver_ews SSL 0.0.0.0 0 -timeout {PersTimeout} -lbMethod LEASTCONNECTION -cltTimeout {Timeout} add lb vserver CAS_vserver_ad SSL 0.0.0.0 0 -timeout {PersTimeout} -lbMethod LEASTCONNECTION-cltTimeout {Timeout} set ssl vserver CAS_vserver_oa -sslRedirect ENABLED绑定ssl vserver CAS_vserver_owa -certkeyName {CertKey} bind ssl vserver CAS_vserver_oab -certkeyName {CertKey} bind ssl vserver CAS_vserver_as -certkeyName {CertKey} bind ssl vserver CAS_vserver_oa -certkeyName {CertKey} bind ssl vserver CAS_vserver_ews -certkeyName{CertKey}结合ssl vserver CAS_vserver_ad -certkeyName {CertKey}绑定磅vserver CAS_vserver_owa CAS_servicegroup_http绑定磅vserver CAS_vserver_oab CAS_servicegroup_http绑定磅vserver CAS_vserver_as CAS_servicegroup_http绑定磅vserver CAS_vserver_oa CAS_servicegroup_http绑定磅vserver CAS_vserver_ews CAS_servicegroup_http绑定磅vserverCAS_vserver_ad CAS_servicegroup_http add lb vserver CAS_vserver_rpc_epm TCP {RPC Public IP} 135 -timeout {PersTimeout} -cltTimeout {Timeout} -comment "vserver for RPC End Point Mapper" bind lb vserver CAS_vserver_rpc_epm CAS_servicegroup_rpc_epm
持久性组:
添加lb组CAS_persistency_group_sourceip绑定lb组CAS_persistency_group_sourceip CAS_vserver_oa绑定lb组CAS_persistency_group_sourceip CAS_vserver_oab绑定lb组CAS_persistency_group_sourceip CAS_vserver_ews绑定lb组CAS_persistency_group_sourceip CAS_vserver_ad绑定lb组CAS_persistency_group_sourceip CAS_vserver_rpc_epmset lb group CAS_persistency_group_sourceip -persistenceType SOURCEIP -timeout {PersTimeout}
HTTP服务的内容切换:
添加cs vserver CAS_vserver_cs SSL{公共IP} 443 -cltTimeout{超时}-caseSensitive关闭评论“交换cs vserver”结合SSL vserver CAS_vserver_cs -certkeyName {CertKey}添加cs操作CAS_action_cs_owa -targetLBVserver CAS_vserver_owa添加cs操作CAS_action_cs_oab -targetLBVserver CAS_vserver_oab添加CAS_action_cs_as cs行动-targetLBVserver CAS_vserver_as添加cs操作CAS_action_cs_oa -targetLBVserver CAS_vserver_oa添加cs操作CAS_action_cs_ews -targetLBVserver CAS_vserver_ews添加cs操作CAS_action_cs_autodiscover -targetLBVserver CAS_vserver_ad添加cs策略CAS_policy_cs_owa规则”HTTP.REQ.URL.SET_TEXT_MODE (IGNORECASE) .STARTSWITH(\“/ owa \”)”-action CAS_action_cs_owa add cs policy CAS_vserver_oab -rule "HTTP.REQ.URL。add cs policy CAS_policy_cs_as -rule "HTTP.REQ.URL.SET_TEXT_MODE(IGNORECASE).STARTSWITH(\"/Microsoft-Server-ActiveSync\")"-action CAS_action_cs_as add cs policy CAS_policy_cs_autodiscover -rule "HTTP.REQ.URL.SET_TEXT_MODE(IGNORECASE).STARTSWITH(\"/Autodiscover\")"-action CAS_action_cs_autodiscover add cs policy CAS_policy_cs_oa -rule "HTTP.REQ.URL.SET_TEXT_MODE(IGNORECASE). startwith (\"/rpc\")"-action CAS_action_cs_oa add cs policy CAS_policy_cs_ews -rule "HTTP.REQ.URL.SET_TEXT_MODE(IGNORECASE). startwith (\"/EWS\")"动作片CAS_action_cs_ews结合cs vserver CAS_vserver_cs -policyName CAS_policy_cs_oa优先90结合cs vserver CAS_vserver_cs -policyName CAS_policy_cs_owa优先100结合cs vserver CAS_vserver_cs -policyName CAS_policy_cs_oab优先100结合cs vserver CAS_vserver_cs -policyName CAS_policy_cs_as优先110 cs vserver绑定CAS_vserver_cs -policyName CAS_policy_cs_autodiscover -priority 120 bind cs vserver CAS_vserver_cs -policyName CAS_policy_cs_ews -priority 130 bind cs vserver CAS_vserver_cs -lbvserver CAS_vserver_owa
2016年以下版本的Microsoft Exchange服务器的推荐配置示例
额外的服务群体:
添加serviceGroup CAS_servicegroup_rpc_ca TCP maxclient -maxReq 0 cip禁用切实没有- sp -useproxyport是的-cltTimeout{超时}-svrTimeout{超时}-CKA没有-TCPB cmp添加serviceGroup CAS_servicegroup_rpc_ab TCP maxclient -maxReq 0 cip禁用切实没有- sp -useproxyport是的-cltTimeout{超时}-svrTimeout{超时}-CKA没有-TCPB cmp绑定serviceGroup CAS_servicegroup_rpc_ca {CAS-1服务器}{CA港口}-CustomServerID”\“\”“没有绑定serviceGroup CAS_servicegroup_rpc_ca {CAS-2服务器}{CA港口}-CustomServerID”\“\”“没有绑定serviceGroup CAS_servicegroup_rpc_ab {CAS-1服务器}}{AB港口-CustomServerID”\“\”“没有绑定serviceGroup CAS_servicegroup_rpc_ab{CAS-2服务器}{AB端口}-CustomServerID "\"None\""
额外的监控:
add lb monitor CAS_monitor_rpc_ca TCP -LRTM ENABLED -destPort {CA Port} add lb monitor CAS_monitor_rpc_ab TCP -LRTM ENABLED -destPort {AB Port} bind serviceGroup CAS_servicegroup_rpc_ca -monitorName CAS_monitor_rpc_ca bind serviceGroup CAS_servicegroup_rpc_ab -monitorName CAS_monitor_rpc_ab
额外的负载均衡虚拟服务器:
添加lb vserver CAS_vserver_rpc_ab TCP{rpc Public IP}{ab Port}-超时{pertimeout}-cltTimeout{timeout}-注释“用于rpc地址簿的vserver”添加lb vserver CAS_vserver_rpc_ca TCP{rpc Public IP}{ca Port}-超时{pertimeout}-cltTimeout{timeout}-注释“用于rpc客户端访问的vserver”绑定lb vserver CAS_vserver_rpc_ab CAS_服务组_rpc_ab绑定lb vserver CAS_vserver_rpc_ca CAS_服务组_rpc_ca<--需要复制-->
额外的持久性组:
绑定lb组CAS\u持久性\u组\u源IP CAS\u服务器\u rpc\u ab绑定lb组CAS\u持久性\u组\u源IP CAS\u服务器\u rpc\u ca<--需要复制-->
Microsoft Exchange服务器2016及以上版本的推荐配置示例
其他负载平衡虚拟服务器:
add lb vserver CAS_vserver_mapi SSL 0.0.0.0 0 -timeout {PersTimeout} -lbMethod LEASTCONNECTION -cltTimeout {Timeout} bind SSL vserver CAS_vserver_mapi -certkeyName {CertKey} bind lb vserver CAS_vserver_mapi CAS_servicegroup_http
额外的持久性组:
绑定lb group CAS_persistency_group_sourceip CAS_vserver_mapi
HTTP服务的内容切换:
add cs action CAS_action_cs_mapi -targetLBVserver CAS_vserver_mapi add cs policy CAS_policy_cs_mapi -rule "HTTP.REQ.URL.SET_TEXT_MODE(IGNORECASE). startwith (\"/mapi\")"-action CAS_action_cs_mapi绑定cs vserver CAS_vserver_cs -policyName CAS_policy_cs_mapi -priority 140
可选配置
Outlook Web App(OWA)的HTTPS重定向:
添加lb vserver CAS_vserver_owa_http_redirect http{http Public IP}80-persistenceType COOKIEINSERT-timeout{PersTimeout}-lbMethod ROUNDROBIN-redirectURL“https://mail.example.com/owa“-cltTimeout{Timeout}<--需要复制-->
注意:用正确的HTTPS重定向URL替换。
owa政策改写:
添加重写操作owa_rewrite取代http.REQ.URL " \ " / owa \”“添加重写策略owa_rewrite_policy”http.req.url.eq(\ / \”)“owa_rewrite绑定磅vserver CAS_vserver_owa -policyName owa_rewrite_policy优先100 -gotoPriorityExpression结束类型请求添加响应器动作action_responder_owa定向" \ " https://www.example.com/owa \”“添加响应者policy_responder_owa HTTP.REQ。IS_VALID action_responder_owa set responder parameter -undefAction NOOP bind lb vserver CAS_vserver_owa -policyName policy_responder_owa -priority 100 - gotopriityexpression END -type REQUEST
注意:用正确的HTTPS重定向URL替换。
支持SMTP:
对于以下配置,必须启用USIP,以便CAS服务器可以看到发送SMTP服务器的IP地址进行验证。此配置还要求将CAS服务器的默认网关配置为指向ADC设备的SNIP地址。
加磅vserver CAS_vserver_smtp TCP {HTTP公共IP} 25 -persistenceType SOURCEIP超时60 -lbMethod LEASTCONNECTION -cltTimeout 30添加serviceGroup CAS_servicegroup_smtp TCP maxclient -maxReq 0 cip禁用切实是的- sp了-useproxyport -cltTimeout 30 -svrTimeout 30 -CKA没有-TCPB cmp绑定serviceGroup CAS_servicegroup_smtp{CAS-1 Server} 25 -CustomServerID "\"None\"" bind serviceGroup CAS_servicegroup_smtp {CAS-2 Server} 25 -CustomServerID "\"None\"" bind lb vserver CAS_vserver_smtp CAS_servicegroup_smtp
支持邮局协议版本3(POP3):
加磅vserver CAS_vserver_pop3 TCP {HTTP公共IP} 110 -persistenceType SOURCEIP超时{PersTimeout} -lbMethod LEASTCONNECTION -cltTimeout{超时}添加serviceGroup CAS_servicegroup_pop3 TCP maxclient -maxReq 0 cip禁用切实没有- sp -useproxyport是的-cltTimeout{超时}-svrTimeout{超时}-CKA没有-TCPB cmp绑定serviceGroup CAS_servicegroup_pop3 {CAS-1 Server} 110 -CustomServerID "\"None\"" bind serviceGroup CAS_servicegroup_pop3 {CAS-2 Server} 110 -CustomServerID "\"None\"" bind lb vserver CAS_vserver_pop3 CAS_servicegroup_pop3
注:
通过将端口更改为995,将虚拟服务器/服务类型更改为SSL,可以对SSL加密的POP3执行上述配置。还要绑定一个合适的SSL证书。
支持IMAP:
加磅vserver CAS_vserver_imap TCP {HTTP公共IP} 143 -persistenceType SOURCEIP超时{PersTimeout} -lbMethod LEASTCONNECTION -cltTimeout{超时}添加serviceGroup CAS_servicegroup_imap TCP maxclient -maxReq 0 cip禁用切实没有- sp -useproxyport是的-cltTimeout{超时}-svrTimeout{超时}-CKA没有-TCPB cmp绑定serviceGroup CAS_servicegroup_imap {CAS-1 Server} 143 -CustomServerID "\"None\"" bind serviceGroup CAS_servicegroup_imap {CAS-2 Server} 143 -CustomServerID "\"None\"" bind lb vserver CAS_vserver_imap CAS_servicegroup_imap
注:
对于SSL加密的IMAP,可以通过修改端口为993、虚拟服务器/服务类型为SSL来进行上述配置。还绑定一个合适的SSL证书。