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

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

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

扫描二维码登录本站

QQ登录

只需一步,快速开始

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

运维自动化的定义就是数据-事件-流程

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

参加活动:0

组织活动:12

发表于 2017-9-13 11:40:30 | 显示全部楼层 |阅读模式 来自- 广东广州
本帖最后由 monicazhang 于 2018-8-27 11:07 编辑 ) w* R  C" h/ w1 n: a2 ~; `* C

+ C) x2 ~( a) x/ S0 C( E

随着互联网发展迅猛,不同的公司IT基础设施面临的增长和快速发展。从人肉维护,建设到半自动,全自动,由此产生的自动化体系/运维工具越来越多,目前大多数运维IT环境架构主要分为3种技术体系:

% r  K' s. t7 ?8 ]. h# T  L; r, x/ r

1)开源工具


: F0 J% _9 m+ u* e' o9 `" W  d' n

$ b0 ?% K" O- n5 A! p6 W

2)自研发工具(更多的是包含和利用开源软件优秀的特性进行定制化开发)

$ ?: {# z3 Z1 C# a$ o' e9 z" M' o

1 S2 ~/ U+ d9 J) O

3)从0自主研发,底层改造到应用层开发


# r) H% ]  U# G0 n; D) F0 K0 C- ^  b/ Z: j
/ I2 }5 T0 Y) L$ k# ]5 P

开源的代表作有很多,比如:puppet,saltstack,Ansible,nagioszabbix,Docker,KVM,Openstack等主流开源软件。

自研:资产管理系统,发布系统,监控系统,配管系统,工单系统等。

+ {: `$ A7 Z  q. Y+ @

总结:运维自动化已经是成熟的代名词了,无论从网上搜索,还是各大技术分享,都有很多不错的案例和实施过程。但也很多朋友觉得实施起来很困难,复杂,但是看似很简单。困难和复杂:想不通如何把重复性,不可规整/聚合,业务连接成一线枢纽。看似简单:因为有人/其他互联网运维团队实施出来了,实现的还不错,看似近在迟尺。先定义后实施,这个是关键点,想明白才去做,没想明白千万别去做,否则只有推翻重来或者坑越来越多。

5 J1 c" H- x' Z3 |/ w) f# G2 _  c

定义分为三个层面:1.数据的定义2.事件的定义3.流程的定义

  p3 E* Y- z3 h: e( [2 f& P1 d

' S3 f7 N" s; j$ ]+ C( x  X

! ~) ]3 {1 N( E8 c9 V/ s1 E( `0 e

1.数据的定义:


+ a& f. e2 W) F- D: ?3 @
8 k: h. W2 x6 u+ t7 _/ n' v6 e) y8 {7 l! p" q9 g
7 B! H, A* X+ ]5 C6 i

一切的基石基于数据,第一步数据的纬度要设计好:

; Z# O" s# b, M# |8 D

①.机房的定义:比如北京机房,上海机房,香港机房等


2 S9 M7 O7 l3 e4 W

②.机器类型定义:私有云,公有云,物理机,公有云:ali,aws等细化纬度。

' R/ ?1 G, V" B

③.业务定义:比如官网业务,订单业务等纬度细化。


1 f) z, B; b' g0 y- u  G

④.存储的定义:比如根据自家公司的业务和技术体系来设计:


. r  Q* z* b1 _% J( l

比如哪些基础信息是需要的,哪些信息看似可要/可不要的,要做好取舍。

( b# U: `: U) ~+ S. e3 ~

数据存储的信息一定要是展现出来有实际意义的,数据存储不在于多,而是在于价值,繁重的数据越来越多,如果定义很多可有/可无的数据存储,对于一个IT基础资产库来说,也是种负担。

; K% ^0 B7 w, t8 a" t

数据的存储考量:唯一的,有价值的,可维护,可扩展的四个原则。


; o* @3 X! H1 ?7 }- [

⑤.协同的定义:当拥有一份完整的IT基础资产库的时候,只是一份基石,基石铺垫好了,才有上升的扩建空间,数据的标准接入协同分为二部分:

1 t/ f) J5 c( x9 r; s0 l5 f  N$ _# v

1)内部的系统/资源(运维内部的系统)


4 H& e# v* _& ~; W6 w0 \

2)外部的系统/资源  (业务,安全的系统)

, a3 O; B7 J- c* W! ^

内部系统/资源和外部系统/资源对资产信息库的对接关系策略纬度:

) E- I. G; N' d  ]/ ^& W

1.可增加/删除的,初始化类型数据系统/可移除的资源数据系统,比如:自动化装机系统


& L; m" h- p/ B8 u8 E, ?( z# m

2.可获取的,获取的信息纬度哪些类型,比如:发布系统,监控系统(拿到资产信息库的业务类型,组,主机/IP信息等。

1 D$ {9 i8 p4 h% U4 e9 M7 P3 O5 X" [- r

3.可查询的,单条件查询,多条件查询,连同条件查询,比如:安全审计系统,业务类型系统,对外/对内访问IP区分等。


, z$ q8 q  a) p! A

/ l; ^: A. I$ J1 c2 n

2.事件的定义:


5 _" V3 W3 K# v: i
/ I! J3 P) N5 a, r
: ?8 X1 N. y' _6 f2 p3 G1 E6 f+ F4 z( k/ s( }

第一要点的数据定义已经设计好,有了完整规范的数据格式,来定义围绕基础信息库基石上扩展事件。

