找回密码
 注册
查看: 3883|回复: 1

saltstack自动化运维快速入门

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2017-12-24 21:17:55 | 显示全部楼层 |阅读模式
购买主题 本主题需向作者支付 2 金钱 才能浏览
匿名
匿名  发表于 2017-12-24 21:27:15
一,原始方法
例如,需要在salt id为10.1.1.1-centos.game.web的服务器上部署mysql,版本号为5.5.25,实例有3个,3306,3307,3308, 正常情况下的流程是这样的:
1,在/srv/salt/top.sls中添加配置信息,确保mysql对应的配置被加载

7 E$ X0 N* m$ j- v
1

  D$ d0 W  D$ o. U% G
[color=rgb(194, 194, 194) !important]2
1 @$ z1 ~3 {7 n4 B% A
3
$ }" i% i& u9 L. I

1 ]: o1 A8 X7 o2 B& y$ y* B* J8 _) ~
[color=rgb(189, 183, 107) !important]base[color=rgb(218, 218, 218) !important]:

9 B* P$ _) w; Z. R
[color=rgb(0, 111, 224) !important]  [color=rgb(231, 163, 122) !important]10.1.1.1[color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]centos[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]game[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]web[color=rgb(218, 218, 218) !important]:
- W# ]4 J3 Q: V5 {$ x
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]centos[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]public_services[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]mysql
, V+ B9 Z( p! F! Z/ w: [

* q3 {# n2 Q# m

8 i5 m8 N6 x/ m% p* l; m

. c1 m, }1 J9 P
2,在/srv/pillar/top.sls配置minion对应的sls文件位置(ps:salt文件中不能再带".",否则会报错)
& o# T# Z/ @- H
1

2 b9 b% I6 b; W" d2 \) g  x
[color=rgb(194, 194, 194) !important]2
! n, B# e! h$ Q2 F! E
3

4 k3 k1 m$ M, X7 I+ r! ]
' |3 W" w/ O! _/ m' y) ~2 t
[color=rgb(189, 183, 107) !important]base[color=rgb(218, 218, 218) !important]:

6 ?4 Z. y3 O7 _, h
[color=rgb(0, 111, 224) !important]  [color=rgb(231, 163, 122) !important]10.1.1.1[color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]centos[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]game[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]web[color=rgb(218, 218, 218) !important]:
# x- n5 o' S5 {
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]custom[color=rgb(216, 216, 216) !important].[color=rgb(231, 163, 122) !important]10[color=rgb(218, 218, 218) !important]-[color=rgb(231, 163, 122) !important]1[color=rgb(218, 218, 218) !important]-[color=rgb(231, 163, 122) !important]1[color=rgb(218, 218, 218) !important]-[color=rgb(231, 163, 122) !important]1[color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]centos[color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]game[color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]web

8 t) W5 B- l* ^& k1 v
0 A4 S7 _/ e# U+ Z! }& f8 W
5 Y- {2 [7 i$ I' t' B

1 U8 E" |8 p0 v% \4 a  ?- u1 ~" b
3,新建/srv/pillar/custom/10-1-1-1-centos-game-web.sls,内容如下:

6 A7 G3 v1 D& p$ b8 W/ Q# s
1
# M2 g/ h+ i( l$ g  M+ t
[color=rgb(194, 194, 194) !important]2

, F# |  w& P5 P, T$ |; B" _: W
3

* d1 W' M% d1 f# S: `3 G  f
[color=rgb(194, 194, 194) !important]4

& ~' ?8 q3 k0 n$ A) @
5
( `9 H7 ~7 P2 W
[color=rgb(194, 194, 194) !important]6
2 A" e3 I2 ^* I, j+ N& U6 W' E
! C& m& Q9 y5 b2 |; Z# C. w
[color=rgb(189, 183, 107) !important]mysql[color=rgb(218, 218, 218) !important]:
- a! Q0 n6 \: I7 |: F2 M6 H: I
[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]ports[color=rgb(218, 218, 218) !important]:
# R: j6 s7 K- I. h/ c6 l. ^
[color=rgb(0, 111, 224) !important] [color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]3306

# }' I2 v; [- H8 @# G
[color=rgb(0, 111, 224) !important] [color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]3307

/ H" Q- z! e7 F% K
[color=rgb(0, 111, 224) !important] [color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]3308

5 j6 c: C( M# H, L0 F% C
[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]version[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(214, 157, 133) !important]'5_5_25'
1 X. N$ \4 S  W4 T/ E6 Q( M

( G! i# T) P+ O- G, U- Z" @
6 M6 }- |9 X& g9 m( S
& B& M* {* a( O+ M6 H# N5 ^; q, ]  m
4,执行同步命令
2 c' Y  a7 ?, C* s% W5 f* M
1
2 l9 Z  y2 o5 Z3 c# T; D2 K$ s

4 M, Q, H: l7 X3 a: r5 y# U2 a5 T
[color=rgb(220, 220, 220) !important]salt [color=rgb(231, 163, 122) !important]10.1.1.1[color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]centos[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]game[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]web [color=rgb(189, 183, 107) !important]state[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]highstate[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]v[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(220, 220, 220) !important]t[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]300
6 C7 ^5 [$ k2 y; F4 e
9 M/ ^3 l3 \' `! g; l# F
0 C+ v& r6 l  Z. d! ]2 R
+ \- H, G* [2 n$ `* l
二,改进方法0 F" [5 X% V+ Z7 w7 R2 S
oh,shit,说好的自动化呢,怎么还要这么多步骤,这可不行!3 D# r! X- g$ B* m
利用py模式的sls配置文件(其实就是python脚本,只要返回yaml格式的字典文件就好了),我们可以将以上的操作简化成1步,思路如下:* T, F  H# p! q0 z+ y1 K3 _
1,/srv/pillar/top.sls中编写配置:
9 l' n+ E% R1 Z9 C6 q5 z9 I( e
1

3 T& [) y* _. g( c
[color=rgb(194, 194, 194) !important]2
; S" g( e+ u7 s5 p' j6 s* C
3
6 ^7 F4 U9 n* Y" ]2 h/ y+ h

; l/ Q% P# a* j0 x
[color=rgb(189, 183, 107) !important]base[color=rgb(218, 218, 218) !important]:
5 j- }( u0 n3 R, W
[color=rgb(0, 111, 224) !important] [color=rgb(214, 157, 133) !important]'*'[color=rgb(218, 218, 218) !important]:
% ?  {; u3 ^: D6 _' {: W
[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]custom
- ^. W5 ^' A5 [% q3 v
# U: |) V. j/ r. G. `

* [/ d8 }, R; r+ Y7 S
; _( Z2 Y5 g: {1 U
2,使用py模式编写/srv/pillar/custom/init.sls,自动读取pillar配置,例如salt id是:10.1.1.1-centos.game.web,那么project为game,然后根据获取的pillar_root组合成路径/srv/pillar/custom/game/10.1.1.1-centos.game.web.yaml,利用yaml模块从文件中读取信息,返回字典
8 W; ]  ]- O, I' y2 r9 @3,在/srv/salt/top.sls文件中匹配所有的minion
% s6 W# g* x3 @9 q
1

' b% x3 F0 Y9 P
[color=rgb(194, 194, 194) !important]2

+ i5 W; t3 a6 Z8 x  O) u

8 U' u/ |/ L+ s$ L
‘[color=rgb(218, 218, 218) !important]*’:
; g, v; s- A1 _
[color=rgb(0, 111, 224) !important]  [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]centos[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]public_services

: |0 |% O4 n, P9 W+ ?

4 Z6 {, O  S: u& E

! e& u; H: ]% |. t
( p: q- P( H$ k/ U" o4 D1 @. ~
4,/srv/salt/centos/public_services/init.sls文件使用py模式编写,配置会获取对应的minion的pillar信息,如果包含mysql配置信息且配置正确的话,则返回mysql实例的配置。
那现在要怎么使用呢,很简单,例如你的id为10.1.1.1-centos.game.web,首先在/srv/pillar/custom/目录下建个game目录(从salt id获取的项目名),然后在game目录先新建文件10.1.1.1-centos.game.web.yaml,里面写上配置信息:
( G) C# c: H: ^/ Z" U/ _
1

+ N, s5 A6 @+ X  E6 s0 B
[color=rgb(194, 194, 194) !important]2
% y; v/ n  V. K, y  @
3

  \" ~# C/ e  b) h. `
[color=rgb(194, 194, 194) !important]4
' D5 K# X2 n* T0 g6 J" |
5

1 p+ ^1 U4 }+ b- k3 d0 q
[color=rgb(194, 194, 194) !important]6
0 e+ E$ D" ?9 q  L
7

  ?8 @! u( O1 D( H0 x
[color=rgb(194, 194, 194) !important]8
: I& t& J& H. Q' e

5 c- \' D( n. C& U
[color=rgb(189, 183, 107) !important]mysql[color=rgb(218, 218, 218) !important]:

0 }1 A0 i  {% l  G# v
[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]ports[color=rgb(218, 218, 218) !important]:

  z  ^, I5 ~  k% o
[color=rgb(0, 111, 224) !important] [color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]3306
% }3 m9 S/ y5 Q8 R3 u) t+ F
[color=rgb(0, 111, 224) !important] [color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]3307

1 W9 }6 d8 K' `+ S* A
[color=rgb(0, 111, 224) !important] [color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]3308

! l: v1 ^9 X8 ?* t- R7 S3 C3 P8 ?
[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]version[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(214, 157, 133) !important]'5_5_25'
7 s& F! W( M3 d, f

" F& b* c7 p5 u& F) \7 H& ?" j
最后执行命令[color=rgb(218, 218, 218) !important]:

# Y9 e% J9 T- j. ^
* P% R2 l' u1 R' R

% ~9 A6 V* |" q; F' x% D
. Y; J" g; K2 I' ]3 N

# F' |9 ~& ^* h& V# c* y8 z# L
6 q7 J' q  `. j4 s% d& i4 E
1
3 R4 H: M5 P$ E1 Y5 z1 k9 A

, @5 O7 V9 I2 u+ @1 z$ f+ d
[color=rgb(220, 220, 220) !important]salt [color=rgb(231, 163, 122) !important]10.1.1.1[color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]centos[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]game[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]web [color=rgb(189, 183, 107) !important]state[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]highstate[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]v[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(220, 220, 220) !important]t[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]300

4 k$ X2 W. n5 j! ^' N+ T5 B
2 d" M* H# r2 u5 U9 V" C

% ?7 t& p5 S' G2 b4 N. c) H
+ W7 T; j, v  e8 L, _
静静的等待执行完成就好了!
三,具体代码
/srv/pillar/custom/init.sls
" Z3 C. o# o1 e% K7 V* D, N
1

3 O) d" v) J: ?; m: w0 E
[color=rgb(194, 194, 194) !important]2

9 b: Q" o& a/ S  A6 a0 |8 Z
3
8 |' ~9 o+ D2 n! Y5 K
[color=rgb(194, 194, 194) !important]4

4 o! b  y2 R1 v- C
5
, v+ w+ A! n' Z1 B% i: \
[color=rgb(194, 194, 194) !important]6

# H7 y4 ~( P. I3 u0 N: g2 h
7

% y7 T# k' l6 O( h
[color=rgb(194, 194, 194) !important]8
$ d; g9 |, Y$ M" d
9

; P! O7 f* p% k* Z0 m
[color=rgb(194, 194, 194) !important]10
& H/ R7 N3 L& p3 o& R/ G4 V; j- f
11
1 H8 r/ \, u' M  q+ |+ t
[color=rgb(194, 194, 194) !important]12

! f& m! R" u, e3 N8 w2 [
13
5 j: b9 Y, ]' {' L
[color=rgb(194, 194, 194) !important]14

8 D: A; H7 W9 F  {) I1 ?
15

9 ^5 `+ k5 u5 O1 N
[color=rgb(194, 194, 194) !important]16
1 H' d; r% Z. Z: j! O% p, ~, ], n! R
17

4 _' P' f( g( s3 m7 G
[color=rgb(194, 194, 194) !important]18
. u1 t& j6 g: w$ E. J
19

% N; |# d5 ~2 \! D9 r5 H
[color=rgb(194, 194, 194) !important]20
; ?" m/ u5 r3 m0 V$ P8 n
21
- o1 ^5 [% ^1 P4 E1 a3 v, H
[color=rgb(194, 194, 194) !important]22
0 c: a' C/ C( ^# I7 |
8 m' C, `9 \2 k5 q& ~, {
[color=rgb(155, 155, 139) !important]#!py
  G, E2 H; F) ?' ~/ v8 g7 O
[color=rgb(155, 155, 139) !important]#coding:utf-8

5 k2 K) w- D' V, v
[color=rgb(214, 157, 133) !important]""[color=rgb(214, 157, 133) !important]"

