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

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

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

扫描二维码登录本站

QQ登录

只需一步,快速开始

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

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

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

参加活动:0

组织活动:0

发表于 2018-11-18 15:47:57 | 显示全部楼层 |阅读模式 来自- 广东广州
本帖最后由 adminlily 于 2018-11-18 15:50 编辑
0 C2 K% X: d9 @" A' m
9 U  H* f& w: {/ E0 n
1.png
9 N: y9 [/ J7 r
武林前辈练就此功以克西毒蛤蟆功,小辈独自修行DevOps六脉神剑,只为在互联网圈求得一席之地,时而克制开发人员的挖坑综合征。

7 O! h/ o! Y% E7 L5 B

/ O3 B( `5 d- E  ]% G2 ~1 j
此处的Devops六脉神剑就是鄙人自己理解的、我们自行研发一个具备物理部署和容器发布应用的双模式平台。从管理配置底层基础设施、到环境配置隔离、经过应用版本管理达到应用正常发布,到一体化监控整个系统正常运作。

$ _# J: P: R) Q8 w' n) p+ A

: v; I/ A1 m0 u. v
第一脉

& s: y" c% G& {6 q
2 Z0 t; Y* Q  C9 F& y+ ?$ W
混合模式核心经

3 F, D+ z, Z9 ~

9 u- n3 v3 z0 T0 K4 E# n/ d! F
此乃神剑之核心思想,打通开发工程师任督二脉,有一个清晰轮廓,方便规划时间,制定开发工作计划。
! E$ t. \& o/ Z2 X6 W

9 f4 G& v6 M; v# ?) B
此脉起于物理机群,出属于一线运维,向上出发,到达我们的双模式应用管理平台管理领域。

: D3 F) c5 d. ~

: F- i0 A, o+ N' ~
总体架构如下图所示:

/ O/ E+ {6 b  T
4 f  {% @* U& q9 ]
0?wx_fmt=png.jpg

6 ]: f3 s. O  K/ ]

" S6 U) G# B+ \- t& p
在容器版本的基础之上基于Docker Build-Ship-Run的核心模型实现向物理部署模型映射,实现容器和物理的双模式管理。

  F; N  \' [8 E( h; l1 F; s
" p2 {, n/ G3 Y+ A
第二脉
5 K% T2 }8 W4 @4 Y" Y
# F' ~' V, P  N
基础设施管理经

1 e) Z2 v3 e( s* h2 `5 z6 _7 V

: Z9 n( U5 V& }* K
从核心经出发,了解底层物理主机的配置,做好环境准备工作。从双模式出发,将容器和物理部署通过分支实现过滤选择。如下图整体流向处理。容器模式则选择容器方式处理;物理方式即为物理部署模式。

6 v( t" i+ ]& q
( u/ w* k- [! _( o1 E( U& Z& W
0?wx_fmt=png.jpg

3 N: M; [# q* X! ]+ k, Y; ?5 Y
% [; ~6 V3 N& `. ?$ O+ i

8 I( y$ Y- T( a9 Z
第三脉

2 [; Y6 e6 Y: A0 J2 `: Z& C! U( T0 x5 U. P5 i
环境隔离经
1 n. R/ ~) R% i  E
" c; a, \6 ?2 n* D: m
无规矩不成方圆,环境隔离可以理解为不同生产之间都需要一个安静的空间自己运转。此脉可以引用博云公众号中“环境定义下,软件的生命在哪里?”来解释,一种独立物理(逻辑)分离。此处不是懒得写明,可以理解为另一种方式的宣传,这就是团队,从文章宣传做起。

7 S0 t. \4 k/ b( A' N3 |

+ |; X/ M; K+ b7 w! M
第四脉

  V, P. P* S4 a6 m+ s
( x( K! _, R: ?9 _+ y, N
应用版本管理经
5 @4 b" \& U3 ?: Z+ Q! U0 a" J, f
3 v/ z  F% ]) J, c5 t. k
定义完物理和容器仓库之后,在应用版本管理时也按照两种部署方式来管理应用版本。不同模式下,使用不同的仓库来进行版本发布。
0?wx_fmt=png.jpg

/ v, ]# k6 `4 s
3 J( }2 m% h  z! y( x
$ g+ B% u, Z0 a

2 s& a" {: `9 W& u8 |& x7 N! f
第五脉

) [4 ~  d9 ~. \0 ?2 i. Z  a3 x9 f8 t: z/ V* s- y
应用发布经

1 @3 E: R- x" u2 z$ ?( [

4 K: W* S/ q6 @" g+ `! ^
前面基础部分做完之后,需要为应用做准备,这也是底层准备的终极目标——应用发布万无一失。混合模式下,如何将应用发布做到准确无误呢?依旧采用示意图的方式来做个说明。

4 x# R5 G- K* s% r
% g$ r  |4 |  t. p, R
0?wx_fmt=png.jpg

- ~- @* I( m1 t* S
; H6 c' ^0 B" I. G6 W
' c6 M0 I/ N5 K  z3 X9 I5 a
正如上图所示,容器和物理模式下的发布要根据各自特色走不同的发布路线。

1 h, t+ R* x" b! H' ]# A9 f; g/ {9 n
' i! X  y% f" _; B0 y
第六脉

7 C* t; p( ]% e; Y+ E4 m% W
& d4 h! c0 d& Y# V: X  `- K- {
一体化监管经

: [9 @9 Y1 m7 o" K
$ f) e7 N( U" ?) @, g
前五脉打通之后,对整个系统进行监控这就是第六脉的精髓所在——zabbix
9 s, P' ]: g/ y$ d& O

! j% ~. r$ q8 `4 w7 c: E  K
Zabbix是一款规则驱动,具有数据过滤能力的开源企业级监控方案,此处主要围绕数据采集优化和Zabbix性能优化配置展开。

& n  W' M( i4 C$ }

3 }* C( A9 I$ \; |, L
0?wx_fmt=png.jpg

/ o- G9 x- I' ^
8 d* F: K8 ^6 C' B' F; o$ p$ \
优化配置操作系统和Zabbix参数可支撑不少于百台物理节点、万条级别监测项。其中,数据合并自主研发,采用Agent主动向Zabbix Server发送机制。

4 Y( |; {, N. W" C9 y" Z

/ y8 F6 r0 S0 t+ L4 d9 R  s, Y0 ^9 H
0?wx_fmt=png.jpg
3 q) B$ X4 B3 r3 @5 W! o9 k7 c
. ]$ G! c+ i4 \4 r( n

' n- L7 Q% v6 S, O
Zabbix可监控物理机、容器、分布式系统和应用。其中,对容器、分布式系统(Redis、Zookeeper、ActiveMQ)监控采用数据合并优化策略。平台web界面监测显示通过后台获取zabbix监控数据来显示给用户。

! ]9 F' ]2 l8 {: \* B. p) C# T
8 I) Q3 _+ D% p. h4 ?) W1 R' a) z3 e
下图为Zabbix监控整体结构图:

+ `5 R! {' n, F! y
( ?, X, q1 G* I2 x5 X3 D$ A
0?wx_fmt=jpeg.jpg
3 I& I+ Q  k8 S  ]& o0 H9 J
   
                     
到此,六脉神剑讲解完毕,从最初的功能完成,通过测试,到最后和客户沟通,检验是否达到了DevOps的设计目标,才能算是完成“六脉神剑”的一轮修炼,而经过一轮轮的修炼,才能练就一套能够经受住实战考验的神功。

: I! g/ K' s" a1 M: x
5 A$ \) B" J1 N' j
此六脉只是个人疏浅的理解,还请各位IT大神赐教。另外,尤其感谢吴恒师兄的指导。

* [7 c$ s) n: g; R5 t; j  M
; \9 N* z  s) E) a
原创: 王雪晴
0 m7 X; G& w$ A8 O( r/ q1 E

本版积分规则

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

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

Baidu

GMT+8, 2018-12-15 20:35 , Processed in 0.229610 second(s), 33 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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