본문 바로가기

배포7

3. AWS Code Deploy로 배포 Jenkins에서 배치 Jenkins로 Spring Batch 배포하기 - 젠킨스 연동 4. 배포 Jenkins 환경 설정 여기서는 Batch가 아닌 배포 Jenkins 페이지로 이동합니다. 배포 Jenkins에서 Github에 올라간 코드를 가져오려면 Github과 연동이 필요합니다. Jenkins와 Github 연동은 이전에 작성된 포스팅를 참고해서 진행하시는것을 추천드립니다. 연동이 되셨으면 배포 Job을 생성하겠습니다.매개변수 (파라미터)에는 Choice Parameter를 선택합니다. 여기서는 member-batch 모듈만 있어서 member-batch 만 등록했지만, member-api, member-admin 등 여러 모듈이 있다면 다 등록하시면 됩니다. 소스코드 관리에서는 배포할 프로젝트의 Github 주소를 등록합니다.배포 스크립트 내용은 좀 길어서 아래 코드를 그대로 복사.. 2018. 7. 7.
3. Jenkins로 Beanstalk + Multi Module 배포하기 - Beanstalk 연동하기 이번 시간에는 지난 시간에 구축한 Jenkins로 Beanstalk을 연동해보겠습니다. 3-1. Beanstalk 생성 서비스에서 Beanstalk을 검색해서 Beanstalk 서비스 페이지로 이동합니다.우측 최상단의 새 어플리케이션 생성 버튼을 클릭합니다. 어플리케이션의 이름과 설명을 작성합니다.생성된 어플리케이션에서 환경을 생성합니다. 참고로 어플리케이션이 상위의 그룹입니다. 즉, 어플리케이션 안에 환경이 있습니다. 환경 티어에서는 웹 서버 환경을 선택합니다. 환경의 상세 정보를 등록해야하는데요. 여기서 저는 도메인과 환경 이름을 external-api라고 정했습니다. 이렇게 한 이유는 간단합니다. 이번 주제가 Gradle Multi Module 기반에서 Beanstalk을 어떻게 배포하느냐이기 때문.. 2018. 5. 1.
2. Jenkins로 Beanstalk + Multi Module 배포하기 - Jenkins와 Github 연동하기 이번 시간엔 EC2에 설치된 Jenkins와 Github연동을 진행하겠습니다. 2-1. SSH 키 생성 및 등록 Github 연동을 ID & Password 방식으로 하면 보안에 취약하기 때문에 ssh 키로 연동 하겠습니다. Jenkins가 설치된 EC2에서 아래 명령어로 키를 생성합니다. ssh-keygen -t rsa -f id_rsa (여기서 Enter passphrase는 바로 엔터를 누르시면 됩니다.) 2개의 키(id_rsa, id_rsa.pub)가 생성됩니다. Jenkins 페이지로 다시 이동하셔서 Credentials/System로 이동합니다. Global credentials를 클릭 Add Credentials를 클릭하면 인증키를 입력할 수 있는 화면이 나옵니다. 여기서 Kind를 SSH .. 2018. 4. 29.
3) AWS로 배포하기 시리즈 - 3. AWS Code Pipeline으로 배포하기 이번 시간에는 앞서 진행된 Code Deploy, Code Build를 Code Pipeline에서 통합해서 사용하는 방법을 소개 드리겠습니다. 모든 코드는 Github에 있으니 참고 바랍니다 3-1. Code Pipeline 구축하기 먼저 Code Pipeline 웹콘솔로 이동합니다. 파이프라인 생성버튼을 클릭합니다.Code Pipeline 이름을 등록합니다.소스를 Github에 가져오도록 선택하고, Github에 연결을 클릭합니다.OAuth 리다이렉트가 끝나면 리포지토리와 브랜치를 선택합니다.여기서 고급을 보면 실행 트리거가 2개가 있습니다. master 브랜치에 PUSH 발생시 자동 실행 파이프라인 수동 실행 이번 포스팅에선 수동 실행을 선택하겠습니다. 기존에 등록한 Code Deploy를 선택합니.. 2018. 4. 9.
2) AWS로 배포하기 시리즈 - 2. AWS Code Build로 빌드하기 지난 시간에 Code Deploy 사용하는 방법에 대해 설명드렸습니다. AWS와 같은 클라우드 서비스가 등장하기전까지 IDC 환경에선 젠킨스 혹은 TravisCI와 같은 CI Tool에서 Build & Test & Deploy를 다같이 처리했었습니다. 즉, Build & Test가 완료된 WAR/JAR 를 배포 서버로 바로 전송(scp)하여 배포했었습니다. 하지만, AWS와 같이 오토 스케일링이 되는 클라우드 환경에선 트래픽에 따라 갑자기 서버가 늘었다/줄었다 할 수 있기 때문에 배포서버 목록을 고정시키기가 어렵습니다. (물론 AWS CLI에서 서버 리스트를 가져온다던가 할수도 있습니다) 그래서 이런 문제를 Code Deploy를 통해 해결합니다. Code Deploy는 ASG를 대상으로 배포가 가능하기.. 2018. 4. 8.
5) 스프링부트로 웹 서비스 출시하기 - 5. EC2에 배포하기 이번 시간엔 지금까지 개발한 내용을 EC2에 배포 해보겠습니다. (모든 코드는 Github에 있습니다.) 5-1. EC2에 Git 설치 및 프로젝트 Clone 배포에 앞서 기반작업이 되는 Java와 Git을 EC2에 설치하겠습니다. 5-1-1. Java 8 설치 현재(2018.01.14) EC2가 Java7이 기본버전이라 Java8로 버전업하겠습니다. AWS EC2에 접속하셔서 아래 명령어를 실행 합니다. sudo yum install -y java-1.8.0-openjdk-devel.x86_64 설치가 완료되셨으면 인스턴스의 Java 버전을 8로 변경하겠습니다. sudo /usr/sbin/alternatives --config java 버전이 변경되셨으면 사용하지 않는 Java7을 삭제합니다. sudo.. 2018. 1. 18.