在配置 DIVAnet 服务之前,请参见第 2 章以了解 DIVAnet 服务的说明以及它们如何与 DIVArchive 交互和彼此交互。
配置 ClientAdapter 服务涉及配置客户机连接到 DIVAnet 的方式。它还涉及配置 DIVAnet 连接到 DIVArchive 的方式。
DIVAnet 站点定义为一个 DIVArchive 系统以及一个或多个 DIVAnet 服务(ManagerAdapter、ClientAdapter、DbSync)。为每个站点分配了唯一的站点名称。在配置 ClientAdapter 之前,必须在 DIVAnet 数据库中配置站点名称(通过 addSites.bat
实用程序)。应该创建易于读取且反映站点物理位置或功能的站点名称。这些站点名称将在每个站点上使用。
注:
站点名称区分大小写。DIVAnet 允许配置客户机 API 应用程序用于连接到 DIVAnet 的套接字端口。ClientAdapter 允许配置多个 API 端口。每个 API 端口通过以下两种模式之一进行配置:直接模式或 MultiDiva 模式。可以为每个端口分配工作流配置文件。
直接模式-在直接模式中,传入 API 连接直接路由到单个 DIVArchive 系统而不加以处理。DIVAnet 路由到的特定站点在 ClientAdapter 中基于每个端口进行配置。此功能允许本地客户机连接到远程 DIVArchive 系统,就像它是本地的那样。向其路由消息的 DIVA 站点必须在 ClientAdapter 配置文件的 <DivaManagers>
部分中进行配置。另请注意,只有在直接模式下才能将站点指定为正在运行(有关更多信息,请参见配置 DIVArchive 站点名称)。
处于直接模式的请求不会显示在 DIVAnetUI 中,且只能在路由请求的 DIVA 站点上进行监视。
有些 DIVAnet 工作流不需要 DIVAnet 数据库、DIVAnet UI 或 MultiDiva 模式处理。要仅为直接模式配置 ClientAdapter 服务,请确保仅定义直接模式端口,并确保未定义 <WebServicePort>
。这样会有效地禁止 DIVAnet UI 的使用。以下位置中的文件包含一个示例配置:
Program\conf\divanet\templates\ClientAdapterConfig.xml.ProxyOnly.ini
MultiDiva 模式-在 MultiDiva 模式下,DIVAnet 使所有的 DIVA 站点看起来是一个大的归档系统。在此模式下,传入 API 请求直接路由到 DIVAnet。通过根据需要查询其他 DIVArchive 系统,DIVAnet 满足高级别请求。此功能允许(例如)将内容从一个站点复制到另一个站点,进行恢复而无需知道哪个特定站点具有内容,以及当第一个站点上的内容无法访问时在其他站点上重试。此外,它提供了所有站点上内容的全局视图。
可以在 DIVAnetUI 中监视在 MultiDiva 模式下执行的请求的进度。DIVAnet 将创建自身的请求级事件,以通知用户:
DIVAnet 将如何处理请求
DIVA 站点发出的请求
进展中遇到的任何错误或警告
DIVAnetUI 应用程序和 DivanetAdmin 工具都建立与 ClientAdapter 的 Web 连接。可以在 ClientAdapter 配置文件中配置可用于这些连接的端口。
工作流配置文件是定义 DIVAnet 如何处理传入请求的一组参数。工作流配置文件提供了一种方法,对以类似方式使用 DIVAnet 的用户和系统进行逻辑分组。
DIVAnet 允许在 ClientAdapter 内创建一个或多个配置文件。这些配置文件包含特定用户集或应用程序集所需的参数。基于接收请求的位置(接收它的端口-请参见下一节)分配工作流配置文件。
在工作流配置文件中,可以定制诸如已接受的有效消息列表、重试参数、站点到站点复制方法和其他属性之类的信息。
在 API 端口部分中,可以为每个已定义的端口分配工作流配置文件名称。使用已分配的工作流配置文件,处理在 API 端口上收到的请求。如果未定义名称,则假定配置文件为 default。MultiDiva 模式下的端口可以具有工作流配置文件名称,该名称引用 ClientAdapter 配置中更深入的工作流配置文件主体部分。
如果端口处于直接模式,则工作流配置文件名称只是一个标签-没有适合直接模式连接的工作流配置文件主体。但是,此名称在访问规则中可以很有用(请参见下一节)。
在 MultiDiva 模式和直接模式下,如果未分配名称,则连接使用名为 default 的工作流配置文件。每个工作流配置文件的主体部分是在 ClientAdapterConfig.xml
中配置的。以下各节列出了在每个工作流配置文件中可配置的信息类型。
可以重试 DIVAnet 内的一些命令(例如,恢复、复制和删除请求)。用于重试的参数(包括重试的持续时间和重试时间间隔)可在此处配置。许多命令都具有自身的重试设置(例如,复制命令的重试参数与删除命令的重试参数完全不同)。还可以在工作流配置文件中配置消息超时和连接限制。重试和超时设置特定于定义它们的工作流配置文件。
在每个工作流配置文件中,配置了消息列表。这表示此工作流配置文件可以接受的有效 API 消息的列表。例如,如果 <Archive>
消息未出现在列表中,则无法通过 API 将归档消息发送到 DIVAnet(至少对于此工作流配置文件)。
DIVAnet 提供了一种灵活的方式来配置如何执行站点到站点的传输。在每个工作流配置文件中,配置每个传输路径的映射参数(一个路径用于从站点 A 传输到站点 B,另一个路径用于从站点 A 传输到站点 C,以此类推)。收到复制、恢复或部分文件恢复命令时,会查询此表。
在 default 工作流配置文件中定义站点到站点的映射是很有用的,因为其他工作流配置文件可以从 default 工作流配置文件加载其映射。这可以减少配置中的映射数。
参数-DIVAnet 支持几种不同的传输类型。站点到站点的传输方法介绍了不同的类型。RestoreAndArchive 是默认的传输类型。RestoreAndMonitor 需要 Drop Folder Monitor (DFM) 或执行类似功能的其他应用程序。其他参数包括:
Source/Destination-传输的公共存储位置(在源站点和目标站点上都可访问)。
Default Media-在目标站点上归档时使用的默认归档介质。启动临时复制(如通过恢复)或者用户启动了复制并指示 DIVAnet 应该选择介质时,可以使用默认介质。
Options-在恢复、归档和传输请求中使用的参数。
FilePathRoot-用于存储内容的父目录
目录位置-DIVAnet 构建一个相对于所选 Source/Destination 的目录路径来存储文件。此相对路径的构建如下所示:
<FilePathRoot> \ <Media (options)> \ <UniqueDirName> \
FilePathRoot 在站点到站点的映射中指定。仅当在映射中 AppendMediaToPath 选项设置为 true(默认值为 false)时,介质才会嵌入到路径中。最后,DIVAnet 生成唯一的目录名称,该名称作为路径的一部分包括在内。此唯一名称前加上了已启动请求的站点名称。
下表介绍了可以出现在 ClientAdapter 配置文件中的参数。文件采用 XML 格式。默认值列指出在配置文件中未指定参数时参数将具有的值。该列还指出参数是必需的还是可选的。
要创建一个新的配置文件,请执行以下步骤:
导航到 DIVAnet 主目录(其中安装了 DIVAnet)。
导航到 Program\conf\divanet\templates
文件夹。
将 ClientAdapterConfig.xml.ini
复制到父目录,但是省去 .ini
扩展名 (..\ClientAdapterConfig.xml
)。
将下表用作参考,编辑 ClientAdapterConfig.xml
文件中的参数以配置 ClientAdapter。
有关 ClientAdapter 配置文件样例,请参见附录 A。
参数 |
说明 |
默认值 |
---|---|---|
|
本地 DIVAnet 站点的站点名称。 |
无(必需) |
|
将在其中生成日志文件的文件夹。 |
|
|
发生跟踪文件日志记录的详细信息级别(ERROR、WARN、INFO、DEBUG、TRACE)。 |
INFO |
|
等待对象同步的秒数。 |
60 |
|
DIVAnet 线程池中的工作线程数。用于优化大型配置。如果您不确定,请勿设置此值。 |
25 |
|
DIVAnet 启动时,停止所有未完成的 DIVAnet 请求-即使该请求在 DIVArchive 级别上已完成。新请求不受影响。 |
false |
|
允许的 API 连接的最大总数。 |
200 |
|
系统中可以接受的暂挂的和正在运行的 DIVAnet 请求的最大数。达到此限制时,DIVAnet 将开始拒绝新请求。 |
5000 |
|
轮询站点以查找信息的基本速率。仅当遇到慢速网络和(或)系统时才更改此参数。 |
4000 |
|
用于将管理消息发送到 ClientAdapter 的端口。 |
无(可选) |
|
如果应该为 Web 服务请求强制实施 SSL,则为 True。 |
true |
|
用于 Web 请求的工作流配置文件(包括 DivanetUI)。 |
default 配置文件 |
|
访问规则文件名。此文件名相对于客户机适配器配置文件所在的目录。 |
无(如果未配置,则不会应用任何访问规则)。 |
在 <ApiPorts>
标记的内部,可以出现多个 <ApiPort>
定义。表 4-2显示了可以作为 <ApiPort>
定义的一部分出现的参数。
参数 |
说明 |
默认值 |
---|---|---|
|
这是要监听的端口套接字。 |
无(必需) |
|
这标识如何路由请求(直接或 MultiDiva)。
|
MultiDiva |
|
使用直接模式时要路由到的站点。站点在 |
无(在直接模式下是必需的) |
|
用于发送到此管理器的本地地址(通常为要使用的网卡)。如果您不确定,请勿指定它。 |
无(可选) |
|
用于经过此端口的请求的工作流配置文件名称(请参见工作流配置文件一节)。如果未提供它,则将使用 default 工作流配置文件。 |
default (MultiDiva 模式下的默认配置文件)。 |
在 <DivaManagers>
标记的内部,可以出现多个 <DivaManager>
定义。表 4-3 显示了可以作为 <DivaManager>
定义的一部分出现的参数。
参数 |
说明 |
默认值 |
---|---|---|
|
安装有管理器的站点的名称。列出的站点名称必须与在 DIVAnet 数据库中配置的和在 |
无(必需) |
|
它标识如何连接到管理器(有效值:Socket、WebService)。 |
Socket |
|
管理器的网络地址(IP 或 Internet 名称) |
localhost |
|
客户机连接到管理器所用的端口。 |
无(必需) |
|
用于发送到此管理器的本地地址(通常为要使用的网卡)。如果您不确定,请勿指定它。 |
无(可选) |
|
所用的本地端口。如果您不确定,请勿指定它。 |
0 |
|
如果 ConnectionType 设置为 WebService; required,则为 ManagerAdapter 的 url。 |
无(可选) |
|
在发送更多的请求之前,DIVAnet 将一直等待,直到管理器请求的总数降至此限制之下。这在 ConnectionType 设置为 Socket 时使用。如果在不考虑源(例如,DIVAnet、SPM、本地 API 连接)的情况下管理器超过正在运行的请求数,DIVAnet 将不再发送任何请求,直到管理器上正在运行的请求数低于此阈值。 |
400 |
|
在发送更多的请求之前,DIVAnet 将一直等待,直到 DIVAnet 自身在管理器上运行的请求数降至此限制之下。当管理器超过仅从 DIVAnet 自身发送的运行请求数时,DIVAnet 将不再发送任何请求,直到管理器上仅从 DIVAnet 发送的运行请求数降至此阈值之下。 0 是一个有效值,可导致所有消息在 DIVAnet 的内部排队。值 -1 表示没有限制。 |
100 |
表 4-5显示了可以出现在 <WorkflowProfile>
部分中的参数。
参数 |
说明 |
默认值 |
---|---|---|
|
工作流配置文件的名称 |
default |
|
允许从远程 DIVA 直接传输(到 Source/Destination)。将此参数设置为 false 可在恢复之前始终创建内容的本地副本。 |
true |
|
发送到管理器的消息的默认超时。 |
15000 (15 秒) |
|
使请求超时之前保留它们的时间(以小时为单位)。 |
72 |
|
如果对象存在于任何站点上,则阻止新的归档请求。如果设置为 true,且对象存在于任何站点上,则归档该对象的请求将被拒绝(即使该对象不存在于您归档到的站点上也是如此)。 |
true |
|
重试删除工作流的时间间隔 |
5 分钟 |
|
删除工作流重试将继续的总分钟数。删除重试每隔 |
0 分钟(不进行重试) |
|
在重试复制请求之前等待的时间。此参数仅适用于复制请求。 |
5 分钟 |
|
一直重试复制,直到达到此总时间限制(或者它们成功)。此参数仅适用于复制请求。 |
0 分钟(不进行重试) |
|
出现故障时,应该尝试的最大重试次数(通常,使用存在于其他站点的内容进行重试)。 |
3 次 |
|
DIVAnet 对同一站点执行重试时的重试时间间隔。 |
5 分钟 |
|
(高级)将已排队的请求路由到其他站点之前站点关闭的最长时间。 |
30 |
|
如果本地站点长期关闭(在 |
无(无备用站点) |
|
将全局删除请求转换为指定站点上的站点删除。 |
无(可选) |
|
一个或多个消息列表,每个列表都具有工作流配置文件的有效消息列表。 |
无 |
|
一个或多个有效的消息名称:
必须指定至少一个
|
无 (需要一个) |
|
如果工作流配置文件应该包括在 default 工作流配置文件中定义的所有映射,则为 True。 |
False |
<Mappings>
标记包含多个站点到站点的传输映射。站点到站点的映射定义如何将对象从一个站点复制到另一个站点。每个映射都包含 <FromSitename>
和 <ToSitename>
参数。每个映射定义如何执行从 <FromSitename>
到 <ToSitename>
的复制。
每个映射都包含 <Type>
参数,该参数表示用于执行传输的方法(有关更多信息,请参见恢复工作流)。其他参数是在执行站点间复制的过程中使用的默认参数。
DIVAnet 将 <FromSrcDest>
用作临时存储区,(可选)使用 <ToSrcDest>
推送到目标 DIVA。存储内容时,DIVAnet 提供了附加到 <FilePathRoot>
的唯一文件夹名称。在 <FromSrcDest>
中存储内容后,DIVAnet 将(基于 <Type>
参数)执行以下操作之一:
将内容归档到目标站点
一直等待,直到内容在目标站点上成功归档
完成,但没有进一步操作
注:
为避免在配置中多次指定同一映射,可以设置工作流配置文件参数<UseDefaultMappings>
。工作流配置文件将使用 default 工作流配置文件中的映射。表 4-6 <SitetoSiteTransfer>
工作流配置文件参数
参数 |
说明 |
默认值 |
---|---|---|
|
从其复制对象的原始站点名称。输入的值必须与在 |
无(必需) |
|
向其复制对象的目标站点名称。输入的值必须与在 |
无(必需) |
|
传输的类型:
|
RestoreAndArchive |
|
在复制的恢复步骤中使用的 Source/Destination。 注:Oracle 建议不要使用默认值。 |
MISSING_MAPPING_TO + |
|
在复制的归档步骤中使用的 Source/Destination。 |
MISSING_MAPPING_TO + |
|
制作对象的临时或暂时副本时要分配的目标介质(在某些恢复操作上执行)。 当 API 或 UI 用户希望 DIVAnet 确定要使用的介质(any 关键字将用作介质)时,也使用此值(取决于配置)。 将 RestoreAndMonitor 与此变量一起使用时,决定是否需要 |
无(对 RestoreAndArchive 是必需的) |
|
相对于 Source/Destination 根的路径段。添加到 DIVAnet 生成的唯一文件夹名称之前。 |
Remote |
|
在恢复/归档操作中使用的 DIVA 选项。 |
-axf -rm -delete_fpr -allow_delete_on_source |
|
API 或 UI 用户决定让 DIVAnet 选择用于复制的介质时要使用的策略。将 any 关键字用作介质时调用它。 StoragePlan-将源对象的存储路径名称用作默认介质。 StoragePlanAndSitename-在存储计划前加上源站点名称(由下划线分隔)。 TempMedia-将值 |
TempMedia |
|
如果应该在
将 RestoreAndMonitor 类型与 DFM 一起使用时此选项很有用,因为 DFM 可以解析以此方式传递的介质名称。 |
false |
|
基于性能、首选项,对此传输路径与其他传输路径进行比较。在选择用于复制和恢复的站点时使用。有效范围为 0-40。使用大于 20 的值时要小心,因为将开始忽略其他因素,如磁盘与磁带、站点状态等。误用此选项可导致恢复操作中出现性能问题,且可促成 WAN 网络拥堵。 |
默认值为 10,处于本地时加上 10。 |
当 DIVAnet 计算用于恢复操作的站点时,如果使用本地站点可到达 Source/Destination,则 DIVAnet 通常首选本地站点。但是,在一些情况下,其他站点更为可取。
<Mappings>
标记可以包含 <SrcDest>
标记。在 <SrcDest>
标记内,<Name>
标记定义 Source/Destination 名称。<PreferredSitename>
标记表示在恢复操作中请求 Source/Destination 时要使用的首选站点。可以存在多个 <SrcDest>
部分。
ManagerAdapterConfig.xml
配置文件包含 ManagerAdapter 服务的配置。使用以下步骤以及 ManagerAdapter 配置中每个参数的说明(下面的每个表都具有此信息)可配置 ManagerAdapter 服务。
DIVAnet 可以在 DIVAnet DbSync 服务提取的对象信息上放置过滤器。此过滤器使站点可以选择要与下游 DIVAnet 系统同步的对象记录的子集。过滤在 ManagerAdapter 服务中配置并由其执行。
注:
对象过滤器和类别前缀替代是高级功能,需要仔细测试才能在生产工作流中实施。请勿随意添加或更改对象过滤器。例如,位于纽约的 DIVAnet 系统已配置为使用和存储位于洛杉矶的站点的资产。洛杉矶的站点管理员希望确保,纽约的用户将仅看到与以下三种类别之一匹配的对象:AVID
、POST1
和 POST2
。通过洛杉矶站点的 ManagerAdapter 配置文件中实施以下过滤器可实现以下目的:
<LocalSitename>LosAngeles</LocalSitename> <ObjFilter> <RequestingSitename>NewYork</RequestingSitename> <Category>AVID</Category> <Category>POST1</Category> <Category>POST2</Category> </ObjFilter>
通过此过滤器,与指定类别匹配的对象将同步到纽约的 DIVAnet 数据库。具有其他类别的对象将不进行同步。从纽约站点用户的角度来看,存在于洛杉矶的对象记录仅属于与配置的类别过滤器匹配的对象。在 ManagerAdapter 中可以出现多个 <ObjFilter>
标记,每个标记都具有特定于请求站点的一组类别。
注:
类别对象过滤器不会自动阻止 ManagerAdapter 接受与过滤器不匹配的对象的请求。ManagerAdapter 访问规则可阻止没有特定类别的对象上的操作。要阻止与过滤器不匹配的对象上的操作,请在 ManagerAdapter 访问规则文件中创建以下访问规则:
<Include> <SourceSitename>NewYork</SourceSitename> <Operation>*</Operation> <ReqObjectCategory>AVID</ReqObjectCategory> <ReqObjectCategory>POST1</ReqObjectCategory> <ReqObjectCategory>POST2</ReqObjectCategory> </Include>
此规则将仅允许与以下三种类别之一匹配的对象的来自纽约的请求:AVID
、POST1
和 POST2
。如果未定义其他包括规则,则其他类别将被拒绝。如果在 ManagerAdapter 中定义访问规则,请确保 ClientAdapter 配置为与处于 WebService 模式的站点进行通信。
使用按类别同步过滤时,可能存在问题。继续该示例,如果纽约创建一个类别未存在于过滤器中的对象,且将此对象复制到洛杉矶,则可能出现命名冲突。具有该名称的对象可能已存在于洛杉矶,因为纽约的 DIVAnet 系统不了解这些对象。一个解决方案是提供纽约的访问规则,以限制可以归档的潜在类别。
使用类别前缀替代,可以实现更灵活的解决方案。此功能不仅过滤已同步的条目,而且为每个传入请求添加类别前缀。这将为站点上的已归档对象提供类似名称空间的功能。
在一些 DIVAnet 工作流中,单个站点必须接受从多个站点复制的对象。这会导致为系统中的所有对象建立一组独特的类别变得很困难。使用类别前缀替代可解决此状况。以下 ManagerAdapter 对象过滤器将确保,只有洛杉矶中类别以 NY001
. 开头的对象才会同步到纽约的 DIVAnet 数据库。
<LocalSitename>LosAngeles</LocalSitename> <ObjFilter> <RequestingSitename>NewYork</RequestingSitename> <CategoryPrefix>NY001.</CategoryPrefix> </ObjFilter>
在应用过滤器之后,但在对象到达目标(纽约)之前,会剥离前缀-剩余字符充当纽约 DIVAnet 数据库中的类别。例如,如果洛杉矶中对象的类别是 NY001.POST1
,则发送到纽约的生成类别将是 POST1
。同样,每当纽约 DIVAnet ClientAdapter 将命令发送到洛杉矶时,将重新添加前缀。
这样,洛杉矶就可以存储来自纽约的所有对象的副本,且没有命名冲突。此方法允许洛杉矶充当多个站点的灾难恢复站点。纽约不需要更改其命名策略。纽约始终如一地引用对象,因此在纽约重命名是不必要的。每个请求站点仅允许一个类别前缀。
为了使其正常工作,DIVAnet ClientAdapter 服务必须配置为在 WebService 模式下连接到远程站点。由于在复制到已启用前缀替代的站点时实质上已重命名对象,因此之前已复制到站点的对象将没有前缀,这可能会带来问题。一个解决方案涉及提供未转换的其他类别的列表。另一个解决方案涉及让 Oracle DIVA 安装专家重命名已过滤站点中对象的子集(即,将类别前缀添加到 DIVA 数据库中每个受影响对象的类别)。如果使用类别前缀替代,则(很可能需要)在 DIVArchive Actor 配置中禁用类别检查(请与 Oracle 支持人员联系以获取说明)。
注:
如果更改对象过滤器,则下游 DIVAnet 系统执行站点的重新同步几乎始终都是必要的。通过使用 DIVAnetAdmin 工具,可以完成此操作(请参阅第 6 章)。可以将两种类型的类别过滤混合在一起。下面的第二个过滤器 (to Dallas) 在除类别 POST2
或 POST3
之外的所有类别上执行类别前缀替代(使用 DAL01
)。只有具有类别前缀或者具有类别 POST2
或 POST3
的对象记录才会同步到 Dallas。
<LocalSitename>LosAngeles</LocalSitename> <ObjFilter> <RequestingSitename>NewYork</RequestingSitename> <CategoryPrefix>NY001.</CategoryPrefix> </ObjFilter> <ObjFilter> <RequestingSitename>Dallas</RequestingSitename> <CategoryPrefix>DAL01.</CategoryPrefix> <Category>POST2</Category> <Category>POST3</Category> <ObjFilter>
如果使用此混合方法,请确保其类别(例如 POST2
)出现在列表中的对象名称不再添加有前缀(例如 NY001.POST2
)。可以通过访问规则强制实施此策略。
下表介绍了可以出现在 ManagerAdapter 配置文件中的参数。文件采用 XML 格式。默认值列指出在配置文件中未指定参数时参数将具有的值。该列还指出参数是必需的还是可选的。
要创建一个新的配置文件,请执行以下步骤:
导航到 DIVAnet 主目录(其中安装了 DIVAnet)。
导航到 Program\conf\divanet\templates
文件夹,将 ManagerAdapterConfig.xml.ini
复制到父目录,但是省去 .ini
扩展名 (..\ManagerAdapterConfig.xml
)。
将以下各表用作参考,编辑 ManagerAdapterConfig.xml
文件中的参数以配置 ManagerAdapter。
附录 A 中包含 ManagerAdapter 配置文件样例。
参数 |
说明 |
默认值 |
---|---|---|
|
本地站点的名称。列出的站点名称必须与在 DIVAnet 数据库中配置的名称匹配(本地和远程),且必须与在 |
无(必需) |
|
DIVArchive 管理器的网络地址(IP 或 Internet 名称)。 |
localhost |
|
客户机连接到 DIVArchive 管理器所用的端口。 |
无(必需) |
|
用于接收 Web 消息的端口。 |
无(可选) |
|
如果应该在传入 Web 服务连接上强制实施 SSL,则为 True。 |
true |
|
访问规则文件名。此文件名相对于 ManagerAdapter 配置文件所在的目录。 |
无(如果未配置,则不会应用任何访问规则) |
|
DIVAnet 线程池中的工作线程数。用于优化大型配置。如果您不确定,请勿设置此值。 |
50 |
|
将在其中生成日志文件的文件夹。 |
|
|
发生跟踪文件日志记录的详细信息级别(ERROR、WARN、INFO、DEBUG、TRACE)。 |
INFO |
参数 |
说明 |
默认值 |
---|---|---|
|
DIVArchive 管理器数据库的 IP 地址。 |
localhost |
|
用于访问数据库的端口。 |
1521 |
|
方案的用户名。 |
无(必需) |
|
方案的密码。 |
无(必需) |
|
Oracle SID |
lib5 |
|
Oracle 服务名。可以提供它来代替 |
无(可选) |
可以在 ManagerAdapter 中为每个请求站点名称定义 <ObjFilter>
。下表显示了对象过滤器的有效参数:
DBSyncConfig.xml
配置文件包含 DbSync 服务的配置。使用以下步骤以及每个参数的说明可配置 DbSync 服务。
在使用 ClientAdapter 时,请确保 DbSync 服务正在运行。如果 DbSync 服务没有运行,则通常会成功的一些请求可能会失败。例如,即使新 DIVAnet 归档请求可能成功,新归档对象的 DIVAnet 恢复也可能会失败。
下表介绍了可以出现在 DbSync 配置文件中的参数。文件采用 XML 格式。默认值列指出在配置文件中未指定参数时参数将具有的值。该列还指出参数是必需的还是可选的。
要创建一个新的配置文件,请执行以下步骤:
导航到 DIVAnet 主目录(其中安装了 DIVAnet)。
导航到 Program\conf\divanet\templates
文件夹,将 DBSyncConfig.xml.ini
复制到父目录,但是省去 .ini
扩展名 (..\DBSyncConfig.xml
)。
将下面的参数说明表用作参考,编辑 DBSyncConfig.xml
文件中的参数以配置 DbSync。
附录 A中包含 DbSync 配置文件样例。
参数 |
说明 |
默认值 |
---|---|---|
|
本地 DIVAnet 站点(正在运行 DbSync)的站点名称。列出的站点名称必须与在 DIVAnet 数据库中配置的名称以及在 |
无(必需) |
|
将在其中生成日志文件的文件夹。 |
|
|
发生跟踪文件日志记录的详细信息级别(ERROR、WARN、INFO、DEBUG、TRACE)。 |
INFO |
|
轮询站点以查找信息的基本速率。仅当遇到慢速网络和(或)系统时才更改此参数。 |
2000 |
|
用于将管理消息发送到 DbSync 的端口。 |
无(可选) |
|
如果应该在传入 Web 服务连接上强制实施 SSL,则为 True。 |
true |
在 <DivaManagers>
标记的内部,可以出现多个 <DivaManager>
定义。表 4-11显示了可以作为 <DivaManager>
部分的一部分出现的参数。
在 DIVAnet 中,使用访问规则控制客户机应用程序和用户对 DIVAnet 操作和资源进行的访问。访问规则可通过以下三种方式运行:
在 ClientAdapter 服务内的 DIVAnet 请求上(在 MultiDiva 模式下)
在 ManagerAdapter 服务内的 DIVArchive 请求上
在通过直接模式端口进入 ClientAdapter 的 DIVArchive 请求上
要运行访问规则,必须在 ClientAdapter 和(或) ManagerAdapter 配置文件中定义 <AccessRulesFilename>
参数。必须提供不带路径的文件名-DIVAnet 假定文件与 ClientAdapter 配置文件位于同一目录中。
在 ClientAdapter(MultiDiva 模式)中定义的访问规则集对(在本地接收的)DIVAnet 请求强制实施访问控制。在 ManagerAdapter 配置中定义的访问规则集对 DIVArchive 请求(为满足 DIVAnet 请求而提交)强制实施访问控制。两个级别的访问控制允许在发出请求处配置服务级规则,并将站点特定的规则作为服务级策略的例外强制实施。
在 ClientAdapter(直接模式)中定义的访问规则集对 DIVAnet 请求或 DIVArchive 请求强制实施访问控制,具体取决于远程系统是其他 DIVAnet 实例还是 DIVArchive 系统。在此模式下,其他操作类型可供在规则集中使用。这些操作对应于 DIVArchive 特定的请求,将在下面详细介绍。
让我们快速转到一个示例,以便更熟悉规则本身。以下规则对以 admin 或 operator 身份从 Source/Destination DATA_EXP_PDAT1 或 VID_FTP_3 连接的用户允许归档操作,并归档到介质 HDFeatures 或 spm(您会发现,属性的顺序并不重要),并用包含 POST 一词的类别进行命名。
<Include> <Operation>Archive</Operation> <Username>admin</Username> <Username>operator</Username> <ReqMedia>spm</ReqMedia> <ReqObjectCategory>*POST*</ReqObjectCategory> <ReqSourceDest>DATA_EXP_PDAT1</ReqSourceDest> <ReqSourceDest>VID_FTP_3</ReqSourceDest> <ReqMedia>HDFeatures</ReqMedia> </Include>
在下面的两个规则中,不允许 GUI 工作流配置文件中的来宾用户从 diva2 复制到 diva3,反之亦然。
<Exclude> <WorkflowProfile>GUI</WorkflowProfile> <Username>guest</Username> <Operation>Copy</Operation> <SourceSitename>diva2</SourceSitename> <TargetSitename>diva3</TargetSitename> </Exclude> <Exclude> <Username>guest</Username> <WorkflowProfile>GUI</WorkflowProfile> <Operation>Copy</Operation> <SourceSitename>diva3</SourceSitename> <TargetSitename>diva2</TargetSitename> </Exclude>
此处使用了两个规则,因为您不希望显式限制在同一站点内出现的复制操作。例如,站点 diva2 上有人可能要将对象(使用 DIVAnet)复制到新磁带-在这种情况下,源和目标站点名称都是 diva2!如果具有一个包含了所有 <SourceSitename>
和 <TargetSitename>
属性的规则,则可以排除从 diva2 复制到 diva2 以及从 diva3 复制到 diva3!
您仍未完成。除非具有至少一个匹配的包括规则,否则复制不会成功。
<Include> <Operation>Copy</Operation> <WorkflowProfile>GUI</WorkflowProfile> <Username>guest</Username> <Operation>ApiConnect</Operation> </Include>
在这种情况下,涵盖面很广的包括规则满足了您的需要,能够复制到任何地方,但从 diva2 复制到 diva3(反之亦然)除外。实际上,您根本不需要 Exclude 规则。但是,有时使用 Exclude 规则更为方便。请牢记,如果 Exclude 规则与操作匹配,则该操作将被拒绝,即使一个或多个 Include 规则与其匹配也是如此。
总而言之,有两种类型的规则:Include 和 Exclude。除非至少一个 Include 规则与即将执行的操作匹配,否则对所有请求拒绝访问。但是,如果任何 Exclude 规则是匹配的,则操作将自动被拒绝,而不管匹配的任何 Include 规则如何。
在诸如删除、复制、恢复、部分文件恢复、取消和归档之类的请求上,DIVAnet 运行访问规则集的完整集以查看操作是否被允许。它检查变量,例如:
发起人属性-连接的工作流配置文件、发送消息的用户名、发起人的 IP 地址。
请求属性-Source/Destination、源/目标站点名称、请求的介质、注释等。这些都派生自请求本身。其中许多带有前缀 Req
。
对象属性-在其上存储对象的介质、存储计划、对象大小等。这些派生自操作所处理的对象。其中许多带有前缀 Obj
。
以下规则将所有三种属性类型组合在一起。仅当对象存在于洛杉矶时,它才允许用户 diva 对纽约执行站点删除。
<Include> <Username>diva</Username> <Operation>Delete</Operation> <SubType>SiteDelete</SubType> <TargetSitename>NewYork</TargetSitename> <ObjOnSite>LosAngeles</ObjOnSite> </Include>
在 MultiDiva 模式下接收请求时,生成 DIVAnet 请求。可以对这些 DIVAnet 操作创建访问规则。以下详细介绍了特定于 DIVAnet 请求的一些属性。
ApiConnect 和 WebConnect 操作是特殊的操作,必须包括它们才能建立与 ClientAdapter 的连接。
ApiConnect-此操作决定是否能够通过 API 客户机套接字连接来连接到 ClientAdapter。这是 DIVA API 连接所必需的。
WebConnect-此操作决定应用程序是否能够通过 Web 连接(DIVAnetUI 和 DivanetAdmin)进行连接。这是 DIVAnetUI 连接所必需的。
将这些操作与您的规则匹配时,请牢记将仅存在要与之匹配的发起人属性。例如,在 ApiConnect 操作期间运行访问规则时不会与 <TargetSitename>
匹配,因为客户机连接时该属性根本不存在。
删除操作具有 <SubType>
字段,该字段表示操作的子类型。可以将 <SubType>
字段连同删除操作一起包括在规则中,提供多个 <SubType>
参数(如果需要)。用于删除的 <SubType>
的值有:
GlobalDelete-如果执行的删除操作是所有站点上对象的全局删除,则匹配。这还与碰巧删除 DIVAnet 中所有剩余对象的站点删除操作匹配。
SiteDelete-如果删除操作将删除特定站点上的所有实例,则匹配(使用 <TargetSitename>
参数,可以在规则中与站点名称匹配)。此外,如果请求者删除单个实例,但是该实例是该站点上对象的最后一个实例,则操作将具有此 <SubType>
。
InstanceDelete-此删除操作将删除站点上的单个实例,该站点上还有其他实例。
对于强制实施允许的删除操作的范围,在规则中指定此参数是很有用的。
DIVAnet 还允许对 DIVArchive 请求运行访问规则。在 ManagerAdapter 中定义的访问规则指定允许哪些 DIVArchive 操作(为满足 DIVAnet 请求而发送)。在规则集中只能指定对 DIVAnet 请求有效的操作。在 ManagerAdapter 规则集中,WorkflowProfile、TargetSitename 和 SubType 属性无效。
与 ClientAdapter 规则集类似,必须准许 WebConnect 操作才能建立与 ManagerAdapter 的连接。这还扩展到 DbSync 操作。SourceSitename 属性对应于要发出请求的特定站点。ApiConnect 操作在 ManagerAdapter 访问规则中不可用。
与规则进行匹配涉及将规则中的属性与每个请求中、匹配对象中或请求发起人中的实际值进行比较。允许使用通配符(将星号 (*) 用作通配符)。标记名称不区分大小写,但是大多数值区分大小写。在每个规则中都需要 <Operation>
标记。可以提供包含星号 (*) 的 <Operation>
标记,以表示规则适用于所有操作。但是,执行此操作时应该小心,因为并非所有的属性对所有的操作都有效。
在匹配过程中,对规则(Include 或 Exclude 规则)中的不同属性执行逻辑 AND 运算。但是,在规则中多次指定单个属性可导致,那些属性将按逻辑 OR 组合到单个表达式中。
将请求的操作与访问规则进行匹配时,DIVAnet 确定规则中的属性是否适用于所执行的操作。如果不适用,则在比较时不使用该属性。
可以将规则组合到规则集中。每个 Include-Exclude 规则都必须包含在 <Ruleset>
标记的内部。会将每个传入 DIVAnet 操作与所有的规则集进行匹配。规则集很有用,因为它们可以具有充当其中包含的所有规则的默认属性的属性。在匹配过程中,每个规则集默认属性都包含在每个子规则中-就像直接在规则内指定属性那样。通常将工作流配置文件用作规则集的默认属性,因为在每个请求的 DIVAnet 操作上都填充了工作流配置文件。
在规则集中以下属性可以设为默认:
Username
NetAddress
WorkflowProfile(在 ClientAdapter 规则中)
以下示例允许通过 GUI 的 <WorkflowProfile>
连接的用户查看请求和资产,并执行站点 diva1 上单个实例的删除。请记住,InstanceDelete 的 <SubType>
将拒绝会移除站点上特定对象的最后一个实例的任何删除。
示例的第二部分禁止从子网 172.53 发起的所有连接(Web 或 API 连接)。对于任何操作,它都会这样做,而不管其工作流配置文件如何。
<Ruleset> <WorkflowProfile>GUI</WorkflowProfile> <Include> <Operation>WebConnect</Operation> <Operation>Delete</Operation> <SubType>InstanceDelete</SubType> <TargetSitename>diva1</TargetSitename> </Include> </Ruleset> <Ruleset> <NetAddress>172.53*</NetAddress> <Exclude> <Operation>ApiConnect</Operation> <Operation>WebConnect</Operation> </Exclude> </Ruleset>
表 4-13显示了可以出现在 <Ruleset>
部分下的参数。
参数 |
说明 |
默认值 |
---|---|---|
|
在 ClientAdapter 配置中定义的此属性是访问 DIVAnet 的工作组或应用程序集的名称。会将此属性作为规则集中每个规则的一部分。 |
无(可选) |
|
在 API 中传递的或者在 Web 请求中指定的用户名。会将此属性作为规则集中每个规则的一部分。 |
无(可选) |
|
远程连接的网络地址(IP 或 Internet 名称)。这可以是网关或路由器的地址,而不是发起人的地址。会将此属性作为规则集中每个规则的一部分。 |
无(可选) |
|
一个规则,如果权限与 DIVAnet 操作匹配,则拒绝该权限。 |
无(可选) |
|
一个规则,如果权限与 DIVAnet 操作匹配,则允许该权限。 |
无(可选) |
可以指定出现在请求中的规则属性。例如,<ReqMedia>
将与在请求(操作)中指定的介质和(或)存储计划匹配。
同样,可以指定与请求正在处理的归档对象匹配的规则属性。例如,如果在删除操作中指定了某个对象,则 <ObjHasMedia>
将与当前是该已归档对象一部分的任何介质匹配,而不管在请求中传递的介质如何。
表 4-14显示了可以出现在 <Include>
或 <Exclude>
规则部分中的参数。
表 4-14 规则操作参数(Include 或 Exclude)
参数 |
说明 |
默认值 |
---|---|---|
|
要匹配的 DIVAnet 操作的名称:
在直接模式下还有可用于 DIVArchive 操作的其他操作:
|
无(可选) |
|
已连接的 API 用户和(或)服务用户的用户名。 |
无(可选) |
|
ClientAdapter 配置文件名称。 |
无(可选) |
|
API 应用程序和(或)用户的 IP 地址。 |
无(可选) |
|
操作的源站点名称。有些操作没有源站点名称(例如,归档将 Source/Destination 作为源)。如果在其他站点上重试请求,则此值将更改,并将重新评估整个规则。当此属性出现在 ManagerAdapter 规则中时,这将与已提交请求的站点进行匹配。 |
无(可选) |
|
操作的目标站点名称。有些操作没有目标站点名称(例如,恢复将 Source/Destination 作为目标,而不是站点)。如果在其他站点上重试请求,则此值将更改,并将重新评估整个规则。 |
无(可选) |
|
Multi DIVA 模式操作类型(删除命令具有 GlobalDelete、SiteDelete 和 InstanceDelete)。 |
无(可选) |
表 4-15 规则请求参数(Include 或 Exclude)
参数 |
说明 |
默认值 |
---|---|---|
|
所处理的对象的名称。 |
无(可选) |
|
对象的类别(在 DIVArchive 中,这是对象的正式名称的一部分)。 |
无(可选) |
|
在请求中指定的 Source/Destination。 |
无(可选) |
|
请求中的注释字段。 |
无(可选) |
|
作为操作/请求的一部分请求的介质(不应附加站点名称)。请牢记,存储计划可以作为所请求的介质进行传递。 |
无(可选) |
|
请求中的选项字段。 |
无(可选) |
表 4-16 规则对象参数(Include 或 Exclude)
参数 |
说明 |
默认值 |
---|---|---|
|
如果对象存在于指定的站点上,则匹配。 |
无(可选) |
|
如果对象不在指定的站点上,则匹配。 |
无(可选) |
|
与任何站点上的任何介质匹配。 |
无(可选) |
|
与任何站点上的存储计划匹配( |
无(可选) |
|
将指定的存储计划限制到特定的站点。 |
无(可选) |
|
如果对象总大小(以 GB 为单位的小数)小于指定值,则匹配。 |
无(可选) |
|
如果对象总大小(以 GB 为单位的小数)大于指定值,则匹配。 |
无(可选) |
DIVAnet 允许配置文件中的变量替代,以便配置多个脚本文件更为容易。如果在 XML 值中遇到模式 ${variable_name}
(变量在标记名称中无效),则 DIVAnet 读取脚本时以变量的值替代。该值可以从环境变量中提取或者直接在脚本内分配。
如果脚本中的变量名称与环境变量的相同,则在脚本中将以该变量的值替代。或者,可以使用 <Variable>
标记,在每个脚本的顶部定义变量值。语法如下:<Variable name="LocalSitename" value="diva1"/>
。DIVAnet 读取配置脚本时,通过检查以确定脚本内使用的任何变量是否已在顶部设置。如果未设置,它将查找与变量同名的环境变量。
为便于使用,在 DIVAnet 主目录内的 Program\conf\divanet\wrapper
子文件夹中已创建名为 divanetEnv.conf
的脚本文件。变量可以在此配置文件中进行集中定义,并可用于所有的 DIVAnet 服务。如果值已更改且服务已重新启动,则将重新读取更改。有关变量样例,请参阅 divanetEnv.conf
文件。