文件

在 RedHat OpenShift 上部署 MinIO Operator

概觀

Red Hat® OpenShift® 是一個企業級 Kubernetes 容器平台,具有全堆疊自動化操作,可管理混合雲、多雲和邊緣部署。OpenShift 包含企業級 Linux 作業系統、容器執行階段、網路、監控、登錄和驗證和授權解決方案。

您可以透過 Red Hat® OpenShift® Container Platform 4.8+ 部署 MinIO Kubernetes Operator。部署 MinIO Operator 後,您可以透過 OpenShift 部署和管理 MinIO 租戶。此程序包括以下部署路徑的說明

將 MinIO Operator 部署到您的 OpenShift 叢集後,您可以透過 OperatorHub 使用者介面建立和管理 MinIO 租戶。

此文件假設您熟悉所有參考的 Kubernetes 和 OpenShift 概念、實用程式和程序。雖然此文件可能在盡力而為的基礎上提供配置或部署 Kubernetes 相關或 OpenShift 相關資源的指導,但它不能替代官方的 Kubernetes 文件OpenShift Container Platform 4.8+ 文件

先決條件

RedHat OpenShift 4.8+

MinIO Kubernetes Operator 可從 OpenShift 4.8+ 開始使用。

Red Hat Marketplace 安裝需要向 Marketplace 註冊 OpenShift 叢集,才能使用必要的命名空間。有關完整說明,請參閱 向 Red Hat Marketplace 註冊 OpenShift 叢集

對於舊版本的 OpenShift,請使用通用的 部署 MinIO Operator 程序。

管理員存取權

透過 Red Hat Marketplace 和 Operator Hub 安裝 Operator 僅限於 OpenShift 叢集管理員(cluster-admin 權限)。此程序要求使用具有這些權限的帳戶登入 Marketplace 和/或 OpenShift。

OpenShift oc CLI

下載並安裝 OpenShift CLI oc 以在此程序中使用。

程序

1) 存取 MinIO Operator 安裝

選取對應於您偏好的安裝方法的標籤

以具有 cluster-admin 權限的使用者身分登入 OpenShift Web 主控台。

管理員面板,選取運算子,然後選取OperatorHub

OperatorHub 頁面,在 篩選 文字輸入框中輸入「MinIO」。從搜尋列表中選取 MinIO Operator 圖塊。

From the OperatorHub, search for MinIO, then select the MinIO Tile.

選取 MinIO Operator 圖塊,然後按一下 安裝 以開始安裝。

在您的瀏覽器中開啟 MinIO Red Hat Marketplace 列表。按一下 登入 以使用您的 Red Hat Marketplace 帳戶登入。

登入後,按一下 購買 以為您的帳戶購買 MinIO Operator。

完成購買後,從頂部導覽列按一下 工作區,然後選取 我的軟體

From the Red Hat Marketplace, select Workplace, then My Software

按一下 MinIO 混合雲物件儲存,然後選取 安裝 Operator 以在 OpenShift 中啟動 Operator 安裝程序。

2) 設定和部署 Operator

安裝 Operator 頁面提供設定 MinIO Operator 安裝的逐步說明。

Complete the Operator Installation Walkthrough
  • 對於 更新通道,選取任何可用的選項。

  • 對於 安裝模式,選取 叢集上的所有命名空間

  • 對於 已安裝的命名空間,選取 openshift-operators

  • 對於 核准策略,選取您選擇的核准策略。

請參閱 Operator 安裝文件中的 步驟 5,以取得每個顯示選項的完整說明。

按一下 安裝 以開始安裝程序。網頁主控台會顯示一個用於追蹤安裝進度的 widget。

Wait for Installation to Complete.

安裝完成後,按一下 檢視 Operator 以檢視 MinIO Operator 頁面。

3) 設定 TLS 憑證

如果您已從 Red Hat OperatorHub 安裝 MinIO Operator,安裝程序也會設定 OpenShift Service CA Operator。此 Operator 管理存取 MinIO Tenants 所需的 TLS 憑證。它會在到期前 13 個月自動續訂和輪換憑證。無需額外操作。

