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 安裝
下載提供給您的 OpenResty XRay Helm chart 包,通常是一個
.tar.gz
檔案。在您選擇的目錄中解壓 Helm chart 包。
導航到您已解壓 Helm chart 的目錄:
cd path_to_directory/orxray
在繼續安裝之前,配置
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
部分允許您指定自定義的 storageClassName
和 volumeName
。確保這些值根據您的 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 設定和持久卷宣告,以匹配您的叢集環境和您的應用程式要求。