inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

비전공자도 이해할 수 있는 CI/CD 입문·실전

[실습] .gitignore에 추가된 application.yml을 CI/CD로 관리하기

CI/CD는 무중단 배포와 다른 느낌인 것이죠?

해결된 질문

339

김수용

작성한 질문수 4

0

저는 현재 Github Actions만 사용하여 하는 CI/CD 강의까지 들었는데 이 방식은 결국 sudo fuser -k -n tcp 블라블라를 하고 다시 nohup java -jar 블라블라 명령어로 서버를 띄우는 데까지는 서버가 꺼져있는 것 같습니다.

결국 이는 CI/CD는 무중단 배포와 관련은 있지만 CI/CD + {어떤 기술} = 무중단 배포가 되는 것인 거죠?

aws docker ci/cd github-actions aws-code-deploy infrastructure aws-ec2

답변 1

1

JSCODE 박재성

안녕하세요 수용님! 좋은 질문 해주셨네요👍

 

CI/CD는 수동으로 배포하던 걸 자동으로 배포하게끔 만들어주는 거라고 생각하시면 좋습니다!
하지만 CI/CD는 서버가 중단되지 않고 새로 배포되는 기술이 포함되어 있는 개념은 아닙니다.
그렇다보니 말씀해주신 대로 새로운 서버를 띄우는 와중에 서버가 꺼져있는 상태가 발생합니다.

 

이렇게 서비스를 운영하다보면 새로운 서버를 갈아끼울 때도
서버가 중간에 중단되지 않았으면 좋겠다는 생각이 듭니다.
이 때, 구축해야 하는 게 '무중단 배포'입니다.
말그대로 서버를 중단하지 않고 새로운 서버를 배포해서 갈아끼운다고 해서 무중단 배포라고 부릅니다.

 

하지만 CI/CD(자동 배포)를 적용하지 않고 수동으로 무중단 배포를 진행할 수도 있습니다.
그러다보니 CI/CD + {어떤 기술} = 무중단 배포 가 정확한 등식은 아닙니다!
(참고로 무중단 배포는 CodeDeploy를 활용해서 구축할 수 있습니다. CodeDeploy 내부에 무중단 배포 기능이 내장되어 있습니다^^)

 

이 외로 궁금하신 점 있으시면 또 질문 남겨주세요~~

무중단 배포

0

52

2

workflows/deploy.yml 궁금증

0

45

2

.git-credentials 파일이 없이 배포가 성공한 이유가 궁금

0

54

1

(해결 - 정보공유) /home/runner/work/_temp/6be6e~0.sh: line 1: ./gradlew: Permission denied 오류

1

60

2

(확인 완료) git config --global creadential.helper store 후에도 비밀번호 물어보는 현상

1

68

2

질문_ 강의 순서 및 그외

0

67

2

섹션 4 - Docker + 백엔드(Spring Boot)

0

60

2

deploy.yml작성후 원격에 push불가

0

60

2

CodeDeploy 사용시 registration 요구

0

100

3

스프링 종료 명령어

0

66

2

RAM & 스왑메모리 폭증하는 문제

0

100

2

섹션 4, 5와 6, 7은 유사한가요?

0

64

1

code deploy 배포입니다.

0

97

3

사용자 삭제가 안되는 이유

0

83

2

이미지 pull중 no basic auth credentials 문제입니다.

0

112

2

Docker Compose파일을 작성했을때 CI CD와의 연동

0

94

2

보안그룹 생성 오류

0

82

3

AWS 5월에 탈퇴해서 그러는데....

0

79

1

배포 오류

0

78

2

node.js 설치시 에러

0

146

2

appspec.yml, 스크립트 파일 수정요청

0

81

2

appleboy/ssh-action stop_script 대체

1

178

2

Vue.js 파일 배포

0

59

2

aws를완강하고 ci/cd로 넘어왔습니다.

0

81

1