7 F6 m9 ~* i# Q" p
[color=rgb(214, 157, 133) !important]返回minion对应的pillar信息

: K' F" X' R0 |  }3 @
[color=rgb(214, 157, 133) !important]"[color=rgb(214, 157, 133) !important]""

# I4 n+ e/ [( b: w6 c: M
[color=rgb(255, 128, 0) !important]import [color=rgb(255, 128, 0) !important]yaml

: F- u5 n4 a( {  }$ h: l
[color=rgb(255, 128, 0) !important]import [color=rgb(255, 128, 0) !important]os
) o$ Q) @) e4 }3 I& j

6 X" b* i2 y) y2 T* y6 _2 i3 v9 U3 }
[color=rgb(255, 128, 0) !important]def [color=rgb(255, 128, 0) !important]run[color=rgb(216, 216, 216) !important]([color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]:

8 [) O9 q5 D6 [7 `. W
[color=rgb(0, 111, 224) !important]  [color=rgb(214, 157, 133) !important]""[color=rgb(214, 157, 133) !important]"

5 c$ E1 z7 m3 c0 U6 T
[color=rgb(214, 157, 133) !important]  首先获取请求的id,从id中获取project,例如id是:1.2.3.4-centos.game.web,那么project为game

& M1 }3 {. s8 f  w" g$ T9 y; S
[color=rgb(214, 157, 133) !important]  然后根据获取的pillar_root组合成路径/srv/pillar/custom/game/1.2.3.4-centos.game.web.yaml,利用yaml模块从文件中读取信息,返回字典

6 `% ], Y# j- @; {
[color=rgb(214, 157, 133) !important]  "[color=rgb(214, 157, 133) !important]""
1 s: }+ }8 V3 k$ M, @
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]config[color=rgb(218, 218, 218) !important]=[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]}
  Q) I2 P/ y3 p& M! o
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]id[color=rgb(218, 218, 218) !important]=[color=rgb(189, 183, 107) !important]__opts__[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'id'[color=rgb(216, 216, 216) !important]
7 _) o( h+ B4 }1 D
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]project[color=rgb(218, 218, 218) !important]=[color=rgb(189, 183, 107) !important]id[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]split[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'-'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important][[color=rgb(218, 218, 218) !important]-[color=rgb(231, 163, 122) !important]1[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]split[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'.'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important][[color=rgb(231, 163, 122) !important]1[color=rgb(216, 216, 216) !important]
0 a0 o5 \, p$ G
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]pillar_root[color=rgb(218, 218, 218) !important]=[color=rgb(189, 183, 107) !important]__opts__[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'pillar_roots'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'base'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(231, 163, 122) !important]0[color=rgb(216, 216, 216) !important]
- M6 @7 D) O% g( _# ]% M8 T- }
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]path[color=rgb(218, 218, 218) !important]=[color=rgb(214, 157, 133) !important]'%s/custom/%s/%s.yaml'[color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]pillar_root[color=rgb(216, 216, 216) !important],[color=rgb(189, 183, 107) !important]project[color=rgb(216, 216, 216) !important],[color=rgb(189, 183, 107) !important]id[color=rgb(216, 216, 216) !important])
5 k. W2 r" I/ k* q3 l: m2 L& O
[color=rgb(0, 111, 224) !important]  [color=rgb(32, 176, 218) !important]if[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]os[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]path[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]isfile[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]path[color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]:

$ g2 a7 m2 L' m) m( p
[color=rgb(0, 111, 224) !important]    [color=rgb(189, 183, 107) !important]s[color=rgb(218, 218, 218) !important]=[color=rgb(255, 128, 0) !important]open[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]path[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]read[color=rgb(216, 216, 216) !important]([color=rgb(216, 216, 216) !important])

