Linux的共识的由来
这个特性有助于自动更新您的Linux VDA软件-立即,或在预定的时间。当您在Citrix的虚拟应用程序和Azure的桌面标准中创建Linux vda时,这是非常有益的。您不具有Azure虚拟机的管理员权限。有关更多信息,请参见在Azure的Citrix虚拟应用程序和桌面标准中创建Linux vda.
配置
要使用此功能,请完成以下步骤:
步骤1:上传更新信息和新的VDA包到Azure容器中
步骤1a:在Azure存储帐户下创建一个容器,并将容器访问级别设置为Blob(仅针对Blob的匿名读访问).
注意:
Azure容器和blob由客户单独持有和管理。思杰对他们的任何安全问题概不负责。为保证数据安全性和成本效益,请将容器访问级别设置为私有(没有匿名访问)在每次的由来。
Step1b:将VDA更新信息合并到一个名为UpdateInfo.json的JSON文件中。文件格式的一个例子,请看下面的代码块:
{"版本":"21.04.200.4","发行版":[{"TargetOS": "RHEL7_9", "PackageName": "", " packaghash ": ""}, {"TargetOS": "RHEL8_3", "PackageName": "XenDesktopVDA-21.04.200.4-1.el8_x.x86_64. "}, {"TargetOS": "UBUNTU16_04", "PackageName": "", "PackageHash": ""}, {"TargetOS": "UBUNTU18_04", "PackageName": "xendesktopvda_21.04.200.4-1.ubuntu18.04_amd64.deb", "PackageHash": "4148cc3f25d3717e3cbc19bd953b42c72bd38ee3fcd7f7034c2cd6f2b15b3c5a"}, {"TargetOS": "UBUNTU20_04", "PackageName": "", "PackageHash": ""}]}
在那里,“版本”表示新的VDA版本“分布”更新对象的数组。每个对象包含三个项:
- “TargetOS”:必须为“RHEL7_9”、“RHEL8_3”、“SUSE12_5”、“UBUNTU16_04”、“UBUNTU18_04”、“UBUNTU20_04”或“DEBIAN10”。的
ctxmonitorservice
不识别任何其他发行版。 - “PackageName”:指定版本VDA包的全称。
- “PackageHash”: SHA-256值
Shasum -a 256
命令。
Step1c:将JSON文件和新版Linux VDA包上传到Azure容器中。
步骤2:在主映像或每个VDA上启用自我更新功能
缺省情况下,禁用自更新功能。如果您在Citrix虚拟应用程序和Azure桌面标准中创建Linux vda,则必须在主映像上执行特性启用。否则,直接在每个目标VDA上启用该特性。
要启用自我更新,运行类似以下命令编辑HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\SelfUpdate的注册表项。
/ opt / Citrix / VDA / bin / ctxreg创建- k”HKLM \ System \ CurrentControlSet \ \ Citrix \ SelfUpdate控制”- t - v“REG_DWORD”“fEnabled”-“0 x00000001”force / opt / Citrix / VDA / bin / ctxreg创建- k”HKLM \ System \ CurrentControlSet \ \ Citrix \ SelfUpdate控制”- t“REG_SZ”- v - d“ScheduledTime”“立即”force / opt / Citrix / VDA / bin / ctxreg创建- k”HKLM \ System \ CurrentControlSet \ \ Citrix \ SelfUpdate控制”- t - v“REG_SZ”“Url”- d”< Your-Azure-Container-Url >“force / opt / Citrix / VDA / bin / ctxreg创建- k"HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "CaCertificate" -d ""——force
下表描述了注册表的设置。
注册表设置 | 描述 |
---|---|
fEnabled | 此设置是必需的。缺省情况下,该值为0,表示禁用自更新功能。您可以设置为1,以启用自我更新。 |
Url | 此设置是必需的。它设置Azure容器的URL,以获取更新信息和新的VDA包。 |
ScheduledTime | 此设置是必需的。你可以设置为立即或NextStart.立即意味着在下载VDA包后立即运行更新。此选项适用于下载速度高且更新很紧急的情况。但如果在下载包时存在任何实时会话,则会破坏用户体验。NextStart方法的下一次开始时执行更新ctxmonitorservice .当下载速度不高且更新不紧急时,此选项是合适的。 |
CaCertificate | 此设置为可选设置。它设置PEM证书的完整路径,以验证Azure容器的URL。对于Azure blob,它可以是从浏览器检索portal.azure.com的证书,然后转换为PEM。为了安全起见,我们建议您添加这个注册表设置,但它只在Ubuntu上支持。在RHEL上,它没有链接一些NSS库旋度 命令。确保设置了证书的最低权限。 |
当ctxmonitorservice
重新启动,它首先进行查询Url来获取UpdateInfo。json文件,并从json文件中获取更新版本。然后ctxmonitorservice
比较更新版本与当前版本。如果当前版本较早,该服务将从Azure下载VDA包的新版本,并将其保存在本地。之后,它根据的设置运行更新ScheduledTime.对于本地部署,您可以重新启动ctxmonitorservice
直接触发更新。但是,在Citrix Azure虚拟应用程序和桌面标准中,您没有对虚拟机的管理员权限ctxmonitorservice
只有重新启动VDA机器后才能重新启动。如果更新失败,您的VDA将回滚到现有版本。
注意:
- 无法更改在主映像上配置的注册表设置。
- 如果同一环境下的所有虚拟机同时下载同一包,会导致本地网络拥塞。
- 如果更新和回滚都失败,用户数据将丢失。
- 如果更新失败但回滚成功,则同一网络上的用户可能拥有不同版本的Linux VDA。这种情况是次优的。
- 更新通常需要几分钟才能完成。Citrix Studio中没有状态指示器。