1
00:00:06,320 --> 00:00:11,499
[Music]

2
00:00:15,519 --> 00:00:18,880
okay our final speaker today is tan and

3
00:00:17,920 --> 00:00:22,000
he's going to be talking about

4
00:00:18,880 --> 00:00:22,000
configuration management

5
00:00:22,080 --> 00:00:26,800
good afternoon and good day to everyone

6
00:00:24,640 --> 00:00:29,439
who's still sticking around with me in

7
00:00:26,800 --> 00:00:31,760
this linux conference australia welcome

8
00:00:29,439 --> 00:00:34,000
to my playtime with configuration how

9
00:00:31,760 --> 00:00:35,840
did i get from shell script to ansible

10
00:00:34,000 --> 00:00:37,280
galaxy

11
00:00:35,840 --> 00:00:38,640
before i begin

12
00:00:37,280 --> 00:00:40,960
i would like to acknowledge the

13
00:00:38,640 --> 00:00:43,520
traditional custodian of the land which

14
00:00:40,960 --> 00:00:45,360
the talk is being streamed and record i

15
00:00:43,520 --> 00:00:48,800
would also like to pay my respect to

16
00:00:45,360 --> 00:00:51,440
their elders past and present

17
00:00:48,800 --> 00:00:54,800
so what is this about this is actually a

18
00:00:51,440 --> 00:00:56,960
summary of my journey on how i discover

19
00:00:54,800 --> 00:00:58,160
the tools that i use to do my

20
00:00:56,960 --> 00:01:00,559
performance

21
00:00:58,160 --> 00:01:01,920
to performing my configuration

22
00:01:00,559 --> 00:01:04,799
management

23
00:01:01,920 --> 00:01:07,520
i started doing configuration on linux

24
00:01:04,799 --> 00:01:09,119
system back in year 2000

25
00:01:07,520 --> 00:01:10,560
it was not fun i actually started doing

26
00:01:09,119 --> 00:01:13,680
it manually

27
00:01:10,560 --> 00:01:15,680
and then i i upskill myself to start

28
00:01:13,680 --> 00:01:18,159
using shell script

29
00:01:15,680 --> 00:01:20,640
but it's not fun especially when i have

30
00:01:18,159 --> 00:01:22,720
more than one distro to manage in my

31
00:01:20,640 --> 00:01:23,920
fleet it become very complex and

32
00:01:22,720 --> 00:01:27,200
complicated

33
00:01:23,920 --> 00:01:30,159
to to to manage the shell script

34
00:01:27,200 --> 00:01:33,680
and later i discovered configuration

35
00:01:30,159 --> 00:01:36,079
tools the power of cf engine and puppet

36
00:01:33,680 --> 00:01:37,920
but for whatever reason i never liked

37
00:01:36,079 --> 00:01:40,479
either one of them

38
00:01:37,920 --> 00:01:42,479
and eventually in 2012 i actually

39
00:01:40,479 --> 00:01:45,840
discovered ansible

40
00:01:42,479 --> 00:01:49,119
when i first started to use siber i only

41
00:01:45,840 --> 00:01:51,119
used the very basic module like scrib

42
00:01:49,119 --> 00:01:54,079
to run my shell script

43
00:01:51,119 --> 00:01:57,439
and over the time i slowly understand

44
00:01:54,079 --> 00:02:00,240
the power of ansible module and i move

45
00:01:57,439 --> 00:02:02,479
my shell script into ansible module

46
00:02:00,240 --> 00:02:05,520
and eventually i

47
00:02:02,479 --> 00:02:07,680
organize my ansible into rows

48
00:02:05,520 --> 00:02:10,000
and today i'm going to share the two

49
00:02:07,680 --> 00:02:12,160
extreme ends of my journey

50
00:02:10,000 --> 00:02:14,720
the dark age when i use salscript for

51
00:02:12,160 --> 00:02:18,160
configuration and the bright galaxy when

52
00:02:14,720 --> 00:02:19,040
i start to play with nc bird

53
00:02:18,160 --> 00:02:20,640
but

54
00:02:19,040 --> 00:02:23,520
who am i

55
00:02:20,640 --> 00:02:26,640
my name is dan sir heng

56
00:02:23,520 --> 00:02:29,200
that's the cartoon sketch of me

57
00:02:26,640 --> 00:02:30,400
but in australia i'm actually called sir

58
00:02:29,200 --> 00:02:32,959
hang ten

59
00:02:30,400 --> 00:02:35,519
also known by my last name tan

60
00:02:32,959 --> 00:02:38,000
but some people still calling me by my

61
00:02:35,519 --> 00:02:40,800
first name which is sir

62
00:02:38,000 --> 00:02:43,519
uh i answer to anyone of that

63
00:02:40,800 --> 00:02:44,720
and um i'm a linux user a linux

64
00:02:43,519 --> 00:02:46,879
enthusiast

65
00:02:44,720 --> 00:02:49,440
which i have been

66
00:02:46,879 --> 00:02:51,920
playing or learn about computers since

67
00:02:49,440 --> 00:02:52,800
the 90s i start with playing computer

68
00:02:51,920 --> 00:02:55,920
games

69
00:02:52,800 --> 00:02:58,640
not too sure anyone know karateka

70
00:02:55,920 --> 00:03:01,200
command conquer counter-strike and

71
00:02:58,640 --> 00:03:05,440
counter-strike global offense and so on

72
00:03:01,200 --> 00:03:06,560
those are a few games i play in previous

73
00:03:05,440 --> 00:03:08,239
and then

74
00:03:06,560 --> 00:03:12,480
when i graduated in

75
00:03:08,239 --> 00:03:15,280
year 2000 i got employed as a

76
00:03:12,480 --> 00:03:17,200
junior system administrator

77
00:03:15,280 --> 00:03:19,200
web developers kind of position in an

78
00:03:17,200 --> 00:03:20,159
e-commerce

79
00:03:19,200 --> 00:03:22,480
company

80
00:03:20,159 --> 00:03:24,720
which they have a fleet of

81
00:03:22,480 --> 00:03:25,680
five physical servers that's running on

82
00:03:24,720 --> 00:03:28,080
linux

83
00:03:25,680 --> 00:03:30,720
and they're providing the e-commerce

84
00:03:28,080 --> 00:03:34,000
solution to the customer and that's when

85
00:03:30,720 --> 00:03:36,799
i discover and learn about linux

86
00:03:34,000 --> 00:03:38,640
and since then i've been learning living

87
00:03:36,799 --> 00:03:41,680
and learning linux

88
00:03:38,640 --> 00:03:44,319
linux become my bread and butter so much

89
00:03:41,680 --> 00:03:46,319
that i'm now being employed as linux

90
00:03:44,319 --> 00:03:48,480
system administrator

91
00:03:46,319 --> 00:03:51,760
if i'm not wearing my geeky hat i

92
00:03:48,480 --> 00:03:55,200
actually love watching anime cartoon and

