OpenShift Security (2) - 安装 Red Hat Advanced Cluster Security(RHACS)

OpenShift 4.x HOL教程汇总
本文在 OpenShift4.9 环境中进行验证。

环境要求

OpenShift 4.7/OpenShift 4.8/OpenShift 4.9 集群

安装 ACS Operator

  1. 在 OpenShift 控制台上的“管理员”视图中的“OperatorHub”中找到“Advanced Cluster Security”,然后点击进入。在这里插入图片描述
  2. 在右侧滑出的页面中可以看到当前Operator版本是“3.67.1”,然后点击“安装”。
  3. 然后在 “安装 Operator” 页面中使用以下默认配置,然后点击“安装”。
    在这里插入图片描述
  4. 在“安装的 Operator”页面中可以看到已经安装好的 “Advanced Cluster Security for Kubernetes”。
    在这里插入图片描述

创建 ACS 环境

创建 Central 实例

  1. 创建stackrox项目。
$ oc new-project stackrox
  1. 进入 “Advanced Cluster Security for Kubernetes” Operator,按照以下YAML创建一个名为“stackrox-central-services”的“Central”实例。说明:可以调整“scaling”中的数量。
apiVersion: platform.stackrox.io/v1alpha1
kind: Central
metadata:
  name: stackrox-central-services
  namespace: stackrox
spec:
  central:
    exposure:
      loadBalancer:
        enabled: false
        port: 443
      nodePort:
        enabled: false
      route:
        enabled: true
    persistence:
      persistentVolumeClaim:
        claimName: stackrox-db
  egress:
    connectivityPolicy: Online
  scanner:
    analyzer:
      scaling:
        autoScaling: Enabled
        maxReplicas: 5
        minReplicas: 2
        replicas: 3
    scannerComponent: Enabled
  1. 可以在 stackrox-central-services 中的 Resources 查看部署的资源。
    在这里插入图片描述

  2. 还可在控制台的“开发者”视图中进入“拓扑”查看运行的 Deployment。
    在这里插入图片描述
    说明:在部署的时候如果出现 LimitRange 冲突情况,只需删除导致冲突的 LimitRange 即可。另外如果存储一直处于 “pending” 状态,可以尝试手动创建 PV。

  3. 点击上图中右上 centeral 部署的 “打开 URI” 箭头,进入 ACS 控制台。

  4. 执行命令获取 ACS 的 admin 用户登录密码,然后用 admin 用户名和获得的密码登录 ACS 控制台。

$ oc -n stackrox get secret central-htpasswd -o go-template='{
    
    {index .data "password" | base64decode}}'
rP1URrnwzWZCv02snsd9FghAZ

在这里插入图片描述

将 OpenShift 集群注册到 RHACS

本步将运行 RHACS 的 OpenShift 集群注册到 RHACS 中。

获取 Authentication Token

  1. 进入 RHACS 控制台的 Integrations 菜单,可以看到当前已经针对“StackRox”、“docker”、“RedHat Quay.io”、“RedHat”有了配置。
    在这里插入图片描述
  2. 进入 Integrations 页面最下方的 “cluster init bundle”。
    在这里插入图片描述
  3. 点击进入“Generate bundle”,在提供 “demo-cluster”名称后点击 “Generate” 按钮。
    在这里插入图片描述
  4. 在以下页面中点击 “Download Kubertes secrets file”,然后保存生成的 demo-cluster-cluster-init-secrets.yaml 文件。
    在这里插入图片描述
  5. 执行命令,根据 demo-cluster-cluster-init-secrets.yaml 创建3个secret对象。
$ oc apply -f demo-cluster-cluster-init-secrets.yaml -n stackrox
secret/admission-control-tls created
secret/collector-tls created
secret/sensor-tls created

创建 Secured Cluster 实例

  1. 在 “Advanced Cluster Security for Kubernetes” Operator中按照以下YAML创建一个名为 “stackrox-secured-cluster-services” 的 “Secured Cluster” 实例。
apiVersion: platform.stackrox.io/v1alpha1
kind: SecuredCluster
metadata:
  name: stackrox-secured-cluster-services
  namespace: stackrox
spec:
  admissionControl:
    listenOnCreates: true
    listenOnEvents: true
    listenOnUpdates: true
  clusterName: demo-cluster
  perNode:
    collector:
      collection: KernelModule
      imageFlavor: Regular
    taintToleration: TolerateTaints
  1. 可以在 stackrox-secured-cluster-services 中的 Resources 查看部署的资源。
    在这里插入图片描述
  2. 还可在控制台的“开发者”视图中进入“拓扑”查看运行的 Deployment,其中右侧是本节部署的资源。
    在这里插入图片描述

在 ACS 控制台查看 OpenShift 集群

  1. 在 RHACS 控制台中的 “Clusters” 中可以看到注册名为 demo-cluster 的 OpenShift 集群,它的组件状态为全部为绿色。
    在这里插入图片描述

  2. 同时在 RHACS 控制台中的 Dashboard 可以看到该 OpenShift 集群的安全情况。
    在这里插入图片描述

    扫描二维码关注公众号,回复: 13533890 查看本文章

参考

https://redhat-scholars.github.io/acs-workshop/acs-workshop/index.html

猜你喜欢

转载自blog.csdn.net/weixin_43902588/article/details/121772253