본문 바로가기
배움/IT

[IT 용어] Hot deployment/ cold deployment

by 혜팡이 2025. 2. 16.
반응형
deployment 뜻

1. 특별한 필요나 목적에 의해서 특정 위치에 할당하거나 배치하는 것.
- 보통 군대나 군수물자를 배치하는 등 군대용어로 자주 쓰이는 듯 하다.
2. 무언가를 열거나 퍼뜨리는 것
- 낙하산을 펼치거나, 에어백이 터질 때 사용됨.

IT에서 deployment 애플리케이션, 모듈, 업데이트, 패치 요소 등이 개발자로부터 사용자에게 전달되는 매커니즘을 의미한다. 소프트웨어를 사용자 혹은 다른 프로그램들이 사용할 수 있도록 ‘배포’하는 것을 의미한다.

Hot deployment 뜻


hot deployment를 말할 때는 보통 ment를 빼고 hot deploy'핫 디플로이'라고 한다. hot deployment는 서버 등 인프라와 미들웨어 구성 요소등을 멈추고 다시 시작할 필요 없이 애플리케이션을 변경하는 것을 의미한다. 다른 말로는 dynamic reloading이라고 한다.
사용자가 애플리케이션을 계속 사용할 수 있다는 이점이 있으며, 지속적으로 가용성이 보장되어야 하는 주요 시스템이 있을 때 사용할 수 있다.

핫 디플로이를 적용하기 위해서는, 세 가지 기술이 필요하다고 한다.
1. 컨테이너 : 서버를 내려두는 시간 없이 컨테이너를 할당할 수 있도록 해주는 도커나 쿠버네티스.
2. 로드 밸런서 : 여러 인스턴스 사이의 흐름을 분산시켜 나눠주며 개별 인스턴스가 차례로 업데이트 될 수 있도록 해주는 로드 밸런서.
3. 마이크로 서비스아키텍처 : 독립 배포 가능한 서비스들은 전체 시스템에 영향 주지 않고 업데이트 가능하도록 하는 MSA(Micro service architectiure)

cold deployment 뜻

cold deployment는 애플리케이션을 멈춰두고, 업데이트 등을 적용한 뒤 재시작하는 것이다. 사용자가 느낄 수 있는 정도로 애플리케이션을 멈춰둬야 하지만 주요 업데이트 등을 적용해야 할 때, 이전 버전과 호환되지 않는 DB 마이그레이션을 해야할 때 필요하다.

순서 :
애플리케이션 종료 > 버전 업데이트 혹은 신규 버전 배포 > 필요한 DB 마이그레이션 > 애플리케이션 재기동 후 온라인 연결



참고 : reslack.io, ibm

반응형