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

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

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

扫描二维码登录本站

QQ登录

只需一步,快速开始

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

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

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

参加活动:0

组织活动:0

发表于 2018-11-18 15:47:57 | 显示全部楼层 |阅读模式 来自- 广东广州
本帖最后由 adminlily 于 2018-11-18 15:50 编辑
2 m  k8 O0 M; D9 N
  X8 [/ \0 h/ |- r. B/ ~, ?
1.png

' q7 H- P6 g# S5 G3 x9 A' ^* o# h
武林前辈练就此功以克西毒蛤蟆功,小辈独自修行DevOps六脉神剑,只为在互联网圈求得一席之地,时而克制开发人员的挖坑综合征。
& J* Q  b5 ?' |

3 O: d$ O3 ~1 R8 O6 @
此处的Devops六脉神剑就是鄙人自己理解的、我们自行研发一个具备物理部署和容器发布应用的双模式平台。从管理配置底层基础设施、到环境配置隔离、经过应用版本管理达到应用正常发布,到一体化监控整个系统正常运作。
" `1 `4 J! c. v# @" m. R- N

+ n+ Z- J* Z% m7 u& q! P& `" H
第一脉
" }% ]  p: M  K2 D( O, n4 w4 ^

5 x: r+ P! P& p* c, Z8 f
混合模式核心经
/ {, O; ?3 O* J% z

  @3 W3 ^5 a) J! _
此乃神剑之核心思想,打通开发工程师任督二脉,有一个清晰轮廓,方便规划时间,制定开发工作计划。
% E% ~- f- G+ ?7 w
3 H9 r$ {3 w4 w6 r* h
此脉起于物理机群,出属于一线运维,向上出发,到达我们的双模式应用管理平台管理领域。

% g4 ^: \  L) J" V9 X/ f7 Y+ @

5 G" i" U" o! ?: a+ L
总体架构如下图所示:
  ]$ z) |1 s$ W  T; j
# h6 q8 [+ S+ X& p
0?wx_fmt=png.jpg

* X# I) S1 @2 Q5 O) q4 U1 m
. C) f1 w; v1 y
在容器版本的基础之上基于Docker Build-Ship-Run的核心模型实现向物理部署模型映射,实现容器和物理的双模式管理。

1 _% P6 F4 I. A, M; r7 r0 s8 D6 n
2 ~: w3 ~- F8 s" J. i
第二脉
# L! P7 g  F" Q  i0 X' i
$ E/ l* i. D* X/ Y
基础设施管理经

3 M- D1 ]$ [+ `2 [3 R- \# R% A' r
# |6 C9 h& C" ]
从核心经出发,了解底层物理主机的配置,做好环境准备工作。从双模式出发,将容器和物理部署通过分支实现过滤选择。如下图整体流向处理。容器模式则选择容器方式处理;物理方式即为物理部署模式。
) Z. K7 M4 b! S. v
, ~6 k& S. q* c' v2 |% Q
0?wx_fmt=png.jpg

, }% \' S- N8 D6 b) w7 Y
  P5 c3 h5 w6 Z$ d

/ s: b! d$ i" d# H! D0 ]
第三脉

4 Y% p, P& Y4 d& s
+ q5 i; I2 J/ R! e$ ]
环境隔离经

5 F* x- @2 k$ Z/ c8 L

