inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Xây dựng CI/CD Pipeline sử dụng Jenkins

Kubernetes + Ansible Kết nối

엔서블을 이용하여 톰캣 이미지 배포 후, 되돌리는 방법

146

CommitAndRun

7 câu hỏi đã được viết

0

배포된 버전에 문제가 발생하여, 이전 배포 버전으로 되돌리고 싶을 경우가 현업에서 발생 가능할 것 같은데요. 이럴 경우에는 어떻게 구성하면, 위 문제를 대비할 수 있을까요?

ansible jenkins kubernetes ci/cd sonarqube

Câu trả lời 2

0

Dowon Lee

안녕하세요, 이도원입니다.

답변이 늦어 죄송합니다.

CI/CD로 배포를 하신다는 것은 CI 작업에서 형상관리도구(Git 등)에 관련 코드에 대해 버전 관리를 하고 있다고 생각됩니다. 따라서, 이전 상태로 돌아 가고 싶은 경우에는 Git으로부터 최신 브랜치의 코드를 가지고 빌드/배포 하는 것이 아닌, 지정된 브랜치 또는 코드로 롤백 후 빌드/배포 하시면 됩니다. 실제 현업에서는 젠킨스+CI/CD 만으로 작업하는 것이 아닌, Kubernetes 등과 조합하여 배포/운영하는 경우가 대부분입니다. Kubernetes에서는 기본적으로 롤링 업데이트나 롤백 등의 작업이 지원되기 때문에, 간단하게 이전 버전으로 돌아가는 작업이 가능합니다.

추가 질문사항 있으시면 글 남겨 주세요.

감사합니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.

CommitAndRun님께서 질문하신 내용은 DevOps 환경에서 굉장히 중요한 문제로, 롤백 전략이라고 합니다. 만약 배포된 버전에서 문제가 발생했을 때 이전 안정된 버전으로 되돌리는 방법에 대해 문의하신 것으로 보입니다.

이는 일반적으로 다음과 같은 방법으로 해결할 수 있습니다:

  1. 버전 관리: 모든 배포는 특정 버전 관리 시스템(Git 등)으로 추적 및 관리되어야 합니다. 이를 통해 어떤 버전이 안정적인지 파악할 수 있고, 롤백 시 특정 커밋 또는 태그를 기준으로 이전 버전으로 돌아갈 수 있습니다.

  2. CI/CD 파이프라인 설정: Jenkins 같은 CI/CD 툴을 사용하여 특정 버전으로 되돌리는 작업을 자동화할 수 있습니다. 예를 들어, Jenkins에서 특정 환경에 대해 특정 버전을 자동으로 배포하도록 설정할 수 있습니다.

  3. 엔서블 사용: 엔서블을 사용해 롤백을 자동화할 수 있습니다. 이전 버전의 애플리케이션 구성을 플레이북으로 관리하고, 문제가 있을 시 자동으로 해당 플레이북을 실행하여 이전 버전으로 돌아갈 수 있습니다.

  4. 컨테이너 시스템 사용: Docker나 Kubernetes 같은 컨테이너 기반 시스템을 사용하고 있다면, 이전에 잘 동작하던 이미지로 간단히 롤백할 수 있습니다.

아래와 같은 관련 질문들도 참고하시면 도움이 될 것 같습니다:

  • ansible-server 톰캣 설치 문제: 엔서블을 이용한 톰캣 설치 시 발생할 수 있는 문제를 다룬 게시글입니다. 플레이북을 활용한 문제 해결 방안과 관련하여 참고하실 수 있습니다.

질문에 대한 보다 구체적인 방향 설정이 필요하실 경우, 실질적인 사례나 현업에서의 경험을 바탕으로 지식공유자에게 문의하시면 더 많은 정보를 얻으실 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

git 에 강의내용에 필요한 파일들 존재하지 않음

0

82

2

젠킨스에 등록된..

0

98

2

필요한 파일만 가지고 배포할 수 있나요?

0

91

2

yml 파일 db 접속정보 수정 후 배포 시 미반영

0

108

2

jdk 버전 17

0

80

2

섹션2 강의자료

0

103

2

DOCKER 이미지 PULL

0

266

1

36강 edowon0623/cicd-project-ansible이 호환이 안되는것 같아요

0

63

1

질문이 있습니다!!

0

68

1

exec /usr/local/tomcat/bin/catalina.sh: invalid argument 오류 해별법(공유)

1

203

4

m2 mac: ansible-server에서 container 실행 안됨

0

156

2

Jenkins와 k8s 연동과 관련한 질문입니다.

0

97

2

Ansible 과 연동에서 이미지 및 컨테이너 생성과 관련한 질문 드립니다.

0

176

2

맥북 실리콘칩 invalid argument 에러 해결 (수동 설치)

0

252

3

Docker Container에서 Tomcat 설치

0

220

2

ec2 여러대에서 각각 직접 설치 이유

0

154

1

P@ssw0rd 설정시기

0

147

2

ansible 원리

0

134

2

ansible 존재여부

0

115

2

젠킨스 빌드 성공후 shutdown

0

246

2

Docker Hub에 Push 무한 로딩

0

113

2

컨테이너에 ssh로 접속 비밀번호 불일치

0

114

1

maven project 오류

0

114

2

쿠버네티스 이용시, api gateway 와 service discovery 역할

0

267

2