구축 및 데이터 분석 [프로젝트] 빅데이터 플랫폼

K8s 클러스터 환경에서 Kafka, EFK, Grafana를 활용한 빅데이터 구축 및 데이터 분석 주제: K8S를 활용한 NEWS 실시간 순위 및 이슈 분석 ●네이버 뉴스에서 실시간, 대용량 데이터를 수집/처리/시각화 프로젝트 ●네이버 뉴스에서 키워드에 맞게 원하는 정보 수집 ●그 정보를 바탕으로 분야별로 분류해 사용자가 어떤 정보를 더 보는지 확인 역할 분담 ●임헌인 Kubernetes, Elastic search, Kibana ●유재준, Kubernetes, Promhefrafrafrafrafrafrafrafl

Cpui7, Ram16g, Hdd500gx4PC(TotalCpu: 32Core, Ram: 64g, hdd: 2TB) 개발 환경 ● VM-warework starionpro 16 ● Ubuntu: 2018.04 ● Kubernetes(k8s): v1.23.5 ● Containerd: 1.5.10.14 ● AWSEC2(Crawler work starion pro 16 ● PyCommiewunity)controller: v1.0.0 ● Metallb: v0.9.3 ● Kafka: 3.1.0 ● Fluentd: 4.3 ● Elastic Search: 7.17.1 ● Promethus: 2.27.1 ● Grafana: 8.0.3 ● Hadoop(HDFS): 3.2 – 추가 업데이트 중 추가.0.0: 2.4.29 (ubuntu) 저장 환경 ● Elastic Search

주요 키워드●Clustering●Kubernetes(k8s)xContaierd●EFK(elasticsearch+fluentd+kibana)●Kafka●Promethus&grafana●Real-TimeCrawling●Real-TimeStorage●Real-TimeProcessing●Git 관리 시스템의 흐름도

흐름도 데이터 파이프라인 스쿠버 네티스 환경: ●클러스터 환경 구축, Deploy Set, Volume), ervice(Load Balancer, Cluster IP)

CrawlingDATA : ●EC2→카프카→풀엔티드→엘라스틱서치→기바나●Python코드를 사용하여 인터넷뉴스에서 원하는 데이터로 수집·정제→Kafka→Fluentd를 통해 ElasticSearch에 저장, Kibana에 시각화

LOGDATA: ●Django->Kafka->Fluentd->ApacheSpark->Apache Zeppelin●시각화된 데이터를 Django웹서버에 구현, 사용자의 로그를 Kafka->Fluentd를 통해 Apache Spark에서 분석·처리하고 Apache Zeppelin으로 시각화

모든 컴퓨터 상태 : ● Kubernetes → Prometheus → Grafana ● Kubernetes 아래의 모든 Pods 정보를 Prometheus로부터 받아 상태를 Grafana로 시각화

시연 영상 ● 시연 영상 ver.1

K8s 클러스터 환경에서 Kafka, EFK, Grafana를 활용한 빅데이터 구축 및 데이터 분석 ● 시연 영상 ver.2

K8s 클러스터 환경에서 Kafka, EFK, Grafana를 활용한 빅데이터 구축 및 데이터 분석(주제: K8S를 활용한 NEWS 실시간 순위 및 이슈 분석) ●PPT+발표 녹화본

프로젝트 진행 과정에서 핵심 문제점과 해결 방법 임홍인 1. Docker 지원 중단 문제점 1:K8S에서 Docker 일부 기능을 공식적으로 지원하지 않게 되었다.해결책: 빅데이터 플랫폼 구축 특성상 윈도의 VM 방식이 아닌 우분투 환경에서 K8S와 Docker를 도입하기로 했다. 하지만 K8S에서 Docker의 일부 기능을 더 이상 지원하지 않는다는 정보를 듣게 됐고 결국 K8S+Containerd 조합으로 프로젝트를 진행하게 됐다. 독학으로 진행한 분야인 만큼 접할 수 있는 정보의 양이 가장 중요했지만, 도커만큼 관련 정보가 많지 않아 독학에 어려움이 있었다. 하지만 K8S+Containerd에서도 DockerHub 이미지 파일을 그대로 살릴 수 있어 밤낮없이 K8S 사용법을 연구하면서 수많은 오류를 해결해 나갈 수 있었다. 최종적으로 K8S에 여러 빅데이터 플랫폼을 성공적으로 구축했고 해당 플랫폼을 통해 데이터 처리, 분석까지 도달할 수 있었다.2. K8S 네트워크 문제점 2: 쿠바네티스 네트워크(IP 외부 노출) 해결 방안:Pod 환경에서 키바나처럼 외부 브라우저를 이용해야 하는 경우 IP를 외부로 노출시켜야 하고 AWSEC2와 데이터를 주고받으려면 포트포워딩뿐만 아니라Pod 네트워크 문제를 해결해야 했다. 해당 문제로 많은 시간이 소요되면서 네트워크 분야가 결코 쉽지 않았다. 하지만 Ingress, service 등 쿠버네티스를 공부하면서 다양한 방법을 시도해봤지만 결국 Metal LB를 통해 Load Balance 타입으로 이를 해결했다.Git 주소 http://github.com/SpamDong/newsContributetoSpamDong/newsdevelopmentbycreatinganaccountonGitHub.github.com

error: Content is protected !!