4 i9 P- x- [, _4 {
无规矩不成方圆,环境隔离可以理解为不同生产之间都需要一个安静的空间自己运转。此脉可以引用博云公众号中“环境定义下,软件的生命在哪里?”来解释,一种独立物理(逻辑)分离。此处不是懒得写明,可以理解为另一种方式的宣传,这就是团队,从文章宣传做起。

- V" x% H5 Q6 Q

8 [6 d. Y8 r. {" k( j* H
第四脉

" I& H" o" g2 n" r+ g; e$ {2 I1 ?, B( C/ D5 c7 T
应用版本管理经
1 c+ X! t- q1 w9 f+ _

& X6 A8 w" T( I* h% T) M
定义完物理和容器仓库之后,在应用版本管理时也按照两种部署方式来管理应用版本。不同模式下,使用不同的仓库来进行版本发布。
0?wx_fmt=png.jpg

. ?* D8 A9 n( ~( \/ a
) W, P, N* @6 M! x

7 j& I- ~' W! @1 v1 I2 d* e9 T, f; D$ ^5 u" `9 z. a# K
第五脉

$ ]. x/ A8 {4 `, {: l3 O" `* [$ i( J7 i
应用发布经
! `1 A1 z8 i+ {3 R( u

7 j/ F9 J9 B; E( n
前面基础部分做完之后,需要为应用做准备,这也是底层准备的终极目标——应用发布万无一失。混合模式下,如何将应用发布做到准确无误呢?依旧采用示意图的方式来做个说明。

4 Z) \( V2 ^; d) S! @; N2 c

; C  d9 G" p% z, P5 h! i- `  r( s
0?wx_fmt=png.jpg

- [8 Q% Y, {9 F! S

6 j* R( V9 B6 d/ v  s1 w* L# o! E
, d- v( F6 w# R1 n6 f
正如上图所示,容器和物理模式下的发布要根据各自特色走不同的发布路线。
" ]0 H% H% }( e9 R1 M$ i

% U4 o+ z# b! Q
第六脉
. M; b$ N! a# l( l) j
% f1 r6 F/ Y2 ?: I% H
一体化监管经
- p7 h3 d0 i8 Z# }5 h$ j
  ~8 u; [& _5 x5 E0 M
前五脉打通之后,对整个系统进行监控这就是第六脉的精髓所在——zabbix

  w4 W4 ?0 u+ k2 _: u2 l0 A' z& `
1 a( z. s4 r( D! k$ I
Zabbix是一款规则驱动,具有数据过滤能力的开源企业级监控方案,此处主要围绕数据采集优化和Zabbix性能优化配置展开。
2 x3 h. E# I' Q
$ J3 H# _& j" m( n/ b; a/ }
0?wx_fmt=png.jpg

5 S8 S9 `- o3 T# y  _: p  g

) |! U( t/ }- p( `
优化配置操作系统和Zabbix参数可支撑不少于百台物理节点、万条级别监测项。其中,数据合并自主研发,采用Agent主动向Zabbix Server发送机制。
3 I8 o/ o' n3 J7 ?
2 d4 w: F- X; z- E& a- I$ b& V4 p
0?wx_fmt=png.jpg
5 `, ?+ ^) s! n
5 k; X$ C" n  y6 k5 Y
7 r' V. v: S: N/ q
Zabbix可监控物理机、容器、分布式系统和应用。其中,对容器、分布式系统(Redis、Zookeeper、ActiveMQ)监控采用数据合并优化策略。平台web界面监测显示通过后台获取zabbix监控数据来显示给用户。
( e/ t+ f% _% n. e! |
9 Y  F5 I8 V; |% f  n
下图为Zabbix监控整体结构图:
! G, g( e  ]. r( F- n
! J% m- v# x# T/ r
0?wx_fmt=jpeg.jpg
! a4 j1 h5 ^% d* \, [  O) H
   
                     
到此,六脉神剑讲解完毕,从最初的功能完成,通过测试,到最后和客户沟通,检验是否达到了DevOps的设计目标,才能算是完成“六脉神剑”的一轮修炼,而经过一轮轮的修炼,才能练就一套能够经受住实战考验的神功。

$ O  F% z1 _2 i4 D1 V/ L  H! z
' C5 l/ E! v4 a8 ^* a4 t
此六脉只是个人疏浅的理解,还请各位IT大神赐教。另外,尤其感谢吴恒师兄的指导。
, d. s$ @1 O) H2 g/ v* P, R
" y7 o2 k+ a- D9 p- H# ^4 e
原创: 王雪晴
7 R$ r/ z1 T- B- e) w) r3 B0 r  R

本版积分规则

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

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

Baidu

GMT+8, 2019-2-24 14:10 , Processed in 0.243256 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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