在现有 Kubernetes 集群上安装 Zadig。可生产使用。

  • Kubernetes 集群版本:v1.16~v1.21

  • Helm v3.0.0 + 版本

自建集群注意事项

  • 在安装之前,需要配置 Kubernetes 的 StorageClass,以支持创建 PVC 用于数据持久化

步骤 2:准备安装环境

  • 需要一台可以正常连通该集群的机器用于执行安装脚本。
  • 确保该机器已经安装了 kubectl 客户端 (opens new window) 并且可以使用管理员的权限操作该集群。

根据实际情况下载安装脚本并添加可执行权限,使用 GitHub 源下载示例如下:

提示

下表为安装脚本支持配置的环境变量,安装时会使用默认值进行安装,如果有配置的需求,可以在执行安装脚本之前通过环境变量进行配置。

  1. # 例如:配置 IP 访问地址
  2. export IP=<node external ip>
  3. export PORT=< 30000 - 32767 任一端口>
  4. # 如果出现端口占用情况,换一个端口再尝试
变量名称默认值是否必填说明
NAMESPACEzadigKubernetes 命名空间
DOMAIN和 IP 二选一访问 Zadig 系统域名
IP和 DOMAIN 二选一Kubernetes 集群任一节点的外网 IP 地址,用于访问 Zadig 系统
PORT使用 IP 访问必填30000 - 32767 任一端口
NGINX_SERVICE_TYPENodePort安装脚本自动安装的 Gateway Proxy Service 和 Ingress Controller Service 类型为 NodePort, 可配置为: LoadBalancer
INGRESS_CLASS若集群内已经配置了 Nginx Ingress 控制器,则设置这个变量为该控制器的名称
STORAGE_SIZE20G内置数据库和对象存储各自的数据存储大小
INSECURE_REGISTRY若需要使用一个 HTTP 协议的 Registry,则设置该变量为 Registry 的地址 ,如 10.0.0.1:5000
STORAGE_CLASS若集群内支持持久存储卷,可以设置该变量,避免 Zadig 的数据库服务重启后数据丢失
MONGO_URIZadig 业务数据存储,配置多个地址时需要进行转义,例如:mongodb://user:password@8.10.20.20\,8.10.20.30。若不配置,使用安装脚本中内置的单节点 MongoDB
MONGO_DBzadig数据库名称
MYSQL_HOST“”Zadig 用户信息数据存储,若不配置,使用安装脚本中内置的单节点 MySQL
MYSQL_PORT“”MySQL 数据库端口
MYSQL_USERNAME“”MySQL 数据库用户名
MYSQL_PASSWORD“”MySQL 数据库密码
ENCRYPTION_KEY由安装过程生成,用于数据加密解密,第一次安装后请妥善保存。重装系统时需设置 ENCRYPTION_KEY,才能保证之前的数据可以被正确解密
EMAILadmin@example.com初始用户邮箱
PASSWORDzadig初始用户密码

步骤 4:开始安装

执行快速体验安装脚本

生产级使用

  • 方式一:使用外置高可用的 MongoDB 和 MySQL。具体配置如下。
  1. export IP=<IP>
  2. export PORT=<30000~32767 任一端口>
  3. export PASSWORD=zadig
  4. # 安装前需要手动在该 MySQL 实例中创建名为 dex 的 database
  5. export MYSQL_HOST=<MYSQL_HOST>
  6. export MYSQL_PORT=<MYSQL_PORT>
  7. export MYSQL_USERNAME=<MYSQL_USERNAME>
  8. # 配置高可用的 MongoDB
  9. export MONGO_URI=<MONGO_URI>
  10. export MONGO_DB=<MONGO_DB>
  11. ./install.sh
  • 方式二:使用 Zadig 内置的 MongoDB 和 MySQL,同时使用外置存储。具体配置如下。

预期安装结果

安装过程预计持续 10 分钟左右,受硬件配置和网络情况影响,不同环境下的时间可能不同, 当看到如图的输出时,说明安装已经完成,届时可以通过命令查看服务启动状态。

    步骤 6:访问系统

    在安装结果输出中,您可以获得系统的访问地址。

    官方最新版卸载脚本: