本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
配置代理持久性
Session Manager 经纪人支持与外部数据库的集成。外部数据库允许 Session Manager 保留状态数据和密钥,以便之后可用。事实上,代理数据分布在集群上,如果主机需要重新启动或集群终止,则很容易丢失数据。启用此功能后,您可以添加和删除经纪商节点。此外,您可以停止集群并重新启动它,而无需重新生成密钥或丢失关于哪个 NICE DCV Server 处于打开或关闭状态的信息。
以下类型的信息可设置为持久保留:
用于设置会话以建立与客户端连接的密钥
在行中会话数据
NICE DCV 服务器状态
NICE DCV 会话管理器支持 DynamoDB、MariaDB 和 MySQL 数据库。您必须设置和管理其中一个数据库才能使用此功能。如果您的经纪机器托管在 Amazon EC2 上,我们建议使用 DynamoDB 作为外部数据库,因为它不需要任何额外的设置。
运行外部数据库时,可能会产生额外费用。要查看有关 DynamoDB 定价的信息,请参阅预置容量的定价
将经纪商配置为持续在 DynamoDB 上
配置经纪商以开始在 DynamoDB 上存储数据:
打开
/etc/dcv-session-manager-broker/session-manager-broker.properties
使用您常用的文本编辑器并进行以下编辑:Set
enable-persistence = true
Set
persistence-db = dynamodb
适用于
dynamodb-region
指定要存储包含代理数据的表的 &aws; 区域。有关支持的区域列表,请参阅DynamoDB 服务终端节点.适用于
dynamodb-table-rcu
指定每个表支持的读取容量单位 (RCU) 的数量。有关 RCU 的更多信息,请参阅DynamoDB 预置容量. 适用于
dynamodb-table-wcu
指定每个表支持的写入容量单位 (WCU) 的数量。有关 WCU 的更多信息,请参阅DynamoDB 预置容量. 对于 dynamodb-table 名称前缀,请指定添加到每个 DynamoDB 表的前缀(有助于区分使用同一账户的多个经纪商集群)。只允许使用字母数字字符、点、短划线和下划线。
停止集群中的所有代理。对于每个代理,运行以下命令:
sudo systemctl stop dcv-session-manager-broker
确保集群中的所有经纪商都已停止,然后重新启动所有经纪商。通过运行以下命令启动每个代理:
sudo systemctl start dcv-session-manager-broker
代理主持人必须拥有调用 DynamoDB API 的权限。在 Amazon EC2 实例上,使用 Amazon EC2 元数据服务自动检索凭证。如果需要指定不同的凭据,可以使用受支持的凭据检索技术之一(例如 Java 系统属性或环境变量)对其进行设置。有关更多信息,请参阅 。提供和检索 &aws; 凭证.
将经纪商配置为在 MariaDB/MySQL 上持续存在
这些区域有:/etc/dcv-session-manager-broker/session-manager-broker.properties
文件包含敏感数据。默认情况下,其写入访问权限限制为 root 用户,其读取访问权限仅限于 root 用户和运行 Broker 的用户。默认情况下为dcvsmbroker
用户。Broker 在启动时检查文件是否具有预期的权限。
配置经纪商以开始在 MariaDB/MySQL 上保留他们的数据:
打开
/etc/dcv-session-manager-broker/session-manager-broker.properties
使用您常用的文本编辑器进行以下编辑:Set
enable-persistence = true
Set
persistence-db = mysql
Set
jdbc-connection-url = jdbc:mysql://
<db_endpoint>
:<db_port>
/<db_name>
?createDatabaseIfNotExist=true在此配置中,<db_endpoint>是数据库终端节点,<db_port>是数据库端口,<db_name>是数据库名称。
适用于
jdbc-user
指定有权访问数据库的用户的名称。适用于
jdbc-password
指定有权访问数据库的用户的密码。
停止集群中的所有代理。对于每个代理,运行以下命令:
sudo systemctl stop dcv-session-manager-broker
确保集群中的所有经纪商都已停止,然后重新启动所有经纪商。对于每个代理,运行以下命令:
sudo systemctl start dcv-session-manager-broker