6/30 (일)
W15-6 강의 수강.
kafka를 설치하고 producer.py와 consumer.py 파일을 실행시켜 간단하게 kafka를 사용해보는 실습을 하던 도중 에러가 발생했다.
pip3 install kafka-python으로 kafka-python을 설치하고 확인한 뒤 실행하였다. 강의에서 kafka를 실행시키지 않고 파일을 실행시킬 경우 No Broker Available 에러가 발생함을 명시하였는데, 다른 에러가 떠서 당황했다.
구글링 결과 이는 python3.12에서 나타나는 에러임을 알게 되었다. 여러 해결책을 찾아봤지만 결국 현재 local에 설치되어있는 python의 버전을 3.11로 바꾼 뒤 파일을 실행해야했다. (python3.11에서는 일어나지 않는 에러임을 구글링을 통해 확인했다.)
만약 window를 사용하고 있다면 단순히 python의 버전을 바꿔주면 되겠다.
현재 나는 mac으로 넘어온지 한달도 채 안됐기 때문에 상당히 어려워서 많이 헤맸다..
python3와 python이 별개이고, python은 3.11, python3는 3.12 버전이 되는 이상한 상황까지 갔었다.
앞서 pip3 install kafka-python을 실행했기 때문에 설치된 내용을 읽어보았을 때 3.12에서 돌아가는듯 했다. 그래서인지 아래처럼 python으로 실행은 에러가 띄우며 실행되지 않았다.
$ python producer.py
ModuleNotFoundError: No module named 'kafka'
그리고 default python version을 3.11로 변경하지는 못했지만 나름대로의 해결책을 찾았다.
brew install python@3.11
pip3.11 install kafka-python
python3.11 producer.py

사실 python과 python3가 각자 설정된 버전이 다른 python임을 이제서 알게되었는데, 이리저리 만져보니 뒤에 3부분에 version을 붙이는 것이 가능하다는 것을 알았다.
상당히 야매 해결이긴 하다. 직접 버전을 불러와서 실행시키니 다행히 파일은 정상실행되었다.
아직까지 에러를 해결한 뒤 자세히는 모르겠지만 이렇게 흘러갈 수 있구나, 하고 넘어가는데 아주 감성코딩이라 반성해야할 부분이 많은 것 같다.