图形化界面操作
我们大致把应用分为三种类型,普通业务应用、中间件(第三方开源应用)、云服务。对于普通业务应用,我们建议你采用 webservice
部署类型或你的自定义类型。对于中间件或第三方复杂应用建议直接采用 helm
部署类型,对于比较简单且直接提供了 Docker 镜像的第三方开源应用,比如 wordpress,也可以直接采用 webservice
类型。
设置应用基础信息
进入 Applications
页面,点击 New Application
按钮,进入应用基础信息设置页面。设置应用名称等基础信息,根据上一步判断的应用类型选择类型,根据你的实际情况选择部署的环境。设置完成后直接进入下一步。
设置应用部署参数
应用部署参数对于不同的类型差异较大,可根据 UI 提示的帮助信息进行信息输入。比如对于 webservice
类型的应用,他的输入参数如下图:
完成创建
根据提示完成部署参数的设置后,点击提交按钮即可完成应用创建。成功创建后进入应用管理页面,应用处于未部署状态。
绑定应用到环境
应用在创建完成后,需要绑定到 1 个或多个环境才能正式发布。
你可以绑定到开发环境做测试,然后在测试完成后绑定到生产环境做发布,不同的环境之间彼此隔离、互不影响。
创建完成应用后,在应用管理页面点击 Bind Environment
就会出现如下弹窗:
在弹窗中选择需要发布的环境。如果环境还没创建,可点击下方的 Create new environment
创建新的环境。
点击确认即完成绑定,Baseline Config
右侧环境选项区域出现新的环境,且在工作流管理页面将自动生成新环境的部署工作流。切换到新环境视图下点击 Deploy
即可将应用发布到该环境。
部署应用
应用创建完成后,需要分别执行环境对应的工作流完成环境的部署,每个环节的对应工作流会自动生成。
从应用列表点击指定应用进入应用详细页面,在 Baseline Config
右侧即为所有已绑定的环境列表。选择你需要部署的环境,点击环境名称进入环境页面。
环境处于未部署状态时将显示部署按钮,点击按钮即可开始执行当前环境的部署工作流。工作流执行状态显示在页面的右上方。如果你设置了审核的步骤,到达该步骤时页面中将弹出审核窗口。
如果部署步骤出现故障,该步骤显示为红色,鼠标移动到该步骤上将显示故障原因。
更新
应用详情页面的右上方有一个常驻的 按钮,点击该按钮执行默认工作流。按钮右边三点按钮为选择不同的环境工作流,鼠标移动到其上方即可显示多个工作流选项。
更新部署可以在任意状态下进行,选择执行某一个流水线后,将使用最新的应用配置进行部署。如果该环境正在执行部署,UI 将提示你是否强制进行新的部署。
管理工作流
工作流与应用版本的关系
应用进行部署的动作则为执行某一个工作流发布一个版本,版本状态跟随工作流的执行状态,也就是说工作流执行完成,则代表该版本处于完成发布的状态。
对接 CI 系统后,版本可以与 Code Commit 关联,实现版本可追溯。在版本操作中后续会实现版本回退功能,你可在任何时候选择将某个环境回退到指定版本。
编辑工作流
进入应用工作流管理页面,选择一个环境的工作流点击 Edit
按钮进入编辑状态。我们以使用 notification
步骤为例。
选择左侧的 notification
类型的步骤拖入右侧画布,页面将自动弹出工作流步骤编辑窗口,在设置窗口中,你可以根据需要设置参数。
配置完成点击 Submit
保存步骤配置,这时需要规划通知步骤的位置,默认它将添加到最后,如果你希望将其放置到中间步骤,需要断开原有步骤直接的连线,然后将通知步骤进行连线放置在中间。
工作流配置完成后注意点击工作流窗口右上方的 Save 按钮保存所有变更。保存完成后可以点击页面右上方的 Deploy
或右边的选择按钮选择执行该工作流,验证是否可以收到消息通知。
查看应用运行实例信息是掌握应用运行状态的直接方式。
如上图所示,应用的运行实例页面处在应用环境视图下。切换不同的环境即可查询不同环境下部署的实例。
默认情况下,实例列表显示该应用在当前环境下的所有实例。通过实例列表上方的交付目标筛选,可以查询不同交付目标的实例列表。在实例列表中显示版本、状态等信息。
对于交付的 Kubernetes 集群的应用,用户可以点击实例行前方的 + 号展开一个实例的详情,即 Pod 详情,包括了容器状态及资源消耗情况,如果实例的拉起故障,可以从事件列表中查看到详细信息。
对于交付的 云服务 应用,用户可通过点击实例名称跳转到云服务商管理页面。
查看日志
如上图所示,交付到 Kubernetes 集群的应用支持查询容器运行日志,切换到指定环境视图下,选择日志页面,即可通过组件/实例/容器的筛选查看对应的运行日志。
日志查询页面默认为每 5 秒自动刷新,查看最新的日志。若你的应用日志中没有时间信息,可点击 Show timestamps
展示日志记录时间。
通过 CLI 查看应用日志
使用实际的应用名称,命名空间参数执行上述命令,在交互中选择你需要查询的工作负载即可查询应用日志。
访问应用
设置应用访问方式
交付的 Kubernetes 集群的应用需要设置访问方式即可生成访问地址,常见支持的方式如下:
- 设置 Service 的暴露类型,比如
LoadBalancer
和NodePort
。适用于所有应用协议。 - 设置 Ingress 策略,仅适用于 HTTP/HTTPs 协议。
webservice
类型的应用
在部署参数中可以修改 ExposeType
字段参数来设置其暴露方式,同时在 Service Ports
中设置应用的监听端口,并将 设置为 True。
如果你的集群中存在 Ingress Controller
,在应用 Baseline Config
页面中,新增 gateway
运维特征来设置访问域名。
如上图所示,在 Domain
中配置你的域名,注意请将该域名 DNS 解析到目标集群的网关 IP 之上。在 Http
模块下配置路由规则,默认你需要设置 /
:80
,根据你的应用监听端口设置。
其他部署类型的应用,一般存在对应的部署参数设置选项,根据部署参数设置即可。
获取访问地址
设置完应用访问方式后,执行应用部署,然后切换到环境视图下即可看到 Service Endpoint
按钮,鼠标移动到上方即可显示该应用的访问地址。
查看应用部署的资源列表
如果你希望查询应用在各集群部署了哪些资源,可通过下述操作方式查询。
进入应用部署环境视图,默认进入状态展示页面,在该页面中即可查询到应用实际分发的资源列表,如果应用在更新过程中,资源列表会包括历史和当前版本。
在该页面中同时展示了组件状态和整体的交付状态。
通过 CLI 查询
基于如上命令可以查询应用部署的资源清单。
查看应用部署版本
应用每执行一次部署即可生成一个版本,通过应用 Baseline Config
视图下的 Revisions
页面展示应用的历史部署版本。
通过 Webhook Trigger 触发部署的版本,如果携带了代码信息,版本号可与代码 Commit 信息进行关联。
回收应用部署的环境
当你需要将应用在某个环境的部署资源回收,即关闭应用时,参考下述操作。
如上图所示,完成部署的环境视图下回出现 按钮,点击该按钮确认后即可将该环境部署的资源进行回收删除。
应用如果成功从该环境回收后,操作区域将存在 Delete
按钮,点击该按钮即可删除应用与环境的绑定关系。
应用需要完成所有环境的资源回收,完成后即可进行删除操作。