AWS DOP 취득기 시이작
Continuous Integration
개발자가 레파지토리(GitHub, CodeCommit, Bitbucket 등) 에 코드를 push 하게되면
빌드 서버(CodeBuild, Jenkins CI 등)가 Build와 테스트 할 수 있는지 체크함
빌드서버에서 빌드결과(성공/실패)를 개발자에게 feedback 줌으로써
코드를 향상? 시키고 버그를 빨리 찾고 고칠 수 있게 해줌
그리고 상시 Deploy(배포)를 가능하게 함
=> 개발자는 단지 코드를 Push 했을 뿐인데
빌드서버가 테스트와 버그 찾기, 배포 등을 다 해줌
그러므로 CI는 CICD 의 첫번째 단계임
Continuous Delivery
필요할 때마다 배포할 수 있음.
-> deploy를 자동화해야 가능한 것임(deploy 자동화 툴 : CodeDeploy, Jenkins CD, Spinnaker 등)
Continuous Delivery VS Continuous Deployment
Continuous Delivery는
자동화를 이용하여 자주 배포할 수 있음
배포 승인을 위한 수동 단계가 포함될 수도 있음.
Continuous Deployment
모든 단계가 자동임.
= 레파지토리에 push 하는 것만으로 deploy
배포 승인과 같은 간섭이 없기 때문에 일반적으로 다양한 모니터링하는 툴을 각 파이프라인에 도입함
Technology Stack for CICD
Code 단계 : AWS CodeCommit 이나 GitHub 등의 코드 레파지토리 사용
Build 단계와 Test 단계 : AWS CodeBuild 나 Jenkins CI 등의 CI 레파지토리 사용
Deploy 단계와 Provision 단계 : AWS Elastic Beanstalk
또는
Deploy 단계 : AWS CodeDeploy
Provision 단계 : User Managed EC2 Instances Fleet(CloudFormation)
Code ~ Provision 전 단계를 모니터링, 시각화, 관리 : AWS CodePipeline
'개발자 :-) > AWS' 카테고리의 다른 글
AWS 기초와 VPC (1) | 2022.10.04 |
---|---|
DevOps 소개 (0) | 2022.10.04 |
[AWS] DevOps Engineer Professional (4) - CodeCommit (0) | 2022.08.23 |
[AWS] DevOps Engineer Professional (3) - CodeCommit (0) | 2022.08.18 |
[AWS] DevOps Engineer Professional (2) - CodeCommit (0) | 2022.08.14 |
댓글