93
00:03:51,760 --> 00:03:58,159
all sorts of movies and i

94
00:03:55,200 --> 00:04:01,040
if i have time i tend to build my lego

95
00:03:58,159 --> 00:04:02,640
if i have place to actually display it

96
00:04:01,040 --> 00:04:05,519
if not there will be n up in the box

97
00:04:02,640 --> 00:04:06,640
behind me it's still in the box

98
00:04:05,519 --> 00:04:09,280
so

99
00:04:06,640 --> 00:04:11,599
what is this configuration and why do i

100
00:04:09,280 --> 00:04:15,200
think it's important especially to linux

101
00:04:11,599 --> 00:04:17,359
system administration like myself

102
00:04:15,200 --> 00:04:19,600
configuration is very very important

103
00:04:17,359 --> 00:04:20,799
because they actually make the it system

104
00:04:19,600 --> 00:04:22,800
work

105
00:04:20,799 --> 00:04:24,320
imagine that you have a apache server

106
00:04:22,800 --> 00:04:26,000
that you installed

107
00:04:24,320 --> 00:04:27,440
but you didn't do any setup and

108
00:04:26,000 --> 00:04:29,840
configuration

109
00:04:27,440 --> 00:04:32,240
do you think you'll be able to

110
00:04:29,840 --> 00:04:34,080
serve your company website

111
00:04:32,240 --> 00:04:35,440
how about you have just installed

112
00:04:34,080 --> 00:04:37,520
mariadb

113
00:04:35,440 --> 00:04:40,000
do you think you'll be able to log in

114
00:04:37,520 --> 00:04:42,720
and enter data without proper setup and

115
00:04:40,000 --> 00:04:44,080
configuration i doubt you can

116
00:04:42,720 --> 00:04:45,199
and that's why

117
00:04:44,080 --> 00:04:47,280
we need

118
00:04:45,199 --> 00:04:49,680
a discipline an engineering process

119
00:04:47,280 --> 00:04:52,160
configuration management that will help

120
00:04:49,680 --> 00:04:55,199
us to establish and maintain the

121
00:04:52,160 --> 00:04:57,360
consistency in the it infrastructure by

122
00:04:55,199 --> 00:04:58,639
ensuring our design

123
00:04:57,360 --> 00:05:01,120
our system

124
00:04:58,639 --> 00:05:03,360
the state of our application and

125
00:05:01,120 --> 00:05:06,479
services in the environment they are

126
00:05:03,360 --> 00:05:08,240
running in being managed tracked and

127
00:05:06,479 --> 00:05:09,120
trusted

128
00:05:08,240 --> 00:05:11,919
to me

129
00:05:09,120 --> 00:05:13,759
a tool that do that is very important

130
00:05:11,919 --> 00:05:16,639
because it will

131
00:05:13,759 --> 00:05:19,039
be the utility to ensure the consistency

132
00:05:16,639 --> 00:05:21,680
that we want in our infrastructure it

133
00:05:19,039 --> 00:05:24,400
will also be the enablement to ensure

134
00:05:21,680 --> 00:05:26,479
that we can scale up or down our

135
00:05:24,400 --> 00:05:29,440
infrastructure and software

136
00:05:26,479 --> 00:05:32,320
and lastly the most important bit to me

137
00:05:29,440 --> 00:05:35,120
is he actually remove and reduce all the

138
00:05:32,320 --> 00:05:36,960
repetitive and boring bits of system

139
00:05:35,120 --> 00:05:40,080
administration and configuration tasks

140
00:05:36,960 --> 00:05:41,600
that i've been doing manually

141
00:05:40,080 --> 00:05:43,360
now

142
00:05:41,600 --> 00:05:45,759
let me bring you back in time to the

143
00:05:43,360 --> 00:05:48,479
dark edge when i do shell script

144
00:05:45,759 --> 00:05:48,479
configuration

145
00:05:49,759 --> 00:05:54,000
i will need the

146
00:05:51,360 --> 00:05:56,240
the menu apache web server installation

147
00:05:54,000 --> 00:05:59,680
on center 7 and then i'm going to

148
00:05:56,240 --> 00:06:00,639
customize my web server landing page

149
00:05:59,680 --> 00:06:02,560
so

150
00:06:00,639 --> 00:06:04,240
first i need to do

151
00:06:02,560 --> 00:06:05,680
is

152
00:06:04,240 --> 00:06:07,840
sudo to root

153
00:06:05,680 --> 00:06:12,720
and then i'm going to install

154
00:06:07,840 --> 00:06:14,800
the web server with a php module

155
00:06:12,720 --> 00:06:17,440
after installation of apache web server

156
00:06:14,800 --> 00:06:19,520
complete we need to enable it and start

157
00:06:17,440 --> 00:06:20,960
the service and the next thing i'm going

158
00:06:19,520 --> 00:06:24,240
to do is i'm going to create a

159
00:06:20,960 --> 00:06:25,759
customized landing page as well as a php

160
00:06:24,240 --> 00:06:27,600
info page

161
00:06:25,759 --> 00:06:29,840
let's check the

162
00:06:27,600 --> 00:06:32,319
customize web server

163
00:06:29,840 --> 00:06:33,520
yup and let's see the

164
00:06:32,319 --> 00:06:36,639
info page

165
00:06:33,520 --> 00:06:39,600
for the php and we would be using

166
00:06:36,639 --> 00:06:42,160
php version 5. installing apache web

167
00:06:39,600 --> 00:06:44,400
server with a customized index page is

168
00:06:42,160 --> 00:06:46,080
very simple and straightforward with

169
00:06:44,400 --> 00:06:49,360
manual steps

170
00:06:46,080 --> 00:06:51,199
but that is only possible or feasible if

171
00:06:49,360 --> 00:06:52,080
you have one two

172
00:06:51,199 --> 00:06:53,199
three

173
00:06:52,080 --> 00:06:55,280
maybe

174
00:06:53,199 --> 00:06:58,000
five web servers

175
00:06:55,280 --> 00:06:59,520
but in a web server farm usually we have

176
00:06:58,000 --> 00:07:01,919
more than 10

177
00:06:59,520 --> 00:07:05,039
hundred or thousand web servers is going

178
00:07:01,919 --> 00:07:06,080
to be a lot of menu typing when we do it

179
00:07:05,039 --> 00:07:09,680
manually

180
00:07:06,080 --> 00:07:12,000
therefore i started to use shell script

181
00:07:09,680 --> 00:07:14,080
i created a few cell script based on the

182
00:07:12,000 --> 00:07:17,599
manual step that i have done for example

183
00:07:14,080 --> 00:07:19,039
centos 7 setup.sh i have jump install

184
00:07:17,599 --> 00:07:21,440
and the customize

185
00:07:19,039 --> 00:07:23,759
index page but

186
00:07:21,440 --> 00:07:26,400
this file is only cater for

187
00:07:23,759 --> 00:07:29,199
centos 7 installation it will not work

