Se ha denunciado esta presentación.
Se está descargando tu SlideShare. ×

goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020

Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio

Eche un vistazo a continuación

1 de 35 Anuncio
Anuncio

Más Contenido Relacionado

Presentaciones para usted (20)

Similares a goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020 (20)

Anuncio

Más de AWSKRUG - AWS한국사용자모임 (20)

Más reciente (20)

Anuncio

goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020

  1. 1. goployer, 코드 기반의 배포 Deployment best practices 송주영 / DevOps 엔지니어, beNX
  2. 2. DevOps engineer at weverse and AWS Container hero Juyoung Song Search Google! Personal Github: https://github.com/jupitersong Project Github: https://github.com/DevopsArtFactory Linked-in: https://www.linkedin.com/in/jupitersong AWS Hero: https://aws.amazon.com/developer/community/heroes/juyoung- song Youtube: https://bit.ly/34QWr6U e-mail: jupitersong47@gmail.com
  3. 3. A platform used by over 10 million users, Millions requests per min is a platform for entertainment.
  4. 4. is a platform for entertainment !
  5. 5. Agenda • Infrastructure as code • goployer • Project DevOps Art
  6. 6. Infrastructure as code
  7. 7. Infrastructure as code : Area and Cycle Source code Build Test Deployment Production
  8. 8. Infrastructure as code : Area and Cycle Source code Build Test Deployment Production Infrastructure as Code
  9. 9. Infrastructure as code : Area and Cycle Source code Build Test Deployment Production Modern Infrastructure as Code
  10. 10. Infrastructure as code : Area and Cycle Source code Build Test Deployment Production Modern Infrastructure as Code - Source Repo - Library manager - Security as code - Measurement - C.I Tools - Golden AMI - Measurement - Testing as code - Synthetic - Load testing - Measurement - Deployment as code - Immutable - Measurement - GitOps - Monitoring as code - Alerting as Code - Chaos engineering - Log management - Analyzing - Measurement
  11. 11. goployer : Modern deployment tool
  12. 12. Opensource deployment tool Goployer: https://goployer.dev
  13. 13. Infrastructure as code : Area and Cycle Source code Build Test Deployment Production Modern Infrastructure as Code - Source Repo - Library manager - Security Inspect - Measurement - C.I Tools - Golden AMI - Measurement - Testing as code - Synthetic - Load testing - Measurement - Deployment as code - Immutable - Measurement - GitOps - Monitoring as code - Alerting as Code - Chaos engineering - Log management - Analyzing - Measurement
  14. 14. Infrastructure as code : Area and Cycle Best practices ● Servers are never modified after they're deployed. ● If server has some problem, terminate it! ● If something needs to be updated, do deploy! ● Do troubleshooting ! But do not change something in server ● Ensure each phase is the same ● Create and use golden AMI by Packer Immutable Infrastructure Deployment as Code Measurement Test Cost effective Simple
  15. 15. Best practices for deployment Immutable infrastructure : Blue/Green Deployment #1 exists v001 new v002 1.create ASG goployer deploy GOPLOYER 1.Notify Slack
  16. 16. Best practices for deployment new v002 1.create instance goployer deploy GOPLOYER 2.userdata boot up exists v001 Immutable infrastructure : Blue/Green Deployment #2
  17. 17. Best practices for deployment new v002 1.create ASG goployer deploy GOPLOYER 2.userdata boot up 3.health check exists v001 3.Notify Slack Immutable infrastructure : Blue/Green Deployment #3
  18. 18. Best practices for deployment new v002 1.create ASG goployer deploy GOPLOYER 2.userdata boot up 3.health check 4.Terminate exist ASG exists v001 Blue/Green deployment! 4.Notify Slack Immutable infrastructure : Blue/Green Deployment #4
  19. 19. Best practices for deployment current v002 5.Notify Slack goployer deploy GOPLOYER Immutable infrastructure : Blue/Green Deployment #5
  20. 20. Best practices for deployment Immutable infrastructure : How about Canary ? exists v001 new v002 1.create ASG goployer deploy GOPLOYER 1.Notify Slack - Create 1 instance - Create endpoint for the instance 2.userdata boot up
  21. 21. Best practices for deployment new v002 1.create ASG goployer deploy GOPLOYER 2.userdata boot up 3.health check 4.Terminate exist ASG exists v001 Canary deployment! 4.Notify Slack Immutable infrastructure : How about Canary ? 4.Increase the number of instance
  22. 22. Deployment best practices Best practices Immutable Infrastructure Deployment as Code Measurement Test Cost effective Simple ● service.yaml file
  23. 23. Deployment best practices Best practices Immutable Infrastructure Deployment as Code Measurement Test Cost effective Simple ● If move it, measure it ● Get insight from everything ● metrics.yaml ● Dynamodb ○ Metrics for deployment : info, date ○ Metrics for server : uptime, ○ Stats : RequestCount,
  24. 24. Deployment best practices Best practices Immutable Infrastructure Deployment as Code Measurement Test Cost effective Simple ● Enable/Disable automate testing ● Integrated with Vegeta ○ https://github.com/tsenart/vegeta ○ Simple http(s) loadtest tool ○ Support Go library
  25. 25. Deployment best practices Best practices Immutable Infrastructure Deployment as Code Measurement Test Cost effective Simple ● Easy to use ASG ● Easy to predict ● Support spot instance ● Support scheduled instance EC2 Pricing Model Score (normalized RI hours + normalized Savings Plans hours + normalized Spot hours) / (total normalized EC2 hours)
  26. 26. Deployment best practices Best practices Immutable Infrastructure Deployment as Code Measurement Test Cost effective Simple ● Easy to use ASG ● Easy to predict ● Support spot instance ● Support scheduled instance EC2 Pricing Model Score is 96% (normalized RI hours + normalized Savings Plans hours + normalized Spot hours) / (total normalized EC2 hours)
  27. 27. Deployment best practices Best practices Immutable Infrastructure Deployment as Code Measurement Test Cost effective Simple ● Developed by golang ● Simple commands ● Various powerful commands goployer deploy --manifest=manifests/hello.yaml --stack=yourstack --region=ap-northeast-2
  28. 28. Project DevOps Art
  29. 29. DevOps 철학의 올바른 개념적 이해와 철학에 기반한 이상적인 구현을 위한 프로젝트 DevOps 의 목적인 업무 속도와 효율화를 위해 다양한 코드를 공유하고 오픈소스를 개발하고 있습니다. - Sharing Infrastructure code for best practices - Opensource with Terraform - CLI for automation - Deployment tool - Online workshop Github: https://github.com/DevopsArtFactory Owner & Maintainer - https://www.linkedin.com/in/jupitersong - https://www.linkedin.com/in/gwonsoolee - https://blog.2dal.com DevOps Art What is the project DevOps Art and purpose ? Concept Art Be Art from Tech Designed by Cindy
  30. 30. DevOps 철학의 올바른 개념적 이해와 철학에 기반한 이상적인 구현을 위한 프로젝트 전직군, 전계열이 하나처럼 일하는 것 Be an Artist From a Technician Be an Engineer From a Firefighter Youtube 구독과 좋아요, 그리고 Github Star는 프로젝트를 만들어나가는 이들에게 큰 힘이 됩니다. Goployer Github: https://github.com/DevopsArtFactory/goployer Youtube: https://bit.ly/34QWr6U DevOps Art project DevOps Art Project Conclusion
  31. 31. AWS Community 2020 !
  32. 32. We are hiring https://bighit.recruiter.co.kr -> beNX jupiter.song@bighitcorp.com
  33. 33. Thank you !

×