1. 들어가며 카프카(Kafka)는 대규모 실시간 데이터 파이프라인 및 스트리밍 애플리케이션을 구축하는 데 사용되는 오픈 소스 분산 이벤트 스트리밍 플랫폼입니다. 카프카를 사용하기 위해서는 토픽, 파티션, 프로듀서, 컨슈머 등 시스템의 여러 구성 요소를 관리하기 위한 다양한 명령어를 사용해야 합니다. 이번 블로그 포스트에서는 카프카 클러스터에서 다양한 작업을 수행하기 위해 사용할 수 있는 카프카 명령어 모음을 제공하겠습니다. 2. 카프카 브로커(Broker) 명령어 카프카 브로커는 데이터의 저장 및 복제를 관리하는 카프카 클러스터의 핵심 구성 요소입니다. 다음 명령어를 사용하여 카프카 브로커를 관리할 수 있습니다. 2-1. 카프카 브로커 시작하기: 카프카 브로커를 시작하려면 다음 명령어를 사용합니다. b..
1. 들어가며 Apache Spark를 활용해 여러 애플리케이션을 만들어보는 경험을 하고 있는 현재, 여러 오류를 마주하고 해결하는 과정의 연속이라 기록용도로 작성해보고자 합니다. 이번 포스팅에서는 Apache Spark를 활용하는 데 있어서 발생될 수 있는 오류 중 disk 가 가득 찬 경우입니다. 2. 원인 분석 우선 일단 Apache Spark의 Strucutred streaming을 활용할 때 누적되어 저장되게 되는 데이터를 알아봅시다. 2-1. logs file 문제? 첫 번째로, spark의 logs 파일입니다. Spark는 자체 로깅을 위한 표준 라이브러리로 log4 j 사용합니다. Spark 내부에서 발생하는 모든 일은 셸 콘솔과 구성된 기본 저장소에 기록됩니다. Spark는 또한 앱 작성..
1. 시작하며 도커(docker)는 리눅스 컨테이너에 여러 기능을 추가함으로써 애플리케이션을 컨테이너로서 좀 더 쉽게 사용할 수 있게 만들어진 오픈소스 프로잭트입니다. 기존에 쓰이던 가상화 방법인 가상 머신과 달리 도커 컨테이너 성능의 손실이 거의 없어서 차세대 클라우드 인프라 솔루션으로서 많은 개발자들에게 주목받고 있습니다. 2. 가상 머신과 도커 컨테이너 기존의 가상화 기술은 하이퍼바이저를 이용해 여러 개의 운영체제를 하나의 호스트에서 생성해 사용하는 방식입니다.. 하이퍼바이저에 의해 생성되고 관리되는 운영체제는 게스트 운영체제라고 하며, 각 게스트 운영체제는 다른 게스트 운영체제와 완전히 독립적인 공간과 시스템 자원을 할당받습니다. 하이퍼바이저는 호스트 컴퓨터에서 다수의 운영 체제(operating..
2023.04.04 - [BigData] - [Apache Kafka] 카프카(Kafka) 설치에 대하여 분산 애플리케이션을 사용하게 되면, 분산 애플리에이션 관리를 위한 안정적인 코디네이션 애플리케이션이 추가로 필요로 하게 됩니다. 주키퍼(zookeeper)는 본래 하둡의 서브 프로젝트 중 하나였습니다. 대용량 분산 처리 애플리케이션인 하둡은 중앙에서 분산 애플리케이션을 관리하는 코디네이션 애플리케이션이 필요했기에 서브 프로젝트로서 주키퍼 개발 작업을 진행했습니다. 카프카는 분산 애플리케이션의 한 종류로서 주키퍼를 코디네이션 로직으로 이용하고 있습니다. 주키퍼는 분산 애플리케이션을 위한 코디네이션 시스템입니다. 분산 애플리케이션이 안정적인 서비스를 할 수 있도록 분산되어 있는 각 애플리케이션의 정보를 ..