지난 글에 이어 이번 글에서는 Kubernetes에 대해 본격적으로 알아보겠습니다. 1. Kubernetes CommponentsClusterCluster는 하나의 시스템처럼 동작하도록 구성된 컴퓨터(또는 자원)의 집합Kubernetes에서 가장 상위의 논리 단위컨테이너화된 애플리케이션을 구동하는 노드(Node)들의 집합각 Cluster는 마치 하나의 거대한 시스템처럼 동작하도록 설계되어 있으며,사용자는 클러스터라는 단일 API 엔드포인트를 통해전체 인프라를 제어 Node컨테이너를 실제로 실행하는 물리 혹은 가상 머신 단위역할에 따라 크게 아래 두 가지로 나뉨Master Node(Control Plane)Control Plane은 클러스터의 제어 영역으로 스케줄링, 상태 관리, 이벤트 감지, 리소스 조정..
저번 글에 이어서 이번에는 Docker와 Kubernetes의 전반적인 컴포넌트에 대해 다뤄보겠습니다. 1. DockerDocker는 엄밀히 말하면 회사 이름(Docker Inc.)이기도 하며, 초기에는 컨테이너 런타임 및 도구 세트를 포함한 오픈소스 프로젝트의 이름이기도 했으나 현재는 오픈소스 프로젝부분이 Moby라는 이름으로 분리되었음Docker Inc.는 사용 플랫폼(Docker Desktop, Hub)등을 포함한 도구와 생태계를 중심으로 한 회사로 운영됨 Docker는 개발자가 컨테이너가 사용할 파일 시스템의 내용을 Dockerfile로 정의한 후,이를 기반으로 Docker Image를 생성하고 이를 레지스트리에 push하거나pull 하여 로컬에서 직접 실행(run)할 수 있게 해주는 플랫폼 Do..
이 글은 2025/04/21 ~ 2025/04/25 까지 진행된 "HPC 환경에서의 Docker&Kubernetes 교육"을 수료하고 정리한 내용입니다.초기의 컴퓨터 부터 LXC, Docker, Kubernetes의 등장 배경부터 개념까지를 다룹니다. 1. 초기 컴퓨터 1950 ~ 60년대초반 컴퓨터는 매우 고가의 자원이었고, 한 번에 하나의 작업만 처리할 수 있는 구조사용자는 자신이 실행하고자 하는 작업(Job)을 천공 카드 등로 작업 큐에 제출하면, 운영자가 순차적으로 실행 -> Batch Processing System하지만 시간이 지나면서 컴퓨터의 처리 속도는 향상되었고, 입출력을 기다리는 동안 CPU는 아이들링 상태로 있는 경우가 많았음이를 해결하기 위해 멀티 프로그래밍이 등장하였고 이는 자원 ..
문제 상황SpringBoot의 Junit5에서 Memory DB를 사용하여 Repository 계층을 테스트하는 방법은 크게 두가지가 있습니다.1. @DataJpaTest 활용2. @SpringBootTest + MemoryDB이중 @DataJpaTest를 활용하여 Repository계층을 테스트하는 상황에서 만난 오류를 정리해보려고 합니다. 오류의 내용은 MEMBER라는 테이블을 찾을 수 없어 sql 쿼리를 준비할 수 없다는 내용이었습니다.분명 application-test.yml 파일은 다음과 같이 ddl-auto를 create로 설정하여 테이블을 생성하도록 하였고@ActiveProfiles("test") 어노테이션을 사용하여 해당 설정파일을 읽도록 하였습니다.도무지 이해할 수 없는 에러였습니다.로그..