1、天基系统简介
1.1 简介
天基系统是一套分布式数据中心管理系统,能够管理包含多台机器的集群上的应用,并提供部署、升级、扩缩容、变更配置等基础功能。
天基监控系统还支持数据监控与报表分析功能,方便用户进行一站式运维管控。
核心功能主要有:网络初始化,服务器装机、维修流程管理,云产品部署、扩容、升级,云产品配置管理,云产品资源自动申请,软硬件故障自动修复,软硬件基础监控、业务监控。
1.2 设计理念
自动化运维、安全稳定、统一管理机制。
- 终态系统
当前态向终态逼近,假设失败会在任何地方发生。
- 高吞吐和高可靠
热备,快速服务切换能力。
- 稳定性
一套天基有管理十万台机器以及300万SRI的能力。
即使天基系统瘫痪也不能影响管理的服务。
- 自版本维护,天基运维天基
自己部署自己,从无到有部署天基的能力。
天基系统实现了恢复机制和变更机制的统一:
声明式变更:配置变更、软件升级、硬件变更均通过格式化的说明文件提交,尽量避免人工失误。
变更、恢复和修复机制的统一:面向终态的设计使得这三类操作采用同样的机制。
集成的监控机制:自动发现故障,快速进行恢复。
1.3 天基系统基本概念
产品(Project):一组Cluster的集合,可以对外提供服务能力。
集群(Cluster):逻辑上提供服务(Service)的一组物理机集合,用于部署产品的软件。一个集群只能属于某一个产品。一个集群上可以部署多个服务。
服务(Service):提供相对独立功能的一组软件。由一个或多个服务角色(Server Role)构成,服务可以部署在多个集群上,形成多套服务,提供相应的服务能力。
服务实例(Service Instance):一个服务被部署到一个集群上,即为服务实例。
服务角色(Service Role):服务根据功能划分为一个或多个不可拆分的部署单元,即服务角色。服务角色由一个或多个具体的应用构成。如果一个集群部署了某个服务,那么该服务中的所有服务角色都必须部署到这个集群的机器上。同一台服务器上可部署多个服务角色。
服务角色实例(SR Instance):服务角色可以部署在多个机器上,具体某台机器上的服务角色,称之为服务角色实例。
Rolling:每次用户更新配置,天基监控系统会按照配置中的内容,进行服务升级、修改集群配置等操作的过程称为Rolling。
终态:该集群达到的状态为所有机器软硬件都是正常的,所有版本都是目标版本。
依赖关系:服务内部Server Role之间依赖关系定义了依赖关系的Server Role,会按照依赖顺序进行任务执行或升级。在一个服务内部,不同的Server Role之间存在着某种特定协作关系,而这些联系明确定义了哪些服务角色是相互依赖的。例如,A依赖于B,会先升级B,B下载成功之后A开始下载,B升级成功之后A开始升级。(默认配置升级依赖关系不生效,避免因自动升级依赖关系而可能引发的不可预测问题,以确保系统的稳定性和安全性。)
Tianji Service进程列表-天基master
Tianji Service进程列表-天基client客户机
2、常见问题分享
大量服务未达终态排查思路:
1)查看各项产品集群的依赖关系,看看是否依赖同一个服务模块。
2)查看所有未达终态的服务部署的VM,是否在同一个物理机上:1、点击未达终态角色,查看服务角色所部署的VM信息;2、进入系统报表,在虚拟机映射表中,使用查询到的VM角色信息,过滤出VM所在物理机信息;3、通过ops1机器ping该物理机主机名,如果主机不可达,则可能是当前物理机异常宕机导致,需要通过带外查看机器状态;4、如果主机可达,我们可以通过ssh,登陆到该物理机,查看当前物理机磁盘使用空间是否足够(df -h),查看物理机load高不高(top),查看物理机docker demo进程是否正常(systemctl status docker.service)。