5.13. 卸载 Compliance Operator

您可以使用 OpenShift Container Platform Web 控制台或 CLI 从集群中删除 OpenShift Compliance Operator。

5.13.1. 使用 Web 控制台从 OpenShift Container Platform 卸载 OpenShift Compliance Operator

要删除 Compliance Operator,您必须首先删除命名空间中的对象。删除对象后,您可以通过删除 openshift-compliance 项目来删除 Operator 及其命名空间。

先决条件

  • 使用具有 cluster-admin 权限的账户访问 OpenShift Container Platform 集群。
  • 必须安装 OpenShift Compliance Operator。

流程

使用 OpenShift Container Platform Web 控制台删除 Compliance Operator:

  1. 进入 OperatorsInstalled OperatorsCompliance Operator 页面。

    1. All instances
    2. All namespaces 中,点 Options 菜单 kebab 删除所有 ScanSettingBinding、ComplainceSuite、ComplianceScan 和 ProfileBundle 对象。
  2. 切换到 AdministrationOperatorsInstalled Operators 页面。
  3. Compliance Operator 条目 kebab 中的 Options 菜单并选择 Uninstall Operator
  4. 切换到 HomeProjects 页面。
  5. 搜索 'compliance'。
  6. openshift-compliance 项目 kebab 旁边的 Options 菜单,然后选择 Delete Project

    1. 通过在对话框中输入 openshift-compliance 并点 Delete 来确认删除。

5.13.2. 使用 CLI 从 OpenShift Container Platform 卸载 OpenShift Compliance Operator

要删除 Compliance Operator,您必须首先删除命名空间中的对象。删除对象后,您可以通过删除 openshift-compliance 项目来删除 Operator 及其命名空间。

先决条件

  • 使用具有 cluster-admin 权限的账户访问 OpenShift Container Platform 集群。
  • 必须安装 OpenShift Compliance Operator。

流程

  1. 删除命名空间中的所有对象。

    1. 删除 ScanSettingBinding 对象:

      $ oc delete ssb <ScanSettingBinding-name> -n openshift-compliance
    2. 删除 ScanSetting 对象:

      $ oc delete ss <ScanSetting-name> -n openshift-compliance
    3. 删除 ComplianceSuite 对象:

      $ oc delete suite <compliancesuite-name> -n openshift-compliance
    4. 删除 ComplianceScan 对象:

      $ oc delete scan <compliancescan-name> -n openshift-compliance
    5. 获取 ProfileBundle 对象:

      $ oc get profilebundle.compliance -n openshift-compliance

      输出示例

      NAME     CONTENTIMAGE                                                                     CONTENTFILE         STATUS
      ocp4     registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:<hash>   ssg-ocp4-ds.xml     VALID
      rhcos4   registry.redhat.io/compliance/openshift-compliance-content-rhel8@sha256:<hash>   ssg-rhcos4-ds.xml   VALID

    6. 删除 ProfileBundle 对象:

      $ oc delete profilebundle.compliance ocp4 rhcos4 -n openshift-compliance

      输出示例

      profilebundle.compliance.openshift.io "ocp4" deleted
      profilebundle.compliance.openshift.io "rhcos4" deleted

  2. 删除 Subscription 对象:

    $ oc delete sub <Subscription-Name> -n openshift-compliance
  3. 删除 CSV 对象:

    $ oc delete CSV -n openshift-compliance
  4. 删除项目:

    $ oc delete project -n openshift-compliance

    输出示例

    project.project.openshift.io "openshift-compliance" deleted

验证

  1. 确认已删除命名空间:

    $ oc get project/openshift-compliance

    输出示例

    Error from server (NotFound): namespaces "openshift-compliance" not found