请选择 进入手机版 | 继续访问电脑版

IT运维管理,ITIL,ITSS,ITSM,ISO20000-ITIL先锋论坛

 找回密码
 微信、QQ、手机号一键注册

扫描二维码登录本站

QQ登录

只需一步,快速开始

艾拓先锋
搜索
查看: 338|回复: 0

程序猿成长日记之独自修炼“六脉神剑”--Devops篇

[复制链接]
来自- 广东广州

参加活动:0

组织活动:0

发表于 2018-11-18 15:47:57 | 显示全部楼层 |阅读模式 来自- 广东广州
本帖最后由 adminlily 于 2018-11-18 15:50 编辑
7 b  i4 @4 s0 V: z: [" V
' t* s2 s" r( T. F" ]5 c8 m+ ]
1.png

0 @/ v* o4 S6 r* Y- m  [2 f
武林前辈练就此功以克西毒蛤蟆功,小辈独自修行DevOps六脉神剑,只为在互联网圈求得一席之地,时而克制开发人员的挖坑综合征。
! V( N/ p# d9 G& }: U! I- ^

- X: S% u4 y: e* h" g$ C! n
此处的Devops六脉神剑就是鄙人自己理解的、我们自行研发一个具备物理部署和容器发布应用的双模式平台。从管理配置底层基础设施、到环境配置隔离、经过应用版本管理达到应用正常发布,到一体化监控整个系统正常运作。

( M+ |+ [) s& b. u1 M2 j' Z2 l( C5 W

& G; ~, o- B5 @* ?& R6 E
第一脉

6 X  K( w2 o7 S4 B* R

# R2 \1 ?: J- r% c5 g, b
混合模式核心经

5 ^& F1 v0 m! u5 j0 C5 U

0 j1 y- z5 z" N  g
此乃神剑之核心思想,打通开发工程师任督二脉,有一个清晰轮廓,方便规划时间,制定开发工作计划。

2 p: T( P9 w" X5 a

7 D! ~; ]0 k: Y9 X1 u
此脉起于物理机群,出属于一线运维,向上出发,到达我们的双模式应用管理平台管理领域。
: i5 X. Z! D! y) Q

' C& D! V3 j! b: Y0 _  o7 y
总体架构如下图所示:
: @5 y+ s8 w: `9 v) t2 P
: O; r, o. r* T. ]
0?wx_fmt=png.jpg
5 d% r7 O) s$ z+ D4 g

2 D  _& R$ Z' K% w' {/ b  t* T
在容器版本的基础之上基于Docker Build-Ship-Run的核心模型实现向物理部署模型映射,实现容器和物理的双模式管理。

  r: y3 C5 |. |* m2 }6 U
: s$ o5 Y& I$ D4 B1 ?: z: T
第二脉

) n) r) l. s& I' B/ X3 o
8 Y/ ?0 _1 |, |. ?9 Q
基础设施管理经

' p, |/ |3 l# S8 ~) s
; l2 T( `3 b4 }" C
从核心经出发,了解底层物理主机的配置,做好环境准备工作。从双模式出发,将容器和物理部署通过分支实现过滤选择。如下图整体流向处理。容器模式则选择容器方式处理;物理方式即为物理部署模式。

: L. Y  g2 T" f

/ l2 [0 v7 j8 S* |' b
0?wx_fmt=png.jpg
6 `0 J5 n0 u7 r
% i9 t9 k  n8 B" f! p
8 a8 H3 \- L5 F) j* {  B
第三脉

1 w2 Y# u6 q* J# q4 x! D/ ]0 }( V+ @8 O' J% ], ~
环境隔离经

( w6 ], S; o6 L( o/ M/ O! k! u

7 N+ T1 ?7 m6 J6 |
无规矩不成方圆,环境隔离可以理解为不同生产之间都需要一个安静的空间自己运转。此脉可以引用博云公众号中“环境定义下,软件的生命在哪里?”来解释,一种独立物理(逻辑)分离。此处不是懒得写明,可以理解为另一种方式的宣传,这就是团队,从文章宣传做起。
; f# }8 Z( j: |' Z, n( n. C" p6 t
- ^/ T& ]3 S, J) ^; g
第四脉

- C- l5 w' X- X, x; m1 f5 S, `9 s% R
应用版本管理经

& p: h* Y# l; [, `
7 L* ]3 z5 v) ?5 j' v  b+ u
定义完物理和容器仓库之后,在应用版本管理时也按照两种部署方式来管理应用版本。不同模式下,使用不同的仓库来进行版本发布。
0?wx_fmt=png.jpg

: ^8 v9 v  Y) n4 R) o- A
4 Y7 o. d2 M6 s$ P( Q' W' U  }1 `
" _0 h) R$ U1 F' n) F; A

! `5 s- j! X5 ~# H/ `8 R
第五脉
8 j3 }8 H# F# R9 J+ K4 e- u

