25-02-27
๐ Daily Reportโ
๐ ํ๋ก์ ํธ ์ํฉโ
๋ชจ๋ ๊ฒ ์๋๊ณ ์์!
๊ตฌ๋ผ์
๐ cmd: "๋ช ๋ น์ค์ด ๊ธธ์ด์"โ
Kafka ํ์ผ ๊ฒฝ๋ก๋ฅผ C:
์ ๋์ด์ผ ํ๋ค. ๊ทธ์ ๋๋ผ์ด.......;
๐ ์ํคํ ์ณ, ์ด์๊ณผ ํ์คโ
๊ทธ๋ฆฌํ์ฌ, ์นดํ์นด๋ GCP์ ์ฌ๋ฆฌ๊ณ ๊ฐ๋ฐํ๊ธฐ๋ก ๊ฒฐ์ ํ๋ค.
ํ๋ ์ ํ ์ด์ ๋ 100% ์ง๋ฌธ ๋ค์ด์ฌ ๊ฒ ๊ฐ์์ ๋ฐฉ์ด์ (?)์ ์ํด ๊ทธ๋ ค๋จ๋ค.
๐ Kafka, Zookeeper ์ปจํ ์ด๋ ์ค์นโ
services:
zookeeper:
image: wurstmeister/zookeeper
container_name: zookeeper
ports:
- "2181:2181"
kafka:
image: wurstmeister/kafka:2.13-2.8.1
container_name: kafka
ports:
- "9092:9092"
environment:
KAFKA_ADVERTISED_HOST_NAME: 127.0.0.1
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
volumes:
- /var/run/docker.sock:/var/run/docker.sock
...๋ง์ด ์ฐ์ด๋ ๊ฒ๊ณผ ๋ณ๊ฐ๋ก, ๋ง์ง๋ง์ผ๋ก ๋ ์ง์คํธ๋ฆฌ์ ๋ฑ๋ก๋ ์ปจํ
์ด๋๊ฐ ์๋นํ ๊ตฌ๋ฒ์ ์ด์๋ค. ์ง๊ธ latest ์นดํ์นด ๋ฒ์ ์ด 2.13-3.9.0
์ธ๋ฐ ใ
๊ทธ๋๋ ๋ฐ์๋๊น ์ผ๋จ ์ฐ์.
๐ Docker ์์ผ ๊ถํ ์ค์ ํ๊ธฐโ
$ docker compose -f compose.kafka.yml up -d
unable to get image 'wurstmeister/kafka:2.13-2.8.1': permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.47/images/wurstmeister/kafka:2.13-2.8.1/json": dial unix /var/run/docker.sock: connect: permission denied
์นดํ์นด ์ค์นํ๋ค๊ฐ ํฐ์ง ๋ฌธ์ ์ธ๋ฐ, /var/run/docker.sock
ํ์ผ์ ๊ถํ์ 666์ผ๋ก ๋ณ๊ฒฝํ๋ฉด ๋๋ค๊ณ ํ๋ค.
$ sudo chmod 666 /var/run/docker.sock
๐ compose down์ ๋ณผ๋ฅจ ์ ๊ฑฐํ๊ธฐโ
$ docker compose -f compose.kafka.yml down -v
๋๋ ์ ๊ทธ๋์ docker rm -v $(docker ps -qa)
๋ก ์ฝ์ง์ ํ์๋๊ฐ
๊ทธ๋๋ ๋ช
๋ น์ด ์ธ์ฐ๋๋ฐ ๋์๋จ
์๋ ๊ทธ๊ฑธ ์ ์ธ์์?
๐ Kafka ํ ํฝ ๊ด๋ จ ๋ช ๋ น์ดโ
Kafka ์ปจํ ์ด๋ ์ ์ ์โ
$ docker container exec -it kafka bash
Kafka ํ ํฝ ๋ฆฌ์คํธ ํ์ธโ
$ kafka-topics.sh --list --bootstrap-server localhost:9092
Kafka ํ ํฝ ์์ฑโ
$ kafka-topics.sh --create --bootstrap-server localhost:9092 --topic doki-reserve
Kafka ํ ํฝ ์ญ์ โ
$ kafka-topics.sh --delete --bootstrap-server localhost:9092 --topic doki-reserve
๐ reserve-service์ Kafka ์ฐ๊ฒฐโ
์ ์ผ ๋จผ์ GCP ๋ฐฉํ๋ฒฝ์์ TCP 9092 ์ธ๋ฐ์ด๋๋ฅผ ํ์ฉํด์ฃผ์๋ค.
๊ทธ๋ฆฌ๊ณ ์ ๋ ํผ๋ฅผ ์ฐธ๊ณ ํด์ ํ ์คํธ ์ฝ๋๋ฅผ ์์ฑํ๋๋ฐ..
20:59:02.335[org.springframework.kafka.KafkaListenerEndpointContainer#0-0-C-1] WARN o.apache.kafka.clients.NetworkClient - [Consumer clientId=consumer-doki-1, groupId=doki] Connection to node 1001 (/127.0.0.1:9092) could not be established. Node may not be available.
๋ญ ํธ์คํธ ์ค์ ์ด ์๋ชป๋ ๊ฒ ๊ฐ์๋ฐ,
์๊ฐํด๋ณด๋๊น compose ์คํฌ๋ฆฝํธ์์ KAFKA_ADVERTISED_HOST_NAME: 127.0.0.1
์ด ์๊ฐ๋จ.
์ ์ค๋ง ์ด๊ฑฐ GCP ์ธ์คํด์ค ์๋ํฌ์ธํธ๋ก ์ธํ ํด์ผ๋๋๊ฑด๊ฐ? ํ๊ณ ๋ค์ ์ค์ ํด์ compose up ํด์คฌ๋๋
21:09:06.733[kafka-producer-network-thread | reserve-service-producer-1] WARN o.apache.kafka.clients.NetworkClient - [Producer clientId=reserve-service-producer-1] Error while fetching metadata with correlation id 1 : {doki-reserve=LEADER_NOT_AVAILABLE}
?
SSH ์ ์ํด์ ์นดํ์นด ์ปจํ
์ด๋๋ฅผ ํ์ธํด๋ณด๋ doki-reserve
ํ ํฝ์ ์์ฑ๋์ด์์๋ค. ๊ทธ๋ผ ์ฐ๊ฒฐ์ ๋๊ฑด๋ฐ? ๋ญ์ง?