- o. M! I5 g5 o& N( Y2 Z3 t
[color=rgb(0, 111, 224) !important]    [color=rgb(189, 183, 107) !important]config[color=rgb(218, 218, 218) !important]=[color=rgb(189, 183, 107) !important]yaml[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]load[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]s[color=rgb(216, 216, 216) !important])
+ N0 v9 }% F2 S. O: N! S
[color=rgb(0, 111, 224) !important]  [color=rgb(32, 176, 218) !important]return[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]config

+ Z$ k& I/ v6 V! h1 O" k: y
) b7 \6 f. V% p. `! S

, @6 r: l4 z& W  W) n! c& o

) b1 h, D' Y! [# f6 D: l  Y. a0 w
/srv/salt/centos/public_services/init.sls
; D5 ~$ L  d5 q! a) [1 |2 @
1

/ c: r; Y/ G7 a7 B6 C9 ^
[color=rgb(194, 194, 194) !important]2

! A9 Y* Y& M4 a# L) k/ u( u6 ~' V$ w
3

+ c0 A0 ^- x. v2 B- C8 F+ x0 p0 U
[color=rgb(194, 194, 194) !important]4

5 o2 M8 G0 {) [
5
$ ^: r! g3 m. L4 d3 ?" Y9 h9 v
[color=rgb(194, 194, 194) !important]6

9 ]. x, J( O6 y9 P# x! r
7
9 R1 a8 B8 c9 k9 `
[color=rgb(194, 194, 194) !important]8

9 T6 C: y9 Y* e% e. C
9

