Exchange 2010 (四) CAS Array部署

简介:

架构如下

主域控:DCS-01                           192.168.2.20

辅域控:DCS-02                           192.168.2.21

证书服务器:CER-01                   192.168.2.31

客户端访问服务器01:  CAS-01   192.168.2.23  CASArray:22

客户端访问服务器02:  CAS-02    192.168.2.24

邮箱传输服务器01:HUB-01       192.168.2.25  NLB:27

邮箱传输服务器02:HUB-02       192.168.2.26

邮箱服务器01:MBX-01              192.168.2.28  DAG:30

邮箱服务器02:MBX-02              192.168.2.29

 

  在ExchangeServer 2010中,客户端计算机访问Exchange服务器通过客户端访问服务器(CAS)完成,客户端访问服务器一旦出现故障,客户端计算机将不能访问Exchange系统。在实际企业生产环境中,一般会部署两个CAS服务器(他们分别部署在二台Hyper-v、Esxi虚拟化主机中。),并组成CAS阵列,确保CAS服务器的可用性。

  本例中二台服务器单独安装CAS角色,不集成HUB角色,由于它们心跳数据不大,使用一块网卡即可

  过程分为如下几步

  • 安装及配置NLB群集

  • 创建Exchange2010的CAS Array

  • 客户端访问测试


一、部署NLB群集

1.1在二台服务器上分别安装NLB。Powershell安装NLB执行Import-Module ServerManager Add-WindowsFeature NLB

wKiom1bAixHTOsw9AAHMS8PgtAU265.jpg

 

1.2在CAS-01上打开“网络负载平衡管理器”-“新建群集”,添加CAS-02主机

wKioL1bAi43yR3QpAAHYbeiKmZE334.jpg

 

1.3设置群集服务器的优先级,保持默认即可

wKioL1bAi62T9GfiAAEfGO8EbRU928.jpg

 

1.4设置群集IP地址

wKioL1bAi7_QkAtHAAHuC_6vmJk767.jpg

 

1.5按照下图设置群集参数,设置为多播

wKiom1bAi4yi7rL5AAEITFRIk70987.jpg

 

1.6端口规则使用默认

wKioL1bAi_jAWCDFAAAu97mtj-U936.jpg


1.7按照上面的操作添加CAS-01到群集,二台CAS添加完成,显示已聚合

wKioL1bAjA7CAsIeAAKLaN3yC_o347.jpg

 

1.8如需要调整节点服务器之间的访问浏量,单击“编辑”设置

wKiom1bAi9GDdYO8AANG2TRh-_c686.jpg

二、部署CAS Array

2.1在DNS上添加一条A记录,IP地址是1.4中配置集群的IP地址192.168.2.22

wKiom1bAjCTClqBIAAMHexuWVKw430.jpg

 

2.2查看站点信息,以管理员身份打开ExchangeManagement Shell输入Get-ADsite

wKiom1bAjD3QAyo2AABs-thlFCM614.jpg

 

2.3创建CAS阵列输入:New-ClientAccessArray–Name mail.zhaodongwei.cn –Fqdn “mail.zhaodongwei.cn” –Site “Default-First-Site-Name”

wKiom1bAjEuRdB7nAAD9evK00QM799.jpg

 

2.4查询CAS阵列

wKiom1bAjGiDZsWiAACevpr711A698.jpg


2.5将客户端访问服务器设置为CAS阵列

wKioL1bAjTjgpHJIAACinR8BJwA541.jpg


三、客户端测试

3.1配置outlook时的服务器显示,图1是没创建CAS阵列,图2是创建CAS阵列

wKiom1bAjQjiyCTWAAGsq2aKvYU671.jpg

wKiom1bAjQrwrdUyAAGDdgMKFOE788.jpg


3.2 OWA测试,把CAS-02的网卡禁用,用192.168.2.31的客户端访问OWA,显示如下图

wKioL1bAjZui0oIdAALsFQFVgzs361.jpg

 

3.3断开一台CAS服务器,Outlook显示的连接状态