188
00:07:26,400 --> 00:07:31,280
for other distro for example ubuntu

189
00:07:29,199 --> 00:07:33,440
because ubuntu used a different

190
00:07:31,280 --> 00:07:37,120
application installation method called

191
00:07:33,440 --> 00:07:40,319
apt and the apache web server in ubuntu

192
00:07:37,120 --> 00:07:41,599
is not http is apache too

193
00:07:40,319 --> 00:07:43,520
and therefore i need to create a

194
00:07:41,599 --> 00:07:46,080
separate script for it

195
00:07:43,520 --> 00:07:48,639
uh if i have other digital i might need

196
00:07:46,080 --> 00:07:51,199
to create more script to educator for

197
00:07:48,639 --> 00:07:54,240
that those web server installation

198
00:07:51,199 --> 00:07:57,199
i created one third script which

199
00:07:54,240 --> 00:07:59,919
combines the center 7 and ubuntu into

200
00:07:57,199 --> 00:08:02,800
this script which this script actually

201
00:07:59,919 --> 00:08:05,440
have a detection of operating system

202
00:08:02,800 --> 00:08:07,919
that the script is going to be run on

203
00:08:05,440 --> 00:08:10,080
and then based on the operating system

204
00:08:07,919 --> 00:08:11,120
on this show for example in this case

205
00:08:10,080 --> 00:08:14,960
centos

206
00:08:11,120 --> 00:08:16,879
or ubuntu it will install httpd or

207
00:08:14,960 --> 00:08:19,360
apache web server

208
00:08:16,879 --> 00:08:20,400
now i'm going to run this guy

209
00:08:19,360 --> 00:08:21,360
against

210
00:08:20,400 --> 00:08:25,440
uh

211
00:08:21,360 --> 00:08:28,240
my web server which is in this file

212
00:08:25,440 --> 00:08:30,080
7 2 and ubuntu and i'm going to run it

213
00:08:28,240 --> 00:08:32,800
in a

214
00:08:30,080 --> 00:08:32,800
in a for loop

215
00:08:33,919 --> 00:08:37,839
the apache web server setup is complete

216
00:08:36,320 --> 00:08:41,519
on that 3

217
00:08:37,839 --> 00:08:44,159
system let us go into them and verify

218
00:08:41,519 --> 00:08:45,920
the landing page which is the customized

219
00:08:44,159 --> 00:08:48,320
landing page that i have

220
00:08:45,920 --> 00:08:51,040
same go to here and

221
00:08:48,320 --> 00:08:51,040
the ubuntu

222
00:08:53,760 --> 00:08:58,480
as you can see from the demonstration

223
00:08:56,320 --> 00:09:01,920
using shell script as your configuration

224
00:08:58,480 --> 00:09:03,920
tools is going to be disaster

225
00:09:01,920 --> 00:09:06,800
imagine that you're trying to set up 500

226
00:09:03,920 --> 00:09:09,360
servers used completely by shell script

227
00:09:06,800 --> 00:09:10,959
and access search you take a while and

228
00:09:09,360 --> 00:09:13,519
you will not be

229
00:09:10,959 --> 00:09:17,519
nice especially sales script is not a

230
00:09:13,519 --> 00:09:17,519
configuration tools to start with

231
00:09:17,600 --> 00:09:22,959
and that's why in 2012 i start looking

232
00:09:20,480 --> 00:09:25,200
for a better tools to replace my shell

233
00:09:22,959 --> 00:09:28,080
script configuration

234
00:09:25,200 --> 00:09:30,399
i have used cf engine in the past and

235
00:09:28,080 --> 00:09:33,279
just started to learn puppet during that

236
00:09:30,399 --> 00:09:34,640
time but neither of these tools fulfill

237
00:09:33,279 --> 00:09:36,959
what i think

238
00:09:34,640 --> 00:09:38,880
i need in a configuration

239
00:09:36,959 --> 00:09:40,000
management tools

240
00:09:38,880 --> 00:09:42,240
so

241
00:09:40,000 --> 00:09:43,120
what i want is something too simple to

242
00:09:42,240 --> 00:09:45,839
start

243
00:09:43,120 --> 00:09:48,160
which can quickly use and

244
00:09:45,839 --> 00:09:51,040
adapt my shell script instead of

245
00:09:48,160 --> 00:09:52,720
rewriting a whole bunch of configuration

246
00:09:51,040 --> 00:09:53,680
uh into the tools

247
00:09:52,720 --> 00:09:56,480
i

248
00:09:53,680 --> 00:09:59,440
do not want to have extra connection

249
00:09:56,480 --> 00:10:02,839
maybe just use ssh like how i have run

250
00:09:59,440 --> 00:10:05,680
my shell script over the ssh

251
00:10:02,839 --> 00:10:07,519
channel i definitely do not want to have

252
00:10:05,680 --> 00:10:08,800
additional package to be installed on

253
00:10:07,519 --> 00:10:09,760
the target notes that i'm going to

254
00:10:08,800 --> 00:10:11,839
manage

255
00:10:09,760 --> 00:10:13,839
because installing additional package

256
00:10:11,839 --> 00:10:15,120
there mean that i need to do extra work

257
00:10:13,839 --> 00:10:17,040
to ensure

258
00:10:15,120 --> 00:10:19,279
the application or the daemon that

259
00:10:17,040 --> 00:10:20,079
running on the target notes is compliant

260
00:10:19,279 --> 00:10:22,160
and

261
00:10:20,079 --> 00:10:24,000
workable in the

262
00:10:22,160 --> 00:10:25,920
with the masternodes or the management

263
00:10:24,000 --> 00:10:27,279
nodes

264
00:10:25,920 --> 00:10:29,279
i want

265
00:10:27,279 --> 00:10:30,399
a configuration tool that

266
00:10:29,279 --> 00:10:33,120
can use

267
00:10:30,399 --> 00:10:34,959
an easy and understandable syntax

268
00:10:33,120 --> 00:10:37,040
something that descriptive

269
00:10:34,959 --> 00:10:39,120
uh telling us what is going to do what

270
00:10:37,040 --> 00:10:42,000
is going to run

271
00:10:39,120 --> 00:10:44,079
and lastly i want the configuration

272
00:10:42,000 --> 00:10:45,839
setup to be item potent

273
00:10:44,079 --> 00:10:48,480
which means that configuration can be

274
00:10:45,839 --> 00:10:50,480
re-applied as many times as it runs

275
00:10:48,480 --> 00:10:52,640
without changing the end result beyond

276
00:10:50,480 --> 00:10:54,000
what have been defined

277
00:10:52,640 --> 00:10:56,640
and that's when

278
00:10:54,000 --> 00:10:59,519
i discovered ansible

279
00:10:56,640 --> 00:11:01,519
ansible was first introduced by michael

280
00:10:59,519 --> 00:11:03,760
diehan in 2012

281
00:11:01,519 --> 00:11:05,839
mainly write written in python which is

