안녕하세요.
|
엔지니어 최지혁입니다.

thumbnail
Implementing CI/CD with Github Actions CI + AWS Code Deploy

Realtime data streaming with Apache Kafka, Druid, Superset

Base 이번에 한이음의 일환으로 클라우드 환경에서 실시간 따릉이 대시보드를 만들게 되었다. 다만 내 역할이 데이터 엔지니어링 및 인프라에 국한되어 있어 개인적으로 오픈소스를 활용하여 로컬에서 하나를 더 만들어 보려고 한다. 때문에 레퍼런스를 찾던 도중 다음과 같은 글을 발견했다. https://medium.com/@emergeit/realtime-data-streaming-with-apache-kafka-apache-pinot-apache-druid-and-apache-superset-e67161eb9666 2년이 넘은 자료이기는 하지만 내 요구사항을 모두 만족했기에 아주 적합한 래퍼런스였다. 그럼 이제 시작해보자 시작해보자 Ddareungi real-time Dashboard architecture Dashboard architecture 위는 내가 수정한 아키텍처다. 신경 쓴 부분은 아래와 같다. Docker는 Superset을 올릴때만 사용하고자 한다. 레퍼런스에서는 모든…

Apache Kafka에 대해 전반적으로 알아보자

사진카프카 로고 이번에 카프카를 로컬에서도 돌려보고 클라우드 환경에서도 다뤄보게 되었다. 그래서 카프카의 구조나 기본 개념에 대해 정리를 하고 가야할 필요성을 느꼈다. 물론 실제 구축을 할때는 인프라적인 측면에서 더 애를 먹는다. 방화벽 설정이라던지.. 그래서 기본적인 개념에 대해서는 약간 소홀해 지는 경향이 있었다. 아래 토픽 생성할 때의 shell 명령어를 보자 사실 이 문구를 그냥 copy/paste 한다면야 생성 가능하겠지만 라는 명령어가 어떤 의미인지 잘 모른다면 사실상 kafka를 사용하는 의미가 없다. 때문에 이번 기회에 깊이있게는 아니더라도 대략적으로 정리를 해보려고 한다. Back ground of Kafka Kafka는 왜 Kafka일까? 카프카의 창시자인 Jay Kreps는 kafka는 쓰기에 최적화된 시스템이기에 작가의 이름을 붙이는게 낫다고 생각하여 본인이 좋아하는 작가인 프란츠 카프카의 이름을 오픈소스 프로젝트 이름으로 명명했다. Before Kafka &…

AWS - jammy InRelease & 101 Network is unreachable 해결하기

AWS - jammy InRelease & 101: Network is unreachable jammy InRelease 오류 카프카 브로커 Ubuntu 서버에 java를 설치하려고 하는데 아래와 같은 문구가 뜨면서 동작이 되지 않았다. 무슨 jammy가 inrelease된 것 같은데 재미 하나도 없고 머리 아프다 다행히도 해당 에러에 대해서는 AWS측에서 답변 달아준 부분 있다. 공식 해결 방법 대충 해석을 보면 아래의 포인트들을 다시 체크해봐라 같은데 해석해보면 다음과 같다. 현재 EC2가 제대로 작동하는 다른 EC2들과 동일한 VPC 및 서브넷에 배포되었는가? 그게 아니라면 VPC가 인터넷 게이트웨이로 인터넷에 접근이 허용되어 있는가? 서브넷이 public이라면 인터넷 바운드 트레픽을 인터넷 게이트 웨이로 라우팅하는 라우팅 테이블이 있는가? 서브넷이 private이라면 인터넷 바운드 트래픽을 공용 서브넷의 NAT 게이트 위에이로 라우팅하는 라우팅 테이블이 있는가? 체크리스트…