本文主要介绍 K8s Helm Chart 项目中的环境相关操作。
创建环境
在项目中,点击创建环境
按钮进入创建环境页面。
基本信息
环境名称
:要创建的环境的名称,比如:dev
、pre-release
。创建方式
:包括新建
和复制
。新建
:基于服务的 Chart 配置,创建全新的环境。复制
:基于在 Zadig 中已有的环境复制一份新的环境出来。
选择环境
:当创建方式是复制
时需要配置该项,用于选择要复制的环境。资源选择
:
环境配置
在创建环境时为环境创建配置,说明如下:
- 可创建多个 Ingress、ConfigMap、Secret、PVC 类型的配置
- 支持直接粘贴 Ingress、ConfigMap、Secret、PVC 类型的 K8s YAML 文件内容
- 支持从代码库导入 Ingress、ConfigMap、Secret、PVC 类型的 K8s YAML 文件
- 环境创建成功后,此处新建的配置即会在环境/集群中生效
全局服务变量
点击展开全局服务变量
,可修改 values 文件内容设置环境级别的变量值,系统支持 2 种方式设置全局服务变量:
- 手动输入 YAML 格式文件的内容,内容详情即为要设置的变量信息。
- 从指定 GitHub/GitLab 代码库同步 values。在导入时打开自动同步开关,Zadig 会定时从指定的代码库获取最新的 values 文件并将其自动更新到环境中。
后续代码库中 values 内容有变化时,会自动同步修改当前环境的全局服务变量内容。
服务变量
可选择修改指定服务的 values 文件内容配置服务级别的变量值,系统支持 3 种方式修改服务变量:
- 手动输入 values 文件内容。
- 从指定 GitHub/GitLab 代码库同步 values 文件。在导入时打开自动同步开关,Zadig 会定时从指定的代码库获取最新的 values 文件并将其自动更新到环境中。
- 手动输入 key/value 键值对,覆盖在创建 Helm Chart 服务时导入的 values 文件内容。
扩展知识
- 服务变量的设置只对单一服务生效。
- 全局服务变量的设置对当前环境的所有服务都生效。
- 如果既设置了全局服务变量,又设置了服务变量时,服务变量的优先级高于全局服务变量。
开始创建
输入环境名称,按需设置服务变量等信息后,点击立即创建
按钮即可开始创建环境。
提示
服务数量以及启动服务所需的资源会影响环境的创建时间,请耐心等待。
查看环境
环境创建完成后,点击不同的环境 Tab 即可切换到该环境的详情页面。
基本信息
基本信息包括 K8s 集群,K8s 命名空间,更新时间,环境状态,镜像仓库。
环境状态有以下几种情况:
创建中
:正在创建。更新中
:正在更新。删除中
:正在删除。正在运行
:环境中所有服务都是正常的 Running 状态。运行不稳定
:环境中一部分服务处于 Unstable 状态,可能的情况有两种:- 容器服务出现了问题。
- 容器服务正在进行更新操作,例如更新镜像,会出现短时间的服务 Unstable,当更新过程完成之后,服务状态会恢复为 Running。
环境可更新
:当已创建的环境对应的环境模板有更新之后,环境处于可更新状态,有读写权限的用户可以看到更新环境
按钮,点击按钮可对环境进行模板和配置的更新。
基本操作
环境操作包括:
更新环境变量
:包括更新全局服务变量和服务变量,细节描述请阅读更新环境变量管理服务
:包括添加服务、更新服务、删除服务环境配置
:为环境配置 Ingress、ConfigMap、Secret、PVC 资源,细节描述请阅读环境配置管理删除环境
:删除当前创建的环境,环境删除后不可恢复
更新环境变量
点击更新环境变量
,可修改全局服务变量以及每一个服务的服务变量:
- 可手动输入 values 内容或从代码库导入 values 文件来修改全局服务变量,修改后对当前环境下的所有服务都生效
- 对单一某个服务变量的修改以及其和全局服务变量的关系可阅读:服务变量
- 选择服务修改其 values 内容后,可点击预览查看修改后的效果
添加服务
点击管理服务
-> 添加服务
-> 选择要添加的服务,可按需修改其 values 内容 -> 点击确定
即可将新的服务添加到当前环境中。
更新服务
点击管理服务
-> 更新服务
-> 选择要更新的服务,可按需修改其 values 内容 -> 点击确定
即可对环境中的服务进行更新。
当服务配置有变化时(比如在服务管理中重新同步了从代码库导入的服务)才可以对该服务进行更新
若更新服务时不修改其 values 内容,则会使用服务配置中的 values 来修改该服务
删除服务
点击管理服务
-> 删除服务
-> 选择要删除的服务 -> 点击确定
即可将该服务从当前环境中删除。
环境配置管理
可对环境中的 Ingress、ConfigMap、Secret、PVC 配置进行操作,以 Secret 配置为例说明如下。
查看 Secret 配置
点击基本操作中的环境配置
-> Secret
,可查看当前环境中的 Secret 配置列表。
基本操作
- 添加配置:点击
添加
按钮,添加新的 Secret 配置。可手动输入 K8s YAML 文件内容,也可以选择从代码库导入 K8s YAML 文件。
- 查看配置详情:点击
查看
按钮可查看 Secret 配置的具体内容。
- 编辑配置:点击
编辑
按钮修改 Secret 配置,支持直接修改或者从代码库导入 K8s YAML 文件来修改。
- 版本比较与回滚:点击
历史版本
按钮,选择两个版本后可对比版本之间的差异,点击回滚
按钮可快速回滚当前环境中的 Secret 配置。
- 删除配置:点击
删除
按钮可删除环境中的 Secret 配置。需要注意删除配置后可能会造成环境中的服务无法正常运行,请确认无不良影响后再操作。
服务详情
在服务列表中点击具体的服务可查看该服务的更多信息,可以对服务进行服务重启、服务伸缩、配置管理、更新镜像等操作。具体请阅读服务详情。
删除环境
点击基本操作中的删除环境
按钮并输入环境名即可删除环境。
- 如果环境是基于新的 Namespace 创建的,则删除环境操作会删除对应的 Namespace 及其中的资源。
- 如果环境是基于已有 Namespace 创建的,则删除环境操作会清理环境中的服务资源,但不会删除 Namespace。