282
00:11:03,760 --> 00:11:08,320
the favorite language for everyone that

283
00:11:05,839 --> 00:11:09,279
do programming develop developers and so

284
00:11:08,320 --> 00:11:12,079
on

285
00:11:09,279 --> 00:11:15,279
but the configuration file in in the

286
00:11:12,079 --> 00:11:17,360
playbook actually use yamaha

287
00:11:15,279 --> 00:11:20,320
yamaha itself is

288
00:11:17,360 --> 00:11:22,480
very fairly easy to understand language

289
00:11:20,320 --> 00:11:25,200
plus and simple also can start with a

290
00:11:22,480 --> 00:11:27,040
simple architecture any one of the notes

291
00:11:25,200 --> 00:11:29,519
that have ansible in store

292
00:11:27,040 --> 00:11:33,760
can be the control or management node to

293
00:11:29,519 --> 00:11:36,800
be used to manage the fleet of systems

294
00:11:33,760 --> 00:11:39,440
and that's why i choose ansible

295
00:11:36,800 --> 00:11:41,519
a few more other reasons i have chosen

296
00:11:39,440 --> 00:11:43,760
ansible at the end is

297
00:11:41,519 --> 00:11:46,000
is agentless you do not need to install

298
00:11:43,760 --> 00:11:48,560
additional package on

299
00:11:46,000 --> 00:11:49,760
the target notes you just require ssh

300
00:11:48,560 --> 00:11:52,000
and python

301
00:11:49,760 --> 00:11:54,560
as i mentioned earlier a yamaha is a

302
00:11:52,000 --> 00:11:56,639
very descriptive language is so

303
00:11:54,560 --> 00:11:58,079
descriptive and human readable and easy

304
00:11:56,639 --> 00:11:59,040
to understand

305
00:11:58,079 --> 00:12:00,880
that

306
00:11:59,040 --> 00:12:03,440
i if i give you the code you mostly can

307
00:12:00,880 --> 00:12:06,079
decipher what is supposed to be run

308
00:12:03,440 --> 00:12:08,079
and you also support item potency

309
00:12:06,079 --> 00:12:09,440
it ensure the same config is maintained

310
00:12:08,079 --> 00:12:11,519
over

311
00:12:09,440 --> 00:12:12,880
over the target notes no matter how many

312
00:12:11,519 --> 00:12:15,440
time we rerun

313
00:12:12,880 --> 00:12:15,440
and we run

314
00:12:15,839 --> 00:12:20,560
and here i'm going to show you a simple

315
00:12:18,480 --> 00:12:23,040
uh ansible architecture design that i

316
00:12:20,560 --> 00:12:25,040
have done which is used in this we which

317
00:12:23,040 --> 00:12:26,720
is going to use in the next demo

318
00:12:25,040 --> 00:12:28,639
i have installed

319
00:12:26,720 --> 00:12:31,360
ansible into my management notes which

320
00:12:28,639 --> 00:12:33,600
is mgt and within the management node

321
00:12:31,360 --> 00:12:36,079
you still need one more

322
00:12:33,600 --> 00:12:38,560
key piece which is the inventory

323
00:12:36,079 --> 00:12:40,720
usually it's a text file that have the

324
00:12:38,560 --> 00:12:41,920
list of hosts that the ansible is going

325
00:12:40,720 --> 00:12:43,680
to manage

326
00:12:41,920 --> 00:12:48,160
and obviously we will need access

327
00:12:43,680 --> 00:12:50,480
connectivity to our target host

328
00:12:48,160 --> 00:12:52,079
and now

329
00:12:50,480 --> 00:12:54,560
in this demo i'm going to show you how

330
00:12:52,079 --> 00:12:58,000
to do it i have shown you how to install

331
00:12:54,560 --> 00:13:00,240
apache web server with a shell script

332
00:12:58,000 --> 00:13:03,600
and now i'm going to use the same shelf

333
00:13:00,240 --> 00:13:07,279
script and run it with ncbi

334
00:13:03,600 --> 00:13:10,079
in order to run ncbr i will need to have

335
00:13:07,279 --> 00:13:12,240
ncba installed on my

336
00:13:10,079 --> 00:13:16,639
control node mgt

337
00:13:12,240 --> 00:13:16,639
which i'm going to install it wire yum

338
00:13:17,680 --> 00:13:22,720
next i will need an inventory file

339
00:13:20,800 --> 00:13:25,760
the inventory file

340
00:13:22,720 --> 00:13:28,720
defines hosts and group of hosts which

341
00:13:25,760 --> 00:13:32,399
the ansible will operate upon

342
00:13:28,720 --> 00:13:34,399
for this i'm going to use the web server

343
00:13:32,399 --> 00:13:37,760
text file that we have created as an

344
00:13:34,399 --> 00:13:40,639
ansible inventory i'm going to create a

345
00:13:37,760 --> 00:13:43,760
simple ansible playbook

346
00:13:40,639 --> 00:13:44,880
which i'm going to call the same thing

347
00:13:43,760 --> 00:13:46,639
the script

348
00:13:44,880 --> 00:13:48,399
module as well as the script i'm going

349
00:13:46,639 --> 00:13:51,519
to run

350
00:13:48,399 --> 00:13:52,800
and we're going to run this

351
00:13:51,519 --> 00:13:56,079
using

352
00:13:52,800 --> 00:13:56,880
ansible playbook command

353
00:13:56,079 --> 00:13:58,639
now

354
00:13:56,880 --> 00:14:00,240
looking at this output

355
00:13:58,639 --> 00:14:01,199
it actually tells us

356
00:14:00,240 --> 00:14:02,720
task

357
00:14:01,199 --> 00:14:05,120
reporting

358
00:14:02,720 --> 00:14:07,040
it first he gathered the information

359
00:14:05,120 --> 00:14:08,639
facts from

360
00:14:07,040 --> 00:14:10,639
our target notes

361
00:14:08,639 --> 00:14:12,959
and then telling us what he's doing is

362
00:14:10,639 --> 00:14:15,040
setting up apache and there's something

363
00:14:12,959 --> 00:14:17,120
changed on those boxes

364
00:14:15,040 --> 00:14:18,480
and this is the summary report of what

365
00:14:17,120 --> 00:14:20,720
happened

366
00:14:18,480 --> 00:14:23,680
since we are running as a script it will

367
00:14:20,720 --> 00:14:25,680
not be in item polden it will still tell

368
00:14:23,680 --> 00:14:26,880
us something have changed

369
00:14:25,680 --> 00:14:29,360
which

370
00:14:26,880 --> 00:14:30,959
is part of the dilemma when we use the

371
00:14:29,360 --> 00:14:34,160
module script

372
00:14:30,959 --> 00:14:37,760
the true power of ncbo is when you are

373
00:14:34,160 --> 00:14:39,199
using or utilizing ansible module

374
00:14:37,760 --> 00:14:41,760
correctly

375
00:14:39,199 --> 00:14:43,680
take for example

