2.2. 升级中央集群
备份 Central 数据库后,下一步是升级中部集群。此步骤包括 upgrade Central、roxctl CLI 和 Scanner。
2.2.1. 升级 Central 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
您可以通过下载和部署更新的镜像,将 Central 更新到最新版本。
先决条件
- 如果从私有镜像 registry 部署镜像,请先将新镜像推送到私有 registry 中,然后替换本节中的命令中的镜像 registry。
流程
运行以下命令来升级 Central:
$ oc -n stackrox patch deploy/central -p '{"spec":{"template":{"spec":{"containers":[{"name":"central","env":[{"name":"ROX_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]}]}}}}'1 - 1
- 如果使用 Kubernetes,请输入
kubectl而不是oc。
$ oc -n stackrox patch deployment/scanner -p '{"spec":{"template":{"spec":{"containers":[{"name":"scanner","securityContext":{"runAsUser":65534}}]}}}}'1 - 1
- 如果使用 Kubernetes,请输入
kubectl而不是oc。
$ oc -n stackrox set image deploy/central central=registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8:3.69.21 - 1
- 如果使用 Kubernetes,请输入
kubectl而不是oc。
重要如果您要从 Red Hat Advanced Cluster Security for Kubernetes 3.65.0 升级,必须运行以下命令来创建
stackrox-central-diagnostics角色:$ oc -n stackrox patch role stackrox-central-diagnostics -p '{"rules":[{"apiGroups":["*"],"resources":["deployments","daemonsets","replicasets","configmaps","services"],"verbs":["get","list"]}]}'1 - 1
- 如果使用 Kubernetes,请输入
kubectl而不是oc。
如果您还没有使用 Helm 或 Operator 安装 Red Hat Advanced Cluster Security for Kubernetes,并希望使用 OpenShift OAuth 服务器启用身份验证,您必须运行以下命令:
$ oc -n stackrox set env deploy/central ROX_ENABLE_OPENSHIFT_AUTH=true$ oc -n stackrox patch serviceaccount/central -p ' { "metadata": { "annotations": { "serviceaccounts.openshift.io/oauth-redirecturi.main": "sso/providers/openshift/callback", "serviceaccounts.openshift.io/oauth-redirectreference.main": "{"kind":"OAuthRedirectReference","apiVersion":"v1","reference":{"kind":"Route","name":"central"}}" } } }'