! X/ {! |& @% j" n7 R) x
[color=rgb(194, 194, 194) !important]10
: A' E- x/ i  h7 O
11
1 H' @! s+ t& [
[color=rgb(194, 194, 194) !important]12

3 [0 B; p9 g( K1 h! y1 y8 Y2 `
13
8 t$ \6 j5 ?0 T4 e  ~4 A
[color=rgb(194, 194, 194) !important]14

) _$ z7 I% q# Q) Z- C0 T
15

$ t+ L, Y: w+ R8 g5 F' A' }
[color=rgb(194, 194, 194) !important]16

/ z/ ~4 }) A$ {) x  l- ~: x2 D8 N
17

; ]9 b. x8 c7 f( e% {, k2 ~# k) m
[color=rgb(194, 194, 194) !important]18
) Z$ T& S" O6 F  i% {- u7 A* F' m
19
0 h8 d, P/ [) X# f
[color=rgb(194, 194, 194) !important]20

# }% Y: Y* v  ?' \
21

( q9 e5 E& D8 B; A9 e* H+ i
[color=rgb(194, 194, 194) !important]22

; e9 k  k8 [$ E; a1 Z$ T
23

; A% O# i' y7 ?+ m
[color=rgb(194, 194, 194) !important]24
/ {1 G7 l3 }7 n1 g) Y
25

# G# Z3 L4 `. Z" |0 R# L$ `0 O
[color=rgb(194, 194, 194) !important]26
+ g6 B- U9 X, a+ `1 o* [
27

. I  C1 J9 W0 m& y+ w
[color=rgb(194, 194, 194) !important]28
- b8 h/ Y! D$ ]9 @3 O. P, [0 N/ m
29

% W( R( c/ W4 x! U3 p3 t2 |* S9 y7 G
[color=rgb(194, 194, 194) !important]30
! @6 S' l7 M- f
31

7 {4 z1 |' l& @1 |7 P0 u
[color=rgb(194, 194, 194) !important]32
, i6 M2 m$ E' Z$ L# e
33

& Z5 }$ ?1 ~# v. n
[color=rgb(194, 194, 194) !important]34
6 W2 ^* o% [3 c  a, L) v
35

+ {" _/ B: d/ F# l  f
[color=rgb(194, 194, 194) !important]36
+ z3 K. D) x0 a6 W- |5 L
37

( k  _; I2 `- V  r7 E& E& r6 c5 {
[color=rgb(194, 194, 194) !important]38
+ J% w% E7 z; M$ h" ]
39
  {2 l, w  r/ P8 e, f2 z. ?& j
[color=rgb(194, 194, 194) !important]40

$ S8 o, Z4 T: O0 \! @
41
$ A# G) e8 g+ Y5 _
[color=rgb(194, 194, 194) !important]42
* W3 N4 \( i1 F1 Q( t. |
43

: D* g* J8 Q/ V+ _
[color=rgb(194, 194, 194) !important]44
8 X9 W0 c. a/ r6 y5 r
45
, D& R5 r- r. n( ]3 b& r
[color=rgb(194, 194, 194) !important]46

, E( s1 v2 {2 t) v
47

' \" f* P* O2 a5 e" Y! s
[color=rgb(194, 194, 194) !important]48
5 c) [, H3 D% P6 ~( ~
49

; @, p3 t6 |) n

2 G) g' |  s. g; g- ^  D& \* T
[color=rgb(155, 155, 139) !important]#!py
* W, t( }8 q: s1 M
[color=rgb(155, 155, 139) !important]#coding: utf-8

1 A/ p6 n! `/ O2 u( x
[color=rgb(255, 128, 0) !important]import [color=rgb(255, 128, 0) !important]subprocess

' N# o* E& E$ S# P" c6 I; }8 z2 I" N7 g
[color=rgb(244, 187, 21) !important]class[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]MY_ERROR[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]Exception[color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]:

% k) c9 C) a3 [# l, b& c
[color=rgb(0, 111, 224) !important]  [color=rgb(255, 128, 0) !important]def [color=rgb(255, 128, 0) !important]__init__[color=rgb(216, 216, 216) !important]([color=rgb(244, 187, 21) !important]self[color=rgb(216, 216, 216) !important],[color=rgb(189, 183, 107) !important]value[color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]:

- y" l. e  |) P1 H# D
[color=rgb(0, 111, 224) !important]    [color=rgb(244, 187, 21) !important]self[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]value[color=rgb(218, 218, 218) !important]=[color=rgb(255, 128, 0) !important]value
0 f% R- Z& f7 w) ]* n& o
[color=rgb(255, 128, 0) !important]  [color=rgb(255, 128, 0) !important]def [color=rgb(255, 128, 0) !important]__str__[color=rgb(216, 216, 216) !important]([color=rgb(244, 187, 21) !important]self[color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]:
: g8 e8 L- N& L8 \
[color=rgb(0, 111, 224) !important]    [color=rgb(32, 176, 218) !important]return[color=rgb(0, 111, 224) !important] [color=rgb(244, 187, 21) !important]self[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]value
- q8 V! \$ G* {3 g  e
2 c- }/ Y* S- ~5 k# R4 }: U
[color=rgb(255, 128, 0) !important]def [color=rgb(255, 128, 0) !important]mysql[color=rgb(216, 216, 216) !important]([color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]:

9 k/ _! |$ a8 @' R* _
[color=rgb(0, 111, 224) !important]  [color=rgb(214, 157, 133) !important]""[color=rgb(214, 157, 133) !important]"
4 L* X5 N4 r" r" l) x8 F
[color=rgb(214, 157, 133) !important]  1,检查是minion中pillar是否有mysql参数,以及参数是否合法
% k/ n- D$ ~# H% P
[color=rgb(214, 157, 133) !important]  如果参数没有问题,则返回对应版本的include配置

8 Z2 {. Z1 C' J& N, E8 u* e" ]
[color=rgb(214, 157, 133) !important]  pillar e.q.
# p% e: [# `& ]1 ~
[color=rgb(214, 157, 133) !important]  mysql:
0 X# f; R( D! O! D
[color=rgb(214, 157, 133) !important]    ports:
8 b7 ]0 M4 P' Y
[color=rgb(214, 157, 133) !important]      - 3306
0 m5 U* o2 `% i' C. ]! ^
[color=rgb(214, 157, 133) !important]      - 3307

7 `. v9 _/ x, ]% N1 Q8 f/ f
[color=rgb(214, 157, 133) !important]    version: '5_5_25'
. h- [( B4 a2 O5 i+ H! ?
[color=rgb(214, 157, 133) !important]  "[color=rgb(214, 157, 133) !important]""
  c/ Z! O: C+ d
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]mysql_sls_path[color=rgb(218, 218, 218) !important]=[color=rgb(214, 157, 133) !important]'centos.public_services.mysql.'

% `- l! P  x# u) ~
[color=rgb(0, 111, 224) !important]  [color=rgb(155, 155, 139) !important]#必要的参数
0 O+ Z) V) G4 Y
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]required_keys[color=rgb(218, 218, 218) !important]=[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'version'[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'ports'[color=rgb(216, 216, 216) !important]
$ v0 {; d3 V4 U; X% }
[color=rgb(0, 111, 224) !important]  [color=rgb(32, 176, 218) !important]if[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]__pillar__[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]has_key[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'mysql'[color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]:

& J( ?+ J) T% A9 V7 Z
[color=rgb(0, 111, 224) !important]    [color=rgb(189, 183, 107) !important]mysql_d[color=rgb(218, 218, 218) !important]=[color=rgb(189, 183, 107) !important]__pillar__[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'mysql'[color=rgb(216, 216, 216) !important]

. n$ `/ R6 O5 ~# o1 V; P: g7 g5 I
[color=rgb(0, 111, 224) !important]    [color=rgb(155, 155, 139) !important]#不存在必要的键值对则返回None

1 e& E6 s& k6 h$ F% u
[color=rgb(0, 111, 224) !important]    [color=rgb(32, 176, 218) !important]for[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]key [color=rgb(32, 176, 218) !important]in[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]required_keys[color=rgb(218, 218, 218) !important]:

  I' c4 m, `% J( Q" J: m
[color=rgb(0, 111, 224) !important]      [color=rgb(32, 176, 218) !important]if[color=rgb(0, 111, 224) !important] [color=rgb(32, 176, 218) !important]not[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql_d[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]has_key[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]key[color=rgb(216, 216, 216) !important])[color=rgb(0, 111, 224) !important] [color=rgb(32, 176, 218) !important]or[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]str[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]mysql_d[color=rgb(216, 216, 216) !important][[color=rgb(189, 183, 107) !important]key[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]strip[color=rgb(216, 216, 216) !important]([color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]==[color=rgb(214, 157, 133) !important]""[color=rgb(218, 218, 218) !important]:
, F, p8 s8 y8 v6 k2 t1 [6 Z0 W, Y
[color=rgb(0, 111, 224) !important]        [color=rgb(255, 128, 0) !important]raise [color=rgb(255, 128, 0) !important]MY_ERROR[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'key error! key: %s'[color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]([color=rgb(255, 128, 0) !important]str[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]key[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important])

2 P7 ^! ]$ \5 ?6 y! |9 E. j' d0 h
[color=rgb(0, 111, 224) !important]    [color=rgb(155, 155, 139) !important]#判断port是否合法

! c* ], X0 S) y3 d; ^# v0 M8 t
[color=rgb(0, 111, 224) !important]    [color=rgb(32, 176, 218) !important]for[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]port [color=rgb(32, 176, 218) !important]in[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql_d[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'ports'[color=rgb(216, 216, 216) !important][color=rgb(218, 218, 218) !important]:

- Z2 _: W( h$ {4 d2 [
[color=rgb(0, 111, 224) !important]      [color=rgb(32, 176, 218) !important]if[color=rgb(0, 111, 224) !important] [color=rgb(32, 176, 218) !important]not[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]port [color=rgb(32, 176, 218) !important]or[color=rgb(0, 111, 224) !important] [color=rgb(32, 176, 218) !important]not[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]1024[color=rgb(218, 218, 218) !important]<[color=rgb(244, 187, 21) !important]int[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]<[color=rgb(231, 163, 122) !important]65535[color=rgb(218, 218, 218) !important]:
1 ^* S5 r/ n) t- M* h$ H; y4 r
[color=rgb(0, 111, 224) !important]        [color=rgb(255, 128, 0) !important]raise [color=rgb(255, 128, 0) !important]MY_ERROR[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'mysql ports value error: %s'[color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]([color=rgb(255, 128, 0) !important]str[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]mysql_d[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'ports'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important])

6 v0 [' u. T8 D& v5 ?
[color=rgb(0, 111, 224) !important]    [color=rgb(155, 155, 139) !important]#组合配置参数

1 M2 c) P' c6 k) n: L/ Z, u& i2 v
[color=rgb(0, 111, 224) !important]    [color=rgb(189, 183, 107) !important]cfg[color=rgb(218, 218, 218) !important]=[color=rgb(189, 183, 107) !important]mysql_sls_path[color=rgb(218, 218, 218) !important]+[color=rgb(255, 128, 0) !important]str[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]mysql_d[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'version'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(231, 163, 122) !important]0[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important])

0 c  c' T% `) O' D
[color=rgb(0, 111, 224) !important]    [color=rgb(32, 176, 218) !important]return[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]cfg

9 l% a% _1 B$ d" H
[color=rgb(255, 128, 0) !important]  [color=rgb(32, 176, 218) !important]return[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]None

1 \0 q. k* y1 [4 S" i" `& O2 e' Y7 Q6 r
[color=rgb(255, 128, 0) !important]def [color=rgb(255, 128, 0) !important]run[color=rgb(216, 216, 216) !important]([color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]:
" u% @( B/ E  Y8 B4 w. k
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]config[color=rgb(218, 218, 218) !important]=[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]}

5 W1 s0 `  ^' e# _, q( X
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]config[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'include'[color=rgb(216, 216, 216) !important][color=rgb(218, 218, 218) !important]=[color=rgb(216, 216, 216) !important][[color=rgb(216, 216, 216) !important]

4 ~- ~: ?/ t3 M
[color=rgb(0, 111, 224) !important]  [color=rgb(155, 155, 139) !important]#mysql

- @0 S, N* M* V, O
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]mysql_cfg[color=rgb(218, 218, 218) !important]=[color=rgb(255, 128, 0) !important]mysql[color=rgb(216, 216, 216) !important]([color=rgb(216, 216, 216) !important])
2 P( R6 l8 W# Y7 `  Q
[color=rgb(0, 111, 224) !important]  [color=rgb(32, 176, 218) !important]if[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql_cfg[color=rgb(218, 218, 218) !important]:

6 b3 B6 b6 o/ t. Z$ {1 b
[color=rgb(0, 111, 224) !important]    [color=rgb(189, 183, 107) !important]config[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'include'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]append[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]mysql_cfg[color=rgb(216, 216, 216) !important])
1 v/ l) |% J0 K( [# U
[color=rgb(0, 111, 224) !important]  [color=rgb(32, 176, 218) !important]if[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]config[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'include'[color=rgb(216, 216, 216) !important][color=rgb(218, 218, 218) !important]==[color=rgb(216, 216, 216) !important][[color=rgb(216, 216, 216) !important][color=rgb(218, 218, 218) !important]:

) F. i( G. E% N$ A/ \
[color=rgb(0, 111, 224) !important]    [color=rgb(32, 176, 218) !important]return[color=rgb(0, 111, 224) !important] [color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]}

8 o5 V. E5 S' m1 L
[color=rgb(0, 111, 224) !important]  [color=rgb(32, 176, 218) !important]return[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]config
5 e8 l; v5 G  o9 Y0 W/ N, k

$ P1 Z. J1 i3 L: c" d
/ @9 J! G# ^* W

. r* b- d8 T$ `* U) t0 h$ g% W2 f
/srv/salt/centos/public_services/mysql/5/init.sls
6 {: a: a0 _8 [4 C8 T: Y
1
+ p, K" `9 W6 e9 K9 }
[color=rgb(194, 194, 194) !important]2
" j& k: ~3 H' T: C! Z& M
3

; ]% G7 F. i- G+ }- {$ V! {# t
[color=rgb(194, 194, 194) !important]4
! s$ [, E1 u0 ~9 K$ V& s
4 J+ J. X0 w: b% o% e! H
[color=rgb(189, 183, 107) !important]include[color=rgb(218, 218, 218) !important]:

, m1 G) j# p& q; T% d: o
[color=rgb(0, 111, 224) !important]  [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]centos[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]public_services[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]mysql[color=rgb(216, 216, 216) !important].[color=rgb(231, 163, 122) !important]5.packet

6 g9 P( G9 n! }; k2 {: O
[color=rgb(0, 111, 224) !important]  [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]centos[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]public_services[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]mysql[color=rgb(216, 216, 216) !important].[color=rgb(231, 163, 122) !important]5.my_cnf
) z) w6 u. R$ @  G% c; l6 @
[color=rgb(0, 111, 224) !important]  [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]centos[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]public_services[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]mysql[color=rgb(216, 216, 216) !important].[color=rgb(231, 163, 122) !important]5.instance
9 j/ C7 ]  V! e

8 A# I0 X- w- G$ I! x( T
; |' N3 |  r* z, J4 s/ \9 b( X& T

  a- E0 ]. d# k: H, \9 P  D1 G6 i0 c9 ?
/srv/salt/centos/public_services/mysql/5/packet.sls7 ?& k3 H* N' D2 n1 l- C
mysql软件包要放到相应的目录中,具体位置参考下面配置
; b( A$ j1 e$ P1 {( J% k
1

# T. y) c( ^& C3 _
[color=rgb(194, 194, 194) !important]2
' P: J! e* s" n
3

/ n( q( B4 W# m* `" @- j
[color=rgb(194, 194, 194) !important]4
4 A" V; c7 a" P& g( e: _  `$ `
5
3 Z7 a; o2 A/ l9 P
[color=rgb(194, 194, 194) !important]6
2 z) r! n% a# y) s& w: o5 j( }- Q  o
7

3 \$ k1 a2 U& N5 Y3 V% j
[color=rgb(194, 194, 194) !important]8

, b+ B& v3 a# ~% `6 C
9
6 {# A! k$ k' a+ x
[color=rgb(194, 194, 194) !important]10

9 z5 |" e, C& @- @* t) A9 A/ g
11

% X3 M3 p+ a! Z8 L7 R; E  p) G
[color=rgb(194, 194, 194) !important]12

6 R. |! r9 |. t, y7 R
13
) K8 e" H% W) f# O
[color=rgb(194, 194, 194) !important]14

! k' b. i0 `  P! ^6 F. m, |
15
" M- [2 Y2 E& T3 y, N7 B% s
[color=rgb(194, 194, 194) !important]16
& _9 K% ]* k* N- Z
17

! T6 |9 g: N2 A0 X
[color=rgb(194, 194, 194) !important]18
) j! O8 |7 ]" s9 C
19
# h3 {+ p5 b0 A  a
[color=rgb(194, 194, 194) !important]20
- G9 u" ?* @) u3 V% @2 l$ Z8 @. x" C- u8 W
21
- a( N! o- p( h$ s
[color=rgb(194, 194, 194) !important]22
, h  T; i5 \  o+ U& V$ r  T7 ?
23

* I  }8 J3 U$ M
[color=rgb(194, 194, 194) !important]24
3 T/ L5 E! {0 A+ l: P9 L
25
. {; a! B3 Y1 ^0 [: o0 U$ p+ s
[color=rgb(194, 194, 194) !important]26
  Z6 Y5 r( f7 E% d5 P1 d: ]
27

/ x5 U, H2 B7 T5 F
[color=rgb(194, 194, 194) !important]28
+ r2 W) }; l8 ^: F- N; Z
29

. a$ I, q1 ]7 g/ [5 e' E  K
[color=rgb(194, 194, 194) !important]30

* D7 y1 q8 t; J' _; D
31
2 H% w1 W. l$ Y0 F9 o! {
[color=rgb(194, 194, 194) !important]32
+ |6 a" m& x" I0 M6 ?2 t7 F3 s" r! T
33
' ]3 t7 `, k; G- _; v  z2 U
[color=rgb(194, 194, 194) !important]34
; v; z, {$ B& c; f* Q# Y
35

0 ~% J2 {# b/ Q* Q5 X
[color=rgb(194, 194, 194) !important]36
! P" |& S9 I, Z# v: I) U- r7 H/ l
37

8 V8 }2 H6 D/ e! s& D
[color=rgb(194, 194, 194) !important]38

( p  _5 P, C3 Y' z* ^" g
39
4 i! m2 \& L' g+ Y; c4 d
[color=rgb(194, 194, 194) !important]40

0 h/ l% ], w! G- W& P3 }$ ^5 D
41
' Z/ X9 l* P$ F0 M8 o
[color=rgb(194, 194, 194) !important]42
% w3 P- m* d9 [1 A0 W" \
43
" p4 V+ @5 V7 s, X( Z
[color=rgb(194, 194, 194) !important]44

- v5 X, P0 h: F3 f, {
45

3 N. z0 e8 n3 _% o0 [0 U1 }
[color=rgb(194, 194, 194) !important]46
5 ?% L. f; f  A! x& |+ Z0 d
47

/ `$ g  G5 \" t! ^; ^- h
[color=rgb(194, 194, 194) !important]48

1 V. F6 E6 \% w& m
49
$ i1 i: y5 A/ n6 f$ K$ R6 v& G' }
[color=rgb(194, 194, 194) !important]50
6 f3 t( E, Z3 C% i
! k2 ]# y- s5 j5 m; }
[color=rgb(216, 216, 216) !important]{[color=rgb(218, 218, 218) !important]%[color=rgb(255, 128, 0) !important]set [color=rgb(189, 183, 107) !important]version[color=rgb(218, 218, 218) !important]=[color=rgb(189, 183, 107) !important]pillar[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'mysql'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'version'[color=rgb(216, 216, 216) !important][color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]}
- r' ]0 D6 N1 p# \* v
[color=rgb(189, 183, 107) !important]mysql[color=rgb(218, 218, 218) !important]:
0 I' @0 n  b, }9 n- e1 J
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]user[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]present[color=rgb(218, 218, 218) !important]:
7 A! E) H/ {8 d) ?0 {  d
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]home[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]home[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]mysql

" i- U; }& `3 T- o& s4 B
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]shell[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]sbin[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]nologin
7 B& B: Z, y6 r; V. c; U0 k- `6 _
( ]$ d/ c) E6 J5 c1 |% Y0 M
[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]nagios[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]libexec[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]check_safe[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]u[color=rgb(218, 218, 218) !important]:

- R1 v4 G9 k; `  I' q
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]cmd[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]wait[color=rgb(218, 218, 218) !important]:
% B- E5 ?% M: x* \. S
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]watch[color=rgb(218, 218, 218) !important]:

( M: l  C$ y; Y. r" i2 N9 @
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]user[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]mysql
1 ?6 M5 y( F5 b- v
6 N# b! W9 E: b3 s% }: X
[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]src[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql[color=rgb(218, 218, 218) !important]-[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]version[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]replace[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'_'[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'.'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]tar[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]gz[color=rgb(218, 218, 218) !important]:

' }5 O, f8 [5 |) b0 U: C
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]file[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]managed[color=rgb(218, 218, 218) !important]:
7 Z. }1 U" n' r+ k% I, e
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]source[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]salt[color=rgb(218, 218, 218) !important]:[color=rgb(87, 166, 74) !important]//centos/public_services/mysql/5/{{version}}/mysql-{{version.replace('_','.')}}.tar.gz
! [5 E/ F* \! C1 c& d% z2 v
9 L  E. m4 \0 {' `, j
[color=rgb(255, 128, 0) !important]tar[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(255, 128, 0) !important]xf[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]mysql[color=rgb(218, 218, 218) !important]-[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]version[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]replace[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'_'[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'.'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]tar[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]gz[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]C[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(218, 218, 218) !important]:
7 @2 M* I8 L) o. T2 }) P* C9 j
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]cmd[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]run[color=rgb(218, 218, 218) !important]:
. R' J' M0 S4 \9 E
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]cwd[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]src
8 w: i0 |8 a- J; L& b1 _* i  v
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]unless[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]ls[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]l[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]|[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]grep[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(220, 220, 220) !important]e[color=rgb(0, 111, 224) !important] [color=rgb(214, 157, 133) !important]".* mysql-{{version.replace('_','.')}}$"

2 t* G- n: L  N3 R! e4 {  c" O1 J! H
[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql[color=rgb(218, 218, 218) !important]-[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]version[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]replace[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'_'[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'.'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(218, 218, 218) !important]:
6 X% B' w: S+ x3 d  t$ L9 j0 l
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]file[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]directory[color=rgb(218, 218, 218) !important]:
) h! m. N. M' A& k# ^% s4 N6 |
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]user[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql
1 `4 a! U- B. Q% F# ~5 T& z4 @
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]group[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql

$ q6 Z, E/ a  X6 ~+ V1 j& g
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]recurse[color=rgb(218, 218, 218) !important]:
$ ]/ C7 D0 q* Q/ b5 `% H
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]user

1 Z6 L$ K) _( ]! P6 p
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]group
  L/ Y' o/ |3 W
5 j5 N* [* W% `. B4 o$ o4 H
[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]data[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]mysql_log[color=rgb(218, 218, 218) !important]:
5 C% n1 [: L9 F: |$ T
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]file[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]directory[color=rgb(218, 218, 218) !important]:

3 Z$ @; o- ~3 H1 i0 l
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]makedirs[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(244, 187, 21) !important]True

8 a% W3 U% }* N% a* Q) K/ N& j
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]user[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql

- a' `2 {# D' }* q4 T6 C
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]group[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql
+ v  |3 C2 O8 E
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]recurse[color=rgb(218, 218, 218) !important]:
2 m5 C1 U5 b" c2 H
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]user

/ K  b6 Y$ ^( s( K, V# _
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]group

3 ~5 |- D  A" f) V" _0 W3 ~8 z7 C2 T5 Q  p4 E8 a
[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]data[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]log[color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]bin[color=rgb(218, 218, 218) !important]:

3 l( |8 n) M: Y! H% o, X* x4 P
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]file[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]directory[color=rgb(218, 218, 218) !important]:
$ I& _; n+ {. y, o6 @
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]makedirs[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(244, 187, 21) !important]True

9 g- n4 `& z+ `# v- g' y$ _2 O
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]user[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql

( m. b6 _. j5 F7 N7 I. ?6 @
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]group[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql

0 n5 f+ A; g5 J' |7 R/ S% o
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]recurse[color=rgb(218, 218, 218) !important]:

6 O1 [8 G" a# l. x! f+ }9 A3 ?
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]user
8 W4 g# J! u* Z% ~8 i/ @8 g
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]group
& ?1 [; X/ O+ u# U' P0 w

) ^* a# V/ ^/ n; K4 L2 v
[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]bin[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]mysql[color=rgb(218, 218, 218) !important]:
5 X6 a4 ?1 ~) k* f
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]file[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]symlink[color=rgb(218, 218, 218) !important]:

2 B2 g* C4 b5 C+ q8 Y/ Y
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]target[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql[color=rgb(218, 218, 218) !important]-[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]version[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]replace[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'_'[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'.'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]bin[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]mysql
+ y- B3 d2 v: U' s5 V7 c" f
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]unless[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]ls[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(189, 183, 107) !important]l[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]bin[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]|[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]grep[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(220, 220, 220) !important]e[color=rgb(0, 111, 224) !important] [color=rgb(214, 157, 133) !important]" mysql$"

3 a, m; \- I4 |5 h- H

: l) _9 _8 \) O( u: r

! l. L" j3 ]' i3 X3 F; E
- E' f- n8 E# j& Q  b9 a
/srv/salt/centos/public_services/mysql/5/my_cnf.sls
1 u4 n- I" \& Q0 O% Z注意修改最后的初始化密码
) {& e: C& y: M: M: Smy.cnf配置文件需要放到对应的目录中,my.cnf文件中要设置对应的模板变量:
1 t, r% W1 Y6 J* s0 S' b
1

; X. p  L$ a3 r; m  S
[color=rgb(194, 194, 194) !important]2

$ k- v0 L# ?2 z# W' @" Z: S

9 {+ w3 O4 h7 i- x
[color=rgb(189, 183, 107) !important]port[color=rgb(218, 218, 218) !important]=[color=rgb(0, 111, 224) !important] [color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(0, 111, 224) !important] [color=rgb(155, 155, 139) !important]#还有其它的和端口相关的配置都要改成{{port}}

2 ?& z. }$ L( V8 }/ r, q
[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]basedir[color=rgb(218, 218, 218) !important]=[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql[color=rgb(218, 218, 218) !important]-[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]version[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(0, 111, 224) !important] [color=rgb(155, 155, 139) !important]#还有其它的和版本相关的配置都要改成{{version}}
0 w$ A# E/ g4 W( x. p

6 P2 g9 b, v7 P+ d
$ ]9 J, |% G* Y+ ^; y+ k
8 S2 U6 K4 c% q5 _& m

# n( t  ]* c$ X$ s) b/ e1 c
& f& M- y6 k* D, O: N2 l
1

$ M# J9 l2 M1 ?$ Z7 z4 y$ w3 r
[color=rgb(194, 194, 194) !important]2
6 ^+ e# ]1 X$ r& S. n% S
3
* b) T9 A+ N2 F
[color=rgb(194, 194, 194) !important]4

; S; Y- E0 j" i
5
3 X% E+ V/ o8 H
[color=rgb(194, 194, 194) !important]6
) x3 ~9 q4 v5 q3 `: Q. U- h/ o% J
7

4 v* L$ ?6 P- P! }! ?
[color=rgb(194, 194, 194) !important]8
/ Y2 W- a( _$ w1 j1 s. [: n
9

# ~" N2 D7 A! O  D* h
[color=rgb(194, 194, 194) !important]10

) u) e$ v) l+ J) E( ^
11

8 A/ P; a- ^& x  }5 P; V' t& l( R
[color=rgb(194, 194, 194) !important]12

- w" [3 T# F( A5 p- K
13

* P- {/ {0 J; ]( N0 w+ I
[color=rgb(194, 194, 194) !important]14

0 o) Z$ }, T. O$ N9 e
15
! k9 {- [% h$ Y, U; ^3 X
[color=rgb(194, 194, 194) !important]16

+ Y* d5 D( q+ E9 S( w1 n
17

# n! G( b- H7 q3 b% D& r' H* @
[color=rgb(194, 194, 194) !important]18
" z! w. o" D* A2 }  w
19

7 h' R% o$ H5 {6 J9 a, D, E
[color=rgb(194, 194, 194) !important]20

! z( Y2 n  `  R$ H
21

( d/ w* V8 \' Y0 T3 I
[color=rgb(194, 194, 194) !important]22

" _9 M, |) r3 f
23

# E6 A4 Z' q2 l' e9 r% S/ e- I/ E) ?
[color=rgb(194, 194, 194) !important]24

6 ]8 |4 g9 @: i& H  K2 a' k

$ R8 s4 J) P+ Z  o1 ?
[color=rgb(155, 155, 139) !important]#!py

6 f# x  v1 I% L7 y6 C# e
[color=rgb(155, 155, 139) !important]#coding:utf-8
* _# f4 A8 }  j3 h7 N' }/ p
[color=rgb(214, 157, 133) !important]""[color=rgb(214, 157, 133) !important]"
0 @( w+ X) T* ]
[color=rgb(214, 157, 133) !important]生成my.cnf配置文件,如果文件已存在,不作任何修改

, X( a  {% y5 \: B3 v
[color=rgb(214, 157, 133) !important]"[color=rgb(214, 157, 133) !important]""
2 n- b, U7 o. E6 ~
[color=rgb(255, 128, 0) !important]import [color=rgb(255, 128, 0) !important]os

! \6 }' V, H; i4 E
  H, J0 I, V& M, }
[color=rgb(255, 128, 0) !important]def [color=rgb(255, 128, 0) !important]run[color=rgb(216, 216, 216) !important]([color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]:

0 o* D) T* K8 D' j# a; P! F6 p
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]config[color=rgb(218, 218, 218) !important]=[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]}
0 S3 |$ T2 q" B! J& ~
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]version[color=rgb(218, 218, 218) !important]=[color=rgb(189, 183, 107) !important]__pillar__[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'mysql'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'version'[color=rgb(216, 216, 216) !important]
) r$ {3 T* _" Z8 a8 K0 O$ `4 O: x
[color=rgb(0, 111, 224) !important]  [color=rgb(32, 176, 218) !important]for[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]port [color=rgb(32, 176, 218) !important]in[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]__pillar__[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'mysql'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'ports'[color=rgb(216, 216, 216) !important][color=rgb(218, 218, 218) !important]:
( g! [  {8 X# ^& g+ |
[color=rgb(0, 111, 224) !important]    [color=rgb(189, 183, 107) !important]port[color=rgb(218, 218, 218) !important]=[color=rgb(255, 128, 0) !important]str[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important])
! b5 ~/ Y' S% W& n- _
[color=rgb(0, 111, 224) !important]    [color=rgb(32, 176, 218) !important]if[color=rgb(0, 111, 224) !important] [color=rgb(32, 176, 218) !important]not[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]os[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]path[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]isfile[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'/data/mysql_data_%s/my.cnf'[color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important])[color=rgb(218, 218, 218) !important]:

3 s4 J1 n% W( s( [' m
[color=rgb(0, 111, 224) !important]      [color=rgb(189, 183, 107) !important]config[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'/data/mysql_data_%s/my.cnf'[color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important][color=rgb(218, 218, 218) !important]=[color=rgb(216, 216, 216) !important]{
8 H' c4 z0 |- j
[color=rgb(0, 111, 224) !important]        [color=rgb(214, 157, 133) !important]'file.managed'[color=rgb(218, 218, 218) !important]:[color=rgb(216, 216, 216) !important][

  V- S- j% i! R# q6 f+ k7 E% Y
[color=rgb(0, 111, 224) !important]          [color=rgb(216, 216, 216) !important]{[color=rgb(214, 157, 133) !important]'source'[color=rgb(218, 218, 218) !important]:[color=rgb(214, 157, 133) !important]'salt://centos/public_services/mysql/5/%s/my.cnf'[color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]version[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important],

% e& c9 X8 ~. r* c* @
[color=rgb(0, 111, 224) !important]          [color=rgb(216, 216, 216) !important]{[color=rgb(214, 157, 133) !important]'template'[color=rgb(218, 218, 218) !important]:[color=rgb(214, 157, 133) !important]'jinja'[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important],

& H! c; C) x; q+ C
[color=rgb(0, 111, 224) !important]          [color=rgb(216, 216, 216) !important]{[color=rgb(214, 157, 133) !important]'context'[color=rgb(218, 218, 218) !important]:[color=rgb(216, 216, 216) !important]{[color=rgb(214, 157, 133) !important]'port'[color=rgb(218, 218, 218) !important]:[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'version'[color=rgb(218, 218, 218) !important]:[color=rgb(214, 157, 133) !important]'%s'[color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]version[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]replace[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'_'[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'.'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important],

) r3 D$ O& S2 f2 R3 ~2 M7 h
[color=rgb(0, 111, 224) !important]          [color=rgb(216, 216, 216) !important]{[color=rgb(214, 157, 133) !important]'require'[color=rgb(218, 218, 218) !important]:[color=rgb(216, 216, 216) !important][[color=rgb(216, 216, 216) !important]{[color=rgb(214, 157, 133) !important]'file'[color=rgb(218, 218, 218) !important]:[color=rgb(214, 157, 133) !important]'/data/mysql_data_%s'[color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important],

  ^+ z4 g. p1 `1 Y6 n5 x- K8 {
[color=rgb(0, 111, 224) !important]          [color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important],

8 ~- ?8 M4 Q2 |& O  u/ K
[color=rgb(0, 111, 224) !important]      [color=rgb(216, 216, 216) !important]}

5 e8 Q5 Q1 p$ l  g; h) n. J9 Z
[color=rgb(0, 111, 224) !important]      [color=rgb(189, 183, 107) !important]config[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'chown mysql.mysql /data/mysql_data_%s/my.cnf'[color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]([color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important][color=rgb(218, 218, 218) !important]=[color=rgb(214, 157, 133) !important]'cmd.run'
$ E" o9 R/ [$ x4 [
3 @+ M# ^! R" n! _" o, Q
[color=rgb(0, 111, 224) !important]  [color=rgb(32, 176, 218) !important]return[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]config

) M, O) T) O  n9 D

: Q- t) P/ C9 T' l
6 Z  Y1 e, O/ V
, ]& O1 t! y$ D4 Q+ Y* B
/srv/salt/centos/public_services/mysql/5/instance.sls: ?8 K7 {2 X! i# Y9 T
mysql启动脚本需要放到对应的目录中,启动脚本中要设置对应的模板变量:

+ Z. D; W4 n" U) b. H& h/ D6 R7 h
1
3 q6 ]5 R6 t+ C
[color=rgb(194, 194, 194) !important]2

1 x) `5 C# m) e) i, c' m# R$ C

$ J8 y+ A" B2 P' \" _% h
[color=rgb(189, 183, 107) !important]basedir[color=rgb(218, 218, 218) !important]=[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql[color=rgb(218, 218, 218) !important]-[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]version[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(0, 111, 224) !important] [color=rgb(155, 155, 139) !important]#还有其它的和版本相关的配置都要改成{{version}}
. \3 Y3 S4 _; j
[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]datadir[color=rgb(218, 218, 218) !important]=[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]data[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql_data_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(0, 111, 224) !important] [color=rgb(155, 155, 139) !important]#还有其它的和端口相关的配置都要改成{{port}}
. Y- P* u1 t! p3 s, [4 f/ f  v% Z
: f; M' r% _' ?# c
2 E, ^" ?! ^) V8 `

. {8 ~% {$ p( s
: Z* Y$ |* l: n' _" v
* C% |+ A; C+ |& K! v' g
1
. x" ?" p/ Z3 J) \! @; p4 c
[color=rgb(194, 194, 194) !important]2

( \# J+ z1 B0 y0 u9 K3 |2 o
3
: n9 |3 d) E" p+ r8 e8 D
[color=rgb(194, 194, 194) !important]4

7 p* T, b. o$ [4 ^4 w
5
4 x6 }" d) s* b* G' f& y
[color=rgb(194, 194, 194) !important]6
4 t4 m, z1 `/ E6 K) o
7

* T  V& [9 A+ ^5 p" K1 W
[color=rgb(194, 194, 194) !important]8

/ z' @6 i' S6 L" ]& x4 e( C/ K. @
9
+ u4 o9 b2 l; L# {! |' O' O
[color=rgb(194, 194, 194) !important]10

+ _, Q! z2 ]3 c, N- \
11
) F+ W+ K% O( d0 I( x
[color=rgb(194, 194, 194) !important]12
- g3 g  r$ E* Q: g
13
( z5 h% Z# d! ^9 B( F
[color=rgb(194, 194, 194) !important]14
! t! e7 j9 j  `5 O: c
15

8 U  l3 C! S$ `5 O4 b: I& Z
[color=rgb(194, 194, 194) !important]16

% Z' R. ^* N' O$ P, u( y' T, |
17

$ c6 p0 F/ T; q+ w: s: k0 L- {
[color=rgb(194, 194, 194) !important]18

7 M5 M# c: Q2 \* K# ^
19
- `; c0 [4 t; I* }( x. e* Z
[color=rgb(194, 194, 194) !important]20
: t7 Q! v2 Q. o% F; I% V& j7 d
21

1 S. v1 e; Y# \9 \& F
[color=rgb(194, 194, 194) !important]22

# Y* H) f$ S5 Z" V3 X5 T+ d* g: d
23
+ o' k4 F3 i( h. Q
[color=rgb(194, 194, 194) !important]24

$ B$ M3 V# f' ?* L
25

  J- ~) B9 ~. u* @
[color=rgb(194, 194, 194) !important]26

! a% L( ^( }! l' k$ f1 m( h
27

( V: I/ b5 B; n: @
[color=rgb(194, 194, 194) !important]28
2 D( s3 h  L; h. n& g
29
  d& S" G4 Q: ^" E7 r8 k# T5 }8 a/ T
[color=rgb(194, 194, 194) !important]30
( U  J% V% o9 L* E% [
31
5 v3 @: C8 w+ L" Q- Y
[color=rgb(194, 194, 194) !important]32

# [5 F9 u) n  N+ p. U
33
  E; W- g! m4 a2 e; S4 f4 v5 u3 t
[color=rgb(194, 194, 194) !important]34

6 E3 J4 F: F2 Q
35
$ Y" x* j0 R% Y2 o( i4 O5 R
[color=rgb(194, 194, 194) !important]36
, K( z6 i0 C7 S/ O: R
37

8 P6 H) v' c+ c( r8 |
[color=rgb(194, 194, 194) !important]38

: g1 g: M6 b0 f* ?
39

1 e+ B* b9 L2 D) q; g
[color=rgb(194, 194, 194) !important]40
6 Y7 g) Q) \/ J: z% `. o9 G  h
41
7 D/ p" p4 v  i
[color=rgb(194, 194, 194) !important]42

1 T& W9 e: L1 e4 G& C- E: f
43
8 j9 r* M7 ~5 B2 ^1 K, f
. u4 e: ~7 z, y: z
[color=rgb(216, 216, 216) !important]{[color=rgb(218, 218, 218) !important]%[color=rgb(0, 111, 224) !important] [color=rgb(32, 176, 218) !important]for[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]port [color=rgb(32, 176, 218) !important]in[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]pillar[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'mysql'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'ports'[color=rgb(216, 216, 216) !important][color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]}

6 f0 y/ i8 K* ^- q( `/ h& i, }4 [  d
[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]data[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql_data_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(218, 218, 218) !important]:
4 U2 t+ E& `9 s8 h/ i( o
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]file[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]directory[color=rgb(218, 218, 218) !important]:

! y# n% E$ e' |( l8 m
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]makedirs[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(244, 187, 21) !important]True

: e2 m3 r/ {( {0 q
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]user[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql
# Z1 z/ e+ d$ I7 G- v. N1 h4 f5 n
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]group[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mysql
4 e* d3 p* c( E* N0 K+ }( m: D) K
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]recurse[color=rgb(218, 218, 218) !important]:

' j' R* G" |& X& [
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]user
/ j9 ^0 W; g/ I1 c7 G8 T
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]group

) p; q0 g; z0 d; v4 O" {
# k! k3 d/ x$ D& l/ F
[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]etc[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]init[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]d[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysqld_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(218, 218, 218) !important]:
5 D& e. P& Q1 l
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]file[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]managed[color=rgb(218, 218, 218) !important]:

- h  W) A2 c0 X$ \% }
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]source[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]salt[color=rgb(218, 218, 218) !important]:[color=rgb(87, 166, 74) !important]//centos/public_services/mysql/5/{{pillar['mysql']['version']}}/mysql.service
3 ~. i/ ^3 q1 Z6 ]) `' Z" x; B& l# U
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]user[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]root
  C3 y  _( i/ U  E$ G
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]group[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]root
6 U; d9 L0 U4 ~- d! f3 ]' M. }
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]mode[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]755
* \* K' Q4 V& F9 Q$ ^8 k9 R* n
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]template[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]jinja

  s( r. x1 L( M" `- s0 A
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]context[color=rgb(218, 218, 218) !important]:

, M/ Z" W/ |1 o# d  ^  C6 ?
[color=rgb(0, 111, 224) !important]      [color=rgb(189, 183, 107) !important]port[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}

+ ^# O6 l- i% u5 Q
[color=rgb(0, 111, 224) !important]      [color=rgb(189, 183, 107) !important]version[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]pillar[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'mysql'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'version'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]replace[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'_'[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'.'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}

3 ?; S% Z' n! @4 U! m: p$ @6 F' Y; i. m5 Q( _) D
[color=rgb(255, 128, 0) !important]chkconfig[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]--[color=rgb(255, 128, 0) !important]add[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]mysqld_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important];[color=rgb(255, 128, 0) !important]chkconfig[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]--[color=rgb(255, 128, 0) !important]level[color=rgb(0, 111, 224) !important] [color=rgb(231, 163, 122) !important]345[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]mysqld_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]on[color=rgb(216, 216, 216) !important];[color=rgb(218, 218, 218) !important]:
8 `8 m5 c$ y' H
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]cmd[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]run[color=rgb(218, 218, 218) !important]:

+ @+ X/ b/ e: Z4 d
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]unless[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]chkconfig[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]--[color=rgb(189, 183, 107) !important]list[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]|[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]grep[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]mysqld_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}
+ u8 p- `+ s2 A! b& m9 W& C" w
2 I# ]% e% {- B& n) N' D& M- T
[color=rgb(155, 155, 139) !important]#初始化库

: C% \' d; U$ L; g, W( s
[color=rgb(255, 128, 0) !important]init_mysql_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(218, 218, 218) !important]:

  l, U3 [1 L4 ^5 ^9 V/ M7 `
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]cmd[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]run[color=rgb(218, 218, 218) !important]:
5 |0 S+ a3 W$ d0 d2 P
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]name[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql[color=rgb(218, 218, 218) !important]-[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]pillar[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'mysql'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'version'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]replace[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'_'[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'.'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]scripts[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]mysql_install_db[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]--[color=rgb(189, 183, 107) !important]user[color=rgb(218, 218, 218) !important]=[color=rgb(189, 183, 107) !important]mysql[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]--[color=rgb(189, 183, 107) !important]basedir[color=rgb(218, 218, 218) !important]=[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql[color=rgb(218, 218, 218) !important]-[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]pillar[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'mysql'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'version'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]replace[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'_'[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'.'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(0, 111, 224) !important]  [color=rgb(218, 218, 218) !important]--[color=rgb(189, 183, 107) !important]datadir[color=rgb(218, 218, 218) !important]=[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]data[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql_data_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(218, 218, 218) !important]/

* a! }% ]/ l5 T3 p6 n" t! e* U
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]unless[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]ls[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(255, 128, 0) !important]l[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]data[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql_data_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]|[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]grep[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(220, 220, 220) !important]e[color=rgb(0, 111, 224) !important] [color=rgb(214, 157, 133) !important]".* mysql$"

6 e) N9 u( l+ f5 h# ?2 ]. C+ P/ C! y# P6 q- K
[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]etc[color=rgb(218, 218, 218) !important]/[color=rgb(189, 183, 107) !important]init[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]d[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysqld_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]start[color=rgb(218, 218, 218) !important]:

3 |  \/ q2 V; E
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]cmd[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]wait[color=rgb(218, 218, 218) !important]:

4 ]5 V5 [7 K; ^
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]watch[color=rgb(218, 218, 218) !important]:
( G$ C7 v* Q+ h- Q' q1 X, g6 ^  |
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]cmd[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]init_mysql_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}

; ?2 F7 O. w2 K. g$ A: I) N: d' _; _+ t  y7 w
[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]usr[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]local[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql[color=rgb(218, 218, 218) !important]-[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]pillar[color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'mysql'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important][[color=rgb(214, 157, 133) !important]'version'[color=rgb(216, 216, 216) !important][color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]replace[color=rgb(216, 216, 216) !important]([color=rgb(214, 157, 133) !important]'_'[color=rgb(216, 216, 216) !important],[color=rgb(214, 157, 133) !important]'.'[color=rgb(216, 216, 216) !important])[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]bin[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysqladmin[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(255, 128, 0) !important]uroot[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]-[color=rgb(255, 128, 0) !important]S[color=rgb(0, 111, 224) !important] [color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]tmp[color=rgb(218, 218, 218) !important]/[color=rgb(255, 128, 0) !important]mysql_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important].[color=rgb(255, 128, 0) !important]sock [color=rgb(220, 220, 220) !important]password[color=rgb(0, 111, 224) !important] [color=rgb(214, 157, 133) !important]'yourmysqlpasswd!'[color=rgb(218, 218, 218) !important]:
( ]8 `+ x& t8 m# \+ Q! F
[color=rgb(0, 111, 224) !important]  [color=rgb(189, 183, 107) !important]cmd[color=rgb(216, 216, 216) !important].[color=rgb(189, 183, 107) !important]wait[color=rgb(218, 218, 218) !important]:

9 F+ V5 {+ T* A4 [4 f
[color=rgb(0, 111, 224) !important]    [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]watch[color=rgb(218, 218, 218) !important]:

% m. h; m, r1 Q$ j! x7 Z/ F) P
[color=rgb(0, 111, 224) !important]      [color=rgb(218, 218, 218) !important]-[color=rgb(0, 111, 224) !important] [color=rgb(189, 183, 107) !important]cmd[color=rgb(218, 218, 218) !important]:[color=rgb(0, 111, 224) !important] [color=rgb(255, 128, 0) !important]init_mysql_[color=rgb(216, 216, 216) !important]{[color=rgb(216, 216, 216) !important]{[color=rgb(189, 183, 107) !important]port[color=rgb(216, 216, 216) !important]}[color=rgb(216, 216, 216) !important]}
9 v# `( L! L6 ~

; C% ]* n, ]5 E
[color=rgb(216, 216, 216) !important]{[color=rgb(218, 218, 218) !important]%[color=rgb(32, 176, 218) !important]endfor[color=rgb(218, 218, 218) !important]%[color=rgb(216, 216, 216) !important]}
$ r+ l& E; x8 ?% V8 x0 A
; G, @/ o- Y0 S& v7 [

' m9 X& o2 K5 C5 Y) I5 L, m. v
, O. |; [* c7 |4 f, i) T
四,总结
6 g; W7 O2 a( L这个方法不仅可以用在mysql,同样的nginxredis等都可以举一反三,配置文件编写完成后,仅仅需要简单的在pillar中添加几个变量就可以轻松批量部署了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 04:24 , Processed in 0.023925 second(s), 25 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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