376
00:14:41,760 --> 00:14:47,040
i have created

377
00:14:43,680 --> 00:14:49,360
a myapp setup.yaml which is an ancient

378
00:14:47,040 --> 00:14:52,639
playbook using the correct and simple

379
00:14:49,360 --> 00:14:55,199
module instead of using script

380
00:14:52,639 --> 00:14:58,240
in this new ncbi playbook

381
00:14:55,199 --> 00:15:01,279
instead of using script module i'm using

382
00:14:58,240 --> 00:15:03,920
other ansible modules such as package to

383
00:15:01,279 --> 00:15:06,240
install relevant package for santos

384
00:15:03,920 --> 00:15:07,600
and i'm using service to start the

385
00:15:06,240 --> 00:15:10,399
service

386
00:15:07,600 --> 00:15:14,399
http service for centos as well

387
00:15:10,399 --> 00:15:16,800
as for installing apache in ubuntu i

388
00:15:14,399 --> 00:15:19,760
need to install apache tool as well as

389
00:15:16,800 --> 00:15:23,199
enable apache to service

390
00:15:19,760 --> 00:15:25,680
to customize my index base page based on

391
00:15:23,199 --> 00:15:27,360
the hostname i used

392
00:15:25,680 --> 00:15:30,240
the template module

393
00:15:27,360 --> 00:15:33,279
which utilize or convert

394
00:15:30,240 --> 00:15:37,199
and simple facts or variable and lastly

395
00:15:33,279 --> 00:15:39,839
i use the copy module to copy the files

396
00:15:37,199 --> 00:15:41,759
from the management notes into the

397
00:15:39,839 --> 00:15:45,519
target notes

398
00:15:41,759 --> 00:15:47,680
for this i have created a new inventory

399
00:15:45,519 --> 00:15:50,399
file

400
00:15:47,680 --> 00:15:53,920
host and within this inventory file i

401
00:15:50,399 --> 00:15:56,800
have grouped all three of my web servers

402
00:15:53,920 --> 00:15:58,480
under a host group name web servers

403
00:15:56,800 --> 00:16:01,199
we are going to run

404
00:15:58,480 --> 00:16:01,199
our new

405
00:16:02,399 --> 00:16:08,959
playbook

406
00:16:03,440 --> 00:16:11,199
and against the inventory part

407
00:16:08,959 --> 00:16:12,959
as you can see from this

408
00:16:11,199 --> 00:16:15,440
and simple run

409
00:16:12,959 --> 00:16:18,240
the output is much

410
00:16:15,440 --> 00:16:20,240
nicer it tell you what you have done and

411
00:16:18,240 --> 00:16:21,759
if it's already done for example php

412
00:16:20,240 --> 00:16:22,959
have been installed you will just show

413
00:16:21,759 --> 00:16:24,560
you okay

414
00:16:22,959 --> 00:16:26,680
and if we have something changed for

415
00:16:24,560 --> 00:16:28,800
example my template is different for the

416
00:16:26,680 --> 00:16:30,399
index.html it will tell you something

417
00:16:28,800 --> 00:16:34,160
have changed

418
00:16:30,399 --> 00:16:36,959
and if i run this playbook again

419
00:16:34,160 --> 00:16:38,079
you will notice that there's nothing

420
00:16:36,959 --> 00:16:40,399
changed

421
00:16:38,079 --> 00:16:43,519
anymore because everyone everything have

422
00:16:40,399 --> 00:16:46,000
been sell according to our ansible

423
00:16:43,519 --> 00:16:46,000
playbook

424
00:16:46,320 --> 00:16:51,839
we have used ncbi playbook to sell up

425
00:16:49,680 --> 00:16:52,880
and configure our web server

426
00:16:51,839 --> 00:16:55,680
using

427
00:16:52,880 --> 00:16:58,399
myself setup.yaml

428
00:16:55,680 --> 00:16:59,839
now i'm going to show you how do we make

429
00:16:58,399 --> 00:17:02,240
our

430
00:16:59,839 --> 00:17:03,360
mys my setup.yaml

431
00:17:02,240 --> 00:17:06,319
modular

432
00:17:03,360 --> 00:17:07,600
i'm going to split my task into three

433
00:17:06,319 --> 00:17:09,839
different rows

434
00:17:07,600 --> 00:17:12,000
now let's go into rows and you will see

435
00:17:09,839 --> 00:17:14,400
that i have three rows a rows that take

436
00:17:12,000 --> 00:17:16,400
care of the part for ubuntu the rows

437
00:17:14,400 --> 00:17:19,520
that take care of santos and a row that

438
00:17:16,400 --> 00:17:20,880
take care of apache configuration

439
00:17:19,520 --> 00:17:23,039
we will look at

440
00:17:20,880 --> 00:17:26,240
our centos row

441
00:17:23,039 --> 00:17:27,760
the main playbook here is under task

442
00:17:26,240 --> 00:17:30,480
main

443
00:17:27,760 --> 00:17:32,880
and in here you will see that i have

444
00:17:30,480 --> 00:17:34,640
configured to have a

445
00:17:32,880 --> 00:17:36,640
additional package to be installed for

446
00:17:34,640 --> 00:17:39,840
centos and then i want to remove

447
00:17:36,640 --> 00:17:41,440
unwanted package here

448
00:17:39,840 --> 00:17:43,120
in apache

449
00:17:41,440 --> 00:17:44,000
i will have

450
00:17:43,120 --> 00:17:46,240
a

451
00:17:44,000 --> 00:17:48,880
place where i need to install apache web

452
00:17:46,240 --> 00:17:50,640
server for centos and apache web server

453
00:17:48,880 --> 00:17:53,520
for ubuntu

454
00:17:50,640 --> 00:17:55,280
as well as extra module that we require

455
00:17:53,520 --> 00:17:58,880
for our web server

456
00:17:55,280 --> 00:18:02,320
plus the customization of our

457
00:17:58,880 --> 00:18:06,080
landing page as for this

458
00:18:02,320 --> 00:18:08,880
um i will create i have created a new

459
00:18:06,080 --> 00:18:09,919
playbook called site.yaml which will

460
00:18:08,880 --> 00:18:11,840
call

461
00:18:09,919 --> 00:18:13,360
each of the row

462
00:18:11,840 --> 00:18:16,240
when it run

463
00:18:13,360 --> 00:18:18,320
so for example i have centos that will

464
00:18:16,240 --> 00:18:19,840
only include the center package and

465
00:18:18,320 --> 00:18:21,520
ubuntu

466
00:18:19,840 --> 00:18:22,640
this will be run for

467
00:18:21,520 --> 00:18:24,000
all

468
00:18:22,640 --> 00:18:26,160
hosts

469
00:18:24,000 --> 00:18:28,960
but if you are part of

470
00:18:26,160 --> 00:18:31,120
web server you will run

471
00:18:28,960 --> 00:18:32,799
and set up apache

472
00:18:31,120 --> 00:18:36,880
now let us

