Choerodon猪齿鱼 Agent——基于GitOps的云原生持续交付模型
本文将介绍Choerodon平台持续交付部署流水线的一个核心组件——Choerodon Agent。 ▌文章的主要内容包括: 概述 实现分析 具体设计 建立连接初始化信息 Command/Response模式 实时状态反馈 Helm Operator GitOps 状态同步与修复 Log和Exec长连接 总结 概述 Choerodon Agent是支撑Choerodon平台持续交付部署流水线的一个核心组件,负责将平台生成的部署文件应用到应用部署环境对应的Kubernetes集群之中。并实施返回各个应用实例以及应用实例下所有资源的最新状态信息,同时通过监听各个环境对应的部署文件Git库,执行CD操作。而且支持混合云以及多云作为平台的部署环境,通过返回回来的容器信息和反馈回来各个实例下的容器,还可以实时获取容器日志,以及容器exec执行远程命令。 Choerodon持续交付可以支持任意数量的集群加入平台,作为应用的部署环境,只要将平台中生成的Agent安装脚本在任意Kubernetes集群中执行,就可以将该集群加入平台,然后在平台上创建环境时可以选择该集群,可以一键创建环境。在同一个集群中可以创建多个环境,各个环境之间通过Kubernetes的命令空间隔离。 平台初始化部署集群只需要将平台生成的Agent安装脚本在Kubernetes环境中执行