Slide 1

Slide 1 text

DevOps ⽇日常

Slide 2

Slide 2 text

My name is Fung • NCCU • ALPHA Camp • Back-end developer • DevOps in iCook

Slide 3

Slide 3 text

DevOps in team

Slide 4

Slide 4 text

當⼤大家在開發的時候

Slide 5

Slide 5 text

當⼤大家在部署的時候

Slide 6

Slide 6 text

當服務成功上線之後

Slide 7

Slide 7 text

當夜深⼈人靜的時候

Slide 8

Slide 8 text

所以我們到底在幹⿇麻?

Slide 9

Slide 9 text

⼀一個support的概念

Slide 10

Slide 10 text

Environment Maintenance Monitor Deploy

Slide 11

Slide 11 text

Elasticsearch Upgrade

Slide 12

Slide 12 text

Security Configurations Instance

Slide 13

Slide 13 text

EC2 + ELB

Slide 14

Slide 14 text

Security Configurations Instance

Slide 15

Slide 15 text

IAM • 動作 • 對象 • 可以做 / 不可以做

Slide 16

Slide 16 text

IAM • 動作 => Read S3 • 對象 => elasticsearch • 可以做 / 不可以做 => Allow

Slide 17

Slide 17 text

Security Group • port • group

Slide 18

Slide 18 text

Security Group • port => 9200-9300 • group => ec2-elasticsearch-group

Slide 19

Slide 19 text

Security Configurations Instance

Slide 20

Slide 20 text

Chef • write infrastructure as code • online resources

Slide 21

Slide 21 text

Recipe include_recipe "monit" include_recipe "java" include_recipe "elasticsearch"

Slide 22

Slide 22 text

Recipe if url = node[:elasticsearch][:corpus][:ik] script "install_ik_data" do interpreter "bash" user "root" cwd node[:elasticsearch][:default_path] code <<-EOH wget #{url} tar -zxf ik.tar.gz EOH end end

Slide 23

Slide 23 text

AWS Opswork

Slide 24

Slide 24 text

Environment Maintenance Monitor Deploy

Slide 25

Slide 25 text

Deploy flow Review code

Slide 26

Slide 26 text

Pull request on Github

Slide 27

Slide 27 text

Hound CI

Slide 28

Slide 28 text

Travis CI

Slide 29

Slide 29 text

Deploy flow Review code

Slide 30

Slide 30 text

Hubot

Slide 31

Slide 31 text

hubot deploy iCook

Slide 32

Slide 32 text

Heaven Github Hubot AWS Opswork

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

Environment Maintenance Monitor Deploy

Slide 35

Slide 35 text

Server Schedule Log

Slide 36

Slide 36 text

Papertrail

Slide 37

Slide 37 text

Loggly

Slide 38

Slide 38 text

Fluentd

Slide 39

Slide 39 text

Server Schedule Log

Slide 40

Slide 40 text

Monit “mysql” running “nginx” running “elasticsearch” execute failed “td-agent” restarting

Slide 41

Slide 41 text

Librato

Slide 42

Slide 42 text

No content

Slide 43

Slide 43 text

Pingdom

Slide 44

Slide 44 text

Server Schedule Log

Slide 45

Slide 45 text

Pagerduty

Slide 46

Slide 46 text

Environment Maintenance Monitor Deploy

Slide 47

Slide 47 text

Code Climate

Slide 48

Slide 48 text

Bugsnag

Slide 49

Slide 49 text

Skylight

Slide 50

Slide 50 text

Lots of tools and service

Slide 51

Slide 51 text

It works not only on my machine

Slide 52

Slide 52 text

Thank you