분류 전체보기(126)
-
Spring Cloud
Spring Cloud는 마이크로서비스 아키텍처를 개발할 때 사용하는 프레임워크입니다. 스프링부트를 기반으로 하며, 일련의 라이브러리와 모듈을 제공하여 마이크로서비스 개발에 필요한 다양한 기능을 제공합니다. Spring Cloud의 주요 기능에는 분산 시스템에서 자주 사용되는 서비스 디스커버리, API 게이트웨이, 로드밸런싱, 서킷 브레이커 등이 있습니다. 이러한 기능들은 마이크로서비스 아키텍처에서 자주 발생하는 문제들을 해결하는 데 도움이 됩니다. Spring Cloud의 대표적인 모듈로는 Netflix OSS에서 개발한 Eureka, Ribbon, Hystrix, Zuul 등이 있습니다. 이러한 모듈들은 각각 서비스 디스커버리, 로드밸런싱, 서킷 브레이커, API 게이트웨이 등의 기능을 제공합니다. ..
2023.02.27 -
Docker Swarm
Docker Swarm은 Docker에서 제공하는 컨테이너 오케스트레이션 툴 중 하나로, 여러 대의 호스트에서 도커 컨테이너들을 클러스터링하여 관리하는 기능을 제공합니다. 여러 개의 호스트에 걸쳐 분산되어 실행되는 컨테이너들을 쉽게 관리하고, 스케일링이나 로드밸런싱 등의 작업을 수행할 수 있습니다. Docker Swarm의 주요 기능은 다음과 같습니다. 컨테이너 스케일링: 컨테이너 개수를 동적으로 조정하여 스케일링을 수행합니다. 서비스 디스커버리: 서비스의 위치를 찾아주는 기능을 제공합니다. 로드 밸런싱: 컨테이너들에 대한 트래픽을 분산시켜주는 기능을 제공합니다. 롤링 업데이트: 서비스의 업데이트를 롤링 업데이트 방식으로 수행할 수 있습니다. 노드 상태 모니터링: 호스트 노드의 상태를 모니터링하고 문제가..
2023.02.27 -
Docker Compose VS Kubernetes
단일서버 MSA에서는 Docker Compose를 사용하고 다중서버 MSA에서는 Kubernetes를 사용한다고 이해하고 있었다. 이번에는 그 배포 둘을 비교해서 한번 설명을 해보고자 한다. Docker Compose는 단일 호스트에서 여러 개의 컨테이너를 관리하는 도구로, 컨테이너 간의 연결 및 의존성을 설정하고, 배포를 위한 파일로 docker-compose.yml 파일을 사용합니다. 반면에 Kubernetes는 여러 대의 서버(노드)에서 클러스터를 구성하여 컨테이너를 관리하는 컨테이너 오케스트레이션 도구로, 노드 간의 로드 밸런싱, 스케일링, 로깅, 모니터링 등 다양한 기능을 제공합니다. Docker Compose는 로컬 환경에서 단일 호스트에서 실행되는 컨테이너를 관리하며, Kubernetes는 ..
2023.02.27 -
Docker
도커(Docker)는 컨테이너 기술을 기반으로 하는 오픈소스 가상화 플랫폼입니다. 컨테이너 기술은 응용 프로그램, 라이브러리, 런타임 등을 패키지화하고, 호스트 운영체제(OS)와는 별개의 가상 환경에서 실행할 수 있도록 해줍니다. 이를 통해 개발, 배포, 운영의 효율성을 향상시킬 수 있습니다. 도커를 이용하면 각 응용 프로그램이 독립된 컨테이너로 구성되기 때문에 호스트 운영체제에서는 컨테이너들을 구분하여 각각 다른 환경에서 실행시킬 수 있습니다. 이는 개발 환경, 테스트 환경, 운영 환경 등을 분리하여 사용할 수 있어, 애플리케이션을 배포하고 운영하는 데 있어 매우 유용합니다. 또한 도커는 이미지(Image)를 통해 응용 프로그램, 라이브러리, 런타임 등을 패키지화합니다. 이 이미지를 이용해 각각의 컨테..
2023.02.27 -
Docker Compose
Docker Compose는 여러 개의 Docker 컨테이너를 정의하고 실행하는 도구입니다. Docker Compose를 사용하면 YAML 파일을 작성하여 컨테이너의 구성, 의존성 및 연결 방법을 정의할 수 있습니다. 예를 들어, 웹 애플리케이션을 개발하고 있다고 가정해 봅시다. 이 애플리케이션은 웹 서버와 데이터베이스 서버를 실행해야 합니다. Docker Compose를 사용하면 이 두 서버를 정의하고 실행하는 데 필요한 모든 것을 YAML 파일에 작성할 수 있습니다. 이 파일은 다른 개발자들과 공유되며, 새로운 개발 환경에서도 쉽게 재현할 수 있습니다. Docker Compose를 사용하면 각 컨테이너의 환경 변수, 포트 포워딩, 데이터 볼륨 마운트 등의 설정도 정의할 수 있습니다. 이러한 기능들은 ..
2023.02.27 -
쿠버네티스
쿠버네티스는 컨테이너 오케스트레이션 툴로, 다양한 컨테이너화된 애플리케이션들을 자동화된 방식으로 배포, 확장, 관리, 스케일링, 롤링 업데이트, 롤백 등을 수행하는 오픈소스 플랫폼입니다. 쿠버네티스는 구글에서 개발한 오픈소스 프로젝트이며, 현재는 CNCF(Cloud Native Computing Foundation)에 의해 관리되고 있습니다. 컨테이너 기술을 기반으로 구성되어 있으며, 쿠버네티스 클러스터를 구성하는 다수의 노드에서 컨테이너들을 실행하고 관리합니다. 클러스터는 하나 이상의 마스터 노드와 워커 노드로 구성되어 있으며, 마스터 노드는 클러스터 내의 워커 노드를 관리하고, 컨테이너의 스케줄링, 리소스 할당, 네트워킹, 스토리지 등의 관리를 담당합니다. 쿠버네티스는 다양한 기능을 제공하며, 주요 ..
2023.02.27