ELK 7.6+ 파일비트 클러스터 구축 가이드
1. 구축 환경 및 소프트웨어 버전
소프트웨어
버전
운영체제
커널 버전
Elasticsearch
7.6.2
CentOS 7.5.1804
3.10.0-862.el7
Logstash
7.6.2
CentOS 7.5.1804
3.10.0-862.el7
Kibana
7.6.2
CentOS 7.5.1804
3.10.0-862.el7
Filebeat
7.6.2
CentOS 7.5.1804
3.10.0-862.el7
JDK
11.0.7
CentOS 7.5.1804
3.10.0-862.el7
Kafka/Zookeeper
2.12-2.3.1
CentO ...
7월 9일 02:13에 게시됨
Kafka 생산자 및 소비자 오류 복구 메커니즘
생산자 측면 재시도 구현
메시지 전송 실패 시 복구를 위해 생산자 구성에서 재시도 매개변수를 설정합니다. 비동기 전송과 콜백 핸들러를 활용하며, 멱등성 보장이 필수적입니다.
재전송 설정 예시
Properties config = new Properties();
config.setProperty("bootstrap.servers", "kafka-server:9092");
config.setProperty("key.serializer", StringSerializer.class. ...
7월 6일 18:49에 게시됨
Kafka 클러스터 구축 가이드
클러스터 IP 주소:
192.168.0.191
192.168.0.110
192.168.0.122
세 대의 서버를 사용하여 Zookeeper와 Kafka 클러스터를 구성합니다.
각 서버에서 다음 명령어로 Zookeeper 이미지를 다운로드합니다.
docker pull zookeeper:3.4
다음으로 각 서버에 디렉토리를 생성하고 권한을 부여합니다.
chmod 777 /home/admin/kafka/zookeeper/
chmod 777 /home/admin/kafka/zookee ...
7월 3일 21:16에 게시됨
CentOS 7에서 Kafka 3.7 단일 노드 구축: Zookeeper + SSL 인증 및 공중망 프록시 연동 가이드
1. 필요한 패키지 다운로드
먼저 JDK 1.8, Zookeeper 3.8.4, 그리고 Kafka 3.7.0 바이너리를 준비합니다. JDK는 별도로 다운로드해야 합니다.
wget https://downloads.apache.org/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz
wget https://archive.apache.org/dist/kafka/3.7.0/kafka_2.13-3.7.0.tgz
2. Java 환경 변수 설정
JDK 압축을 풀고 전역 환 ...
6월 27일 00:23에 게시됨
Kafka 3.7 SSL 인증서 및 공인 도메인 프록시 설정 가이드
JDK 및 Zookeeper 설치
이 단계는 생략하며, 별도의 설치 가이드를 참고하여 JDK와 Zookeeper를 설치한다.
Kafka 서버 및 클라이언트 인증서 생성
2.1 서버 인증서 생성
먼저 SSL 인증서 저장용 디렉토리를 생성한다.
mkdir ssl && cd ssl
# 1. CA 인증서 생성
# CN 값은 실제 사용할 도메인 이름이어야 한다. 본 가이드에서는 kafka.test.com 도메인을 사용 ...
6월 18일 20:35에 게시됨
Kafka에서의 LEO와 HW: 로그 복제와 데이터 가시성의 핵심 메커니즘
LEO와 HW의 역할과 원리
Kafka는 분산 메시징 시스템으로서 데이터의 일관성과 내결함성을 보장하기 위해 LEO(Log End Offset)와 HW(High Watermark)라는 두 가지 핵심 오프셋 개념을 사용한다. 이들은 리더-팔로워 아키텍처 하에서 메시지의 영속성, 복제 상태, 그리고 소비자 접근 가능 여부를 결정하는 기준이 된다.
1. LEO: 다음 메시지가 저장될 위치
LEO는 각 브로 ...
6월 12일 22:12에 게시됨
PHP에서의 메시지 손실 및 중복 처리
1. 원인 분석
메시지 손실
생성자가 메시지를 영구적으로 저장하지 않아 시스템 다운 시 손실
메시지 큐가 영구화 설정이 되어 있지 않음
소비자가 메시지를 받았지만 처리 전에 다운되어 메시지 확인 후 손실
네트워크 오류, 타임아웃, 큐 가득 찰 때 등
중복 소비
소비자의 처리 시간 초과 또는 실패로 인해 메시지 재전송
메시지가 올바르게 확인되지 않아 큐에서 ...
6월 11일 01:43에 게시됨
SSM 기반 애플리케이션에서 Kafka 메시지 큐 통합 가이드
Kafka를 활용한 고성능 SSM 아키텍처 설계
분산 마이크로서비스 환경에서 안정적인 비동기 처리를 구현하기 위해 메시지 큐는 필수 요소다. Spring + Spring MVC + MyBatis(SM)로 구성된 전통적인 웹 애플리케이션도 카프카와의 통합을 통해 초고속 트래픽 환경, 예를 들어 플래시 세일(초대박 할인)과 같은 시나리오에 대응할 수 있다. 본 문서에서는 SM 기반 프로젝트에 ...
6월 10일 21:30에 게시됨
Optional과 ifPresent를 활용한 null 안전성 처리
Java 8에서 도입된 Optional은 null 참조로 인한 NullPointerException을 방지하기 위해 설계된 컨테이너 객체입니다. 값의 유무를 명시적으로 표현하며, isPresent()로 존재 여부를 확인하고 get()으로 실제 값을 추출할 수 있습니다.
Optional 생성 방식
JDK는 세 가지 정적 팩토리 메소드를 제공합니다:
메소드설명
Optional.of(T value)non-null 값으로 Option ...
5월 30일 17:25에 게시됨
Kafka와 NLog를 활용한 로그 수집 및 Kibana 시각화
Kafka와 NLog를 활용한 로그 수집 및 Kibana 시각화
NuGet 패키지 참조
<PackageReference Include="NLog.Kafka" Version="0.2.1" />
<PackageReference Include="NLog.Web.AspNetCore" Version="4.14.0" />
Logstash 구성
input {
kafka {
bootstrap_servers => "127.0.0.1:9092"
g ...
5월 29일 05:43에 게시됨