473
00:18:32,799 --> 00:18:36,880
try out this playbook

474
00:18:37,840 --> 00:18:42,280
against our existing host

475
00:18:42,320 --> 00:18:46,320
and you can see that there's no error

476
00:18:44,720 --> 00:18:49,280
and there's exchange

477
00:18:46,320 --> 00:18:50,960
if we scroll up and see the output

478
00:18:49,280 --> 00:18:52,559
you'll notice that

479
00:18:50,960 --> 00:18:53,760
you will install

480
00:18:52,559 --> 00:18:57,200
santos

481
00:18:53,760 --> 00:18:59,280
stuff for only centos systems and you

482
00:18:57,200 --> 00:19:00,880
install ubuntu

483
00:18:59,280 --> 00:19:04,080
row when it's

484
00:19:00,880 --> 00:19:06,880
detected is ubuntu but if it's a apache

485
00:19:04,080 --> 00:19:09,440
row because this three servers is in the

486
00:19:06,880 --> 00:19:13,280
web server's host group you will

487
00:19:09,440 --> 00:19:13,280
install apache and configure

488
00:19:15,679 --> 00:19:20,799
in the demo i show you how we can

489
00:19:18,160 --> 00:19:23,360
quickly use the shell script in ansible

490
00:19:20,799 --> 00:19:26,640
and then how do we quickly do a nc play

491
00:19:23,360 --> 00:19:27,760
play and simple playbook before we

492
00:19:26,640 --> 00:19:29,679
go into

493
00:19:27,760 --> 00:19:32,000
ansible row

494
00:19:29,679 --> 00:19:34,960
so what is ancieboro that i demonstrate

495
00:19:32,000 --> 00:19:38,080
in the example earlier it's just a way

496
00:19:34,960 --> 00:19:40,960
for us to develop reusable playbook by

497
00:19:38,080 --> 00:19:43,679
grouping the component and encapsulating

498
00:19:40,960 --> 00:19:44,720
the tasks the variable files

499
00:19:43,679 --> 00:19:46,480
together

500
00:19:44,720 --> 00:19:47,360
it actually helps

501
00:19:46,480 --> 00:19:49,840
to

502
00:19:47,360 --> 00:19:51,120
modularize and organize our ansible

503
00:19:49,840 --> 00:19:52,960
playbook

504
00:19:51,120 --> 00:19:55,520
but the good news is we do not need to

505
00:19:52,960 --> 00:19:59,120
write all the ansible rules

506
00:19:55,520 --> 00:20:02,480
by ourselves you can always go on to nc

507
00:19:59,120 --> 00:20:04,080
by galaxy and search for other expert

508
00:20:02,480 --> 00:20:06,640
written roles

509
00:20:04,080 --> 00:20:09,200
you the easiest way that i find is go to

510
00:20:06,640 --> 00:20:12,000
the ansible galaxy website and search

511
00:20:09,200 --> 00:20:13,919
for the role or contain that you want or

512
00:20:12,000 --> 00:20:15,120
if you want you still can run it via

513
00:20:13,919 --> 00:20:17,760
command line

514
00:20:15,120 --> 00:20:19,360
using ncbi galaxy search and the keyword

515
00:20:17,760 --> 00:20:22,799
that you're looking for

516
00:20:19,360 --> 00:20:25,919
as my favorite author in ansible galaxy

517
00:20:22,799 --> 00:20:27,120
jeff gerling aka girling guy have

518
00:20:25,919 --> 00:20:29,919
marvelous

519
00:20:27,120 --> 00:20:31,280
role standard written in ancient galaxy

520
00:20:29,919 --> 00:20:33,679
check him out

521
00:20:31,280 --> 00:20:36,080
one last thing good about ansible galaxy

522
00:20:33,679 --> 00:20:37,520
is it actually help you to have a

523
00:20:36,080 --> 00:20:39,679
standardized

524
00:20:37,520 --> 00:20:43,600
role structured when you

525
00:20:39,679 --> 00:20:43,600
want to write your own ansible rows

526
00:20:43,679 --> 00:20:48,480
i'm going to show you when you run

527
00:20:46,240 --> 00:20:50,640
on the command line and simple galaxy

528
00:20:48,480 --> 00:20:53,679
this is what you will find

529
00:20:50,640 --> 00:20:55,600
which i find that is not really

530
00:20:53,679 --> 00:20:58,080
uh interesting to look at

531
00:20:55,600 --> 00:21:00,159
but if you search it on the website

532
00:20:58,080 --> 00:21:02,400
this is what you're gonna find and you

533
00:21:00,159 --> 00:21:04,960
will have a lot of more information this

534
00:21:02,400 --> 00:21:07,200
is what apache and how many people have

535
00:21:04,960 --> 00:21:10,159
downloaded and this is my favorite

536
00:21:07,200 --> 00:21:10,159
author building

537
00:21:10,640 --> 00:21:14,240
so far

538
00:21:12,000 --> 00:21:15,679
i have only been using ancient on the

539
00:21:14,240 --> 00:21:17,360
terminal

540
00:21:15,679 --> 00:21:20,080
using command line

541
00:21:17,360 --> 00:21:22,159
but with a great tool such as ansible if

542
00:21:20,080 --> 00:21:23,760
you only do things via command line by

543
00:21:22,159 --> 00:21:24,880
typing it

544
00:21:23,760 --> 00:21:27,120
i believe

545
00:21:24,880 --> 00:21:30,640
eventually we will have a lot of problem

546
00:21:27,120 --> 00:21:33,280
because as a human we tend to type and

547
00:21:30,640 --> 00:21:35,600
cause typo error you might be targeting

548
00:21:33,280 --> 00:21:37,440
a wrong system because

549
00:21:35,600 --> 00:21:39,679
you just target a wrong environment

550
00:21:37,440 --> 00:21:40,400
instead of dev you go to pro

551
00:21:39,679 --> 00:21:42,559
but

552
00:21:40,400 --> 00:21:46,240
don't you worry there's actually an open

553
00:21:42,559 --> 00:21:48,320
source project named awx which actually

554
00:21:46,240 --> 00:21:51,200
provides a pretty decent i would say

555
00:21:48,320 --> 00:21:52,400
nice web user interface for newbies that

556
00:21:51,200 --> 00:21:54,960
does not

557
00:21:52,400 --> 00:21:57,280
does not really fancy command line and

558
00:21:54,960 --> 00:21:59,520
rest api for people that doing

559
00:21:57,280 --> 00:22:00,640
development develop development and

560
00:21:59,520 --> 00:22:02,400
devops

561
00:22:00,640 --> 00:22:05,440
and you actually have to the task engine

562
00:22:02,400 --> 00:22:07,520
is built on top of our assisting uh

563
00:22:05,440 --> 00:22:10,559
ansible core infrastructure you don't

564
00:22:07,520 --> 00:22:13,440
need anything extra and android x itself

565
00:22:10,559 --> 00:22:15,120
will give you a centralized location

