1) git 설치
https://git-scm.com/download/win
상기 URL에서 windows용 git을 설치합니다.
2) WSL 환경 설치
Windows Subsystem for Linux는 리눅스 또는 맥환경처럼 bash쉘을 활용하는 것을 뜻합니다.
https://learn.microsoft.com/ko-kr/windows/wsl/about
기본적으로Windows 기능 켜기/끄기 로 가서 다음 내역을 활성화 합니다.
- Linux용 Windows 하위 시스템
- Windows 하이퍼바이저 플랫폼
- 가상 머신 플랫폼
아직까지는 터미널에서 bash를 쳐도 정상동작하지 않는점 참고.
다음으로 Ubuntu를 마이크로소프트 스토어에서 설치합니다.
다음으로 아래 링크에서 커널을 설치하세요.
이전 버전 WSL의 수동 설치 단계 | Microsoft Learn
이후에 터미널을 실행시키고 명령어를 실행할 때는 Bash 명령을 사용할 수 있습니다.
2) JDK 1.8 설치
터미널을 실행하고 bash를 입력하여 쉘을 변경합니다.
$ bash
이후에 아래 명령어를 실행하여 openjdk-8-jdk를 설치합니다.
$ sudo apt update
$ sudo apt install openjdk-8-jdk
설치가 완료되면 아래 명령어를 쳐서 openjdk-8-jdk가 잘 설치되었는지 확인합니다.
$ java -version
위 스크린샷과 같이 현재 자바 버전이 나오게 된다면 설치가 잘 된 것입니다.
3) 카프카 바이너리 파일 다운로드 및 압축 풀기
https://kafka.apache.org/downloads
상기 url에서 카프카 바이너리파일을 다운로드할 수 있습니다. 여기서는 kafka 2.7.0을 다운로드하여 테스트합니다.
kafka_2.12-2.7.0.tgz를 다운로드, 압축을 풀고 적절한 디렉토리로 옮깁니다. 압축을 풀 때는 알집과 같은 도구를 사용해도 되고 아니면 터미널 환경에서 다음 명령어로 압축을 풀 수도 있습니다.
$ cd Downloads
$ tar -xvf kafka_2.12-2.7.0.tgz
$ ls
kafka_2.12-2.7.0
kafka_2.12-2.7.0.tgz
위와 같이 tgz와 디렉토리가 보인다면 정상적으로 압축이 풀렸다고 볼 수 있습니다.
4) 주키퍼, 카프카 브로커 실행하기
주키퍼는 다음 명령어로 실행 할 수 있습니다.
$ bin/zookeeper-server-start.sh config/zookeeper.properties
[2023-02-24 18:52:26,944] INFO Reading configuration from: config/zookeeper.properties (org.apache.zookeeper.server.quorum.QuorumPeerConfig)
[2023-02-24 18:52:26,946] WARN config/zookeeper.properties is relative. Prepend ./ to indicate that you're sure! (org.apache.zookeeper.server.quorum.QuorumPeerConfig)
[2023-02-24 18:52:26,951] WARN UserschocoDownloadskafka_2.12-2.7.0/zookeeper is relative. Prepend ./ to indicate that you're sure! (org.apache.zookeeper.server.quorum.QuorumPeerConfig)
[2023-02-24 18:52:26,957] INFO clientPortAddress is 0.0.0.0:2181 (org.apa
...
이후에 새로운 탭에서 카프카 브로커를 다음 명령어로 실행합니다.
$ bin/kafka-server-start.sh config/server.properties
[2023-02-24 18:53:13,530] INFO Registered kafka:type=kafka.Log4jController MBean (kafka.utils.Log4jControllerRegistration$)
[2023-02-24 18:53:14,078] INFO Setting -D jdk.tls.rejectClientInitiatedRenegotiation=true to disable client-initiated TLS renegotiation (org.apache.zookeeper.common.X509Util)
...
5) 카프카 명령어 테스트하기
새로운 터미널 탭을 열고 카프카 바이너리 위치로 이동하여 다음 코드를 실행합니다.
$ bin/kafka-topics.sh --bootstrap-server localhost:9092 --topic test --create
실행이 잘 되었다면 다음과 같이 토픽 이름이 노출됩니다.
'빅데이터 > Kafka' 카테고리의 다른 글
아파치 카프카 Exactly-once 처리의 진실과 거짓 (1) | 2023.06.20 |
---|---|
모던 데이터 플로우: 데이터 파이프라인을 잘 운영하는 방법 (1) | 2023.06.12 |
아파치 카프카 브로커 설정에서 listener와 advertised.isteners의 차이? (1) | 2023.03.26 |
커넥트 REST API 확장 플러그인 : Connect Rest Extension Plugin (0) | 2022.10.04 |
카프카 커넥터의 태스크에 Priority를 부여할 수 없을까? (0) | 2022.10.04 |
토픽을 GlobalKTable 구체화된 뷰(view) 키-값 저장소로 사용시 특이점 및 주의사항 (0) | 2022.09.15 |