목록프로젝트&&스터디 (17)
후니의 IT인프라 사전
1. 쿠버네티스 오퍼레이터 - 오퍼레이터는 쿠버네티스 추상화를 통해 관리 대상 소프트웨어의 전체 라이프사이클을 자동화, 애플리케이션을 패키징-배포-관리하는 툴입니다. (공식문서) - CRD(Custom REsource Definition) : 오퍼레이터로 사용할 상태 관리용 객체 Spec 정의 - CR(Custom Resource) : CRD의 spec을 지키는 객체들의 실제 상태 데이터 조합 - CC(Custom Controller) : CR에 규정된 상태를 유지하기 위한 컨트롤 루프 2. DB 기본지식 2.1. DB에서의 Transaction이란? - (일반적 정의) 쪼갤 수 없는 업무 처리의 최소 단위 - (DB적 정의) 데이터베이스의 상태를 변화시키기 해서 수행하는 작업의 단위 - (또 다른 정의..
1. 실습가이드 (링크) Redis를 이용한 PHP 방명록 애플리케이션을 구성합니다. 해당 실습을 통해서 deploy 형태의 pod 배포, Redis의 Leader-Follower 구성, service를 통한 배포, frontend web과 연결, 파드 스케일 증가를 확인할 수 있다. 2. Redis는 무엇인가? In Memory Cache 시스템으로 메모리 속에 자료를 저장하여 처리 속도가 매우 빠른 장점이 있다. Key-Value 저장소로, 다양한 형식의 데이터를 지원하며 NoSQL 형태이다. (참고블로그) Redis는 메모리 상의 DB라는 점에서 영속성을 문제를 가질 수 밖에 없는데, 이를 보완하기 위해서 데이터를 Disk에 저장할 수 있도록 하여 영속성을 보장하도록 했다. 데이터를 DISK에 저장..
1. stateless vs stateful - stateless는 쉽게 말해서 상태가 보존되지 않는 다고 생각하면 됩니다. 삭제되고 다시 살아나면서 hostname등의 기본적인 정보가 변경됩니다. - stateful의 경우 이와 반대로 동일한 형태가 유지되는 것이라고 할 수 있습니다. - 특히나 nginx와 같이 웹서버 등은 만약 하나의 pod가 죽어도, 생성되는 pod가 같은 nginx pod 이기만 하면됩니다. 그러나 DB와 같이 내부의 내용까지 보존되어야 하는경우 hostname이나 volume 연결정보 등 부터 모두 기존의 내용과 동일해야하므로 반드시 같은 내용의 pod가 등장해야 합니다. 2. stateful 및 headless 소개 - 이처럼 stateful 상태에서는 변동되는 IP와 같이 ..
1. Service 개요 - 기본적으로 pod를 생성하면 클러스터 내부에서만 소통이 가능합니다. pod를 외부로 노출시키려면 service를 이용해야합니다. - Cluster Type : 다수의 파드에 접속할 수 있는 Pod-LB역할을 하는 service를 생성합니다. - NodePort Type : 실제 외부 클라이언트가 클러스터 내부로 접속할 수 있도록 하는 서비스 입니다. 2. cluster IP 실습 - 목적지로 사용할 3개의 pod를 yaml로 생성합니다. cat
1. 스토리지 소개 - 쿠버네티스에 사용되는 스토리지는 emptyDir / hostPath / PV가 있습니다. 하나씩 가볍게 살펴보겠습니다. 2. emptyDir - Pod 생성시 기본적으로 설치되는 볼륨으로 해당 pod의 볼륨입니다. - pod가 삭제되면 바로 같이 삭제되므로 일시적인 사용에만 적절합니다. 3. hostPath - node 볼륨이라고 이해하면 쉽습니다. - 해당 node에 설치되는 볼륨으로 같은 node를 공유하는 pod끼리 공유가 가능합니다. - hostPath는 pod볼륨이므로 pod로 생성됩니다. - hostPath를 만드는 yaml은 아래와 같습니다. cat