566
00:22:13,440 --> 00:22:16,480
to manage the ansible playbook and

567
00:22:15,120 --> 00:22:19,120
inventories

568
00:22:16,480 --> 00:22:20,720
and now let me quickly show you the demo

569
00:22:19,120 --> 00:22:25,200
how i use ansible

570
00:22:20,720 --> 00:22:28,799
awx to deploy my apache setup

571
00:22:25,200 --> 00:22:31,679
okay how we can import the ansible row

572
00:22:28,799 --> 00:22:32,880
that we have created earlier into the

573
00:22:31,679 --> 00:22:36,720
awx

574
00:22:32,880 --> 00:22:36,720
this is my aws demo box

575
00:22:38,080 --> 00:22:43,200
after you log in we should we need to

576
00:22:41,520 --> 00:22:45,200
actually create a project

577
00:22:43,200 --> 00:22:47,280
under project tab you're going to add a

578
00:22:45,200 --> 00:22:49,200
new project i'm going to name my project

579
00:22:47,280 --> 00:22:50,480
lca2

580
00:22:49,200 --> 00:22:52,640
and sybil

581
00:22:50,480 --> 00:22:54,720
i'm going to choose where the project is

582
00:22:52,640 --> 00:22:56,960
going to get the source from i'm going

583
00:22:54,720 --> 00:22:59,440
to get it from the github that i have

584
00:22:56,960 --> 00:22:59,440
created

585
00:22:59,520 --> 00:23:04,080
and i'm going to just save it

586
00:23:02,400 --> 00:23:06,480
after you save

587
00:23:04,080 --> 00:23:08,880
you can create inventory

588
00:23:06,480 --> 00:23:10,720
inventory like i said earlier is where

589
00:23:08,880 --> 00:23:13,280
you keep all your hosts

590
00:23:10,720 --> 00:23:14,799
information your remote target

591
00:23:13,280 --> 00:23:17,039
and for this i'm going to add a new

592
00:23:14,799 --> 00:23:18,799
inventory

593
00:23:17,039 --> 00:23:22,480
uh you can put anything here but i'm

594
00:23:18,799 --> 00:23:26,480
going to say ncbi 2022

595
00:23:22,480 --> 00:23:26,480
let's call it inventory

596
00:23:28,320 --> 00:23:32,960
and i'm going to save it after you save

597
00:23:30,720 --> 00:23:35,200
there's one important options here call

598
00:23:32,960 --> 00:23:37,200
source and this is important because

599
00:23:35,200 --> 00:23:39,840
this is

600
00:23:37,200 --> 00:23:42,080
a feature that let us source from the

601
00:23:39,840 --> 00:23:44,159
project that we have created earlier i'm

602
00:23:42,080 --> 00:23:47,760
going to source from the project

603
00:23:44,159 --> 00:23:48,720
and the project we have is lca 2022 and

604
00:23:47,760 --> 00:23:50,240
silver

605
00:23:48,720 --> 00:23:52,799
and i'm going to choose the inventory

606
00:23:50,240 --> 00:23:54,640
file that i have kept in my git report

607
00:23:52,799 --> 00:23:56,000
which is ancient host that we have been

608
00:23:54,640 --> 00:23:57,600
using

609
00:23:56,000 --> 00:24:00,480
and i'm going to name it

610
00:23:57,600 --> 00:24:02,240
i'm going to name this source host

611
00:24:00,480 --> 00:24:05,200
and i'm going to save

612
00:24:02,240 --> 00:24:07,520
and after i save i do a sync

613
00:24:05,200 --> 00:24:11,200
by doing a sync

614
00:24:07,520 --> 00:24:12,080
awx will actually import the host

615
00:24:11,200 --> 00:24:13,520
from

616
00:24:12,080 --> 00:24:17,039
this project

617
00:24:13,520 --> 00:24:19,679
into awx you will take a one

618
00:24:17,039 --> 00:24:22,640
let's come to here there you go and we

619
00:24:19,679 --> 00:24:24,960
will have our web server host group as

620
00:24:22,640 --> 00:24:26,960
well as the three web servers

621
00:24:24,960 --> 00:24:29,919
in the host group the next thing we need

622
00:24:26,960 --> 00:24:33,039
to do is to create an

623
00:24:29,919 --> 00:24:34,000
credential for remote login i'm going to

624
00:24:33,039 --> 00:24:36,559
use

625
00:24:34,000 --> 00:24:38,960
regram which is the default user that i

626
00:24:36,559 --> 00:24:40,720
have in my vm and i'm going to set up as

627
00:24:38,960 --> 00:24:44,080
a machine credential

628
00:24:40,720 --> 00:24:45,600
with the username migrant and with its

629
00:24:44,080 --> 00:24:48,159
password

630
00:24:45,600 --> 00:24:50,559
in a production environment i do not

631
00:24:48,159 --> 00:24:52,559
encourage you to use password please use

632
00:24:50,559 --> 00:24:53,600
accessory private key for

633
00:24:52,559 --> 00:24:55,679
login

634
00:24:53,600 --> 00:24:57,679
the next thing in here you should

635
00:24:55,679 --> 00:25:00,400
actually ensure that your previous

636
00:24:57,679 --> 00:25:03,679
exclamation method is set to sudo

637
00:25:00,400 --> 00:25:03,679
and we are going to save this

638
00:25:04,000 --> 00:25:10,880
the last part for getting awx working is

639
00:25:07,600 --> 00:25:12,840
we need to set up job template

640
00:25:10,880 --> 00:25:15,840
in here we're going to add a new job

641
00:25:12,840 --> 00:25:18,480
template and we are going to source it

642
00:25:15,840 --> 00:25:19,600
again from our project that we have done

643
00:25:18,480 --> 00:25:21,200
earlier

644
00:25:19,600 --> 00:25:23,919
and i'm going to choose a playbook and

645
00:25:21,200 --> 00:25:26,320
the playbook is site.yaml

646
00:25:23,919 --> 00:25:27,440
and i'm going to have my inventory point

647
00:25:26,320 --> 00:25:28,960
to

648
00:25:27,440 --> 00:25:32,000
this guy

649
00:25:28,960 --> 00:25:34,080
and to ensure i'm going to use very good

650
00:25:32,000 --> 00:25:34,960
and i'm going to say this

651
00:25:34,080 --> 00:25:35,840
is

652
00:25:34,960 --> 00:25:37,200
my

653
00:25:35,840 --> 00:25:40,799
lca

654
00:25:37,200 --> 00:25:43,120
2022 site setup

655
00:25:40,799 --> 00:25:45,520
after that is done make sure that you

656
00:25:43,120 --> 00:25:47,600
click on privilege escalation

657
00:25:45,520 --> 00:25:49,440
and if this is to meant to run

658
00:25:47,600 --> 00:25:51,520
repetitively

659
00:25:49,440 --> 00:25:53,679
enable fax storage as well that will

660
00:25:51,520 --> 00:25:54,880
speed up in the future

