OpenResty XRay™ 自主部署版 Helm 部署

名稱

OpenResty XRay™ 在 Kubernetes 叢集上的 Helm 部署

目錄

概述

使用 Helm 部署 OpenResty XRay 可以簡化 Kubernetes 叢集中應用程式生命週期的管理。Helm 使用一種名為 charts 的打包格式。通常部署會用到 Helm 倉庫,但目前還沒有 OpenResty XRay 的 Helm 倉庫支援,我們暫時使用本地 chart 包進行部署。

前提條件

在開始之前,請確保您有以下內容:

  • 一個執行中的 Kubernetes 叢集。
  • Helm CLI 已安裝並配置為與您的叢集協同工作。
  • 有足夠的許可權在叢集中部署應用程式。
  • 對於 Kubernetes 叢集的儲存選項有所瞭解,這將用於配置持久化儲存。

安裝

新增 Helm 倉庫(目前不支援)

注意:目前不支援新增 OpenResty XRay Helm 倉庫。Helm chart 將作為本地包分發。

使用本地 Helm Chart 安裝

  1. 下載提供給您的 OpenResty XRay Helm chart 包,通常是一個 .tar.gz 檔案。

  2. 在您選擇的目錄中解壓 Helm chart 包。

  3. 導航到您已解壓 Helm chart 的目錄:

    cd path_to_directory/orxray
    
  4. 在繼續安裝之前,配置 values.yaml 檔案非常重要,以符合您的環境和需求。

配置

Values.yaml 概述

values.yaml 檔案包含了所有可配置的選項,用於 OpenResty XRay Helm chart。檢查並修改這個檔案以匹配您的特定需求至關重要。

Ingress 配置

如果您打算使用 Ingress 控制器或應用閘道器,您必須相應地配置 values.yaml 檔案中的 Ingress 部分。

ingress:
  enabled: true
  annotations: {}
  # kubernetes.io/ingress.class: nginx
  # kubernetes.io/tls-acme: "true"
  paths: []
  hosts:
    - host: xray-console.example.com
      paths: ["/"]
  tls: []
  # - secretName: chart-example-tls
  #   hosts:
  #     - chart-example.local

持久卷宣告覆蓋

對於持久化資料儲存,persistentVolumeClaimOverride 部分允許您指定自定義的 storageClassNamevolumeName。確保這些值根據您的 Kubernetes 叢集中可用的儲存選項進行設定。

persistentVolumeClaimOverride:
  consoleData:
    storageClassName: <your-storage-class-name>
    volumeName: <your-volume-name>

資源限制和請求

values.yaml 檔案中設定了預設的資源請求和限制,但您可以修改它們以適應您 Kubernetes 節點的工作負載。

resources:
  console:
    limits:
      cpu: "2"
      memory: 4Gi
    requests:
      cpu: "500m"
      memory: 512Mi

HTTP Proxy 配置 (可選)

如果你的網路環境要求配置 HTTP 代理才能連線網際網路,那麼你需要在 values.yaml 中這樣配置:

customInfo:
  env:
    httpProxy: "http://proxyserver.example.com:8080"
    httpProxyAuthorization: "Basic `base64 'username:password'`"

部署 OpenResty XRay

當上述配置檔案確認修改後,要將 OpenResty XRay 部署到您的 Kubernetes 叢集,請執行以下命令:

helm install openresty-xray ./orxray -f ./orxray/values.yaml

運維

檢查控制檯伺服器狀態

要檢查 OpenResty XRay 控制檯伺服器的狀態,請執行:

kubectl get pods -l "app.kubernetes.io/name=orxray"

檢視控制檯伺服器日誌

要檢視 OpenResty XRay 控制檯伺服器的日誌:

kubectl logs -l "app.kubernetes.io/name=orxray" -c xray-console

升級元件

要升級 OpenResty XRay,請首先下載最新的 chart 包並解壓它。然後執行以下命令:

helm upgrade openresty-xray ./orxray -f ./orxray/values.yaml

請記住,如果您的持久卷宣告(PVCs)沒有隨升級發生變化,則無需刪除它們。現有資料將不會受到影響。

總結

使用 Helm 在 Kubernetes 叢集中部署 OpenResty XRay 可以簡化和規範應用程式部署過程。確保您正確地稽核並配置您的 values.yaml 檔案,尤其是 Ingress 設定和持久卷宣告,以匹配您的叢集環境和您的應用程式要求。