devops/cicd

    Jenkins - Slack 연동

    Jenkins - Slack 연동

    젠킨스 빌드 시, 혹은 빌드 성공 or 실패 여부를 슬랙 알림을 통해 받는 법을 알아보자. Slack 설정 슬랙 앱에서 Jenkins를 검색해서 Jenkins CI 앱을 다운받는다. 구성을 클릭한다. 웹 창이 생기면 Slack에 추가를 클릭한다. 채널 선택에서 원하는 채널을 선택하고 Jenkins CI 통합 앱 추가를 클릭한다. 이후, Slack과 Jenkins 연동 가이드가 나오는데 구버전인지 실제 Jenkins UI와는 상반되는 내용이 있어서 신버전 기준으로 연동 방법을 소개한다. 우선 연동가이드에서 건질 것은 3단계에서 팀 하위 도메인과 통합 토큰 자격 증명 ID인데 따로 복사해서 보관해두도록 하자. Jenkins 설정 젠킨스로 가서 Jenkins 관리 - 플러그인 관리 - 설치 가능 부분에서 검색..

    [CI/CD] Gitlab + Jenkins + Nginx + Docker + AWS EC2 - 무중단 배포

    [CI/CD] Gitlab + Jenkins + Nginx + Docker + AWS EC2 - 무중단 배포

    회사 프로젝트에 CI/CD를 적용할 일이 생겼다. 이전에 Github + Jenkins + AWS CodeDeploy를 사용해 CI/CD를 적용한 적이 있었는데, 회사 사정 상 다른 방식으로 CI/CD를 적용해야 하는 상황이다. 따라서, Gitlab + Jenkins + Nginx + Docker + AWS EC2를 사용한 CI/CD 적용 방법을 기록한다. CI/CD 구조는 다음과 같다. 1. Gitlab 저장소에 Push 한다. 2. webhook을 통해 Jenkins에서 Gitlab 레포지토리에 접근한다. +) Gitlab과 Jenkins는 회사 서버에서 도커 컨테이너로 설치했다. 나는 회사 프로젝트여서 회사 서버에 설치한 것이지, EC2 등 각각 상황에 맞는 환경에 젠킨스를 설치하면 된다. 3. J..

    [Jira] Gitlab 서버 - Jira Cloud 연동

    [Jira] Gitlab 서버 - Jira Cloud 연동

    우선 Jira와 Gitlab을 어떻게 사용하느냐에 따라 연동하는 방식이 다르다. Jira Cloud, gitlab.com 처럼 인터넷에서 바로 사용하는 방식 자체 서버에 설치해서 사용하는 방식 여기서는 , Gitlab을 자체 서버에 설치하고, Jira는 클라우드(인터넷)를 사용하는 방식을 소개한다. 따라서 다음 두 연동에 대해 맞는 방식을 선택해야 한다. Gitlab -> Jira 연동: Jira가 클라우드(인터넷)이기 때문에, Gitlab 자체 설정으로 문제 없이 연동 가능하다. Jira -> Gitlab 연동: gitlab.com(인터넷)이라면 Jira 자체의 무료 앱으로 연동이 가능하지만, 현재 Gitlab이 자체 서버이기 때문에 DVCS 방식을 사용해야 한다. Jira DVCS connector ..

    이얌 AWS 클라우드 아키텍처 - Jenkins, CodeDeploy Blue Green 배포, Auto-Scaling, Load-Balancer

    이얌 AWS 클라우드 아키텍처 - Jenkins, CodeDeploy Blue Green 배포, Auto-Scaling, Load-Balancer

    https://easy-yum.com 작년에 개발했던 서비스이다. 서버를 AWS를 사용하고 있었는데 기존 아키텍처가 불안정해서 안정성과 가용성을 높여서 새롭게 아키텍처를 설계했다. 이후에, 또 비슷한 설계를 대비해 블로그에 기록을 해놓는다. AWS 배포 아키텍처 구조도 깃허브 Webhook을 통한 젠킨스 빌드 후 CodeDeploy를 통한 블루/그린 배포 이 때, Auto Scaling 형태로 배포해 가용성을 높였다. IAM IAM 사용자 루트 계정 MFA 적용: Google OTP 사용. 각자의 iam을 사용하는 것을 권장(han, park, song, ...): 누가 어떤 작업을 했는지 추적할 수 있음. easy-yum-jenkins-user 사용자 추가 jenkins에서 S3와 CodeDeploy에..