목록쿠버네티스 (4)
charminseok
다중 컨테이너 파드 생성 컨테이너 간 디스크 스토리지를 공유하기 위한 볼륨 생성 파드 내부에 깃 리포지터리 사용 파드에 GCE 퍼시스턴트 디스크와 같은 퍼시스턴트 스토리지 연결 사전 프로비저닝된 퍼시스턴트 스토리지 퍼시스턴트 스토리지의 동적 프로비저닝 파드 내부의 각 컨테이너는 고유하게 분리된 파일시스템을 가진다. 컨테이너가 시작할때 컨테이너 이미지를 빌드할 때 추가한 파일들을 갖는 컨테이너를 시작한다. 이미지를 통해 파일을 가져오기 때문에 컨테이너가 재실행 된다면 이전에 실행했던 컨테이너에 쓰여진 파일시스템은 볼 수 없다. 이런 상황에서 특정 데이터를 가진 디렉터리를 보존하고 싶을 경우, 쿠버네티스에서 제공하는 기능이 볼륨이다. 스토리지 볼륨은 파드와 같은 최상위 리소스는 아니지만 파드의 일부분으로 정..
IP 주소나 호스트 네임으로 요청하는 것과 다르게 쿠버네티스에서는 이런 방식으로 동작하지 않는다. 파드는 일시적이고, 파드의 IP 주소를 클라이언트가 알 수 없기 때문이다. 쿠버네티스느 이러한 문제를 해결하기 위한 방법으로 서비스를 제공한다. 서비스란? 동일한 서비스를 제공하는 파드 그룹에 지속적인 단일 접점을 만들때 생성하는 리소스 서비스가 존재하는한 절대 바뀌지 않는 IP와 포트번호를 가지고 있다. 해당 IP와 포트로 접속하면 파드 중 하나로 연결된다. 서비스는 다른 리소스와 같이 레이블 셀렉터를 통해 파드와 연결된다. 세션 어피니티 동일한 클라이언트에서의 요청을 매번 같은 파드로 리디렉션할 수 있다. 서비스의 spec 부분에 sessionAffinity: ClientIP로 주면 된다. 멀티 포트 한..
4. 레플리케이션과 그밖의 컨트롤러: 관리되는 파드 배포 파드의 안정적인 유지 동일한 파드의 여러 인스턴스 실행 노드 장애 시 자동으로 파드 재스케줄링 파드의 수평 스케줄링 각 클러스터 노드에서 시스템 수준의 파드 실행 배치 잡 실행 잡을 주기적 또는 한 번만 실행하도록 스케줄링 3장에서 파드를 수동으로 생성, 감독, 관리하는 것을 배웠지만 직접 하는 일은 없을 것이다. 대신 레플리케이션 컨트롤러 또는 디플로이먼트와 같은 유형의 리소스를 생성해 실제 파드를 생성하고 관리한다. 4장에서는 이러한 컨트롤러들이 파드를 자동으로 관리해줘 파드를 안정적으로 유지하는 방법을 알아볼 것이다. 파드를 안정적으로 유지하기 쿠버네티스의 주요 이점은 쿠버네티스에 컨테이너 목록을 제공해 해당 컨테이너를 클러스터에서 계속 실행..

MSA 이전에는 소프트웨어 애플리키이션이 하나의 프로세스 또는 몇 개의 서버에 분산된 프로세스로 실행되는 모노리틱 시스템이였다. 이런 시스템은 업데이트가 비교적 느리고 전체 패키지를 빌드하고 배포 후 모니터링한다. 문제가 생기면 사용 가능한 서버로 직접 마이그레이션한다. 이런 거대한 모노리틱 서비스는 마이크로서비스라는 독립적으로 실행되는 더 작은 요소로 분리된다. 마이크로서비스로 분리되어 개별적으로 개발, 배포, 업데이트, 확장이 가능하다. 하지만 마이크로서비스들이 점점 늘어나 유지 관리하는데 어려움이 생겨 배포, 구성, 관리, 장애처리를 자동화 하는 쿠버네티스가 나온 것이다. 쿠버네티스는 하나의 거대한 컴퓨팅 리소스를 제공해 각 구성 요소를 쉽게 관리할 수 있어 실행하는 모든 애플리케이션을 알 필요가 ..