EDA365电子论坛网

标题: 容器平台建设方案 [打印本页]

作者: niubility    时间: 2023-3-20 14:14
标题: 容器平台建设方案
一、概述
5 y2 N+ x1 Q/ Z4 S! [5 F) F/ s: Q% W+ \- @) [  s3 b3 N
随着蓬勃发展,业务规模的不断扩张、功能不断增多,用于支撑业务运行的系统和基础设施也日趋庞杂,企业需要采购越来越多的物理服务器,投入越来越多的人员保证系统的正常运行,同时系统的故障率也快速攀升,运行效率却呈下降趋势,这些都成为要面对的挑战和困难。
# N( X3 U" p/ h* H% v
0 h' T9 w$ y8 h. T# O0 L/ [, q基于云原生的容器技术,在很大程度上可以解决上述问题。容器云平台通过建成以Kubernetes为中心、容器技术为基础的高度自动化、智能伸缩的应用部署及运行环境的容器云管理平台,为业务系统可提供容器管理、自动化持续集成与交付、弹性伸缩、微服务治理、负载均衡管理、自动化运维、大规模集群调度等能力。/ {' f" `, m/ s5 d3 o! L
二、背景及意义
+ ~6 u; [4 ~1 q( v+ y  ^% \
: k6 J% [$ I# z0 F6 V(一)背景
& c7 e! ~: G! ?  t: h! M4 o( o
6 s4 d) H; R, {3 V/ S; m2 E传统架构的系统服务在性能、效率方面存在瓶颈,无法快速满足业务需要和市场响应。在资源集约化管理方面,需要通过云计算服务实现资源的动态池化管理、应用集成复用,以达成降本增效,减少重复建设、资源浪费的问题。
) t9 y  L" S! ~
, S$ i1 f0 v1 W(二)建设意义* S* p" U( h6 o4 q

6 M- X- e8 G+ o  I+ I9 u1 D% l基于云原生的容器云平台实现对应用、服务、镜像、集群的统一管理,从而实现测试、开发和运维的一体化流程统一,做到云计算容器层和基础设施层联动上下层之间深度集成,方便资源的调度做到运维开发一体化,上层开发环境自动化、模块化、容器化,交付的应用更加轻量级,提高交付速度和质量,对服务进行细粒度监控和日志告警等;另一方面在平台上能够更加灵活快捷地迭代更新,满足快速高效的需求。1 P, p/ X* q6 x2 @6 F
" [8 D0 X) a  C( c1 K
三、项目重点解决问题及主要创新点5 B$ Y4 o! l  n! h
7 K. q* P; b- x1 g& _
(一)项目重点解决的问题  T4 D1 u- R# M, H6 c1 A7 c& m
, N. H' z6 A! l/ |
1.同一系统的各类环境差异大。2 d, H1 x9 [  ]9 J  S
- {$ j( w3 A# @& x3 D
出于历史原因,应用配置和环境经常会耦合在一起,版本迭代发布过程中,很难保证开发、测试、生产环境始终是保持一致的,随着版本迭代次数的累加,环境问题会越来越多,因环境差异对业务的影响也会成线性增长。3 U4 A1 }2 P$ M" o! K5 W, X
5 O% W! b% d0 D( p$ n( H$ @
2.资源利用率低,交付时间长。
0 m5 i% i1 E& B$ U- C' \  O& i2 J" q; U3 b( z/ O
基于虚拟机、物理机部署的应用,环境搭建周期较长,在开发、测试过程中会存在大量的资源空闲。业务复杂性带来了应用的复杂性,而应用与资源是成正比的。4 x# I2 S* O1 f$ F# b1 Z6 z

2 w& s6 b% i  ~$ m2 V  j3.传统版本部署方式。9 {5 ~. L* s% W6 T; K
3 c/ ~$ B- F: J( ^
传统的Web应用版本升级时多数都采用整体部署方式,存在应用在升级版本时需先停止服务,遇到问题版本回退、紧急修复耗时较长,影响业务作业、用户体验。
, w# A( g# F; k1 [
. \' Y# V7 B3 O1 Y0 B; q0 _(二)项目主要创新点
- z/ t; Q% J( q
7 A8 B) W. s5 s% N平台以业务场景作为出发点,结合云原生发展趋势及行业现状,从理念、设计、管理三方面实现了以下创新:! A& ^) r4 f4 l: L/ r3 L

5 s, y9 G7 j) j" F' O1.基于云原生的建设体系。以基础设施服务(IaaS)、平台服务(PaaS)、软件服务(Saas)为模型,以自动化部署、自动化运维、自动化交付为目标,建设一个有持续交付能力、高度自动化的研发运维一体化平台。8 T( {7 s) _( T3 L* E* e  A

1 j+ r, m3 Q- C& T$ p2.智能统一的运维管理。平台可为相关业务系统支撑服务提供一键部署、服务扩展、实例伸缩、服务发现、负载均衡等能力。提供了监控告警、日志查询、资源报表等运维管理模块。- R: o4 Q7 z2 V1 V1 u" f! Q
( x& @6 {# V& m2 s3 D! ]% B
3.丰富的DevOps模块。根据业务场景自主开发;兼容了多种代码管理工具,涵盖了编译、构建、部署、质量门禁、滚动升级、自动回滚、SQL脚本发布、服务健康状态检查、消息通知、定时触发等一系列功能,既提升了代码质量、版本发布效率,也降低了运营成本。
. ?4 k8 }: n; }% N) x5 }- G2 z( I% F7 W8 u4 `( X
4.安全合规,审计审核。生产与测试环境物理隔离、网络隔离,生产环境编译强管控;审计方面,平台已实现了操作日志全覆盖,审计日志中可记录用户名、IP地址、修改时间、修改内容等信息,高危操作待指定人员、系统管理员审核后才会生效,进一步提高了平台的安全性。' p' R1 l4 d6 Q' c% k% i

. k2 g& C0 Y$ t& e/ s5 [% {8 @5.易扩展、松耦合。平台所有组件都采用容器化方式部署,容器的多实例配合健康检查、弹性伸缩机制,使得平台层已具备了高可用、自愈特性;各个组件之间完全解耦,便于为应用提供更有效和灵活的服务。
; r; v) z( Z! k: X  K
- B$ c4 s7 X' }  l! N/ X四、项目主要建设内容6 D* k% b* \5 i. E) r

/ _2 k( `  O/ f(一)架构设计9 \! y. Q/ i1 x* J; U

" I2 E8 y% [5 B平台包括六大模块:联邦集群、容器服务、交付中心、中间件服务目录、DevOps、运维中心,每个模块包括对应的主要功能点,系统的整体功能架构如下图:
+ @: M+ l$ Q/ s6 ?8 y4 [0 K: x
- p' m3 s  C, T  r+ c. }, \图1 容器云平台功能架构* q4 o% G+ k+ p6 m8 L" \

( Y" J* ?) n% F9 L/ l(二)建设内容
; Q4 d  Q; ~& q: S% S. K' W) b5 |
6 ]. Z: T" D) ?2 B& ~5 [平台提供多种管理功能及服务:3 S6 r4 `" Y) T- X
1 Z+ {: {, S2 B, j* B
1.统一集群) q* M/ Q0 o7 K8 M1 k3 `) r

" c, g# N7 f" j: `  U实现了单一集群统一对多个Kubernetes 集群的管理。支持同时部署应用到多个集群(联邦集群)。特性如下:+ u+ j) u2 }7 z- W5 J# S2 m3 _4 B  l
$ s6 j. t$ z4 G6 M3 k, _! g
1)在多个集群之间分散工作负载,提升应用服务的可靠性;
6 r* B) M' A2 H/ ]7 @( u
7 Q- p: i* @& B. F# \9 g2)在不同集群中,能更快速更容易地迁移应用服务;8 t+ {' q9 p# R$ d5 I, L- g$ }

( K7 [0 |! |3 K' s& N3)跨集群的服务发现,服务可以就近访问,以降低延迟;, c" r  s/ t( k$ v: W- [

: C! b& G$ u/ E4)实践多云(Multi-cloud)或混合云(Hybird Cloud)的部署。2 X" n, t# D: \3 O& m
  |% o: Z3 v% T) v" K
2.容器服务
4 L! E3 U5 f5 @& i* q: w, z
3 h3 S# u! j; U: [9 s% A2 y( R支持类型多样的容器调度设置,如:通过设置主机亲和性可将容器调度到指定的主机上运行;支持Flannel、Calico等多种主流的容器网络模式;支持对接不同类型的存储资源。
, `4 v- F6 ?- ?+ j. w7 m% x+ H+ V( ?( P: c6 A7 |7 g( F
支持以应用为中心的容器应用管理模式,让应用部署和底层服务器资源解耦,业务方只需关心应用本身,无需考虑底层资源,大大加快了应用部署上线的速度。秒级的弹性伸缩,用户可以设置每个服务的弹性策略,根据资源负载变化,自动调整实例数量,最大限度保障业务连续性,更好地服务敏捷开发、微服务化等场景。& p  a: k$ [0 x0 A7 P$ s
+ G  \5 p" J) D: U8 x
3.交付中心
1 x2 ]- T# |7 Q/ ~4 W& W  Q" y
. \/ Y: N' t: e用于管理、维护镜像版本,其特点是支持保存文件、镜像,也支持与第三方仓库对接。支持镜像模版创建,通过保存的应用模版可视化创建应用,大大地降低了模板的配置门槛。
: I' q9 q# p: S: M" C- o" {. N
3 L4 A6 @( U1 E! ?% o: q. h. l4.中间件服务目录
% c0 |: n* w+ U0 Y5 A* D" ?* F* I2 A; W1 k% x- H; i
提供了数据库、中间件、缓存和流程管理等应用,支持再制定集群资源池,一键部署启动对应的应用,通过部署好的服务目录内应用,提供对应的操作管理,支持启、停、删除等操作。
& ^1 `/ i1 F1 ~$ A1 i. z
" S5 y" x0 e/ ?- A$ J, D! Q5.运维中心9 d( W/ W& z7 E$ ^
0 I# r3 F7 P, k1 @: B- G) `  w
涵盖了资源监控、操作审计、日志管理、告警配置等功能,具备以下特性:3 F9 H  V/ s# M; B$ F8 j

6 s4 i# a' X2 q1)对计算、存储、网络实时监控与告警,帮助项目组合理使用基础资源;
) d# R6 B" L" r
& u2 q/ x3 Q' B( A5 O. o2)细粒度的操作审计记录,支持形成报表;6 N3 A/ x0 J# j3 Z
2 q9 K2 L) d5 X/ w- E+ _
3)支持多维度的日志管理,标准日志与采集日志统一管控,并支持日志清理功能;+ m* H  Y+ |7 B0 P8 c5 u
# F+ O. n6 {% K  i; n) @
4)提供自定义的监控面板,保证多维实时有效监控数据。3 X' n) u. G; c4 _! N
7 K5 J0 Z2 b9 d
五、项目效果
7 x% l% C- ?+ Y! s/ y1 z; y# o, N  I: r2 m
平台已经建设公有云、私有云等多个集群,接入集团、财险、寿险、养老险、健养等子公司下的22个核心业务系统,部署了近2000个服务,近3000个实例。提高了业务运营效率,提升了服务化IT治理能力,满足业务对于IT系统高可用、高性能、灵活扩展的需要,支持大家保险业务的发展,确保IT应用的部署架构以可持续发展的模式演进。
* z9 O( n2 [5 p2 `& L8 F9 f
1 s+ U. C4 `/ h; z( a. @' {六、总结与展望
# Y! e7 @* o4 G7 ^$ n. k1 O6 N
9 T( Z; p5 k% r& X9 R; h% M本项目解决了企业在技术架构转型、部署架构转型、运维管理转型中遇到的痛点问题。部署在平台上的系统在监控、告警、运维、版本发布等方面都得到了一体化保证。在新浪潮技术发展下,拥抱变化、跟随变化,不仅仅是技术上的转变,更多的是职能的转型,传统的单一技术工程师往全栈技术工程师转变,只懂流程的运维岗已经被自动化、敏捷、技术岗位所替代。
9 q! N0 L" l) \9 h
' w- ?7 R# J/ Z4 p' k4 k& H: S展望未来,容器云平台将在大家保险集团的公有云、私有云、混合云的建设中发挥更大作用,为整个集团的深刻转型提供强大基石。
8 S4 r' i  a& I& H, n2 u0 N0 @4 r; a% X$ q& b

作者: tick_tock    时间: 2023-3-20 14:29
原生的容器云平台以其高效稳定、快速响应的特点,相对于传统架构,可以帮助企业更好的应对业务规模的不断增长
作者: fanA    时间: 2023-3-20 14:43
容器云平台的建设不是一蹴而就的:
, G+ h5 r( M& ^1 b0 m    首先我们需要建设一套稳定、可靠、合规的容器云平台;( W& M& I; L  Z! O
    其次我们要对传统架构进行改造,应用、中间件、数据库都要进行容器化改造;
7 o7 B* G5 U0 y3 w( G9 J# E    最后我们将不得不升级技术栈,更好的拥抱云原生,为平台的稳定运行保驾护航;
作者: 445915388    时间: 2023-7-27 09:08
高效稳定、快速响应的特点,相对于传统




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2