Project
-
[Trouble shooting] Datahub S3 메타데이터 주입시 에러 발생Project/D.D.P (Datahub) 2023. 7. 10. 11:08
처음 발생한 에러는 다음과 같다. File "/home/ubuntu/.local/lib/python3.10/site-packages/datahub/ingestion/run/pipeline.py", line 122, in _add_init_error_context raise PipelineInitError(f"Failed to {step}: {e}") from e datahub.ingestion.run.pipeline.PipelineInitError: Failed to configure the source (s3): Java gateway process exited before sending its port number 위 에러를 보고 자바가 설치되어있지 않기 때문이라고 생각해서 자바를 설치했다. sudo..
-
Data Catalogue Platform 구축기: 0.구축 계획 수립 (기존 구축 process에서 수정 및 추가)Project/D.D.P (Datahub) 2023. 4. 5. 19:44
처음 구축했던 process에서 초록색 부분을 수정 및 추가해서 구축하기로 계획을 세웠다. 전체 계획 1. Terraform으로 네트워크 및 EKS 클러스터 구축 2. Terraform으로 ArgoCD 설치 및 배포 3. ALB 연결해서 ArgoCD 노출시키기 4. ArgoCD로 Datahub 설치 및 배포 5. ALB 연결해서 Datahub 노출시키기 6. MySQL DB 배포 (Datahub metadata DB) 7. EKS 클러스터에 Datadog 연결하여 모니터링 시스템 구축 8. Glue, S3 소스 주입 9. Metadata 자동 업데이트 기능 구축: 1) Metadata 배치 주입 2) Glue/ S3에 리소스 삭제시 Datahub DB에 sync맞추는 기능 3) Glue job 생성/ 수..
-
험난하고 험난한 Datahub - EKS Trouble shooting: prerequisites-cp-schema-registry pod CrashLoopBackOff 해결하기 (EBS CSI Controller 설치)Project/D.D.P (Datahub) 2023. 3. 27. 21:20
EKS 구축하는 동안 제일 많이 한 말이 아늬...왜 안되냐고... 인 것 같다. 자꾸 파드가 죽고, 그러다 갑자기 지 혼자 살아나고, 그러다 다시 죽어있고..... 아니.. HA때문에 EKS 쓴다면서요.. 내 클러스터는 가용성 왜 이런데.. 문제 상황 prerequisites-cp-schema-registry-xxx 파드: CrashLoopBackOff elasticsearch-master, prerequisites-kafka, prerequisites-mysql, prerequisites-zookeeper 파드: Pending 문제 원인 파악 0. 진정하기 (이제 crashloopbackoff만 봐도 화남) 1. 파드에 문제가 생기면 일단 describe 확인 -> log 확인으로 문제 원인을 알 수..
-
Collecting Event Data 1. Slack Push notification for Elastic beanstalk (Elasticbeanstalk 서버 Slack 알림 설정하기)Project/Collecting Event Data 2023. 1. 10. 19:24
AWS SNS is a push notification service. We can send a slack notification through a below pipeline : SNS subscribes an EB application Once the application's status changes, EB send an event msg to SNS SNS fowards the event msg to a Lambda function The Lambda function send a notification to Slack via webhook Create an SNS topic First of all, we need to create an SNS subscription and topic for EB. ..
-
Collecting Event Data 0. Entire Pipeline (전체 파이프라인)Project/Collecting Event Data 2022. 12. 16. 20:48
이제와서 느끼는건데 너무 프로젝트 초반부터 블로그에 글을 쓰면 정말 기록용 정리되지 않은 개발새발 글이 될 수 있는 것 같다. 그런 글도 필요하긴 하지만.. 내 블로그의 정체성이 노트인지 정리용인지 희미해지는 순간 Main Purpose - Collecting users' viewed/clicked event data - Build a separate server for event data to prevent serveice server overloaded Pipeline - API Server: AWS Elastic Beanstalk (Stage, Production) - Data Lake: AWS S3 (Tier1, Tier2) - Data Warehouse: AWS Redshift - Dashboa..
-
Data Catalogue Platform 구축기: Prologue .Terraform으로 생성한 EKS 삭제(destory)하기. 나의 두 달 resetProject/D.D.P (Datahub) 2022. 12. 3. 19:40
8월 1일부터 10월 27일까지 여름 휴가, 중간에 치고 들어왔던 대시보드 작업 기간 제외하고 약 한 달에 걸쳐 ArgoCD와 Datahub으로 회사의 Data Catalogue Platform을 구축했다. 나름 큰 프로젝트인데다가 플랫폼부터 노드 수까지 전체 아키텍쳐를 내가 그려야했기에 불안함도 컸고, 물론 레퍼런스들을 따라갈 수 있었지만 또 성격상 그 레퍼런스가 우리 회사에 최적이 맞는지 검증해야만 쓰는 성격이기 때문에 하나하나 뜯어보느라 오래걸리기도 했으며, 개발이 막힐 때면 어디 물어볼 데가 없어 답답한 날들의 연속이었다. 더군다나 아무런 output도 없이 시간을 흘려보내고 있는데 회사에서는 나에게 월급을 주고 있다는 부분이 고마우면서도 빨리 결과를 내야겠다는 요소로 작용했던 것 같다. 그럼에도..
-
로그 데이터 수집하기: Prologue. 저장소/파이프라인 후보 검토 (Collecting log data: Prologue. Storage lists + Pipeline)Project/Collecting Event Data 2022. 11. 7. 21:22
Entire pipeline (전체 파이프라인) Detailed pipeline (DE파트 파이프라인) (receive log -> s3 tier1)discussing part -> convert data to parquet file and save to tier2 (s3, glue) -> ETL to DW (redshift, glue) -> reverse ETL to serviceDB (mysql, glue) Points (작업하면서 고려해야할 포인트) - revserse ETL batch schedule 배치 스케줄 - storage read/write speed 저장소 읽기/쓰기 속도 - batch speed 배치 속도 How log incomes (로그가 어떻게 수집되는지) Need to chec..
-
로그 데이터 수집하기: Prologue.AWS 저장소 검토Project/Collecting Event Data 2022. 10. 31. 19:51
1. 종류 걸러내기 * 쿼리 불가능한 EBS, EFS 제외 * QLDB (Ledger), Neptune(Graph), Keyspaces(Wide Column) 형태 적합하지 않아 제외 NoSQL의 단점: 커넥션, 구축 필요 FS의 단점: 느림 이름 종류 장점 단점 DynamoDB key-value - 인덱스 설정 가능 - ACID, 트랜잭션 지원 - 확장성 - 온디맨드 백업 및 복구 - 다중리전중복 - 쿼리 용량 초과시 요청 거부 (지연 x) ElastiCache In-memory - 응답시간 낮음 - Serverless Redis - 타리전에서 읽을 수 있음 - hit ratio가 높은 데이터 적재에 적합 - 오토스케일링 x (하려면 별도 구축 필요) - 데이터 보존 x MemoryDB In-memor..