1. 정의 도커 스웜은 도커에서 만든 컨테이너 오케스트레이션 툴이다. 여러 도커 호스트를 하나의 클러스터로 묶어 단일 시스템처럼 관리할 수 있게 해준다. 도커 CLI와 도커 API를 그대로 활용할 수 있어 도커 환경에 익숙한 사용자에게 특히 유리하며, 도커 엔진에 기본적으로 내장되어 있어 간단하게 활성화 및 사용이 가능하다. 2. 도커 스웜이 필요한 이유 운영 중인 서비스의 규모가 커져 서버 자원이 부족할 때, 여러 서버를 하나의 클러스터로 묶어 자원을 병렬로 확장하도록 도와주는 역할을 한다. 즉, 서로 다른 호스트의 여러 컨테이너를 하나로 묶어 마치 하나의 호스트처럼 사용할 수 있도록 한다.클러스터 : 공통의 목표를 위해 작동하는 컴퓨터 또는 애플리케이션들의 그룹 3. 도커 스웜의 종류 (1)..
1. 정의 컨테이너 오케스트레이션은 컨테이너화 된 애플리케이션의 배포, 관리, 확장, 네트워킹, 모니터링을 자동화하는 프로세스이다. 도커나 도커 컴포즈 등을 이용해 애플리케이션을 컨테이너화 하는 과정은 단일 서비스나 소규모 애플리케이션에 적합하지만, 서비스의 규모가 커지거나 복잡성이 증가하면 관리에 많은 시간과 노력이 필요하다. 컨테이너 오케스트레이션은 이러한 문제를 해결하고, 다양한 컨테이너를 효율적으로 관리하기 위한 자동화 도구를 제공한다. 2. 툴 컨테이너 오케스트레이션 툴은 대표적으로 다음과 같다. (1) Kubernetes(K8s) 가장 널리 사용되는 컨테이너 오케스트레이션 도구로, 컨테이너 클러스터 관리에 최적화되어 있다. 특히 확장성, 자동 복구, 롤아웃 및 롤백 지원과 같은 기능이..
1. Docker란? Docker는 컨테이너 기술을 활용해 애플리케이션을 신속하고 일관되게 배포할 수 있는 오픈소스 플랫폼이다. 애플리케이션과 해당 애플리케이션이 동작하는 데 필요한 라이브러리, 환경 설정, 의존성 등을 하나의 컨테이너에 패키징하여 어디서든 동일하게 실행할 수 있도록 한다. 2. Docker가 필요한 이유(1) 환경 차이에 의한 오류 방지"내 로컬에서는 잘 되는데, 서버에서는 안 돼요" 문제를 해결할 수 있음애플리케이션 실행에 필요한 환경을 컨테이너에 통째로 담아 어디서든 같은 환경을 재현할 수 있음(2) 배포 및 확장 용이컨테이너는 애플리케이션을 빠르게 배포하고, 필요할 때 쉽게 확장할 수 있음스케일 아웃(Scale-out) 방식으로 동일한 컨테이너를 여러 개 띄워 트래픽을 분산 처리..
1. 무중단 배포(Zero Downtime Deployment)란? 무중단 배포란 애플리케이션의 배포 과정에서 서비스가 중단되지 않도록 하는 배포 방식이다. 즉, 새로운 버전의 애플리케이션을 배포하더라도 사용자에게 서비스의 장애나 다운타임이 발생하지 않도록 하는 것을 목표로 한다. 2. 무중단 배포가 필요한 이유 그렇다면 무중단 배포가 왜 필요할까? 서비스가 왜 중단되도록 하지 않아야 할까? 이전 블로깅에서 살펴보았던 것처럼 서비스 배포 또는 CI/CD를 행하게 되면 빌드-테스트-프로덕션 배포 과정에서 다운타임이 발생하게 된다. 이로 인해 사용자 입장에서는 서비스가 정상적으로 작동하지 않는 것처럼 보이기 때문에 다운타임은 치명적이다. (1) 다운타임이란? 다운타임이란 새로운 서비스를 배포하기 위해 기존..
https://jihyun-devstory.tistory.com/47 [Infra] AWS EC2를 이용한 WAS 서버 배포1. EC2 인스턴스 생성(1) AWS Region 서울로 설정IAM 사용자로 회원가입 후 로그인하면 아래와 같이 지역을 설정할 수 있다. 작성자는 Seoul로 설정했다. (2) 인스턴스 시작 버튼 누르기 EC2 서비스에 들jihyun-devstory.tistory.com 배포했던 서버에 CI/CD를 적용해보려 한다. 그 전에 CI/CD가 무엇인지, 왜 해야하는지, 어떤 방법이 있는지 알아보자. 1. CI/CD란? (1) CI(Continuous Integration) CI란 다수의 개발자가 형상관리 툴을 공유하여 사용하는 환경을 말한다. 대표적인 예시로는 Github가 있다. ..
AWS EC2와 Nginx를 이용해 서버를 배포하는 과정에서 지속적으로 발생하는 오류가 존재했다. 해결 과정을 블로그에 상세히 기록해보려 한다. 배포하는 과정은 아래 블로그에서 확인할 수 있다.https://jihyun-devstory.tistory.com/47 [Infra] AWS EC2를 이용한 WAS 서버 배포1. EC2 인스턴스 생성(1) AWS Region 서울로 설정IAM 사용자로 회원가입 후 로그인하면 아래와 같이 지역을 설정할 수 있다. 작성자는 Seoul로 설정했다. (2) 인스턴스 시작 버튼 누르기 EC2 서비스에 들jihyun-devstory.tistory.com 1. SSH Operation timed out 에러$ jihyun@MacBook-Pro ~ % ssh jihyunssh:..