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 设置和持久卷声明,以匹配您的集群环境和您的应用程序要求。