AWS・Hubot・Slackで ChatOpsする話[実装編]
by
Kazuhisa Togo
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
AWSɾHubotɾSlackͰ ChatOps͢Δ ࣮ ฤ Kazuhisa Togo
Slide 2
Slide 2 text
ΞϓϦέʔγϣϯߏ
Slide 3
Slide 3 text
HubotͰSlackʹଓɺ࿈ܞ
Slide 4
Slide 4 text
Node.js ͰՔಇ
Slide 5
Slide 5 text
DockerͰ ΞϓϦέʔγϣϯΛԾԽ
Slide 6
Slide 6 text
EC2 ΠϯϑϥશAWS
Slide 7
Slide 7 text
Πϯϑϥ
Slide 8
Slide 8 text
EC2 ECS ECR
Slide 9
Slide 9 text
EC2 ECS ECR ؋Ϛγϯ DockerίϯςφΛΒͤΔ
Slide 10
Slide 10 text
EC2 ECS ECR DockerίϯςφͷϚωδϝϯτ ࢮ׆ࢹͳͲ
Slide 11
Slide 11 text
EC2 ECS ECR DockerΠϝʔδͷϓϥΠϕʔτஷଂݿ
Slide 12
Slide 12 text
EC2 ECS ECR 3ͭ߹ΘͤͯDockerίϯςφཧ
Slide 13
Slide 13 text
σϓϩΠ
Slide 14
Slide 14 text
CIπʔϧ
Slide 15
Slide 15 text
CodeDeployͱΈ߹Θͤͯ Continuous Deployment CodeDeploy
Slide 16
Slide 16 text
ϦιʔεɺΞϓϦέʔγϣϯͷ σϓϩΠ
Slide 17
Slide 17 text
CodeDeploy S3 EC2 ͓͓·͔ͳྲྀΕ
Slide 18
Slide 18 text
CodeD S3 ϦϙδτϦʹ git push
Slide 19
Slide 19 text
CodeD S3 GitHub Hook
Slide 20
Slide 20 text
CodeD S3 ϒϥϯνͷσʔλΛऔಘ Ϗϧυˍςετ
Slide 21
Slide 21 text
CodeDeploy S3 E σϓϩΠ༻ͷϑΝΠϧҰࣜΛΞʔΧΠϒ S3ʹసૹ
Slide 22
Slide 22 text
CodeDeploy S3 EC2 ४උ͕Ͱ͖ͨΒCodeDeployݺͼग़͠
Slide 23
Slide 23 text
CodeDeploy S3 EC2 S3͔ΒΞʔΧΠϒΛμϯϩʔυ ల։ɾΠϯετʔϧ
Slide 24
Slide 24 text
CodeDeploy S3 EC2 Πϯετʔϧॲཧ ྃޙͷޙย͚
Slide 25
Slide 25 text
CodeDeploy S3 EC2 σϓϩΠΛશࣗಈԽ
Slide 26
Slide 26 text
CodeDeploy S3 EC2 ChatOpsΛͬͨϓϩηε EC2
Slide 27
Slide 27 text
CodeDeploy S3 EC2 Bot͔ΒσϓϩΠࢦࣔ EC2
Slide 28
Slide 28 text
CodeDeploy S3 EC2 εςʔδϯάڥʹσϓϩΠͨ͠༰Λ ϓϩμΫγϣϯڥʹσϓϩΠ EC2
Slide 29
Slide 29 text
ίϯςφͷ σϓϩΠ
Slide 30
Slide 30 text
ECR ͓͓·͔ͳྲྀΕ ECS
Slide 31
Slide 31 text
ECR CIͷϑοΫ·Ͱڞ௨ pushΛϑοΫͯࣗ͠ಈͰ։࢝ ECS
Slide 32
Slide 32 text
ECR CircleCIͰ docker build ECS
Slide 33
Slide 33 text
ECR ECRʹ docker push ECS
Slide 34
Slide 34 text
ECR ECS͔Βࢀর λά࣍ୈͰखଓ͖ແ͠Ͱߋ৽ ECS
Slide 35
Slide 35 text
ECR λεΫΛ্ཱͪ͛͢ͱ ৽͍͠Πϝʔδ͕ࣗಈద༻ ECS
Slide 36
Slide 36 text
ECR ͜ΕશࣗಈԽ͕Մೳ ECS
Slide 37
Slide 37 text
AWS-SDK
Slide 38
Slide 38 text
खް͍SDK Node.js SDK
Slide 39
Slide 39 text
όονىಈ ੲͳ͕Βͷ git pull σϓϩΠetc. Node.js SDK
Slide 40
Slide 40 text
ΠϯελϯεͷIPΛऔಘͨ͠Γ͢Δͷʹ SDKେ׆༂ Node.js SDK
Slide 41
Slide 41 text
ΞΫηε੍ޚ
Slide 42
Slide 42 text
ϝοηʔδͷߘϢʔβʔ SlackଆͰ ݪଇ ೝূࡁΈ
Slide 43
Slide 43 text
௨ৗ HubotଆͰIDͷνΣοΫ͚ͩͰOK
Slide 44
Slide 44 text
APIΛۦͯ͠ as_user ͱ͔͞ΕͪΌͬͨ߹ྫ֎ ͦͷ߹ݖݶΛݟ͠·͠ΐ͏
Slide 45
Slide 45 text
τʔΫϯͷηΩϡϦςΟʔ
Slide 46
Slide 46 text
S3 EC2 ιʔείʔυʹೝূใΛॻ͖ࠐΉͱ ͯ͢ͷܦ࿏Ͱ伴Λ࿐ͯ͠͠·͏
Slide 47
Slide 47 text
Task Definition Ͱڥมͱͯ͠ఆٛ ECS
Slide 48
Slide 48 text
࿙Ӯ͠͏ΔՕॴΛେ͖͘ݮ ECS
Slide 49
Slide 49 text
ΫϩεΞΧϯτΞΫηε
Slide 50
Slide 50 text
AWSΞΧϯτΛ͍ͯ͠Δ߹ ΞΫηεͰ͖ͳ͍
Slide 51
Slide 51 text
ΫϩεΞΧϯτΞΫηε
Slide 52
Slide 52 text
ϩʔϧΛ࡞
Slide 53
Slide 53 text
STSΛͬͯҰ࣌τʔΫϯΛऔಘ
Slide 54
Slide 54 text
τʔΫϯΛͬͯΞΫηε
Slide 55
Slide 55 text
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