应用管理
- 应用所有者
- 应用主管
测试工程师 (已废弃)运维 (已废弃)
角色职责可查看应用角色页面介绍,入口为:
管理入口为:
DevOps 平台 -> 项目 -> 应用 -> 应用设置 -> 通用设置 -> 应用成员
通知管理
:::tip 通知可与 组合使用,将持续集成的事件进行通知,为研发提效。 通知对象使用通知组管理,需要先建立通知组才能关联到通知 :::
目前已经支持的事件有:
- 代码推送
- 创建合并请求
- 流水线开始执行
- 流水线运行成功
- 流水线运行失败
管理入口为:
通知组管理:
DevOps 平台 -> 项目 -> 应用 -> 应用设置 -> 通知组
可以通过不同的通知成员类型选择对应配置,在关联通知时会根据成员类型列出合适的通知渠道,如图所示:
域名管理
入口在->资源管理
->域名管理
基于微服务网关实现域名路由(推荐)
通过 dice.yml
配置,为服务指定 endpoints
即可实现微服务网关的功能
完整的例子
endpoints
中的每一项由以下几个属性构成
domain
必填字段
域名,可以填完整域名,也可以只写最后一级域名,平台会基于集群泛域名进行自动补全
选填字段
域名路径,表示将域名下基于URL 前缀匹配到当前路径的请求都转发给该服务,不填时默认为/
URL 前缀匹配总是根据路径长度优先匹配,越精确越优先
backend_path
选填字段
转发给服务的路径,可以理解为将部分匹配到的 URL 路径抹除后,剩余部分拼接在backend_path
上转发给服务,不填时默认和path
一致
policies
选填字段
当前支持跨域策略和限流策略
跨域策略:
跨域相关知识,请参考
以允许跨域应答头Access-Control-Allow-Origin
为例,配置allow_origins
的值,会作为这个应答头的值
但当值为any
时,比较特殊,会直接获取请求头的Orgin
字段,作为值
对于,Access-Control-Allow-Headers
等也是同理
限流降级策略:
deny_status
可以填302
,这时deny_content
可以是一个 http 地址,提供跳转
可以将这个 http 地址配置为一个降级接口,例如一个 cdn 页面,用于透出当前服务过载的信息
确保服务通过对指定端口设定了expose
,开启了端口暴露,只有开启了端口暴露的服务,才能够配置域名,进而对外提供服务(用户通过公网访问域名)。
:::tip 需要注意的是,这种模式下域名完全绑定在单个服务上,无法再将不同的路径转发给不同服务 这种模式的好处是,端口协议除了 http 之外,还可以支持 https/grpc/grpcs/fastcgi,通过 port 的 protocol 指定协议即可 :::
通过调整 dice.yml
配置,可以将服务端口暴露。
一切就绪后,执行源码部署以生效这个配置。平台默认不会直接生成域名,部署成功后需要配置域名,管理入口在:
可直接使用集群提供的泛域名,或者配置自定义域名:
通过调整 配置,可以对服务进行扩缩容。
修改 services.serviceA.deployments.replicas
,调整服务的实例个数,然后需要执行源码部署以生效这个配置。
若希望临时扩缩容(即不经过源码部署),可以在界面上进行调整,入口:
DevOps 平台 -> 项目 -> 应用 -> 部署中心 -> 部署总览
重启
重启只会重新拉取 ,并不会改变运行程序的逻辑。若代码有变更,请使用 源码部署
:::warning 可配置回滚点功能正在建设中,暂不支持 :::
操作入口:
若无法回滚到记录点,则会提示具体原因:
回滚记录
默认策略:
- 其他环境只保留当前记录点 (即无法进行回滚)
策略可自定义,操作入口(须企业管理员):
企业中心 -> 项目管理 -> 项目 -> 回滚点设置
回滚即是一次部署,与普通的构建部署并无差异,区别在于回滚是部署一份早期的软件版本。
::: warning 由于回滚即是部署,而若回滚的版本与当前版本差异过大(如 addon 改动巨大),则会导致 addon 配置丢失 :::
健康检查
平台会在服务运行的整个生命周期进行健康检查探测, 过长时间不健康的服务, 会被kill后重新拉起。
服务有过多次重启的情况可以在 runtime 详情页的错误信息中看到.