文章
· 九月 11, 2022 阅读大约需 5 分钟

第二十九章 管理许可(二)

第二十九章 管理许可(二)

激活许可证密钥

IRIS 使用许可证密钥来确保其注册站点的正常运行、定义可用容量并控制对 IRIS 功能的访问。 许可证密钥以许可证密钥文件的形式提供,通常命名为 iris.key

安装 IRIS 后,使用以下程序激活许可证密钥。始终可以使用相同的过程为任何已安装的实例激活新的许可证密钥(即升级密钥)。可以激活放置在管理门户可访问的任何位置的许可证密钥;作为激活的一部分,许可证密钥将作为 iris.key 复制到实例的 install-dir/mgr 目录(如果尚未命名)。

注意:也可以在 Windows 安装期间选择许可证密钥。执行此操作时,许可证会自动激活,并且许可证密钥会作为 iris.key 复制到实例的 install-dir/mgr 目录中;不需要此处描述的激活过程。

本节还讨论了许可证故障排除和在所有许可证单元都在使用时从操作系统命令行升级许可证。

要激活许可证密钥,请使用以下过程:

  1. 导航到许可证密钥页面(系统管理 > 许可 > 许可证密钥)。将显示有关当前活动许可证密钥的信息。如果尚未激活任何许可证,则会显示这一点,例如通过标记客户名称:缺少许可证或不可读。此页面包含一个打印按钮,可让轻松打印显示的信息。

  2. 单击激活许可证密钥并浏览到要激活的许可证密钥文件。当选择一个文件时,会显示有关它的信息,以便激活它之前验证是否拥有正确的许可证密钥;例如,它提供了所需的容量,并具有正确的到期日期。如果密钥无效,则会在错误消息中指出。如果许可证当前处于活动状态,则并排显示有关当前和选定许可证的信息。如果需要在激活后重新启动实例以使许可证密钥生效,则会记录这一点并提供原因。此对话框包括一个打印按钮,可让轻松打印有关当前活动许可证和选择的新许可证密钥的信息。

  3. 单击激活以激活新的许可证密钥;它作为 iris.key 复制到实例的 install-dir/mgr 目录,覆盖之前的许可证密钥(如果有)。如果需要,确认对话框会提醒重新启动实例,并在新许可证启用的功能少于当前许可证时向发出警告。

通过使用 Config.StartupLicenseID 属性,可以将实例配置为从许可证服务器请求许可证密钥。在实例启动时,如果不存在 iris.key 文件并且已定义 LicenseID,则实例会从许可证服务器请求并激活许可证密钥。

注意:相同的 LicenseID 必须在许可证密钥文件中,以及在需要下载许可证的实例上定义

一般情况下无需重启实例,但升级许可证密钥时存在限制。如果将许可证类型从 Power Unit 更改为任何其他类型,则不会自动激活新密钥;这应该是一个罕见的事件。

另一个限制是许可证升级从通用内存堆 (gmheap) 空间中消耗的内存量。如果 gmheap 空间不可用,则无法扩展许可表条目的数量。如果没有足够的 gmheap 空间可用于许可证升级,则会将一条消息写入消息日志。可以从“高级内存设置”页面(系统管理 > 配置 > 高级内存设置)增加 gmheap 设置的大小。

如果新的许可证密钥比现有密钥消耗至少 100064 KB 页的 gmheap 空间,则必须重新启动 IRIS 实例才能完全激活新的许可证密钥。这种情况很少遇到,因为每个页面至少代表 227 个许可证。

更新许可证密钥

要更新许可证密钥,请替换 KeyDirectory 中的密钥文件并运行 ReloadKeys^%SYS.LICENSE。每个实例上的许可证监视器 (^LMFMON) 每 30 分钟检查一次,以查看配置的 LicenseID 是否有不同的密钥,如果有,则尝试执行升级。

注意:虽然大多数升级在实时实例上成功,但某些情况可能需要重新启动实例。在这种情况下,许可证监视器会记录一个错误,并且直到第二天才尝试再次升级密钥(以避免记录重复的错误)。实例重启会在启动时加载新密钥。

许可证故障排除

如果在输入许可证并重新启动 IRIS 后只有一位用户可以登录,请使用管理门户进行调查。当选择按进程时,许可证使用页面(系统操作 > 许可证使用)显示正在运行的进程数。还可以使用门户从许可证密钥页面(系统管理 > 许可 > 许可证密钥)显示许可证信息,如激活许可证密钥中所述。如果密钥无效,则 CustomerName 字段包含说明。

还可以在消息日志和系统监控日志中查看许可证错误消息,可以在 Portal 的消息日志页面(系统操作 > 系统日志 > 消息日志)和系统监控日志页面(系统操作 > 系统日志)中查看> 系统监控日志),分别。 System Monitor 将许可证到期警告和警报写入这些日志,而 Health Monitor 则写入许可证获取警报和警告。当超过许可限制时,许可模块会将警报写入消息日志。在 Application Monitor 中,可以配置基于许可证指标的警报以发送电子邮件通知或呼叫通知方法。

$System.License.Help 显示可用于解决许可证问题的方法列表:

 Do $System.License.Help()

Administrator Terminal Session

有几个问题会阻止获得终端会话。当 IRIS 无法正常启动并进入单用户模式时,或者只是在没有可用许可证时,可能会发生这种情况。在这些情况下,可能需要创建管理员终端会话,该会话使用特殊许可证来解决问题。

Administrator Session on Windows

使用命令提示符导航到 install-dir\bin。然后,以管理员身份执行以下命令:

irisdb -s<install-dir>\mgr -B

这将从 IRIS 安装 bin 目录 (install-dir\bin) 运行 IRIS 可执行文件,指示 install-dir\mgr 的路径名(使用 -s 参数),并禁止所有登录,除了一个紧急登录(使用 - B 参数)。

例如,在默认目录中有一个名为 MyIRIS 的实例,该命令如下所示:

c:\InterSystems\MyIRIS\bin>irisdb -sc:\InterSystems\MyIRIS\mgr -B

Administrator Session on UNIX®, Linux, and macOS

使用命令提示符导航到 install-dir/bin 目录。然后,执行以下命令:

iris terminal <instance-name> -B

例如,在默认目录中安装了一个名为 MyIRIS 的实例,该命令如下所示:

User:/InterSystems/MyIRIS/bin$ iris terminal MyIRIS -B

从操作系统命令行升级许可证

%SYSTEM.License.Upgrade() 方法激活已复制到 installdir\mgr 目录的新许可证密钥。如果所有许可证单元都被用户使用,导致无法打开终端窗口,可以从命令行运行此方法以激活更大容量的新许可证密钥,如下所示:

iris terminal <instancename> -U %SYS '##Class(%SYSTEM.License).Upgrade()'
讨论 (0)1
登录或注册以继续