MSA/Kubernetes
-
Replicaset & DeploymentMSA/Kubernetes 2023. 2. 16. 20:42
ReplicaSet ( self-healing ) 파드를 식별하는 방법이 명시된 셀렉터, 유지해야 하는 파드 개수를 명시하는 레플리카의 개수, 그리고 레플리카 수 유지를 위해 생성하는 신규 파드에 대한 데이터를 명시하는 파드 템플릿을 포함한다. 레플리카셋은 필드에 지정된 설정을 충족하기 위해 필요한 만큼 파드를 만들고 삭제한다. 레플리카셋이 새로운 파드를 생성해야 할 경우, 명시된 파드 템플릿을 사용한다. 레플리카셋은 파드의 metadata.ownerReferences 필드를 통해 파드에 연결되며, 이는 현재 오브젝트가 소유한 리소스를 명시한다. 레플리카셋이 가지고 있는 모든 파드의 ownerReferences 필드는 해당 파드를 소유한 레플리카셋을 식별하기 위한 소유자 정보를 가진다. 이 링크를 통해 ..
-
Kubernetes 개요MSA/Kubernetes 2023. 2. 15. 19:35
Kubernetes k8s , kube 등으로 불림 한국어 매뉴얼을 제공한다. 테이너화된 애플리케이션을 자동으로 배포, 스케일링 및 관리해주는 오픈소스 시스템입니다. 내용추가 필요 용어 Node : 노드는 클러스터에 따라 가상 또는 물리적 머신일 수 있다. ( 장비를 뜻함 ), 노드는 마스터에 의해 관리된다. 하나의 노드는 여러개의 Pod 를 가질 수 있고, 마스터는 클러스터 내 노드를 통해서 파드에 대한 스케쥴링을 자동으로 처리한다. Pod : Cluster 에서 실행 중인 Container 집합으로 일부 자원을 공유한다. 볼륨과 같은, 공유 스토리지 클러스터 IP 주소와 같은, 네트워킹 컨테이너 이미지 버전 또는 사용할 특정 포트와 같이, 각 컨테이너가 동작하는 방식에 대한 정보 Control Pla..
-
Kafka Consumer Group 및 RebalancingMSA/Kubernetes 2023. 2. 10. 21:42
Consumer Group Consumer 의 집합을 뜻하며, Consumer 대비 Partition 수에 따라서 동작이 발생된다. Consumer > Partition 의 경우 Partition 수량을 초과하는 Consumer 는 동작하지 않는다. Consumer < Partition 의 경우 1개의 Consumer 에서 다수의 Partition 에 대하여 지정된 방식에 따라 동작한다. ( ex . (P1,P2,P1,P2) - RoundRobin etc.. ) Consumer 와 Partition 은 1:1 맵핑관계이다. ( Partition 입장 ) Consumer 와 Partition 은 1:n 맵핑관계이다. ( Consumer 입장 ) 단일 Partition 에서 다수의 Consumer 를 사용하..
-
Kafka 설치MSA/Kubernetes 2023. 2. 10. 21:37
Kafka Installation # Java 1.8.0 Upper install needed $ yum install java $ curl -o kafka_2.13-2.8.0.tgz https://mirror.navercorp.com/apache/kafka/2.8.0/kafka_2.13-2.8.0.tgz $ tar -xzf kafka_2.13-2.8.0.tgz $ cd kafka_2.13-2.8.0 # Startup $ bin/zookeeper-server-start.sh config/zookeeper.properties & $ bin/kafka-server-start.sh config/server.properties & # Topic Create ( Default ) $ bin/kafka-topics..
-
Kafka ConnectorMSA/Kubernetes 2023. 2. 9. 19:41
kafka Connect Kafka Connect는 Apache Kafka®와 다른 데이터 시스템간에 데이터를 확장 가능하고 안정적으로 스트리밍하기위한 도구입니다. 대규모 데이터 세트를 Kafka 안팎으로 이동하는 커넥터를 간단하게 정의 할 수 있습니다. Kafka Connect는 전체 데이터베이스를 수집하거나 모든 애플리케이션 서버의 메트릭을 Kafka 토픽으로 수집하여 짧은 대기 시간으로 스트림 처리에 데이터를 사용할 수 있습니다. Kafka Connect는 데이터베이스, 키-값 저장소, 검색 색인 및 파일 시스템 간의 간단한 데이터 통합을위한 중앙 집중식 데이터 허브로 작동하는 Apache Kafka®의 무료 오픈 소스 구성 요소입니다. Kafka Connect 장점 데이터 중심 파이프 라인 – C..
-
Kafka 기본 개념MSA/Kubernetes 2023. 2. 8. 20:19
Kafka 아파치 재단의 카프카는 pub-sub모델의 메세지 큐이고, 분산환경에 특화되어 설계되어 있다는 특징을 가짐으로써, 기존의 RabbitMQ와 같은 다른 메세지큐와의 성능 차이가 난다(훨씬 빠르게 처리한다). 그 외에도 클러스터 구성, fail-over, replication와 같은 여러 가지 특징들을 가지고 있다. 용어 Event(Message) : 데이터 단위 Producer : Event를 게시하는 클라이언트 어플리케이션 Consumer : Topic 을 읽고 해당 Event를 처리하는 클라이언트 어플리케이션 Topic : Event 가 적재되는 곳 Partition : Topic 은 여러 Broker 에 분산저장되며, 분산된 Topic 을 Partition 이라고 한다. 어떤 Partiti..
-
Helm ChartMSA/Kubernetes 2023. 2. 2. 23:25
쿠버네티스용 패키지 관리 제품 ( like yum repository ) 단일 바이너리로 구성되어 있으며, Git 에서 다운로드 후 빌드해도 사용가능하다. Helm 의 Repository 의 데이터는 docker image 를 기반으로 하여 chart 를 만든다. ( 기반 이미지는 Docker hub 와 같은곳에서도 찾아서 활용가능 ) 용어 차트 : Helm 패키지로써 쿠버네티스 클러스터 내에서 애플리케이션, 도구, 서비스를 구동하는데 필요한 모든 리소스 정의가 포함되어 있다. 쿠버네티스에서의 Homebrew 포뮬러, Apt dpkg, YUM RPM 파일과 같은 것으로 생각할 수 있다. 저장소 : 차트를 모아두고 공유하는 장소이다. 이것은 마치 Perl의 CPAN 아카이브나 페도라 패키지 데이터베이스와 ..