목록Study (53)
Fairy ' s
Kube Scheduler 특정 기준에 따라 노드에서 어떤 파드가 어떤 노드로 가야하는지 결정하는 것만 하며, 실제로 파드를 노드에 배치하지는 않는다. (파드를 노드에 배치하는 작업은 kubelet이 하며, kubelet은 배에 파드를 만든다.) 예를 들어, 파드가 'CPU: 10'이라는 요구사항이 있을 때, 스케줄러는 다음 단계를 거친다. 파드에 가장 적합한 노드 식별. 파드 프로필에 맞지 않는 노드(CPU가 충분하지 않은 노드) 등 필터링을 시도한다. 노드의 순위를 매긴다. 우선순위 함수를 사용해 0에서 10까지의 점수를 할당한다. 예를 들어, 노드의 프리한 리소스 양을 계산하고, 파드를 프리 리소스가 더 많은 노드에 배치한다. 위의 예가 대략적으로 작동하는 방식이며, 스케줄을 커스터마이징하여 자신만..
Container Runtime Interface (CRI) 어떤 공급업체든 OCI 표준을 준수하는 한에서 쿠버네티스의 컨테이너 런타임으로 작업하게 해준다. - Open Container Initiative (OCI) : 이미지 스펙과 런타임 스펙의 기준으로 구성돼 있다. Dockershim : Docker는 CRI가 도입되기 전에 만들어졌고, 여전히 가장 지배적인 컨테이너 도구이기 떄문에, CRI 밖에서 Docker를 지속 지원하는 임시방편으로 만들어진 도커 지원 방식이다. 하지만 Dockershim을 유지하기 위한 불필요한 노력으로 문제가 커졌기 때문에, Dockershim을 완전히 제거하였다. 따라서 Docker 자체는 쿠버네티스에서 지원 런타임으로 제거되었다. Docker 지원이 해제 된 뒤에도 ..
kube-api server : 쿠버네티스의 주요 관리 구성 요소 kube-api server는 클러스터에서 변경을 위해 수행해야 하는 모든 작업의 중심에 있다. 또한, ETCD data store과 직접 소통하는 유일한 컴포넌트로, 인증과 요청 검증을 담당하며, ETCD data store의 데이터를 받아오고 업데이트 한다. Scheduler, kube-controller-manager, kubelet과 같은 다른 컴포넌트들은 클러스터 내의 각자 영역에서 api server를 사용하여 업데이트를 수행한다. kubectl 명령을 실행하면, kubectl 유틸리티는 kube-api server에 접근하게 되고, kube-api server는 요청을 인증하고 검증한다. 그 후 ETCD 클러스터로부터 데이터를..
Master Node - ETCD 간단/안전/신속하며, 분산되고 신뢰할 수 있는 Key-Value Store 키 값 쌍을 저장하고 회수할 수 있다. Install ETCD Github 사이트에서 OS에 맞는 바이너리 다운로드 / 실행 포트 2379로 Listen하는 서비스가 시작된다. 어떤 클라이언트든 이 ETCD 서비스에 접속해 정보를 저장하고 검색할 수 있다. Key-Value Store 개인은 문서를 하나 갖고 그 개인에 관한 모든 정보가 해당 파일에 문서나 페이지 형태로 저장된다. 이런 파일은 어떤 형식이나 구조로든 만들어질 수 있고, 한 파일의 변화는 다른 파일에 영향을 주지 않는다. 다른 문서를 업데이트하지 않고도 이 문서들에 추가적인 세부 사항을 추가할 수 있다. 단순한 키와 값을 저장하고 ..
Kubernetes 응용 프로그램을 컨테이너 형식으로 자동화하여 호스트하는 것 프로그램의 많은 인스턴스를 쉽게 배포할 수 있다. 응용 프로그램 내 다양한 서비스의 통신이 쉽게 가능하다. Kubernetes Cluster : 노드 세트로 구성되며, 물리적 가상, 온-프레미스 또는 클라우드일 수도 있고 컨테이너 형태의 응용 프로그램 호스트일 수도 있다. Master Node : Manage, Plan, Schedule, Monitor Nodes 쿠버네티스 클러스터를 관리하고 서로 다른 노드에 대한 정보를 저장하고 어떤 컨테이너가 어디로 갈지 계획하고, 노드와 컨테이너를 모니터링하는 등등을 책임진다. 클러스터에 관한 정보를 저장하는 ETCD 클러스터가 있다. >> ETCD Cluster, Kube-APISer..
면접 예상 질문 ㅡ #1 DynamoDB와 통신할 때, 데이터 전송 비용을 효율적으로 사용하기 위해서는 어떻게 해야 하는가? DynamoDB로 작업할 때는 데이터 전송 비용의 효율적인 관리가 필수적입니다. 데이터 전송 비용을 최적화하기 위한 전략으로는 먼저 전송되는 데이터의 크기와 양은 비용에 직접적인 영향을 미치므로, 불필요한 데이터 전송을 최소화해야 합니다. DynamoDB는 유연한 쿼리 기능을 제공하므로, 원하는 속성과 필터를 지정하여 관련 데이터만 검색할 수 있습니다. 이렇게 필터링하여 필요한 정보만 전송하면 비용을 최소화할 수 있습니다. 또한, 애플리케이션의 액세스 패턴 및 쿼리 요구 사항을 기반으로 데이터 모델 및 인덱스를 신중하게 설계하고 업데이트하여 효율적인 데이터 검색을 보장하는 것이 중..
며칠 전 부터 깃헙 io 블로그로 이전하고 싶어서 만드는 법을 찾아보았다. Github.io로 블로그를 옮기려고 한 이유는 깃헙 블로그에 지금 티스토리에서 올리듯 TIL을 매일 올리고 커밋하면 하루에 한 개라도 잔디가 쌓이기 때문이다 ... ^^ (성실함의 지표랄까) 처음에 만드는 법을 찾고 무작정 예쁜 테마를 찾아보다가 jekyll에 처피가 인기가 많고 예뻐서 따라해보려 했는데, 이슈 하나를 해결하면 또 다른 이슈가 생기고,,, 이런 태초부터 시작하는 블로그 같은 걸 한 번도 만들어보지 않은 나에겐 너무 어려움이 많았다 !!! 주말에 날 잡고 엉덩이 붙이고 앉아서 깃헙 블로그 될 때까지 꼭 완성해보자 라는 생각으로 시작해보았다. 열심히 다른 테마들을 찾아보다가 내가 좋아하는 넷플릭스 테마를 발견했다 ,..