, O  @1 j: a0 D  @9 Q: [% I! _2 }

事件定义的逻辑方法论:事件设计-事件构建-事件交付-事件数据汇总

9 G- o! \2 K! u( E+ \: Q# B- p

每个自动化操作都依据某个事件场景来实施,实施的策略很多,也需要平衡好优缺点。

3 F) v0 N, v5 M7 H

7 ]. ?5 A0 ~" Q/ F( C3 u  C6 @

1)数据的初始化录入系统,俗称:自动化装机系统


+ Q9 r" Y; V: z. _! F

/ I7 W5 q6 m5 q( Q, ]1 {9 B: ^

自动化装机系统初衷:


# \6 r. p: a. ^% _5 q' M; r0 K7 a% k

1.需要人工重复性操作


0 c0 s6 F% z3 f- S$ ~9 J9 A, r

2.快速交付时间周期慢

4 |- |  `' ~5 B6 \5 c

3.技术提升优势不大

, X) h1 C5 @2 x8 Y3 A# Q, u

4.用事件根据场景来优化

' U6 B5 e2 u' e% }5 l2 [4 j  g4 }

" }0 W9 ]4 s$ e4 `% j) l: z! M

自动化装机系统交付要点(根据不同主机类型来构建事件场景):


9 d! b& o* M$ h; y% i) d6 v7 m

1.物理机类型(硬件层面:不同硬件厂商的类型,比如远程卡,BIOS初始化,RAID阵列自动划分,软件层面:cobbler)


  R! X; @2 H0 W0 C* z

2.公有云类型  (服务商的Api或者SDK接口)

$ o5 A6 H4 f1 a& z

3.私有云类型 (Openstack,Docker,KVM私有云规范的Api接口或者自己构造一份标准的接口).

4 t( H. R3 y# O& a8 Z( p, K0 `! |

4.从类型选择初始化配置-内部DNS数据接入-获取主机信息资源-启动新主机。


9 W5 ?6 I+ T# @

5.数据完整保存,方便以后分析和进一步优化。比如:成本的使用/扩展,业务方机器资源使用率,分析对该事件场景构建优化提升之处。

+ `; O' `, x; Q6 G

3 q- e, s1 k5 F

发布系统,运维日常支持工作占到百分之50%或者更多。代码发布也是运维考核的和支持最重要的一项日常工作。

: |) i& i) ~7 u' ?( I# M. \. L) @

发布环境常用的包含:local,beta,demo,gray,online等


" b9 h0 k9 B9 M1 O3 O! Q

发布的代码类型:混合型居多。


6 ?7 t# x5 i. b: J+ v- ?" g" W

通常情况下,人肉支撑的耗时,重复性,自检成功/失败发布,排查故障周期很长。尤其是对于重要业务平滑,耗时的情况更多。

而发布系统满足重要的三个因素:


2 l3 J/ }4 M  ~* n, R+ {7 D

1.自动无损平滑发布(支持多种负载均衡策略,发布代码不重启服务策略,环境组主机流量自动切换)和可视化实时过程/结果查看。


1 n+ e2 x) J+ Q7 o6 h

2.稳定,并行的构造多环境/多业务发布,即使某个业务出问题,对于整个发布平台/其他业务发布也是无感知,无影响。

/ P& ^% F& e7 o$ K

3.权限,安全隔离,完整的审计功能,让研发自助的发布。

* P. U% o! w7 }; D

4.数据的完整保存,分析目前业务发布测试/迭代,资源调度率,发布时间点,全年发布优化指标等。

- T0 B1 B& ?8 ]  ^( K

总结:以上就举2个事件场景构建的案例,一切事件构建皆为场景,场景的价值在于数据是否帮助/量化,改进业务层面/运维层面的持续增长/交付。


; [, a- k3 X1 v4 q$ L0 \


$ R- a- Z% T* p8 n0 Q, h$ d4 ~$ G/ K

3.流程的定义(一切入口,规范,从流程抓起)


& [2 i0 Z' z( p% I+ p1 C
. S2 S/ p, B2 v) Y1 ?1 L! X5 ~. h: k8 ?
4 Y' V' R6 q! V. w& l- U

为什么最后才是流程,因为在没有数据做基础铺垫,事件场景构建,一切谈流程都是空话,虚拟的。


! x: R  ~: T* i8 x" @* v0 I

流程基于实施的要素:


0 ~: ]8 U+ c0 d6 l! Z

1)基于一切数据+事件的入口配置

3 t! x  _+ b* t1 [2 z

2)流程不在于复杂,在于易用,快捷,可塑造。


3 b7 X1 ~# r1 }% ~: r+ \

3)源地址-目的地址全部过程保存,可追踪。

  N+ @& X; ]$ r


! z3 W- W( u0 I* V# \) T/ t

自动化价值:

7 r& D6 M( O$ {$ }& K

1)价值性产出:站在业务/团队角度去思考,不追从完美产品方案,只选择合适的产品方案,同时在一定程度上做好取舍。

6 ?! O3 o+ W- O

2)从小而做到细,从细扩展到大,才是本质。


3 P! j1 H$ q  ?6 [! S' H3 ]

3)  自动化产出一切为数据,对数据定义要设计好,宁愿设计周期长些,也不要盲目实施。

+ B0 y+ Z+ o$ f2 f# G

原创:符杰超


' F7 ?2 _/ \: b) g

本版积分规则

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

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

Baidu

GMT+8, 2019-3-25 20:58 , Processed in 0.234488 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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