ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
LEGACYLAND?? ???? ?
26. Dec. 2019
jongwon.han@hbsmith.io
(AWS KRUG #architecture ???)
1
??? ??
? ???
? Python? Cloud Infra, Lean/Agile ??? ??? ??? ??? ??.
? 2012? ?? ??? ???, startup? ??
? '??? ?? ??, ???? ?? ??.¡¯
? ??
? (?) DevOps ?? ???? ¡®HBsmith¡¯ ??
? ?? O2O ??? ???? ¡®Kanizsa Lab¡¯? backend server / infra devops ??
? Cloud computing ?? ???? 'A2 company' co-founder (¡®KINX¡¯? ????)
? NEXON 'MapleStory ?? Live Team'?? DBA, SA? ?? (?? ?? ??)
2
https://www.linkedin.com/in/addnull/
https://hbsmith.io
Contents
? ?? ??
- Infra, backend ?? legacy ???? ?? ?
- Public cloud ? ????? ???? ?? ?? ?? ?
- ?? ?? ?? ??? ??? ?
3
(?? ?? ??: 30?)
Zombie? Legacy ?? ??
4
??
Zombie Legacy
???? ???? ???? ??? ??? ????? ? ??
? ? ?? ?? ???? ?? ??? ??
???? ?????, ?? ??? ??? ?? ?? ????, ?? ??? ???
???? ?? ???? ??
??? ??? ??? ???, ???? ??? ???? ??? ???
???, ???? ??? ???? ??
5
?¡­
??? Legacy??
? ?? ???? ?? ?? ?
? "??? ??? '??? ??? ??? ?? ??? ??' (..??..) ??? ???
??? ? ??? ??? ??? ? ??.¡±, Effective Debugging
? (??) ?? ?? ?? ????? ???? ????
6
RULE #0 ?? ???
7
?? ?? ???? ?? ?? ???
RULE #0 ?? ???
8
https://youtu.be/UUJKiTcnGK0
? ?? ? ???
?? ? ?? ??
?????
?¡­ ???
RULE #0 ?? ???
? Lego?? ???? ????
9
RULE #0 ?? ???
? Lego ?? AWS
-> 220?? ??? ??
(2019? 12? ??)
10
¡®????? ????
?? ???'
RULE #0 ?? ???
? ¡®?? ?? 1??? ??¡¯
11
EC2
RULE #0 ?? ???
? ¡®EC2 ??? ?? ??!¡¯
12
EC2
RULE #0 ?? ???
? ¡®RDS?? full-managed DB? ????¡¯
13
EC2
RDS
RULE #0 ?? ???
? ¡®EC2 disk ??? ? ???? (???, ???, ???¡­)¡¯
14
EC2
RDS
RULE #0 ?? ???
? ¡®S3?? ??? ??? storage? ?? ???.¡¯
15
EC2
RDS S3
RULE #0 ?? ???
? AWS 3??
16
EC2 RDSS3
RULE #0 ?? ???
? ¡®?, ?? HA(???)? ???, ELB?? ????.¡¯
17
RULE #0 ?? ???
? ¡®??? ??? ??? SQS? ?? ??.¡¯
18
RULE #0 ?? ???
? ¡®Mobile App push ??? ??? SNS? ????.¡¯
19
RULE #0 ?? ???
? ¡®?? ?? ??? ??? ???? Lambda? ???.¡¯
20
RULE #0 ?? ???
? AWS 3??? ????(VPC)? ??? ????
? VPC? infrastructure? ??
- public/private subnet
- public/private route table
- internet gateway (for public subnet)
- nat gateway (for private subnet)
? VPC? network traffic ???
instance(EC2, RDS ?)? ??? ??
21
(??? ??: https://kr.pinterest.com/pin/
93238654757169806/)
RULE #0 ?? ???
? AWS 3??? VPC
22
EC2 RDSS3
RULE #0 ?? ???
? ?? ??? ???
? ???? ??
23
(MSA: Microservices
architecture)
RULE #1 ?? ? ?? ??
24
?? ?? ???? ?? ?? ???
RULE #1 ?? ? ?? ??
25
RULE #1 ?? ? ?? ??
? ?? computing tier(EC2, Lambda ?)?
?? ¡°blue-green deployment¡±? ?? (daily continuous deployment)
26
RULE #1 ?? ? ?? ??
? ?? ??? ???
provisioning / deprovisioning ? ??
27
RULE #1 ?? ? ?? ??
? ??? ??
? ???? ??, ??? ??? ? ? ?? ??? ??? ??? ???.
(?: ???? ?? ??? 3rd party library ??)
? ??? ? ??? ?, ??? ???? ??? ??
(¡®?? ???¡¯? '?? ???¡¯? ?? ??)
28
RULE #2 IaC? ???
29
?? ?? ???? ?? ?? ???
RULE #2 IaC? ???
? ¡°??? ??? ?? ?? ? ??¡±
? DevOps ???? ?? 3R problem
? Repeatability
? Reproducibility
? Reliability
30
¡°? ?? ????? ??????¡­¡±
¡°???? ??????¡­¡±
¡°???? ??? ?? ??? ???¡­¡±
RULE #2 IaC? ???
? ??? ???? ??? DevOps ??? ?? ??, ????, ??? ??? ?
?? ??? ?? ??? ??? ??
? ?, ?? server infra, application? config, provisioning ??? ??? ??
code? ??
31
(IaC: Infrastructure as Code)
RULE #2 IaC? ???
? IaC (Infrastructure as Code)??
IT system ??? ?? code? ???? ????
? ?? ?? ¡°?? ??? code¡±??? 3R problem ??
32
config
tool
(IaaS? ??? ? ??? ??)
(??? ?? ??? ?? ??? ? ??)
RULE #2 IaC? ???
? EC2 ?? 1EA ??? ?? ??? (Python script)
33
RULE #2 IaC? ???
? ¡®johanna¡¯? AWS CLI ???? AWS infra ?? ?? ??? provisioning, de-
provisioning ? ? ?? CLI
? 100% Python3 script ? ???? ??? OSS ? ?? ?? (since 2016)
34
https://github.com/HardBoiledSmith/johanna/
RULE #2 IaC? ???
? IaC? ??
- ?? ??? ? ??? ?? ????
- ¡°? ?????¡±?? ?? ??? ??? ?? ???
- IaC ?? ???? ??(?? ??)? ??? ? ?? ???? (ROI)
- ??? ?? ??? ??.
35
<- IaC? ? ?? ? ??
<- ? ????? ? ?? ??
RULE #3 Full managed service ??
36
?? ?? ???? ?? ?? ???
RULE #3 Full managed service ??
? Cloud ??? Abstraction level
? SaaS: Software ??? ??
? PaaS: Platform ?? ??
? IaaS: Infrastructure? ??
? On-Premises: Cloud ? ???..
37
??? ??
http://www.hostingadvice.com/how-to/iaas-vs-paas-vs-saas/
RULE #3 Full managed service ??
? ¡®EC2? DBMS? ???? ??, ? RDS? ? ????'
? ¡®EC2? DBMS? ???? ??? ? ?? ????¡±
38
??? ??
https://aws.amazon.com/blogs/database/part-1-role-of-the-dba-when-
moving-to-amazon-rds-responsibilities/
-> Platform ??? Application(business logic)? ? ??? ? ??
-> IT ???? ?? ?? ??? ???? ??
-> ?, legacy ? ??? ??
?? ??? ????
RULE #3 Full managed service ??
? (??! PPL ???.) ???? QA ??? ??? 'HBsmith'
39
?? ??? ???? ????? ????
¡®hbsmith¡¯ bot? ???? QA ??? ???
https://hbsmith.io
RULE #3 Full managed service ??
? (??! PPL ???.) ???? QA ??? ??? 'HBsmith'
40
(?? ??? ?? ??)
https://hbsmith.io
RULE #4 ??? ??
41
?? ?? ???? ?? ?? ???
RULE #4 ??? ??
42
RULE #4 ??? ??
? ??, ??, ??, ??, ??? ???? ??
43
RULE #4 ??? ??
? ? ?? ???? ?? ?? ??? ?? ?? ??? (??? ?? ??)
44
RULE #4 ??? ??
45
Wrap-up
? RULE #0 ?? ???
? RULE #1 ?? ? ?? ??
? RULE #2 IaC? ???
? RULE #3 Full managed service ??
? RULE #4 ??? ??
46
???? - ¡®? ?(??)? 30??? ? ? ????¡¯
? ??? Legacy?? ??
47
??¡­ ??, ??, ??¡­
? ? ??? ??
? ??? ??
?????
jongwon.han@hbsmith.io
010-9166-6855
48

More Related Content

20191226 LEGACYLAND???? ??????????? ???

  • 1. LEGACYLAND?? ???? ? 26. Dec. 2019 jongwon.han@hbsmith.io (AWS KRUG #architecture ???) 1
  • 2. ??? ?? ? ??? ? Python? Cloud Infra, Lean/Agile ??? ??? ??? ??? ??. ? 2012? ?? ??? ???, startup? ?? ? '??? ?? ??, ???? ?? ??.¡¯ ? ?? ? (?) DevOps ?? ???? ¡®HBsmith¡¯ ?? ? ?? O2O ??? ???? ¡®Kanizsa Lab¡¯? backend server / infra devops ?? ? Cloud computing ?? ???? 'A2 company' co-founder (¡®KINX¡¯? ????) ? NEXON 'MapleStory ?? Live Team'?? DBA, SA? ?? (?? ?? ??) 2 https://www.linkedin.com/in/addnull/ https://hbsmith.io
  • 3. Contents ? ?? ?? - Infra, backend ?? legacy ???? ?? ? - Public cloud ? ????? ???? ?? ?? ?? ? - ?? ?? ?? ??? ??? ? 3 (?? ?? ??: 30?)
  • 4. Zombie? Legacy ?? ?? 4 ?? Zombie Legacy ???? ???? ???? ??? ??? ????? ? ?? ? ? ?? ?? ???? ?? ??? ?? ???? ?????, ?? ??? ??? ?? ?? ????, ?? ??? ??? ???? ?? ???? ?? ??? ??? ??? ???, ???? ??? ???? ??? ???
  • 5. ???, ???? ??? ???? ?? 5 ?¡­
  • 6. ??? Legacy?? ? ?? ???? ?? ?? ? ? "??? ??? '??? ??? ??? ?? ??? ??' (..??..) ??? ??? ??? ? ??? ??? ??? ? ??.¡±, Effective Debugging ? (??) ?? ?? ?? ????? ???? ???? 6
  • 7. RULE #0 ?? ??? 7 ?? ?? ???? ?? ?? ???
  • 8. RULE #0 ?? ??? 8 https://youtu.be/UUJKiTcnGK0 ? ?? ? ??? ?? ? ?? ?? ????? ?¡­ ???
  • 9. RULE #0 ?? ??? ? Lego?? ???? ???? 9
  • 10. RULE #0 ?? ??? ? Lego ?? AWS -> 220?? ??? ?? (2019? 12? ??) 10 ¡®????? ???? ?? ???'
  • 11. RULE #0 ?? ??? ? ¡®?? ?? 1??? ??¡¯ 11 EC2
  • 12. RULE #0 ?? ??? ? ¡®EC2 ??? ?? ??!¡¯ 12 EC2
  • 13. RULE #0 ?? ??? ? ¡®RDS?? full-managed DB? ????¡¯ 13 EC2 RDS
  • 14. RULE #0 ?? ??? ? ¡®EC2 disk ??? ? ???? (???, ???, ???¡­)¡¯ 14 EC2 RDS
  • 15. RULE #0 ?? ??? ? ¡®S3?? ??? ??? storage? ?? ???.¡¯ 15 EC2 RDS S3
  • 16. RULE #0 ?? ??? ? AWS 3?? 16 EC2 RDSS3
  • 17. RULE #0 ?? ??? ? ¡®?, ?? HA(???)? ???, ELB?? ????.¡¯ 17
  • 18. RULE #0 ?? ??? ? ¡®??? ??? ??? SQS? ?? ??.¡¯ 18
  • 19. RULE #0 ?? ??? ? ¡®Mobile App push ??? ??? SNS? ????.¡¯ 19
  • 20. RULE #0 ?? ??? ? ¡®?? ?? ??? ??? ???? Lambda? ???.¡¯ 20
  • 21. RULE #0 ?? ??? ? AWS 3??? ????(VPC)? ??? ???? ? VPC? infrastructure? ?? - public/private subnet - public/private route table - internet gateway (for public subnet) - nat gateway (for private subnet) ? VPC? network traffic ??? instance(EC2, RDS ?)? ??? ?? 21 (??? ??: https://kr.pinterest.com/pin/ 93238654757169806/)
  • 22. RULE #0 ?? ??? ? AWS 3??? VPC 22 EC2 RDSS3
  • 23. RULE #0 ?? ??? ? ?? ??? ??? ? ???? ?? 23 (MSA: Microservices architecture)
  • 24. RULE #1 ?? ? ?? ?? 24 ?? ?? ???? ?? ?? ???
  • 25. RULE #1 ?? ? ?? ?? 25
  • 26. RULE #1 ?? ? ?? ?? ? ?? computing tier(EC2, Lambda ?)? ?? ¡°blue-green deployment¡±? ?? (daily continuous deployment) 26
  • 27. RULE #1 ?? ? ?? ?? ? ?? ??? ??? provisioning / deprovisioning ? ?? 27
  • 28. RULE #1 ?? ? ?? ?? ? ??? ?? ? ???? ??, ??? ??? ? ? ?? ??? ??? ??? ???. (?: ???? ?? ??? 3rd party library ??) ? ??? ? ??? ?, ??? ???? ??? ?? (¡®?? ???¡¯? '?? ???¡¯? ?? ??) 28
  • 29. RULE #2 IaC? ??? 29 ?? ?? ???? ?? ?? ???
  • 30. RULE #2 IaC? ??? ? ¡°??? ??? ?? ?? ? ??¡± ? DevOps ???? ?? 3R problem ? Repeatability ? Reproducibility ? Reliability 30 ¡°? ?? ????? ??????¡­¡± ¡°???? ??????¡­¡± ¡°???? ??? ?? ??? ???¡­¡±
  • 31. RULE #2 IaC? ??? ? ??? ???? ??? DevOps ??? ?? ??, ????, ??? ??? ? ?? ??? ?? ??? ??? ?? ? ?, ?? server infra, application? config, provisioning ??? ??? ?? code? ?? 31 (IaC: Infrastructure as Code)
  • 32. RULE #2 IaC? ??? ? IaC (Infrastructure as Code)?? IT system ??? ?? code? ???? ???? ? ?? ?? ¡°?? ??? code¡±??? 3R problem ?? 32 config tool (IaaS? ??? ? ??? ??) (??? ?? ??? ?? ??? ? ??)
  • 33. RULE #2 IaC? ??? ? EC2 ?? 1EA ??? ?? ??? (Python script) 33
  • 34. RULE #2 IaC? ??? ? ¡®johanna¡¯? AWS CLI ???? AWS infra ?? ?? ??? provisioning, de- provisioning ? ? ?? CLI ? 100% Python3 script ? ???? ??? OSS ? ?? ?? (since 2016) 34 https://github.com/HardBoiledSmith/johanna/
  • 35. RULE #2 IaC? ??? ? IaC? ?? - ?? ??? ? ??? ?? ???? - ¡°? ?????¡±?? ?? ??? ??? ?? ??? - IaC ?? ???? ??(?? ??)? ??? ? ?? ???? (ROI) - ??? ?? ??? ??. 35 <- IaC? ? ?? ? ?? <- ? ????? ? ?? ??
  • 36. RULE #3 Full managed service ?? 36 ?? ?? ???? ?? ?? ???
  • 37. RULE #3 Full managed service ?? ? Cloud ??? Abstraction level ? SaaS: Software ??? ?? ? PaaS: Platform ?? ?? ? IaaS: Infrastructure? ?? ? On-Premises: Cloud ? ???.. 37 ??? ?? http://www.hostingadvice.com/how-to/iaas-vs-paas-vs-saas/
  • 38. RULE #3 Full managed service ?? ? ¡®EC2? DBMS? ???? ??, ? RDS? ? ????' ? ¡®EC2? DBMS? ???? ??? ? ?? ????¡± 38 ??? ?? https://aws.amazon.com/blogs/database/part-1-role-of-the-dba-when- moving-to-amazon-rds-responsibilities/ -> Platform ??? Application(business logic)? ? ??? ? ?? -> IT ???? ?? ?? ??? ???? ?? -> ?, legacy ? ??? ?? ?? ??? ????
  • 39. RULE #3 Full managed service ?? ? (??! PPL ???.) ???? QA ??? ??? 'HBsmith' 39 ?? ??? ???? ????? ???? ¡®hbsmith¡¯ bot? ???? QA ??? ??? https://hbsmith.io
  • 40. RULE #3 Full managed service ?? ? (??! PPL ???.) ???? QA ??? ??? 'HBsmith' 40 (?? ??? ?? ??) https://hbsmith.io
  • 41. RULE #4 ??? ?? 41 ?? ?? ???? ?? ?? ???
  • 42. RULE #4 ??? ?? 42
  • 43. RULE #4 ??? ?? ? ??, ??, ??, ??, ??? ???? ?? 43
  • 44. RULE #4 ??? ?? ? ? ?? ???? ?? ?? ??? ?? ?? ??? (??? ?? ??) 44
  • 45. RULE #4 ??? ?? 45
  • 46. Wrap-up ? RULE #0 ?? ??? ? RULE #1 ?? ? ?? ?? ? RULE #2 IaC? ??? ? RULE #3 Full managed service ?? ? RULE #4 ??? ?? 46
  • 47. ???? - ¡®? ?(??)? 30??? ? ? ????¡¯ ? ??? Legacy?? ?? 47 ??¡­ ??, ??, ??¡­ ? ? ??? ?? ? ??? ??