661
00:25:53,679 --> 00:25:57,600
run

662
00:25:54,880 --> 00:25:58,640
save after you save you have options to

663
00:25:57,600 --> 00:25:59,919
launch

664
00:25:58,640 --> 00:26:02,960
the job

665
00:25:59,919 --> 00:26:02,960
i will launch it now

666
00:26:06,000 --> 00:26:11,840
the job complete without any failure

667
00:26:09,120 --> 00:26:14,480
and we have a few changes in our centers

668
00:26:11,840 --> 00:26:16,320
and ubuntu setup

669
00:26:14,480 --> 00:26:19,520
if you scroll up further in the output

670
00:26:16,320 --> 00:26:22,640
windows you will notice that the output

671
00:26:19,520 --> 00:26:25,600
display here is quite similar to the

672
00:26:22,640 --> 00:26:28,159
output that we saw when we run ansible

673
00:26:25,600 --> 00:26:30,480
via the command line

674
00:26:28,159 --> 00:26:33,760
one of the benefit that you can get from

675
00:26:30,480 --> 00:26:35,200
the output is when you click on the

676
00:26:33,760 --> 00:26:37,360
output

677
00:26:35,200 --> 00:26:38,480
and you can drill down further of what

678
00:26:37,360 --> 00:26:41,200
have been done

679
00:26:38,480 --> 00:26:44,240
or run by the ncbi you will display in a

680
00:26:41,200 --> 00:26:46,559
json format click on the

681
00:26:44,240 --> 00:26:49,600
rocket to relaunch the job

682
00:26:46,559 --> 00:26:51,520
and that will start the jobs again

683
00:26:49,600 --> 00:26:54,240
when you run the job again for the

684
00:26:51,520 --> 00:26:57,120
second time you will notice there is no

685
00:26:54,240 --> 00:26:59,520
more changes because of the item button

686
00:26:57,120 --> 00:27:01,440
behavior of n sebum

687
00:26:59,520 --> 00:27:03,840
if you want to get more information of

688
00:27:01,440 --> 00:27:05,039
how to use adwx you can always get the

689
00:27:03,840 --> 00:27:07,840
help page

690
00:27:05,039 --> 00:27:07,840
here

691
00:27:10,799 --> 00:27:16,720
and that concludes my discovery journey

692
00:27:14,240 --> 00:27:18,960
to find the right tools to help me to do

693
00:27:16,720 --> 00:27:21,360
my configuration management i have

694
00:27:18,960 --> 00:27:22,559
started doing shell scripting

695
00:27:21,360 --> 00:27:25,679
ended up i

696
00:27:22,559 --> 00:27:30,080
shelve it out and i use ancient mainly

697
00:27:25,679 --> 00:27:30,080
to do my configuration management

698
00:27:31,039 --> 00:27:35,640
and before i end the talk i actually

699
00:27:33,360 --> 00:27:39,360
want to say thank you for

700
00:27:35,640 --> 00:27:41,440
lca2 for providing this opportunity for

701
00:27:39,360 --> 00:27:42,960
me to share this journey and all the

702
00:27:41,440 --> 00:27:46,240
attendees and volunteers and tech

703
00:27:42,960 --> 00:27:47,760
support who work hard for the success

704
00:27:46,240 --> 00:27:50,000
i actually want to have a special shout

705
00:27:47,760 --> 00:27:52,480
out to emily dunham because of her

706
00:27:50,000 --> 00:27:54,640
speech you should speak that give me the

707
00:27:52,480 --> 00:27:56,640
courage and encouragement to submit my

708
00:27:54,640 --> 00:27:58,399
talk to lca

709
00:27:56,640 --> 00:28:01,039
and special thanks to michael diehan for

710
00:27:58,399 --> 00:28:02,480
his wonderful work in ansible and jeff

711
00:28:01,039 --> 00:28:06,320
girling for sharing his ancient

712
00:28:02,480 --> 00:28:08,080
knowledge which i bought a book from

713
00:28:06,320 --> 00:28:09,840
if you have any feedback comments and

714
00:28:08,080 --> 00:28:12,320
questions you can drop me an email send

715
00:28:09,840 --> 00:28:14,840
me a tweet and i have my public github

716
00:28:12,320 --> 00:28:18,320
that have contained some of my work in

717
00:28:14,840 --> 00:28:21,200
ansible my try and error in puppet and

718
00:28:18,320 --> 00:28:23,679
some of my containerizations are try out

719
00:28:21,200 --> 00:28:26,559
i do have an infrequent update block in

720
00:28:23,679 --> 00:28:28,159
wordpress which i update maybe once a

721
00:28:26,559 --> 00:28:29,760
year but

722
00:28:28,159 --> 00:28:31,760
that's it

723
00:28:29,760 --> 00:28:33,120
thank you very much and i hope my

724
00:28:31,760 --> 00:28:37,159
journey will kickstart your

725
00:28:33,120 --> 00:28:37,159
configuration story as well

726
00:28:48,240 --> 00:28:51,200
simon i can't hear you

727
00:28:53,360 --> 00:28:57,799
luckily i was muted when i saw them

728
00:28:59,600 --> 00:29:05,120
so someone asked wouldn't it be easy to

729
00:29:01,760 --> 00:29:07,279
have the http the apache name as a host

730
00:29:05,120 --> 00:29:09,360
bar and then use that to install the

731
00:29:07,279 --> 00:29:11,279
package and service with the package and

732
00:29:09,360 --> 00:29:14,159
service module

733
00:29:11,279 --> 00:29:16,080
is i'm just giving a quick demonstration

734
00:29:14,159 --> 00:29:18,080
of everything in the text very far the

735
00:29:16,080 --> 00:29:20,559
correct way i would be doing is put it

736
00:29:18,080 --> 00:29:23,200
as a variable and use that facts to set

737
00:29:20,559 --> 00:29:24,720
it for different uh distribution or

738
00:29:23,200 --> 00:29:26,640
operating system if you have different

739
00:29:24,720 --> 00:29:31,039
package and for example you are going to

740
00:29:26,640 --> 00:29:32,080
install ngix inside apache it's possible

741
00:29:31,039 --> 00:29:33,919
okay

742
00:29:32,080 --> 00:29:35,840
i think that's all the questions thank

743
00:29:33,919 --> 00:29:37,919
you very much for your talk

744
00:29:35,840 --> 00:29:39,919
um that's that is the end of our

745
00:29:37,919 --> 00:29:41,840
conference today thank you for everyone

746
00:29:39,919 --> 00:29:44,640
for coming along thank you to all the

747
00:29:41,840 --> 00:29:46,960
speakers and thank you to the lca tech

748
00:29:44,640 --> 00:29:48,159
people in our room and

749
00:29:46,960 --> 00:29:49,840
elsewhere

750
00:29:48,159 --> 00:29:53,640
and i hope you enjoy the rest of the

751
00:29:49,840 --> 00:29:53,640
conference right