wKiom1bAjVGx6ELcAALTWFRGeVc843.jpg











      本文转自cix123  51CTO博客,原文链接:http://blog.51cto.com/zhaodongwei/1741980,如需转载请自行联系原作者


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
存储 Go 索引
go语言中的数组(Array)
go语言中的数组(Array)
457 67
|
测试技术 PHP 开发者
PHP 数组查找:为什么 `isset()` 比 `in_array()` 快得多?
PHP 数组查找:为什么 `isset()` 比 `in_array()` 快得多?
|
人工智能 Java
Java 中数组Array和列表List的转换
本文介绍了数组与列表之间的相互转换方法,主要包括三部分:1)使用`Collections.addAll()`方法将数组转为列表,适用于引用类型,效率较高;2)通过`new ArrayList<>()`构造器结合`Arrays.asList()`实现类似功能;3)利用JDK8的`Stream`流式计算,支持基本数据类型数组的转换。此外,还详细讲解了列表转数组的方法,如借助`Stream`实现不同类型数组间的转换,并附带代码示例与执行结果,帮助读者深入理解两种数据结构的互转技巧。
1143 1
Java 中数组Array和列表List的转换
|
JavaScript 前端开发 API
JavaScript中通过array.map()实现数据转换、创建派生数组、异步数据流处理、复杂API请求、DOM操作、搜索和过滤等,array.map()的使用详解(附实际应用代码)
array.map()可以用来数据转换、创建派生数组、应用函数、链式调用、异步数据流处理、复杂API请求梳理、提供DOM操作、用来搜索和过滤等,比for好用太多了,主要是写法简单,并且非常直观,并且能提升代码的可读性,也就提升了Long Term代码的可维护性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
移动开发 运维 供应链
通过array.some()实现权限检查、表单验证、库存管理、内容审查和数据处理;js数组元素检查的方法,some()的使用详解,array.some与array.every的区别(附实际应用代码)
array.some()可以用来权限检查、表单验证、库存管理、内容审查和数据处理等数据校验工作,核心在于利用其短路机制,速度更快,节约性能。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
供应链 JavaScript 前端开发
通过array.every()实现数据验证、权限检查和一致性检查;js数组元素检查的方法,every()的使用详解,array.some与array.every的区别(附实际应用代码)
array.every()可以用来数据验证、权限检查、一致性检查等数据校验工作,核心在于利用其短路机制,速度更快,节约性能。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
Web App开发 存储 前端开发
别再用双层遍历循环来做新旧数组对比,寻找新增元素了!使用array.includes和Set来提升代码可读性
这类问题的重点在于能不能突破基础思路,突破基础思路是从程序员入门变成中级甚至高级的第一步,如果所有需求都通过最基础的业务逻辑来做,是得不到成长的。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~

热门文章

最新文章

  • 1
    PHP 数组查找:为什么 `isset()` 比 `in_array()` 快得多?
    385
  • 2
    Java 中数组Array和列表List的转换
    1143
  • 3
    JavaScript中通过array.map()实现数据转换、创建派生数组、异步数据流处理、复杂API请求、DOM操作、搜索和过滤等,array.map()的使用详解(附实际应用代码)
    844
  • 4
    通过array.reduce()实现数据汇总、条件筛选和映射、对象属性的扁平化、转换数据格式、聚合统计、处理树结构数据和性能优化,reduce()的使用详解(附实际应用代码)
    1663
  • 5
    通过array.some()实现权限检查、表单验证、库存管理、内容审查和数据处理;js数组元素检查的方法,some()的使用详解,array.some与array.every的区别(附实际应用代码)
    831
  • 6
    通过array.every()实现数据验证、权限检查和一致性检查;js数组元素检查的方法,every()的使用详解,array.some与array.every的区别(附实际应用代码)
    587
  • 7
    多维数组操作,不要再用遍历循环foreach了!来试试数组展平的小妙招!array.flat()用法与array.flatMap() 用法及二者差异详解
    433
  • 8
    别再用双层遍历循环来做新旧数组对比,寻找新增元素了!使用array.includes和Set来提升代码可读性
    405
  • 9
    Array.forEach实战详解:简化循环与增强代码可读性;Array.forEach怎么用;面对大量数据时怎么提高Array.forEach的性能
    292
  • 10
    深入理解 JavaScript 中的 Array.find() 方法:原理、性能优势与实用案例详解
    915