5.3. 安装 Compliance Operator

在使用 Compliance Operator 之前,您必须保证在集群中部署它。

5.3.1. 通过 Web 控制台安装 Compliance Operator

先决条件

  • 您必须具有 admin 权限。

流程

  1. 在 OpenShift Container Platform Web 控制台中导航至 OperatorsOperatorHub
  2. 搜索 Compliance Operator,然后点 Install
  3. 保留 安装模式命名空间 的默认选择,以确保将 Operator 安装到 openshift-compliance 命名空间中。
  4. Install

验证

确认安装成功:

  1. 导航到 OperatorsInstalled Operators 页面。
  2. 检查 Compliance Operator 是否已安装在 openshift-compliance 命名空间中,其状态为 Succeeded

如果 Operator 没有成功安装:

  1. 导航到 OperatorsInstalled Operators 页面,并检查 Status 列中是否有任何错误或故障。
  2. 导航到 WorkloadsPods 页面,检查 openshift-compliance 项目中报告问题的 pod 的日志。

5.3.2. 使用 CLI 安装 Compliance Operator

先决条件

  • 您必须具有 admin 权限。

流程

  1. 定义一个 Namespace 对象:

    namespace-object.yaml示例

    apiVersion: v1
    kind: Namespace
    metadata:
      labels:
        openshift.io/cluster-monitoring: "true"
      name: openshift-compliance

  2. 创建 Namespace 对象:

    $ oc create -f namespace-object.yaml
  3. 定义一个 OperatorGroup 对象:

    operator-group-object.yaml示例

    apiVersion: operators.coreos.com/v1
    kind: OperatorGroup
    metadata:
      name: compliance-operator
      namespace: openshift-compliance
    spec:
      targetNamespaces:
      - openshift-compliance

  4. 创建 OperatorGroup 对象:

    $ oc create -f operator-group-object.yaml
  5. 定义一个 Subscription 对象:

    subscription-object.yaml示例

    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: compliance-operator-sub
      namespace: openshift-compliance
    spec:
      channel: "release-0.1"
      installPlanApproval: Automatic
      name: compliance-operator
      source: redhat-operators
      sourceNamespace: openshift-marketplace

  6. 创建 Subscription 对象:

    $ oc create -f subscription-object.yaml
注意

如果要设置全局调度程序功能并启用 defaultNodeSelector,您必须手动创建命名空间并更新 openshift-compliance 命名空间的注解,或安装 Compliance Operator 的命名空间,使用 openshift.io/node-selector: ""。这会删除默认节点选择器并防止部署失败。

验证

  1. 通过检查 CSV 文件来验证安装是否成功:

    $ oc get csv -n openshift-compliance
  2. 验证 Compliance Operator 是否正在运行:

    $ oc get deploy -n openshift-compliance

5.3.3. 其他资源