<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
第1章邮件升级策略
本章覆盖了升级计划的制定及升级到Domino8需要考虑的问题。Domino体系结构有很多种可能的变化,每一种变化需要考虑的因素可能都不一样。本章不涉及与某个具体设计相关的可能的因素,而主要集中在影响Domino体系结构的专题上,不依赖于规模的大小、硬件及使用的操作系统。本章包括以下专题:
l项目定义
l资源计划
l现有环境调查
l制定计划
l硬件和软件资源的考虑
lDominoR8的测试
l重新规划Domino环境
l本次项目的升级策略
1.1项目定义
在开始升级到DominoR8之前,应该清楚升级实现的目标,以下是规划目标时需要考虑的:
l是否只是升级Domino服务器,而不需要DominoR8中新增的功能。
l是否需要DominoR8中提供的新工具
l是否升级客户端
l管理员及最终用户的培训,HelpDesk
l相关的文档
l利用DominoR8的新特性,在当前系统管理方面需要改进的地方
l通过DominoR8性能基准测试,找出最优的硬件配置
应该考虑升级后可以接受的服务级别以及要实现的服务级别和服务器的响应时间,使用行业的基准测试来比较R6,R7和DominoR8所提供的服务级别和响应时间,考虑是否提高Domino服务器的性能。
通常来讲,在多台Domino服务器环境下,整体升级次序大致如下:
1.升级LotusAdministratorClient
2.升级Domino目录的设计
3.升级Domino管理服务器
4.升级DominoHub服务器
5.升级其它Domino服务器
6.升级LotusNotes客户端(包括LotusDesigner)
7.启用Domino/Notes应用R7新特性
1.2资源计划
在进行系统升级时投入的资源可由内部资源和外部资源组成。
内部资源:由公司内部的技术人员组成。当决定一个项目的成员时首先要考虑的就是当前的资源是否能满足额外的工作,他们不仅要负责系统升级,而且还要负责升级之前的培训工作。
除了技术人员以外,在系统升级期间或以后,现场支持、HelpDesk和开发方面也会有相当的工作量,这些都是要考虑的因素。使用内部人员的优点在于内部人员了解硬件及当前的系统配置。
外部资源:由IBM软件服务部Lotus的专业服务部门(ISSL)或Lotus的合作伙伴公司组成,主要提供顾问咨询、规划设计和现场实施服务。当考虑外部资源的安排时,也应该对项目的实施有控制权。
使用外部资源的优势有:
升级工作可以立即开始,避免了学习的弯路
可以进行经验、技能的传递,可以把技术顾问的经验、技术传递给内部的技术人员。
在内部资源和外部资源之间有多种工作模式,包括:
在项目管理、技术资源和具体实施方面完全由业务合作伙伴完成。
如果有多个工作地点需要升级,业务合作伙伴完成一个,其它的由内部人员完成。
业务合作伙伴完成项目的规划及理论设计,对内部人员进行技能培训,具体的升级工作由内部人员完成。
业务合作伙伴也可以提供培训、文档编制以及新数据库的设计。
1.3现有环境调查
在制定升级计划的过程中重要的一步就是完成当前R7系统的调查工作。这有助于时间的安排和资金的预算,决定是否需要购买额外的硬件和软件。
了解当前的系统也可以帮你建立测试案例,有助于对比新旧系统。最重要的是,对系统升级有一个很清晰的轮廓,有助于评估升级是否成功,所期望的系统性能是否达到了预期的目标。
同时,还应该测试所有的R7数据库应用。虽然升级应用数据库为DominoR8设计在项目的最后阶段完成,但也必须测试R7格式的数据库在DominoR8服务器上是否能正常运行。
提示:使用一个Notes数据库来跟踪并记录调查的结果,标记要升级的项目和数据库。
下面列出的就是需要考虑的项目:
客户端 | 服务器 | 应用功能 |
硬件-内存、硬盘 操作系统 使用的网络协议 Web浏览器 使用的邮箱模板版本 客户端的许可证类型 | 硬件-内存、硬盘 操作系统 使用的网络协议 服务器的专用任务,比如hub,spoke,SMTP等 服务器的许可证类型 附加的产品,如Faxserver,LEI等 | 工作流、界面、关键字域、作者域、读者域、视图、导航器、操作、按钮、热点、对话框、隐藏域及隐藏公式、计算域、有效值验证公式、区段、规则及访问控制、表、代理、数据库查找、外部数据访问 |
提示:使用DominoR7的设计摘要特性,可以帮你分析数据库的元素。设置一个数据库来跟踪并记录测试和升级过的数据库。
1.4制定计划
虽然DominoR7到DominoR8的升级没有什么技术难度,但也有许多需要考虑的问题。因此,制定有效的项目管理和项目计划将会有益于项目的投入、控制和实施。
1.4.1小组成员的确定
为保证项目的顺利实施,明确项目小组成员的具体分工是非常重要的。项目经理或项目领导负责整个项目的管理和协调工作,包括时间安排、进度控制及在升级过程中可能出现的问题、明确每个人员的职责。
对于一个Domino系统升级项目需要的角色和技能依赖于Notes环境的复杂度和公司的组织机构情况,以下是在整个项目中需要确定的角色:
Ø项目经理
Ø最终用户的代表
ØDomino系统管理员
Ø网络管理员
ØHelpDesk
Ø培训小组
Ø工作站支持小组
Ø操作系统支持小组
Ø安全小组
ØNotes的开发人员
提示:确认每个小组成员都有备份人员,以便在缺席时能接替他们的工作。
1.4.2计划内容
1.规划项目的主要阶段,确定升级服务器和客户端的时间和内容,并指明可能的例外情况。
2.确定小组会议的次数和会议地点,确定应该在什么时候在哪里提交什么文档。
3.确定购买软硬件的顺序及具体的交货时间,还应考虑到偶然事故的发生。
4.确定培训的时间、地点等
1.4.3交流
交流是一个项目平滑地运行的关键,Domino是实现交流的有效工具,利用Domino系统可以进行项目控制及管理、数据收集和项目跟踪,并可以与其它成员或业务合作伙伴共享信息,交流升级的经验和存在的问题。
1.5硬件和软件资源的考虑
1.5.1服务器
硬盘:所有的操作系统要求至少750MB的硬盘空间,建议至少1GB,保证能有充足的备份空间。
推荐的交换空间为:
操作系统 | 推荐的交换空间 |
AIXandSolaris | 3倍的物理内存 |
Windows | 512MB |
事务日志:推荐事务日志文件存放在独立的镜像设备上,有其独立的磁盘控制器,比如RAID0或RAID1,事务日志至少需要1GB的磁盘空间,最大可以达到4GB。
内存要求:Domino服务器对内存的要求依赖于它所担当的角色,是否使用了邮件、应用、Hub和Web,还是提供了多个服务,也依赖于连接到服务器上的用户数。下表列出了三个平台上最小的内存要求。
操作系统 | 最小内存要求 | 推荐内存 |
WIN2000/XP | 128MB | 512MB |
Linux | 128MB | 512MB |
AIXandSolaris | 192MB | 512MB |
1.5.2备份软件
关于第三方的备份软件和DominoR8的兼容性问题,需要与第三方相关厂商咨询,以获得与DominoR8相应的支持软件。
1.5.3客户端
硬盘要求:
客户端 | 最小 | 推荐 |
NotesClent–Win2000/XP | 275MB | 512MB |
NotesDesigner–Win2000/XP | 275MB | 512MB |
NotesAdministrator–Win2000/XP | 275MB | 512MB |
内存要求:
操作系统 | 最小 | 推荐 |
Win2000/XP | 128MB | 256MB 256MB(如果同时运行Notes、Administrator和Designer) |
1.6DominoR8的测试
在DominoR8升级项目中测试是关键的一部分。测试阶段包括测试计划,测试过程和测试结果及文档的编制。测试阶段也应该包括测试计划中关键部分的偶然性测试。
工具:公司可以有自己的管理工具,也可以开发或者定制厂商的产品。LotusNotes/Domino每一个版本中都提供了很强的功能。当测试时:
l保证使用的管理工具与DominoR8是完全兼容的。
l确定哪一个工具能被DominoR8的新功能所取代。
1.6.1时间估计
在具体实施升级之前进行测试的一个好处就是能精确地估计从R4.x/R5/R6到DominoR8服务器升级需要使用的时间。在升级过程中所占用的大部分时间可能就是数据库的ODS版本和设计的升级。我们建议升级ODS和设计要分开进行,这样不会影响Domino服务器的正常运行。在开始升级之前还应考虑一些准备工作,比如升级Notes.ini的参数或者硬件的升级。Domino服务器程序的升级通常要用15-30分钟的时间。升级数据库ODS版本的时间依赖于硬件的类型,我们推荐采取下列步骤:
1.为所有的数据库运行fixup.
2.在升级ODS到DominoR8格式之前压缩数据库,升级后再压缩一次。
3.为所有升级的数据库运行updall,重建视图索引,这能保证用户在打开数据库时不会感觉到延迟。
1.6.2测试用例
测试用例应该根据运行在R7服务器的功能是否在DominoR8服务器也提供同样的功能而定。提示:设置一个包含测试用例的Notes数据库,可能包括测试的步骤、结果以及故障处理和服务器的功能细节。项目小组也可以使用这个数据库记录升级中的技术问题。
需要测试的项目很多,不可能一一列举。下面列出一些为建立测试用例时提供参考。
服务器 | 应用 |
.与R7/R8服务器的共存 .从R7到DominoR8的升级路径 .性能测试和基准测试 .通讯录到Domino目录和目录编目 .ODS的升级 .邮件路邮 - NRPC和SMTP .管理进程 创建用户 重新验证 ID恢复 监控 创建假期 邮件文件移动 MAP .管理数据库 资源预定 Adminp Events和Statrep Catalog .事务日志
| .NotesR7访问DominoR8 .与R5/R6服务器的复制 .复制后,测试在R8服务器上的应用 .测试所有的应用数据库,转换到R8的ODS格式,运行压缩和使用updall重建索引。 .使用数据库中的每一个表单创建、保存和编辑文档 .重建全文索引,并测试 .Notes设计列表 所有编辑域是否正常 所有计算域是否正常 所有数据库的查找是否正常 所有按钮是否正常 所有操作是否正常 所有的显示是否正常 打开所有的视图 视图中的所有列显示是否正常 所有文档的显示和选择公式是否正常 所有的分类是否正常 所有排序是否正常 .如果在应用中使用了外部数据,编辑外部数据检查修改是否正常 .如果在应用中使用了OLE对象,创建和启动对象 .运行所有的代理,包括有时间安排的代理 .测试安全性 存取控制 角色 读者域 作者域 加密域 选择复制公式 .测试e-mail启动的应用 |
1.6.3ODS(On-diskstructure)
Domino提供灵活的ODS,升级到DominoR8的ODS版本还可以再恢复到R7的ODS版本。可以通过数据库的属性来查看其使用的ODS版本。下表显示了不同Domino版本的ODS版本:
Domino版本 | ODS版本 |
DominoR4.x | 20 |
DominoR5 | 41 |
DominoR6 | 43 |
DominoR7 | 43 |
DominoR8 | 48 |
提示:使用compact命令,R7的数据库将被升级到R8的ODS版本。使用参数-r还可以再恢复到R7的版本。
1.6.4文档编制
在测试阶段的最后,应该有完整的文档来记录测试的基本情况、管理上的变化和事故诊断过程。
1.7重新规划Domino环境
在进行DominoR8升级时,应该考虑到是否重新规划邮件网络域的可能性。因为在DominoR8中,邮件路由兼容性有很大的增强,包括对SMTP的本原支持,以及对消息存储MIME的本原支持,并提供了很多新邮件路由限制与安全控制的配置。Web邮件与POP3/IMAP4邮件协议的支持也比以前版本更好。同时,DominoR8也可以和DominoR7在混合环境下使用和相互通讯。
1.8本次项目的升级策略
以IBM推荐的升级策略作为范本,考虑现场环境制定以下策略:(IBM推荐策略如下图:)
1、升级管理客户端
一旦Domino域中的第一台服务器升级后,最新的Domino目录将复制到整个系统的服务器上。R7管理客户端必须升级到R8后才能做日常管理工作。因此升级管理客户端是升级过程中的提前。
2、升级公共地址本
公共地址本是Domino环境中首先需要升级的元素。将公共地址本升级为Domino目录需要一系列的步骤,以保证在升级过程中一些定制的设计将被继续保留。
同时升级PNAB完成后,需要禁止R8设计的复制,仅保留数据的复制。升级完成后经过复制,将Domino目录复制到整个Notes环境中。
3、升级管理服务器
管理服务器负责运行公共地址本的adminp的请求。公共地址本的管理服务器维护数据库的访问控制列表ACL、用户删除、用户改名的操作,并将这些变化复制到域的其他服务器上。
管理服务器是第一台需要升级的服务器。管理服务器升级完成后由它来负责将三个系统数据库(Domino目录库、Names.nsf、管理请求数据库admin4.nsf、验证日志数据库certlog.nsf)在整个环境的复制。
管理服务器升级后自动将公共地址本PNAB升级到R8的配置。R8的地址本即Domino的目录的设计是向下兼容的。也就是说,Domino目录即可以运行R7的服务器上也可以运行在R8的服务器上。由于升级后PNAB中的有些视图和表单的设计修改,R7的管理工具不具备R8的管理工具的所有功能。所以必须将R7的管理工具升级到R8。
4、备份和恢复
在服务器升级之前,对服务器必须做一个全备份。存2份拷贝,一份放在机房、用于快速恢复,至少保留1个月时间;另一份用于灾难恢复,放在远离机房的地方。
升级前需要通知用户,在升级期间该服务器暂不可用
5、资源需求
管理服务器的升级时间依赖于升级前的准备工作是否充分。为了升级的顺利进行,下列人员需要参与:网络管理员、Domino管理员、有经验的服务器管理员(即刀片服务器管理员)熟悉硬件和操作系统平台。存储和备份软件管理员。
6、选择有限实施的服务器
R8升级的有限实施是在全面实施前的重要验证步骤,通过有限实施可以验证升级方案的可行性,发现方案中的缺陷,避免在全面实施中重现。
7、邮件服务器升级
邮件服务器的升级保证以下步骤:
ü在邮件服务器升级完成后,启动之前的压缩任务中将完成用户邮箱的ODS升级
ü停止Domino服务,关闭服务器
ü对DominoServer的程序和数据做全备份
ü卸载老版本的Domino服务
ü删除服务器文件(程序和数据目录下的),保留目录结构
ü在另外一台新的刀片上进行全新安装服务器
ü安装所需的和建议的操作系统补丁(参考公司提交的系统需求表)
ü安装Domino8.0.2
ü将下列文件拷贝到NotesData子目录下:names.nsf,admin4.nsf,certlog.nsf,server.id和所有的邮件文件。
ü离线地对所有的数据库进行修复,运行fixup-f-j-v-l
ü离线地对所有数据库进行压缩,升级ODS版本,compact-c-i-K-F
ü启动并配置新的DominoServer
ü运行uodall-r,压缩和修复所有数据库任务
ü分别测试新的Domino服务的连通性和功能性
ü建立DominoCluster
ü配置Cluster所需的参数与配置条件
ü测试并验证cluster的可用性
ü在全新刀片上安装并配置DominoLDAP并建立LDAP与用户数据库及ID的映射规则
ü测试并验证LDAP服务可用性
ü在全新刀片上安装并配置DominoHttp服务并建立客户端与Http服务的联通、建立HTTP与DominoCluster的连接性配置。
ü配置HTTPCache以达到性能优化
ü配置HTTP压缩以降低web网络占用率
ü建立HTTP服务与Domino群集的端口映射
ü测试并验证浏览器客户端或inotes的HTTP连通可用性
ü安装并配置LotusISS邮件安全网关。
ü配置安装策略、调整网关性能阀值
ü测试并验证网关可用性与并发访问的可靠性
ü切换IP,在网络层将R7的邮件服务切换到R8。完成服务器升级
ü采用smartupdate进行客户端静默升级并分发
ü保证客户端R8及R7用户均可以正常使用、进行疑难解答并对管理员进行培训。
第2章邮件架构
架构如上
第3章Domino8升级注意事项
本章描述在其它一些客户的升级过程中遇到的部分问题和注意事项。
3.1用户邮箱升级时的注意事项
用户邮箱升级即通过convert任务将用户邮箱的设计升级到Domino7的模板,在用户邮箱升级过程中需要注意以下几点:
§在运行convert任务前,需要停止router
§convert程序需要使用-u的参数,以保证所有自行创建的文件夹也可以升级到mail6.ntf中收件箱的设计。
§如果mail目录下包括多个子目录,又需要进行批量转换,则convert程序需要使用-r的参数,这可以转化所有子目录中的邮箱。
§-u和–r的参数可以同时使用
§在运行convert之前,需要临时取消所有用户邮箱的限额,否则对于那些超限额的邮箱,convert程序将无法对其进行处理。取消邮箱限额可以通过管理客户端批量进行处理,待convert程序执行完毕,再通过管理客户端批量对邮箱设置限额和警告阀值。
§在运行convert程序时,对于某些可能是利用早期版本的Notes客户端(例如:Notes4.x)自行创建的文件夹,由于没有选中“刷新/替换设计时不允许修改”,则convert程序会自动删除这些文件夹。为了保留这些文件夹并将其设计升级到mail6.ntf中收件箱的设计,需要手工利用DominoDesigner打开该用户的邮箱,将“文件夹”下自己创建的那些文件夹选中“刷新/替换设计时不允许修改”(利用设计文档属性对话框进行修改),再利用convert–u进行邮箱升级。
§邮箱经过convert程序处理,如果打开邮箱时看到所有邮件都变成“复制/保存冲突”,只需要手工选择“文件”-“数据库”-“替换设计”,用7的邮箱模板重新替换一次邮箱设计即可。
3.2在升级过程中系统数据库的设计是否允许复制?
尽管names.nsf、admin4.nsf等系统数据库的设计已经保证了可以在R7和R8的混合环境环境中使用,但为了减少升级过程中的潜在问题,我们仍然在升级过程中禁止复制系统数据库的设计部分。这只需在每个服务器的数据库复本上,单独设置其“复制设置”,在对话框的“高级”中取消对“设计元素”和“代理”的复制。
3.3DominoR8支持的配置注意项
在LotusDomino8管理员帮助和安装手册里提到,如果你目前的服务器或者客户端版本是6.5以前的,必须至少先升级到6.5再升级到8.x。
该文档包括了已经停止支持的Notes/Domino6.0.x版本的信息。详情请参考IBMLifecycle。
该文档不包括从2005九月起停止支持服务的Notes/Domino5.x版本信息。
该文档适用于Notes/Domino8.x版本,但不包括DominoWebAccess。
索引:
I.NotesandDomino8.x支持的邮件模版
a.Domino8邮件模版(Mail8.ntf)
b.Domino7邮件模版(Mail7.ntf)
c.Domino6邮件模版(Mail60.ntf)
II.使用Notes/Domino8.x新功能所需要的配置。
III.客户端版本可高于服务器版本吗?
IV.当秘书要管理其他用户的日历时会如何?
V.资源预定数据库
VI.Lotus建议的升级顺序是怎样的?
解答:
I.NotesandDomino8.x支持的邮件模版
为了确定你的配置是否在支持范围内,首先确定现在使用的模板版本,然后对照服务器和客户端在以下的表格中找出相应的位置。
A.Domino8邮件模板(Mail8.ntf)
“仅支持在升级过程中的使用”表示该配置在服务器和客户端升级到新版本所需的时间之内是支持的。但不支持永远使用该配置。使用该配置不会导致已知的严重的问题或者缺陷。但是,IBMLotus不会对该配置上产生的问题发布补丁,因为该配置只会在升级过程中使用。请参考下文的建议升级顺序。
注释#1
在发件箱界面看不到某些图标,例如重要性图标(!)(SPR#SJCN74RNXZ).
注释#2
不能把邮件拖拽到后续界面(SPR#SJCN73XKMJ).
注释#3
邮件惯用选项-》允许他人召回发给我的邮件-》“当我删除失败会话”时进行的操作不能实现,因为该配置不支持该功能(SPR#THSE7533D8).
额外注释:
虽然不建议使用,但IBMLotus软件支持升级过程中的Notes8.x客户端可以连接到版本6的服务器上。
在某些情况下IBMLotus软件支持升级过程中Notes客户端使用更高版本的邮件模版,(例如,Notes7客户端/Notes8邮件模版)。但是,该配置不建议长期使用。
B.Domino7邮件模版(Mail7.ntf,DWA7.ntf)
该表格描述的是关于版本8的配置。有(*)的项表示不含任何版本8的组成。所以,你可以参考其他关于版本7或版本6的支持的配置的文档。
C.Domino6邮件模版(Mail60.ntf)
该表格描述的是关于版本8的配置。有(*)的项表示不含任何版本8的组成。所以,你可以参考其他关于版本7或版本6的支持的配置的文档。
注释#1
后续标记不在邮件中显示,除非关闭再重开邮件。(SPR#SJCN73WS89)
II.使用Notes/Domino8.x新功能所需要的配置。
为了使Notes/Domino8的新功能使用正常,对服务器和客户端版本可能有些特殊要求,包括和邮件相关或者不相关的功能。以下是这些功能的部分列表:
功能列表 | 额外详情/注释 |
应用集成 | Composite应用只能在Notes8客户端上使用。 |
邮件召回 | 要成功召回邮件,邮件召回功能要求被召回的邮件必须在Domino8服务器上。8之前版本的服务器可以传送邮件召回的请求,但只有Domino8服务器上的路由器任务可以完成召回的动作。非Domino服务器不能传送或者完成召回的请求。 理论上,客户端的唯一要求是发件人的(请求召回者)邮件模版是mail8.ntf。所有在平台Microsoft?Windows?XP,Microsoft?Windows?Vista,NovellSUSELinuxEnterpriseDesktop(SLED)和RedHatEnterpriseLinux(RHEL)上的Notes8客户端(标准配置和基本配置)连接Domino7.0.x和8.0服务器上的测试都已完成。 |
幽灵会议 | 要使未处理的会议出现在日历界面,必须使用Domino8服务器。如果用8之前版本的服务器,未处理的通知不会出现在日历。 |
自动取消 | 要使自动取消功能自己删除会议,必须使用Domino8服务器。如果使用8之前版本的服务器,即使在惯用选项选择了自动取消,自动取消的会议也不会被删除。 |
如需查阅完全功能列表和它们的要求,请参考文档LotusNotesandDomino8Reviewer'sGuide里面的:
AppendixA:LotusNotes8clientfeaturerequirements
包括了所有LotusNotes8的新功能列表和每个功能是否要求LotusNotes8基于Eclipse的界面,LotusNotes8的邮件模版或者LotusDomino8服务器,或者同时满足几项。
AppendixB.LotusDomino8serverfeaturerequirements
包括了所有LotusDomino8的新功能列表和每个功能是否要求LotusNotes8客户端,LotusNotes8邮件模版和任何关于既有LotusDomino8,又有其他较早版本的服务器的混合环境的限制。
III.客户端版本可高于服务器版本吗?
Lotus建议在升级客户端前先升级服务器。但是,运行的Notes客户端版本高于服务器版本是支持的配置,(就是指Notes8客户端和Domino7或者6服务器)。但是当在一个低版本的服务器上运行一个高版本的Notes客户端和邮件模版时,需要注意日历日程和邮件功能。大部分的功能是由客户端和邮件模版实现的,但也有一些功能是在服务器端实现的。所以,有些需要服务器端代码实现的功能可能会在低版本的服务器上不能运行。
IV.当秘书要管理其他用户的日历时会如何?
当用户打开其他用户的邮箱管理他人的日历时,情况会变得更复杂。不仅要考虑单个人的配置,而是要考虑两个人的配置。你必须考虑两个人的联合邮箱的配置,然后根据上面的支持图表确定配置是否支持。
例如:当秘书打开经理的邮箱管理他/她的日历,需要考虑的配置是秘书的客户端版本,经理的服务器和邮件模版版本。也就是:
另外需要注意的是以上的配置具有某些限制。例如,在上面的例子里面,经理的日历在Domino7服务器上。Notes/Domino8.0的一个新功能是“显示未处理的日历项”(关于该功能的详细介绍,请参考文章:EnablingcalendarghostinginIBMLotusNotes8)。该功能是编写在Notes8邮件模版(Mail8.ntf)和Domino8服务器的代码上。所以,秘书管理该经理的日历时不会看到这个选项。
V.资源预定数据库
任何支持的Notes客户端版本都可使用Domino8.0的资源预定模版和房间和资源管理器(RnRMgr)的功能。RnRMgr任务负责处理所有的预定请求和更新房间和资源的繁忙时间日程。不支持的客户端版本可以从邮箱的会议邀请里面预定房间。资源预定模版(Resrc8.ntf)里面没有Domino8.0独有的东西。对于日历和日程的用户来说,使用上没有任何变化。
RnRMgr任务只在Domino7.x和8.x服务器上运行。这就是说资源预定数据库的宿主服务器必须是Domino7.0版本以上。以前我们曾经建议客户把资源预定数据库放在它自己的服务器上。如果客户是按照建议来做,他只需要升级该服务器,所有客户端即可使用RnRMgr的功能。
我们允许群集服务器复制资源预定数据库。群集服务器的成员可以是任何版本的Domino。唯一的限制是7.0以前版本的Domino服务器一定不能运行路由器任务。因为在7.0之前版本的Domino路由器包含一些自动处理的代理,而路由器的‘预备邮件传送’会导致请求被传送到其他群集服务器时被错误处理。这样会导致资源预定数据库的问题。
VI.Lotus建议的升级顺序是怎样的?
在任何情况下,按照升级手册保证邮件和日历&日程最少限度的功能损失是很重要的。
1.升级管理员用来管理Domino目录的Notes客户端。
2.首先升级Domino目录(也就是首先把Domino目录的管理服务器升级到8.0)。
3.复制Domino目录到其他服务器。
4.升级Hub服务器。
5.升级邮件服务器。
6.升级SMTP网关服务器。
7.升级网页服务器。
8.升级应用服务器。
9.升级任何和第三方产品集成的服务器。
10.升级Notes客户端到8.0。
11.最后,用Notes/Domino8.0的模版替换任何数据库/邮箱的设计。必须使用Convert任务在服务器上替换邮箱的设计。
3.4R7到R8的功能菜单的变化对照表
FILEMenuChanges |
-viewlevel
FilemenuinNotes7client | equivalentmenuinNotes8.xclient |
File>New>NewMemo | File>New>Message |
File>New>NewCalendarEntry | File>New>CalendarEntry |
File>New>NewContact | File>New>Contact |
File>New>NewToDo | File>New>ToDo |
File>New>NewURL | View>Toolbar>Address(toggleon) |
File>SaveasNewVersion | noequivalent |
File>Autosave>AutosaveNow | noequivalent |
File>DocumentProperties | File>Properties |
File>Database>Properties | File>Application>Properties |
File>Database>AccessControl | File>Application>AccessControl |
File>Database>Open | File>Application>LotusNotesApplication |
File>Database>NewCopy | File>Application>NewCopy* |
File>Database>Publish | File>Application>Publish* |
File>Database>Delete | File>Application>Delete* |
File>Database>Archive | File>Application>Archive |
File>Database>RefreshDesign | File>Application>RefreshDesign* |
File>Database>ReplaceDesign | File>Application>ReplaceDesign* |
File>Database>DesignSynopsis | File>Application>DesignSynopsis* |
File>Replication>Settings | File>Replication>OptionsforthisApplication |
File>Mobile>ChooseCurrentLocation | File>Locations>SwitchtoLocation |
File>Mobile>EditCurrentLocation | File>Locations>ManageLocations |
File>Mobile>EditCurrentTime/Phone | File>Locations>SwitchtoLocation>Travel... |
File>Mobile>Locations | File>Locations>ManageLocations |
File>Mobile>ServerPhoneNumbers | Openlist>Contacts>Advanced>Connections |
File>Mobile>CallServer | withReplicationtabopen,Actionsmenu. |
File>Mobile>HangUp | sameasabove |
File>InstantMessaging>Chat | withfocusinSametimesidebar.... |
File>InstantMessaging>StartInstantChatMeeting | Tools>Meetings>InvitetoInstantMeeting |
File>InstantMessaging>StartInstantAudioMeeting | Tools>Meetings>InvitetoInstantMeeting |
File>InstantMessaging>StartInstantVideoMeeting | Tools>Meetings>InvitetoInstantMeeting |
File>InstantMessaging>StartInstantSharedMeeting | Tools>Meetings>InvitetoInstantMeeting |
File>InstantMessaging>StartInstantCollaborationMeeting | Tools>Meetings>InvitetoInstantMeeting |
File>InstantMessaging>AddtoInstantContactList |
|
File>InstantMessaging>Show/HideInstantContactList | withfocusinSametimesidebar... |
File>InstantMessaging>Preferences | File>Preferences>Sametime |
File>InstantMessaging>IAmActive | Tools>Sametime>SetAvailability>SetAlltoIamAvailable |
File>InstantMessaging>IAmAway | Tools>Sametime>SetAvailability>SetAlltoIamAway |
File>InstantMessaging>DoNotDisturbMe | Tools>Sametime>SetAvailability>SetAlltoDoNotDisturb |
File>InstantMessaging>EditCurrentStatusMessage | Tools>Sametime>EditStatusMessage |
File>InstantMessaging>LogOnInstantMessaging | File>Sametime>LogIntoSametime |
File>Preferences>UserPreferences | File>Preferences |
File>Preferences>LocationPreferences | File>Preferences>Locations |
File>Preferences>ClientReconfigurationWizard | Tools>ClientReconfigurationWizard |
File>Preferences>AdministrationPreferences | noequivalent |
File>Preferences>ToolbarPreferences | File>Preferences>Toolbar |
File>Preferences>StatusBarPreferences | noequivalent |
File>Security>LockDisplay | File>Security>LockNotesID |
File>Tools>NotesSmartUpgrade | Tools>NotesSmartUpgrade |
File>Tools>ServerAdministration | Tools>ServerAdministration |
File>Tools>DebugLotusScript | Tools>DebugLotusScript* |
File>Tools>RemoteLotusScriptDebugger | Tools>RemoteLotusScriptDebugger* |
File>Tools>ShowJavaDebugConsole | Tools>ShowJavaDebugConsole* |
File>Tools>StopLocalWebPreviewprocess | Tools>StopLocalWebPreviewprocess* |
File>Tools>JavaDebuggingPreferences | Tools>JavaDebuggingPreferences* |
File>CloseAllOpenWindowTabs | File>CloseAll(note:Slightlydifferentbehavior.Closeseverythingandleavesblankloginpage.) |
File>SaveWindowState | menunotavailable |
File>ClearSavedWindowState | menunotavailable |
File>ExitNotes | File>Exit |
*"AdvancedMenus"mustbeenabled(underView>AdvancedMenus)inordertoseethismenuchoice.
-documentlevel
FilemenuinNotes7client | equivalentmenuinNotes8.xclient |
File>New>NewMemo | File>New>Message |
File>New>NewCalendarEntry | File>New>CalendarEntry |
File>New>NewContact | File>New>Contact |
File>New>NewToDo | File>New>ToDo |
File>New>NewURL | View>Toolbar>Address(toggleon) |
File>SaveasNewVersion | noequivalent |
File>Autosave>AutosaveNow | noequivalent |
File>DocumentProperties | File>Properties |
File>Database>Properties | File>Application>Properties |
File>Database>AccessControl | File>Application>AccessControl |
File>Database>Open | File>Application>LotusNotesApplication |
File>Database>New | File>Application>New |
File>Database>NewCopy | File>Application>NewCopy* |
File>Database>Publish | File>Application>Publish* |
File>Database>Delete | File>Application>Delete* |
File>Database>Archive | File>Application>Archive |
File>Database>RefreshDesign | File>Application>RefreshDesign* |
File>Database>ReplaceDesign | File>Application>ReplaceDesign* |
File>Database>DesignSynopsis | File>Application>DesignSynopsis* |
File>Replication>Settings | File>Replication>OptionsforthisApplication |
File>Mobile>ChooseCurrentLocation | File>Locations>SwitchtoLocation |
File>Mobile>EditCurrentLocation | File>Locations>ManageLocations |
File>Mobile>EditCurrentTime/Phone | File>Locations>SwitchtoLocation>Travel... |
File>Mobile>Locations | File>Locations>ManageLocations |
File>Mobile>ServerPhoneNumbers | Openlist>Contacts>Advanced>Connections |
File>Mobile>CallServer | withReplicationtabopen,Actionsmenu. |
File>Mobile>HangUp | sameasabove |
File>InstantMessaging>Chat | withfocusinSametimesidebar.... |
File>InstantMessaging>StartInstantChatMeeting | Tools>Meetings>InvitetoInstantMeeting |
File>InstantMessaging>StartInstantAudioMeeting | Tools>Meetings>InvitetoInstantMeeting |
File>InstantMessaging>StartInstantVideoMeeting | Tools>Meetings>InvitetoInstantMeeting |
File>InstantMessaging>StartInstantSharedMeeting | Tools>Meetings>InvitetoInstantMeeting |
File>InstantMessaging>StartInstantCollaborationMeeting | Tools>Meetings>InvitetoInstantMeeting |
File>InstantMessaging>AddtoInstantContactList |
|
File>InstantMessaging>Show/HideInstantContactList | withfocusinSametimesidebar... |
File>InstantMessaging>Preferences | File>Preferences>Sametime |
File>InstantMessaging>IAmActive | Tools>Sametime>SetAvailability>SetAlltoIamAvailable |
File>InstantMessaging>IAmAway | Tools>Sametime>SetAvailability>SetAlltoIamAway |
File>InstantMessaging>DoNotDisturbMe | Tools>Sametime>SetAvailability>SetAlltoDoNotDisturb |
File>InstantMessaging>EditCurrentStatusMessage | Tools>Sametime>EditStatusMessage |
File>InstantMessaging>LogOnInstantMessaging | File>Sametime>LogIntoSametime |
File>Preferences>UserPreferences | File>Preferences |
File>Preferences>LocationPreferences | File>Preferences>Locations |
File>Preferences>ClientReconfigurationWizard | Tools>ClientReconfigurationWizard |
File>Preferences>AdministrationPreferences | noequivalent |
File>Preferences>ToolbarPreferences | File>Preferences>Toolbar |
File>Preferences>StatusBarPreferences | noequivalent |
File>Security>LockDisplay | File>Security>LockNotesID |
File>Tools>NotesSmartUpgrade | Tools>NotesSmartUpgrade |
File>Tools>ServerAdministration | Tools>ServerAdministration |
File>Tools>DebugLotusScript | Tools>DebugLotusScript* |
File>Tools>RemoteLotusScriptDebugger | Tools>RemoteLotusScriptDebugger* |
File>Tools>ShowJavaDebugConsole | Tools>ShowJavaDebugConsole* |
File>Tools>StopLocalWebPreviewprocess | Tools>StopLocalWebPreviewprocess* |
File>Tools>JavaDebuggingPreferences | Tools>JavaDebuggingPreferences* |
File>CloseAllOpenWindowTabs | File>CloseAll(note:Slightlydifferentbehavior.Closeseverythingandleavesblankloginpage.) |
File>SaveWindowState | menunotavailable |
File>ClearSavedWindowState | menunotavailable |
File>ExitNotes | File>Exit |
*"AdvancedMenus"mustbeenabled(underView>AdvancedMenus)inordertoseethismenuchoice.
EDITMenuChanges |
-viewlevel
EditmenuinNotes7client | equivalentmenuinNotes8.xclient |
Edit>Properties | File>Properties |
Edit>CopyAsLink>AnchorLink | Edit>CopyAs>AnchorLink |
Edit>CopyAsLink>DocumentLink | Edit>CopyAs>DocumentLink |
Edit>CopyAsLink>ViewLink | Edit>CopyAs>ViewLink |
Edit>CopyAsLink>DatabaseLink | Edit>CopyAs>ApplicationLink |
Edit>CopySelectedasTable | Edit>CopyAs>Table |
Edit>QuoteSelection | Edit>Addprefixtoselection |
Edit>CheckSpelling | Tools>SpellCheck |
-documentlevel
sameasviewlevelabove.
VIEWMenuChanges |
-viewlevel
EditmenuinNotes7client | equivalentmenuinNotes8.xclient |
View>DocumentPreview>ShowPreview | View>PreviewPane>ShowPreview |
View>DocumentPreview>ZoomPreview | View>PreviewPane>ZoomPreview |
-documentlevel
NoViewmenuoptionsfromNotes7havechangedinNotes8
CREATEMenuChanges |
-viewlevel
CreatemenuinNotes7client | equivalentmenuinNotes8.xclient |
Create>Memo | Create>Message |
Create>Special>SendMemotoDatabaseManager | Create>Special>MessagetoDatabaseManager |
Create>InstantMeeting>StartInstantChatMeeting | Tools>Meetings>InvitetoInstantMeeting |
Create>InstantMeeting>StartInstantAudioMeeting | Tools>Meetings>InvitetoInstantMeeting |
Create>InstantMeeting>StartInstantVideoMeeting | Tools>Meetings>InvitetoInstantMeeting |
Create>InstantMeeting>StartInstantSharedMeeting | Tools>Meetings>InvitetoInstantMeeting |
Create>InstantMeeting>StartInstantCollaborationMeeting | Tools>Meetings>InvitetoInstantMeeting |
Create>InstantMeeting>LogOnInstantMessaging | File>Sametime>LogIntoSametime |
-documentlevel
CreatemenuinNotes7client | equivalentmenuinNotes8.xclient |
Create>Mail>Memo | Create>Mail>Message |
Create>Mail>Special>SendMemotoDatabaseManager | Create>Special>MessagetoDatabaseManager |
Create>InstantMeeting>StartInstantChatMeeting | Tools>Meetings>InvitetoInstantMeeting |
Create>InstantMeeting>StartInstantAudioMeeting | Tools>Meetings>InvitetoInstantMeeting |
Create>InstantMeeting>StartInstantVideoMeeting | Tools>Meetings>InvitetoInstantMeeting |
Create>InstantMeeting>StartInstantSharedMeeting | Tools>Meetings>InvitetoInstantMeeting |
Create>InstantMeeting>StartInstantCollaborationMeeting | Tools>Meetings>InvitetoInstantMeeting |
Create>InstantMeeting>LogOnInstantMessaging | File>Sametime>LogIntoSametime |
Create>Document>Memo | Create>Document>Message |
Create>Document>Special>SendMemotoDatabaseManager | Create>Document>Special>MessagetoDatabaseManager |
ACTIONSMenuChanges |
-viewlevel
ActionsmenuinNotes7client | equivalentmenuinNotes8.xclient |
Actions>AddRecipientstonewGroupCalendarEntry | Actions>More>AddRecipientstoNewGroupCalendar |
Actions>AddRecipientstonewGroupinAddressBook | Actions>More>AddRecipientstoContactGroup |
Actions>SendMemotoDatabaseManager | Create>Special>MessagetoDatabaseManager |
Actions>SynchronizeAddressBook |
|
Actions>UpgradeFolderDesign | Actions>Folder>UpgradeFolderDesign |
Actions>Categorize | noequivalent |
Actions>Delete | Actions>MovetoTrash |
Actions>Folder>DiscoverFolders | noequivalent |
Actions>CopyintoNew>NewMemo | Actions>More>CopyintoNew>Message |
Actions>CopyintoNew>NewCalendarEntry | Actions>More>CopyintoNew>CalendarEntry |
Actions>CopyintoNew>NewToDo | Actions>More>CopyintoNew>ToDo |
Actions>Chat>ChatWith | Actions>ChatWithSender |
Actions>Chat>Show/HideContactList | View>SidebarPanels>Sametime |
Actions>Chat>AddtoInstantContactList | fromSametimechatwindow... |
Actions>Tools>Preferences | Actions>More>Preferences |
Actions>Tools>AddSendertoAddressBook | Actions>More>AddSendertoContacts |
Actions>Tools>BlockMailfromSender | Actions>More>BlockMailfromSender |
Actions>Tools>CreateQuickRule | Actions>More>CreateQuickRule |
Actions>Tools>SendTrackingRequest |
|
Actions>Tools>OutofOffice | Actions>More>OutofOffice |
Actions>Tools>ArchiveSettings | Actions>Archive>Settings |
Actions>Tools>NewMemo-UsingStationery | Actions>More>NewMessagewithStationery |
Actions>Tools>MailRules | Actions>More>MailRules |
Actions>Tools>ReactivateMailSendFunctions |
|
Actions>ViewAll | Actions>UnreadOnly(toggleoff) |
Actions>ViewUnread | Actions>UnreadOnly(toggleon) |
-documentlevel
ActionsmenuinNotes7client | equivalentmenuinNotes8.xclient |
Actions>AddRecipients>tonewGroupCalendarEntry | Actions>More>AddRecipientstonewGroupCalendar |
Actions>AddRecipients>tonewGroupinAddressBook | Actions>More>AddRecipientstoContactGroup |
Actions>SendMemotoDatabaseManager | Create>Special>MessagetoDatabaseManager |
Actions>SynchronizeAddressBook | ? |
Actions>UpgradeFolderDesign | Actions>Folder>UpgradeFolderDesign |
Actions>Close | File>Close |
Actions>Show>ShowThread | Actions>Display>Conversation |
Actions>Show>ExpandPublicGroups |
|
Actions>Tools>Preferences | Actions>More>Preferences |
Actions>Tools>DeliveryInformation | Actions>More>DeliveryInformation |
Actions>Tools>AddSendertoAddressBook | Actions>More>AddSendertoContacts |
Actions>Tools>BlockMailfromSender | Actions>More>BlockMailfromSender |
Actions>Tools>CreateQuickRule | Actions>More>CreateQuickRule |
Actions>Tools>OutofOffice | Actions>More>OutofOffice |
Actions>Tools>MailRules | Actions>More>MailRules |
HELPMenuChanges |
HelpmenuinNotes7client | equivalentmenuinNotes8.xclient |
Help>HelpTopics | Help>HelpContents |
Help>ContextHelp | Help>DynamicHelp |
Help>AboutThisDatabase | Help>AboutThisApplication |
Help>UsingThisDatabase | Help>UsingThisApplication |
Help>AboutNotes | Help>AboutIBMLotusNotes |
3.5Domino邮件的监控方式
利用Domino自有的监控机制,逐级主动监控Mail系统
在建立起企业Mail系统之后,管理员可以启用邮件监控工具Messagetracking来跟踪、分析、优化邮件系统的性能。等系统稳定以后,日常的主要工作则集中在系统突发性事件的处理上,如何能知道Mail系统的突发事件那?换句话说,迅速判断出Mail系统出现问题的部分,采取相应的措施恢复系统。
在介绍具体的监控的手段之前,我们先简单介绍一下DominoMail系统的工作原理。Domino邮件系统的核心是Router任务,它具备发送、传输两种功能:发送是指把MAIL.BOX中的Message发送到用户邮箱或数据库中;传输则是完成服务器之间MAIL.BOX的消息传输。邮件路由分外部与内部两种,总体来说与外部通讯支持SMTP、POP3、IMAP协议,对内通讯则使用NRPC或SMTP,由Router根据邮件内容格式(MIME/CD)和邮件地址格式(InternetAddress带@/NotesAddress)来选择路由协议。下图很好的解释了邮件的发送的工作过程。
图3.邮件发送过程
在《IBMLotusDominoAdministratorhelp》中有对Cluster系统监控的介绍,这里我们就不累述了。
利用Eventmonitor机制
一个合理的企业Mail架构只是设置特定的服务器与外界通讯,因此监控邮件系统可以转化为监控Mail各种协议端口和Router任务。依据这条线索,我们可以利用Domino提供了多种监控途径,实现Mail系统的多级监控。以下图为例,选择SMTP协议,模拟企业Mail系统。Mail2负责发送邮件到Internet,Mail3负责从Internet接收邮件,这里需要做如下的配置。
·Enable服务器Mail2“SMTPusedwhensendingmessagesoutsideofthelocalInternetdomain”。
·Enable服务器Mail3“theSMTPlistenertask”
图4
我们选用MailRoutingEventMonitor和TCPServerGenerator分别监控Mail服务器的Router任务与侦听邮件服务端口。这两种监控都是利用服务器的ISpy任务实现的,当配置好EventGenerator后,ISpy就会定时发送探测消息到指定邮箱,检测Router任务;Ispy也会定时侦测服务器的服务端口。一旦测试失败,则发送通知消息。既然我们的主要任务是监控邮件服务的,所以在选择事件通知方式时最好不要选择Mail发送,因为Router一旦出现问题,管理员是不能及时收到告知消息的。
下面介绍的两种配置方案,在小型企业是可以直接应用的。
配置一,Mail服务器各自监控自己,选择Relaytootherserver事件通知方式,存入统一的数据库中。
图6
配置二,选择一台服务器(Mail1)路由监控的主服务器,由这台服务器发送侦测消息,并把所有服务器的事件通知消息统一存储到监控服务器的数据库中。
利用DDM机制(7.0以上)
从Domino7.0开始,增加了新DDM(DominoDomainMonitoring)功能。DDM的显著特点是:
·以ServerCollectionHierarchy的层级方式,利用复制公式逐级上传事件信息,集中存储单个Domain乃至跨Domain事件信息。
·提供解决事件问题的几种可能方案,帮助管理员迅速决策。
在Event4.nsf中创建一个ServerCollectionHierarchy。在下图中,w704spr集中收集服务器a704spr、l704spr、s704spr的事件信息。
图7
此时DDM数据库的复制设置中Advanced会自动生成复制选择公式。
图8
DDM提供了更加细化的Probe,下图的分类增加了NRPCRoutingStatus、SMTPProcessState、TransferQueueCheck等Probe类型,相对于EventGenerator,事件的类型更精细准确。
图9
事件通知信息会存入到ddm.nsf数据库中,结果中包含了事件引起的可能原因与解决方法。
图10
由此可见,DDM帮助管理员简化了管理流程,提高了故障诊断效率。
与第三方监控软件的结合
于第三方监控软件结合实现Mail系统监控,在事件产生的方式上可分为两种方式:主动传输事件消息和被监控方式。
DominoDDM/Event,主动向第三方监控软件传输事件消息
Domino从7.0版本起,提供了向TivoliEnterpriseConsole传输DDM事件信息的功能,但事件类型仅仅局限于OperatingSystemprobe。并不能满足Mail监控的需要,从8.0开始,任何一种Event事件类型都能通过格式转化功能,转化成TEC格式,发送到TEC服务器。除了在TivoliServer端设置一个基于允许接受DominoEvent的Rule外,还需配置DominoServerConfigurations中的Basics,启用EnableLoggingtoTivoliEnterpriseConsole,另外就是修改Eventhandler中NotificationMethod为ForwardeventtoTivoliEnterpriseConsole。
图11
利用Domino提供的C++API,编写监控Domino的特定服务的Probe,部署到第三方监控软件上
企业用户可能部署了第三方监控产品,比如HPOpenView等其他产品。目前,Domino不提供直接发送到这类监控产品,我们可以利用DominoC++API,遵循前面所述的侦测特定服务及端口的原则,测试邮件是否是否成功。按照监控产品的Probe开发规范,开发并部署监控Domino的Probe,主动侦测Mail服务及端口。一样可以实现DominoMail系统监控。
以上所述的三种监控方式(Event、DDM、与第三方监控软件的结合),为Mail系统管理员提供了发现问题,解决问题的途径。
第4章实施计划
4.1方案与测试
总计:4天
l确认需要实施的Domino的架构(0.2天)
l测试domino架构调整的步骤(0.2天)
l测试cluster的配置步骤(0.2天)
l测试邮件拆分的步骤(0.2天)
l确认备份和恢复策略(0.2天)
l确认Domino服务器升级次序(0.2天)
l确认Domino服务器升级的准备工作(0.2天)
l确认安装新的Domino8软件的方式(0.1天)
l确认升级Domino目录的方式(0.2天)
l确认升级用户邮箱的方法(0.1天)
l进行升级方案的测试(1天)
l完成升级安装前的准备工作(1天)
l测试报告提交(0.2)
4.2部署实施
总计:8天
l按照新的架构规划进行架构的重新调整(0.5天)
l在为升级准备的硬件环境上安装R8服务器(1天)
l完成Domino目录升级(0.5天)
l完成用户邮件的拆分(0.5天)
l完成用户邮箱升级(1天)
l完成群集配置(1天)
l对管理员进行R8管理的培训(2.5天)
l对现场支持人员进行用户客户端升级的培训(1天)
合计:12天服务