|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一、概述6 a, T2 }7 B R
; b r& T' \1 x) x" T( F8 B3 D随着蓬勃发展,业务规模的不断扩张、功能不断增多,用于支撑业务运行的系统和基础设施也日趋庞杂,企业需要采购越来越多的物理服务器,投入越来越多的人员保证系统的正常运行,同时系统的故障率也快速攀升,运行效率却呈下降趋势,这些都成为要面对的挑战和困难。
( N" q2 ^# ?) t8 L5 D. G9 t# \0 G0 D) ?" P& f6 j
基于云原生的容器技术,在很大程度上可以解决上述问题。容器云平台通过建成以Kubernetes为中心、容器技术为基础的高度自动化、智能伸缩的应用部署及运行环境的容器云管理平台,为业务系统可提供容器管理、自动化持续集成与交付、弹性伸缩、微服务治理、负载均衡管理、自动化运维、大规模集群调度等能力。
$ m- p I, C+ x. \7 {二、背景及意义. t- c4 p- ?( v. u i
+ B% W( T: w) k8 W
(一)背景3 c8 J K6 ]" a1 u# w( K& p( H
# Q7 H0 J4 f8 b, c( Y0 {传统架构的系统服务在性能、效率方面存在瓶颈,无法快速满足业务需要和市场响应。在资源集约化管理方面,需要通过云计算服务实现资源的动态池化管理、应用集成复用,以达成降本增效,减少重复建设、资源浪费的问题。
& k4 f" S$ F" ^" M
% Z, g {$ U9 C(二)建设意义
$ ]& ~# J$ h4 k9 ~
* {4 U4 m, o. d6 h基于云原生的容器云平台实现对应用、服务、镜像、集群的统一管理,从而实现测试、开发和运维的一体化流程统一,做到云计算容器层和基础设施层联动上下层之间深度集成,方便资源的调度做到运维开发一体化,上层开发环境自动化、模块化、容器化,交付的应用更加轻量级,提高交付速度和质量,对服务进行细粒度监控和日志告警等;另一方面在平台上能够更加灵活快捷地迭代更新,满足快速高效的需求。$ U9 F; A7 M1 Y! B2 u
- `. S7 t1 ]& H/ e
三、项目重点解决问题及主要创新点
& n# c3 l# N8 B: I- ^0 h% x% ?2 g9 X, r2 m8 l. |. M+ k
(一)项目重点解决的问题$ @/ P) z% T& ~* z3 k* o
# O- _( l, k$ R0 ]. T1.同一系统的各类环境差异大。
. K o) W; f( u% D, ?0 ^* Z" ~7 x& u
; D5 r a9 {0 u; _ N' J出于历史原因,应用配置和环境经常会耦合在一起,版本迭代发布过程中,很难保证开发、测试、生产环境始终是保持一致的,随着版本迭代次数的累加,环境问题会越来越多,因环境差异对业务的影响也会成线性增长。
* W1 F" o8 [6 d8 k& E6 _, c. D9 M8 o
2.资源利用率低,交付时间长。5 I* o' Y! l$ l1 k
' |* c; K* y2 t4 \& K基于虚拟机、物理机部署的应用,环境搭建周期较长,在开发、测试过程中会存在大量的资源空闲。业务复杂性带来了应用的复杂性,而应用与资源是成正比的。0 g5 @6 _; L7 y3 s
6 a1 o' m+ y2 V* o5 ]
3.传统版本部署方式。
; y* E) l' S3 u/ N$ V# j: F$ i; {" d0 x$ l/ M
传统的Web应用版本升级时多数都采用整体部署方式,存在应用在升级版本时需先停止服务,遇到问题版本回退、紧急修复耗时较长,影响业务作业、用户体验。- Y5 J, L8 s6 t a
$ U% D' W0 [4 h5 Q) c. J(二)项目主要创新点
; i' ^; d! F. _: @! F) a ?+ h4 U7 F; N7 Z! ~+ d. X z
平台以业务场景作为出发点,结合云原生发展趋势及行业现状,从理念、设计、管理三方面实现了以下创新:8 r& i2 i# H. p2 p* W5 V: m) Z; X+ ~
8 v. l+ f1 v( |! I* W* s
1.基于云原生的建设体系。以基础设施服务(IaaS)、平台服务(PaaS)、软件服务(Saas)为模型,以自动化部署、自动化运维、自动化交付为目标,建设一个有持续交付能力、高度自动化的研发运维一体化平台。9 H$ m( W1 \, ]1 t
$ M# R' ]# C/ f. X0 C- g0 M2.智能统一的运维管理。平台可为相关业务系统支撑服务提供一键部署、服务扩展、实例伸缩、服务发现、负载均衡等能力。提供了监控告警、日志查询、资源报表等运维管理模块。
' T x/ m, @# S; a6 z; U
/ f7 G2 c: Q$ o$ t! E3.丰富的DevOps模块。根据业务场景自主开发;兼容了多种代码管理工具,涵盖了编译、构建、部署、质量门禁、滚动升级、自动回滚、SQL脚本发布、服务健康状态检查、消息通知、定时触发等一系列功能,既提升了代码质量、版本发布效率,也降低了运营成本。
% k& ]! h+ c1 ?
: {% p* b, G! W) H& ^4.安全合规,审计审核。生产与测试环境物理隔离、网络隔离,生产环境编译强管控;审计方面,平台已实现了操作日志全覆盖,审计日志中可记录用户名、IP地址、修改时间、修改内容等信息,高危操作待指定人员、系统管理员审核后才会生效,进一步提高了平台的安全性。) U0 h8 t7 w9 \3 |3 ] N- V6 T: o* z
$ p* C/ r5 a" _0 W2 d. _5.易扩展、松耦合。平台所有组件都采用容器化方式部署,容器的多实例配合健康检查、弹性伸缩机制,使得平台层已具备了高可用、自愈特性;各个组件之间完全解耦,便于为应用提供更有效和灵活的服务。
3 Q+ Q. G: Q4 @, c
/ ~; g/ U: _2 h% E8 D2 R四、项目主要建设内容) M8 L4 Q- K2 o% z
0 |" _ K0 ^/ x8 ~& S: k! g(一)架构设计
9 F8 k. ^3 \1 M$ {; V6 [: n6 n
) Y4 _% ]' Q8 R6 n平台包括六大模块:联邦集群、容器服务、交付中心、中间件服务目录、DevOps、运维中心,每个模块包括对应的主要功能点,系统的整体功能架构如下图:3 o0 n& K2 i2 a) H$ w# _2 o; f
2 c3 h- u6 \3 _% z5 {+ G/ u
图1 容器云平台功能架构/ t- b: j/ F) U) w
( e( Y3 A% n. `, U0 w(二)建设内容
) F5 P# C, n+ y! V
. `% n/ |1 c3 h( b+ D3 G6 G平台提供多种管理功能及服务:
& B' S- V$ t) m. ~
/ @ @! O& C. I9 w; c# j8 M1.统一集群
# U" ~/ c2 Q% y% z, N3 c, W; G0 a2 H* c3 f0 p* y! V' h
实现了单一集群统一对多个Kubernetes 集群的管理。支持同时部署应用到多个集群(联邦集群)。特性如下:
0 g( d6 p1 q/ a) m$ p" b8 O9 W5 G2 \5 ~& s
1)在多个集群之间分散工作负载,提升应用服务的可靠性;
1 M4 s, ~/ z* G# T# S/ `6 y4 w( w7 W! N! \% F
2)在不同集群中,能更快速更容易地迁移应用服务;1 Y3 n$ ~8 S; N
* e2 w: B1 J" C
3)跨集群的服务发现,服务可以就近访问,以降低延迟;: b" q% x n( c' @) [$ \
6 K6 Q8 k& ~0 B, Y; N% u
4)实践多云(Multi-cloud)或混合云(Hybird Cloud)的部署。 _5 S5 w. q( D
% C- ~$ S5 e6 B3 C# ~
2.容器服务
" B5 t* p/ ?2 @# Q! s; j
8 J2 s6 O4 h9 ]! {, N9 V9 \( I支持类型多样的容器调度设置,如:通过设置主机亲和性可将容器调度到指定的主机上运行;支持Flannel、Calico等多种主流的容器网络模式;支持对接不同类型的存储资源。
- d" h( |* [$ u) _4 \7 q7 O* ^) z5 N( p! S7 f' P
支持以应用为中心的容器应用管理模式,让应用部署和底层服务器资源解耦,业务方只需关心应用本身,无需考虑底层资源,大大加快了应用部署上线的速度。秒级的弹性伸缩,用户可以设置每个服务的弹性策略,根据资源负载变化,自动调整实例数量,最大限度保障业务连续性,更好地服务敏捷开发、微服务化等场景。
: ?! _6 H* p+ Z5 P( E4 u; f: I$ g" V5 `$ D X
3.交付中心
/ u: |$ o- @6 A& [7 a D; S
4 M% T/ R3 x; e/ i: I用于管理、维护镜像版本,其特点是支持保存文件、镜像,也支持与第三方仓库对接。支持镜像模版创建,通过保存的应用模版可视化创建应用,大大地降低了模板的配置门槛。
* j& B) W* _& A* ^/ D* n/ H! e7 M* r( v$ H& l8 J
4.中间件服务目录
6 O l6 z k7 c& \1 w0 O" n9 v( U+ P$ ?. P* M
提供了数据库、中间件、缓存和流程管理等应用,支持再制定集群资源池,一键部署启动对应的应用,通过部署好的服务目录内应用,提供对应的操作管理,支持启、停、删除等操作。
1 L1 j. s1 S2 ]; M& x# E) B5 r6 `8 w9 i
5.运维中心9 L4 {% x, m1 B T
; [ a8 k" ]$ P2 K3 e) \涵盖了资源监控、操作审计、日志管理、告警配置等功能,具备以下特性:' r; o; h/ f- t* F
+ H2 p: D% y% @* k: h: s$ i
1)对计算、存储、网络实时监控与告警,帮助项目组合理使用基础资源;7 q& I! _; D8 N6 h
) b, {. G+ k# n/ g! ?: f% W
2)细粒度的操作审计记录,支持形成报表;
7 ~, \0 O% @# l" N
/ N3 }/ \- R0 z2 X1 B3)支持多维度的日志管理,标准日志与采集日志统一管控,并支持日志清理功能;0 Z/ v+ `% e2 \( }. O
: L+ B5 z7 c: h. ]% _4)提供自定义的监控面板,保证多维实时有效监控数据。
; l9 h1 p3 ?" ]/ u- n3 G W1 t# v1 |1 }# i v) }4 ?8 e
五、项目效果
9 X. Y9 i/ o, d! n' ?: y$ e( z0 L& v3 m/ l7 m& e
平台已经建设公有云、私有云等多个集群,接入集团、财险、寿险、养老险、健养等子公司下的22个核心业务系统,部署了近2000个服务,近3000个实例。提高了业务运营效率,提升了服务化IT治理能力,满足业务对于IT系统高可用、高性能、灵活扩展的需要,支持大家保险业务的发展,确保IT应用的部署架构以可持续发展的模式演进。3 b$ V' |9 G+ E9 S# D
, _( o# `8 i8 M# O0 ?: O六、总结与展望( r. ~: V. E3 { `& A3 L0 z2 E8 h
4 V' T9 B2 f$ i% G% j; r0 Y
本项目解决了企业在技术架构转型、部署架构转型、运维管理转型中遇到的痛点问题。部署在平台上的系统在监控、告警、运维、版本发布等方面都得到了一体化保证。在新浪潮技术发展下,拥抱变化、跟随变化,不仅仅是技术上的转变,更多的是职能的转型,传统的单一技术工程师往全栈技术工程师转变,只懂流程的运维岗已经被自动化、敏捷、技术岗位所替代。4 l6 W$ u/ k, a! g: T, Z& q
& }$ ?* v# k7 u, A
展望未来,容器云平台将在大家保险集团的公有云、私有云、混合云的建设中发挥更大作用,为整个集团的深刻转型提供强大基石。
5 K" O) y% V9 V
$ l( O6 i0 f+ Y1 N; a3 ~ |
|