對於透過其他方法部署的 Operator 安裝,請手動設定 Service CA 憑證。請參閱以下下拉式選單以取得詳細資訊。

OpenShift Service CA 憑證設定

若要手動啟用 service-ca Operator 來管理 TLS 憑證

  1. 使用以下 oc 命令來編輯部署

    oc edit deployment minio-operator  -n minio-operator
    

    如果需要,請將 minio-operator 取代為您部署的名稱和命名空間。oc edit 會在編輯器中開啟部署設定檔。

  2. spec 區段中,加入反白顯示的 MinIO Operator 環境變數

    containers:
    - args:
      - controller
      env:
       - name: MINIO_CONSOLE_TLS_ENABLE
         value: 'on'
       - name: MINIO_OPERATOR_RUNTIME
         value: OpenShift
    
  3. volumes 區段中,加入以下磁碟區和磁碟區掛載

    • sts-tls

    • openshift-service-ca

    • openshift-csr-signer-ca

    加入的磁碟區設定類似如下

    volumes:
      - name: sts-tls
        projected:
          sources:
            - secret:
                name: sts-tls
                items:
                  - key: tls.crt
                    path: public.crt
                  - key: tls.key
                    path: private.key
                optional: true
          defaultMode: 420
      - name: openshift-service-ca
        configMap:
          name: openshift-service-ca.crt
          items:
            - key: service-ca.crt
              path: service-ca.crt
          defaultMode: 420
          optional: true
      - name: openshift-csr-signer-ca
        projected:
          sources:
            - secret:
                name: openshift-csr-signer-ca
                items:
                  - key: tls.crt
                    path: tls.crt
                optional: true
          defaultMode: 420
        volumeMounts:
          - name: openshift-service-ca
            mountPath: /tmp/service-ca
          - name: openshift-csr-signer-ca
            mountPath: /tmp/csr-signer-ca
          - name: sts-tls
            mountPath: /tmp/sts
    
適用於 Helm 部署的 OpenShift Service CA 憑證

對於 OpenShift 上的 Helm 部署,請在部署之前,將以下 環境變數 和磁碟區加入到 Operator Helm 圖表的 values.yaml 中。

針對 operator pod 加入的 YAML 設定類似如下

operator:
  env:
    - name: MINIO_OPERATOR_RUNTIME
      value: "OpenShift"
    - name: MINIO_CONSOLE_TLS_ENABLE
      value: "on"

  volumes:
    - name: sts-tls
      projected:
        sources:
          - secret:
              name: sts-tls
              items:
                - key: tls.crt
                  path: public.crt
                - key: tls.key
                  path: private.key
              optional: true
        defaultMode: 420
    - name: openshift-service-ca
      configMap:
        name: openshift-service-ca.crt
        items:
          - key: service-ca.crt
            path: service-ca.crt
        defaultMode: 420
        optional: true
    - name: openshift-csr-signer-ca
      projected:
        sources:
          - secret:
              name: openshift-csr-signer-ca
              items:
                - key: tls.crt
                  path: tls.crt
              optional: true
        defaultMode: 420
  volumeMounts:
    - name: openshift-service-ca
      mountPath: /tmp/service-ca
    - name: openshift-csr-signer-ca
      mountPath: /tmp/csr-signer-ca
    - name: sts-tls
      mountPath: /tmp/sts

4) 開啟 MinIO Operator 介面

您可以從左側導覽標頭的 Operators 找到 MinIO Operator 介面

  1. 前往 Operators,然後選取 已安裝的 Operators

  2. 對於 專案 下拉式選單,選取 openshift-operators

  3. 從已安裝的 Operator 清單中選取 MinIO Operators狀態 欄必須顯示 成功 才能存取 Operator 介面。

5) 後續步驟

部署 MinIO Operator 後,您可以建立新的 MinIO Tenant。若要使用 OpenShift 部署 MinIO Tenant,請參閱 使用 OpenShift 網頁主控台部署 Tenant