本主题介绍有关更新基于控制平面的现有 Omnissa Access 部署的建议过程。该过程涵盖更新操作系统软件包、控制平面资产包、Access 服务和引导虚拟机。
**重要信息:**这些更新说明不适用于升级版本 2412 或更低版本。
必备条件
- 除非另有说明,否则从引导虚拟机运行所有命令。
- 现有部署必须运行正常。在开始之前,运行
wso healthcheck和wso access check-service-readiness以确认系统运行状况。 - 目标版本的脱机资产包已下载,并可在引导虚拟机中使用。
- 操作系统安全 RPM 已下载,并可在引导虚拟机中使用(如果此更新包含操作系统软件包更新)。
更新工作流
更新过程包含以下阶段:
- 阶段 1 - 为操作系统更新配置本地存储库(仅在需要更新操作系统软件包时)。
- 阶段 2 - 下载并配置新的控制平面资产包。
- 阶段 3 - 更新控制平面,可以选择包括操作系统软件包更新。
- 阶段 4 - 更新 Access 服务并验证服务状态。
- 阶段 5 - 如果阶段 1 适用,更新引导虚拟机操作系统。
阶段 1 - 为操作系统更新配置本地存储库
注意:
-
如果此更新不包含操作系统软件包更新,请跳至“阶段 2 - 配置新资产包”。
-
如果要部署自己的 AlmaLinux 9.6,则阶段 1 不适用。请跳至“阶段 2 - 配置新资产包”。
过程:
-
在引导虚拟机上运行 DNF 存储库更新脚本:
sh /usr/local/sbin/update-dnf-repo.sh /root/security-rpms.tar.gz -
在 shell 中设置以下变量以在其余步骤中使用:
export WORKDIR="/root/<cluster_name>" export BOOTSTRAP_IP="<bootstrap-node-ip>" export TARGETS="general_compute_linux:general_compute_access_linux" export ASSET_DIR="${WORKDIR}/assets-<version>" -
在引导虚拟机上启用本地存储库,并转储其 CA 证书以便分发到集群节点:
sed -i 's/enabled=0/enabled=1/' /etc/yum.repos.d/localrepo.repo mkdir -p ${WORKDIR}/access/localrepo_ca_path cp -f /etc/nginx/localrepo-certs/root-ca.crt \ ${WORKDIR}/access/localrepo_ca_path/root-ca.crt -
将本地存储库配置推送到集群节点:
-
在集群节点上创建证书目录:
wso control-plane ansible -- -b -m file \ -a "path=/etc/nginx/localrepo-certs state=directory owner=root group=root mode=0755" \ "${TARGETS}" -
将根 CA 证书复制到集群节点:
wso control-plane ansible -- -b -m copy \ -a "src=/workdir/access/localrepo_ca_path/root-ca.crt dest=/etc/nginx/localrepo-certs/root-ca.crt owner=root group=root mode=0644 force=yes" \ "${TARGETS}" -
将集群节点指向引导 HTTPS 存储库:
wso control-plane ansible -- -b -m ini_file \ -a "path=/etc/yum.repos.d/localrepo.repo section=localrepo option=baseurl value=https://${BOOTSTRAP_IP}/" \ "${TARGETS}" wso control-plane ansible -- -b -m ini_file \ -a "path=/etc/yum.repos.d/localrepo.repo section=localrepo option=sslverify value=1" \ "${TARGETS}" wso control-plane ansible -- -b -m ini_file \ -a "path=/etc/yum.repos.d/localrepo.repo section=localrepo option=sslcacert value=/etc/nginx/localrepo-certs/root-ca.crt" \ "${TARGETS}" wso control-plane ansible -- -b -m ini_file \ -a "path=/etc/yum.repos.d/localrepo.repo section=localrepo option=enabled value=1" \ "${TARGETS}" -
仅从本地存储库重建集群节点上的 DNF 缓存。如果要在已发布的版本上应用多个更新,则必须重复此步骤。
wso control-plane ansible -- -b -m shell \ -a "dnf clean all && rm -rf /var/cache/dnf/* && dnf --refresh makecache --disablerepo='*' --enablerepo=localrepo && dnf --refresh --disablerepo='*' --enablerepo=localrepo list available" \ "${TARGETS}"
-
阶段 2 - 配置新资产包
过程:
-
为新资产包创建一个目录并下载该资产包:
mkdir -p ${ASSET_DIR} cd ${ASSET_DIR} # Copy the target release asset bundle to this location ${ASSET_DIR}**重要信息:**下载与您的目标版本对应的资产包。请勿重用旧版本中的包。
-
提取包并将 CLI 添加到您的路径中:
# Ensure that you are in ${ASSET_DIR} before you unzip the asset bundle unzip asset-bundle.zip cp cli-distribution/linux/wso /usr/bin/ cp: overwrite '/usr/bin/wso'? y # It will prompt for overwrite wso eula Do you agree to these terms ? [y/n]: y -
将 CLI 配置为使用新包:
cd ${WORKDIR} wso configure ${ASSET_DIR}
阶段 3 - 更新控制平面
过程:
-
使用新资产包部署控制平面。如果此更新还对集群节点上的操作系统软件包进行更新,则包含
-u:# To update without OS packages update nohup wso cp deploy & # To update with OS packages update nohup wso cp deploy -u & -
验证部署:
wso version wso healthcheck -
如果部署时使用了
-u,请解封集群:**注意:**如果部署时未使用
-u,则可以跳过此步骤。wso cp unseal
阶段 4 - 更新 Access 服务
过程:
-
为该更新协调 Access 配置:
wso access update-config set -
如果工作目录中存在来自先前手动替代项的
services目录,请移动该目录,以便部署改用新包中的映像:mv ${WORKDIR}/services to ${WORKDIR}/services.bk -
部署所有 Access 服务:
nohup wso services deploy --type full & -
检查服务的运行状况:
wso access check-service-readiness -
在所有服务都报告正常后,退出更新模式:
wso access update-config reset -
清理先前版本中的资产:
wso cp reset-assets
阶段 5 - 更新引导虚拟机操作系统
只有在成功完成集群更新后,才执行此阶段。此阶段不需要集群有任何停机时间。完成阶段 4 后,可以执行集群操作。
对于此阶段,选择执行就地更新或替换虚拟机。
就地更新
-
更新软件包并使引导虚拟机重新引导:
dnf update -y reboot -
引导虚拟机恢复联机后,验证集群:
wso healthcheck wso access check-service-readiness
替换虚拟机
如果要从最新的 Omnissa OVA 部署新的引导虚拟机,而不是就地修补现有的引导虚拟机,请使用此选项。对于主要操作系统更新,建议使用此方法。
步骤 1 - 从现有的引导虚拟机创建迁移软件包
cd /root/<cluster_name>
tar czpvf /root/<cluster_name>-migration-$(date +%Y%m%d).tar.gz \
profile.yml \
logging \
telegraf_plugin \
ansible_extra_vars.yml \
access \
cp-cluster \
additional_env_vars.env \
deploy_services.log \
deployment-config.yml
步骤 2 - 将迁移软件包复制到新的引导虚拟机
scp /root/<cluster_name>-migration-*.tar.gz configuser@<new-bootstrap-machine>:/home/configuser/
步骤 3 - 在新的引导虚拟机上还原配置
mkdir -p /root/<cluster_name>
cd /root/<cluster_name>
tar xzpvf /home/configuser/cp-cluster-migration-*.tar.gz
新的引导虚拟机现在包含与先前的引导虚拟机相同的部署配置。
步骤 4 - 配置资产包
将用于现有引导虚拟机的资产包复制到新的引导虚拟机,然后执行以下步骤。
mkdir -p assets
cd assets
# COPY asset bundle at this path.
unzip asset-bundle.zip
cp cli-distribution/linux/wso /usr/bin/
wso eula
wso configure /root/<cluster_name>/assets/
cd ..
步骤 5 - 验证新的引导虚拟机
wso version
wso healthcheck
wso access check-service-readiness
确认 CLI 版本、控制平面映像版本、CPS 映像版本、集群运行状况和 Access 服务就绪状态均正确无误。所有 Access 服务都应报告 READY 状态。
此页面对您有帮助吗?