% j! I: l4 l1 h8 h' d: ^- Z$ ]
应用发布经

) W7 B5 [6 G* Q
. L+ N' E# ]+ t& }* G3 |
前面基础部分做完之后,需要为应用做准备,这也是底层准备的终极目标——应用发布万无一失。混合模式下,如何将应用发布做到准确无误呢?依旧采用示意图的方式来做个说明。
& P0 o8 Q/ n! N8 y+ G5 `/ r
- G( j8 X% _3 [; ^# ~" C
0?wx_fmt=png.jpg
8 H: N! }' F* p' F1 U
+ y1 t8 Q# O: K9 c

/ o/ c9 m0 c0 |& P: |- q
正如上图所示,容器和物理模式下的发布要根据各自特色走不同的发布路线。
' D. ]+ Q" p, X

+ c2 M+ @1 L6 i: o* q! U  Z. P) Q
第六脉
6 g0 b9 `" Z: _7 U( T

$ V. n$ B, }0 j
一体化监管经
: N' ^- I+ e/ A
! e2 ]3 H& e# G& f3 G: R/ p% f
前五脉打通之后,对整个系统进行监控这就是第六脉的精髓所在——zabbix
- h, P7 k$ F. V$ \9 x; x! x, |6 S
9 k/ a  O6 i) X* Q
Zabbix是一款规则驱动,具有数据过滤能力的开源企业级监控方案,此处主要围绕数据采集优化和Zabbix性能优化配置展开。

% `4 B1 t" R6 [

, `) j0 W) N* K: S) [2 j7 z5 v+ p! D
0?wx_fmt=png.jpg
5 j, @* K$ |3 @3 s' l

* Q! ?0 _; W" V- ]7 W
优化配置操作系统和Zabbix参数可支撑不少于百台物理节点、万条级别监测项。其中,数据合并自主研发,采用Agent主动向Zabbix Server发送机制。

- }, {4 V9 A! t$ E0 M

8 R: Q9 B* M/ t. f- C8 R9 B2 K
0?wx_fmt=png.jpg
" s5 x9 e9 N$ P: Y5 A3 u8 |

# @6 u* n* W3 _+ |+ T- Q4 G# y

1 ~7 }- l3 I1 e# L4 f' w2 K
Zabbix可监控物理机、容器、分布式系统和应用。其中,对容器、分布式系统(Redis、Zookeeper、ActiveMQ)监控采用数据合并优化策略。平台web界面监测显示通过后台获取zabbix监控数据来显示给用户。
4 E- z7 k1 ?: B, Z# T/ D
  w" `" t/ q2 Q
下图为Zabbix监控整体结构图:
3 j# C9 T: o+ }+ S
* \6 k3 @" Q. g( R  F. V0 X
0?wx_fmt=jpeg.jpg
# L8 [: q7 o: }2 L, V" L
   
                     
到此,六脉神剑讲解完毕,从最初的功能完成,通过测试,到最后和客户沟通,检验是否达到了DevOps的设计目标,才能算是完成“六脉神剑”的一轮修炼,而经过一轮轮的修炼,才能练就一套能够经受住实战考验的神功。
3 A2 w" _: y$ C1 r9 w1 J( L
. t/ N) k( z+ a+ m; I& _: U) C
此六脉只是个人疏浅的理解,还请各位IT大神赐教。另外,尤其感谢吴恒师兄的指导。

4 n5 y9 M* }2 E) q8 f6 }8 b
3 O* Q4 D5 g+ Q  |+ R. l! G( m
原创: 王雪晴
7 Q# T( @0 V3 m% |5 T5 g3 f

本版积分规则

选择云运维时代的王牌讲师-长河老师,助你轻松入门ITIL Foundation培训课程

QQ|小黑屋|手机版|Archiver|艾拓先锋网 ( 粤ICP备11099876号-1|网站地图

Baidu

GMT+8, 2019-4-25 00:53 , Processed in 0.197796 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表