1) git 설치
https://git-scm.com/download/win
Git - Downloading Package
Download for Windows Click here to download the latest (2.39.2) 32-bit version of Git for Windows. This is the most recent maintained build. It was released 10 days ago, on 2023-02-14. Other Git for Windows downloads Standalone Installer 32-bit Git for Win
git-scm.com
상기 URL에서 windows용 git을 설치합니다.
2) WSL 환경 설치
Windows Subsystem for Linux는 리눅스 또는 맥환경처럼 bash쉘을 활용하는 것을 뜻합니다.
https://learn.microsoft.com/ko-kr/windows/wsl/about
Linux용 Windows 하위 시스템이란?
다양한 버전 및 이를 사용하는 방법을 포함하여 Linux용 Windows 하위 시스템에 대해 알아봅니다.
learn.microsoft.com
기본적으로Windows 기능 켜기/끄기 로 가서 다음 내역을 활성화 합니다.
- Linux용 Windows 하위 시스템
- Windows 하이퍼바이저 플랫폼
- 가상 머신 플랫폼
아직까지는 터미널에서 bash를 쳐도 정상동작하지 않는점 참고.
다음으로 Ubuntu를 마이크로소프트 스토어에서 설치합니다.
다음으로 아래 링크에서 커널을 설치하세요.
이전 버전 WSL의 수동 설치 단계 | Microsoft Learn
이전 버전 WSL의 수동 설치 단계
wsl install 명령을 사용하지 않고 이전 버전의 Windows에 WSL을 수동으로 설치하는 방법에 대한 단계별 지침입니다.
learn.microsoft.com
이후에 터미널을 실행시키고 명령어를 실행할 때는 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
Apache Kafka
Apache Kafka: A Distributed Streaming Platform.
kafka.apache.org
상기 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 |