文章目录
- 第三十七章 配置镜像 - 配置 ISCAgent
- 配置 ISCAgent
- 启动和停止 `ISCAgent`
- 在 `UNIX®` 和 `macOS` 系统上启动 `ISCAgent`
第三十七章 配置镜像 - 配置 ISCAgent
配置 ISCAgent
ISCAgent
在每个镜像成员上的专用、可配置端口(默认为 2188
)上安全运行。当代理接收到将其定向到镜像实例的传入网络连接时,它会在该实例中执行 irisuxagent
以升级到管理镜像成员所需的权限。如果镜像配置为需要 TLS
,则在执行任何操作之前对传入连接进行身份验证。
当属于一个或多个镜像的多个 IRIS
实例托管在一个系统上时,它们共享一个 ISCAgent
。
本节提供有关通过以下方式管理 ISCAgent
的信息:
启动和停止 ISCAgent
ISCAgent
在安装或升级 IRIS
时安装,默认情况下作为用户 iscagent
和 iscagent
组的成员运行。要获得组权限,这是执行 irisuxagent
实用程序所必需的,该实用程序为其提供对 IRIS
实例的访问(如 ISCAgent
中所述),ISCAgent
必须在系统启动期间自动启动或由具有 root
权限的用户启动。一旦为自己分配了所需的用户和组权限,ISCAgent
就会放弃所有根权限。
ISCAgent
必须配置为在系统在每个故障转移和 DR 异步镜像成员上启动时自动启动。 提供特定于平台的控制脚本,系统管理员可以将其添加到初始化过程中,如以下部分所述。 (有关详细的系统启动配置过程,请参阅您的操作系统文档。)
在 UNIX®
和 macOS
系统上启动 ISCAgent
在 UNIX®
和 macOS
平台上,运行 ISCAgent
启动/停止脚本,该脚本安装在以下位置,具体取决于操作系统:
-
IBM AIX®:
/etc/rc.d/init.d/ISCAgent
-
macOS:
/Library/StartupItems/ISCAgent/ISCAgent
例如,要在 IBM AIX®
平台上启动 ISCAgent
,请以 root
身份运行以下命令:/etc/rc.d/init.d/ISCAgent start
;要停止它,请运行命令 /etc/rc.d/init.d/ISCAgent stop
。
UNIX®/Linux
平台上的其他 ISCAgent
注意事项包括:
-
如前所述,
ISCAgent
必须在系统启动时在每个故障转移和DR
异步镜像成员上自动启动。有时让用户启动、停止或重新启动代理也很有用。这可以通过以下方式完成:- 直接由
root
用户执行,如前所述。 - 任何能够启动和停止
IRIS
实例的用户都可以使用 IRIS 实例的/bin
目录中的agentctrl
可执行文件。例如,要启动代理,请执行以下命令:
/iris/bin$ ./agentctrl start
该命令还采用参数停止和重新启动。
- 直接由
-
IRIS 使用
iscagent.status
文件,该文件位于IRISSYS
环境变量指定的目录中(请参阅安装指南“准备安装”一章中的安装目录)或如果IRISSYS
未定义,则位于/var/run
中,以跟踪ISCAgent
的状态。因为代理程序必须能够获得此文件的独占锁,所以如果iscagent.status
文件位于/var/run
并且/var/run
位于NFS
安装的文件系统上,则 NFS 配置必须支持 fcntl 文件锁定。 -
如前所述,
ISCAgent
获得了使用irisuxagent
管理IRIS
实例所需的权限。默认情况下,代理具有执行irisuxagent
所需的权限(iscagent
用户/iscagent
组),在典型配置下,无需更改。 -
但是,根据系统的安全配置,站点上的实例可能需要额外的权限才能导航到镜像实例的
/bin
目录,以便执行irisuxagent
。如果是这样,必须确保ISCAgent
的权限足以执行该命令。为此,可以使用以下过程修改代理的权限:
- 创建文件
/etc/iscagent/iscagent.conf
,如果它已经存在则对其进行编辑(例如,因为之前创建它是为了自定义ISCAgent
端口号或接口)。 - 要添加组权限,请添加以下行,指定执行
irisuxagent
所需的一个或多个组:
privileges.group=iscagent,<groupname>[,<groupname>[,...]]
通常,添加组权限就足够了。但是,在某些配置下,您可能需要以不同的用户身份运行 ISCAgent
。这也可以在 /etc/iscagent/iscagent.conf
中完成,如下所示:
privileges.user= <username>
注意:因为 irisuxagent
需要 iscagent
组权限,所以 iscagent
必须保留在组列表中。
ISCAgent
将消息写入操作系统的系统错误日志,例如Linux
上的/var/log/messages
。