DevOps 4

배포 전략(Recreate, Rolling, Blue/Green, Canary)

과거에는 배포라는 작업이 아주 큰 이벤트였다. 하지만 최근에는 서비스를 구성할 때 MSA를 많이 사용하고 더 자주 배포를 하게된다. 이러한 과정에서 배포전략들이 다양하게 발전해왔는데 가장 대표적인 배포전략 몇가지만 ARABOZA! Recreate 모든 서버를 중지하고 새로운 버전으로 배포한 후 다시 서비스를 올리는 방법이다. 다운타임이 발생하는 배포전략이기 때문에 테스트서버 및 서비스가 중단되어도 문제가 없는 서버등에서 사용한다. 일반적으로 사용되는 배포전략은 아니다. Rolling 가장 일반적이며, 많이 사용하는 배포 방법이다. 여러대의 서버가 있을 때 새로운 버전의 서비스를 서버마다 순차적으로 배포한다. 장점 서버를 점차적으로 배포하는 방식으로, 서버 자원이 한정적인 경우 유리하다.(서버자원이 2배가..

DevOps 2021.06.22

2. 서비스에 APM을 적용해보자 - 슬랙 연동하기

이전글 [서비스에 APM을 적용해보자 - APM선택과 설치]에는 스카우터를 설치 및 실행까지 했다. 스카우터 클라이언트 프로그램을 띄워놓고 하루종일 모니터만 볼 수는 없기 때문에 서비스에 문제가 발생하면 메신저로 알람을 발송해보자 스카우터에서는 서버의 문제가 발생하거나 서버오류가 발생했을 때, 슬로우 쿼리가 발생했을 때와 같이 문제가 발생하면 알림을 보낼 수 있는 플러그인을 제공하고 있다. (슬랙/텔레그램/이메일/팀업/딩톡) 슬랙 메신져를 업무용으로 사용하고 있기 때문에 슬랙 플러그인을 적용해보았다. 슬랙 alert 플러그인 스카우터의 슬랙 alert플러그인은 서버에서 발생한 alert메세지를 슬랙메신저로 발송해준다. 아래 정보들에 대한 알림을 기본적으로 제공하고 커스텀 알림 또한 설정할 수 있다. 기본..

DevOps 2021.04.19

1. 서비스에 APM을 적용해보자 - APM선택과 설치

서비스를 운영함에 있어 APM의 활용은 많은 이점을 줌으로 선택이 아닌 필수다. 문제가 발생했을 때 빠르게 찾을 수 있고 어플리케이션 성능을 모니터링 하면서 추후 문제가 될 부분에 대해 튜닝을 하며 서비스를 안정적으로 운영할 수 있게 도와준다. 도입이유 서비스에 문제가 발생하거나 비효율적으로 서비스가 운영되고 있을 때 서버로그를 뒤적거리면서 문제점을 찾기에는 너무나 많은 시간이 소요되고 찾기도 힘들다. APM을 사용하면 문제점을 빠르게 탐지할 수 있다. APM에 대해 간단하게 개념정리를 하자면 APM (Application Performance Management) 말 그대로 어플리케이션의 성능 관리 서비스이다. 미들웨어(톰캣, 제이보스 등)에서 일어나는 트랜잭션을 분석하여 성능에 영향을 미치는 부분을 ..

DevOps 2021.01.03

[모니터링] 서비스에 문제가 생기면 메세지를 받아보자

서비스를 운영할 때 예상치 못한 부분에서 장애나 오류는 언제든지 일어날 수 있다. 사전에 예방하는 것도 중요하지만 장애가 발생했을 때 이를 빠르게 인지하고 대처하는 것 또한 중요하다. 도입이유 - 물리적 서버 문제 발생 시 사용하고 있는 클라우드 서비스에서 알람을 보내주지만 어플리케이션단의 문제가 발생했을 때 노티기능이 없다. - 서비스에 문제가 있는 상태에서 방관하고 있으면 유저에게 서비스에 대한 신뢰를 잃어버릴 수 있다. 의사결정 배경 및 요구사항 - 문제가 발생했을 떄 즉시 인지할 수 있어야 한다. - 다른 할일도 많다 개발이 간편해야한다. - 팀원에게 익숙한 언어이거나 러닝커브가 작아야한다. - 비용적인 문제가 없어야 한다. - 시스템 관련 알림채널은 통일되어야 알림이 왔을 때 집중할 수 있다. ..

DevOps 2020.11.04