인프런 커뮤니티 질문&답변

Sanoh님의 프로필 이미지
Sanoh

작성한 질문수

15일간의 빅데이터 파일럿 프로젝트

휴 설치 에러 yum install scl-utils

해결된 질문

작성

·

427

·

수정됨

0

캡처.PNG

yum install centos-release-scl 까지는 설치가 됐는데

utils 부분에서 에러가 나네요 ㅠㅠ 어떻게 해결하나요?

 

그런데 python27은 정상적으로 설치가 됐어요.. 문제없는건가요?

 

  • 추가로 휴 설치 이후 HBase 탭에서 DriverCarInfo에 들어왔는데 실시간 적재 데이터가 하나도 없는데 실시간 적재 데이터를 다시 수행해야 하는 건지 아니면 데이터가 날라간건지 궁금합니다 .. ㅠㅠ캡처.PNG

 

 

답변 2

0

Big.D님의 프로필 이미지
Big.D
지식공유자

안녕하세요! 빅디 입니다.

실시간 데이터 처리가 복잡하고 많이 어렵습니다. ^^;;

그래서 실제 실무에서도 실시간 아키텍처가 안정적으로 운영되기 까지 많은 시행 착오를 겪습니다~

 

우선 명확하게 짚고 넘어가야 할게요, 실시간 데이터셋은 스마트카 운전자의 운행 정보입니다.

핸들/브레이크/깜박이/운행지역 등의 스마트카 조작 정보 이고, 하이브 테이블 정보는 "SmartCar_Drive_Info" 입니다.

앞서 질문에서 조회 하셨던 테이블은 "SmartCar_Status_Info"로 파일단위로 수집되어 저장된 스마트카 상태 정보(타이어,라이트,브레이크 등 정상/비정상 여부) 입니다. 이점 기억해 주시고요~

 

  1. 스마트카 상태 정보(SmartCar_Status_Info) : Log 파일(일단위) -> Flume -> Hadoop

  2. 스마트카 운전자 정보(SmartCar_Driver_Info) : Log 라인(실시간) -> Flume -> Kafka -> Storm -> HBase | Redis

 

보여주신 캡쳐된 스톰의 관리자UI를 보면요..

스톰의 Spout는 잘 작동 하는 것으로 보입니다. Spout는 Kafka에서 데이터를 빼오는 역할을 하는데요, 이를 Bolt에 던지고, HBase 와 Redis 저장 하는 역할은 Bolt가 하게 됩니다. 스톰 관리자 UI에서 Bolt 상태는 어떤지 확인해봐 주시고요~

종합해보면 Storm 까지는 모두 잘 작동 하고 있는것으로 보입니다. Bolt와 연결 되어 있는 Redis , HBase가 문제의 원인일 수 있습니다. 특히 HBase의 상태를 잘 체크해 보셔야 합니다. Cloudera Manager에 접속하셔서 HBase의 Master 및 Region 서버들이 정상인지 확인해 보시고요, Hadoop도 체크를 해보셔야 합니다. 왜냐면 HBase는 Hadoop을 기반으로 작동하기 때문입니다.

 

이런 개인의 파일럿 프로젝트환경에서 실시간 데이터 처리 환경은 어려운게 당연한거고요, 한번에 성공하고 이해 하는게 쉽지는 않습니다. 대신 이렇게 문제를 하나씩 해결해 나가다 보면, 실시간 처리의 아키텍처와 매커니즘이 반드시 이해되고 문제 해결 능력도 생기실 겁니다. ^^

-빅디 드림

 

Sanoh님의 프로필 이미지
Sanoh
질문자

감사합니다. 확인결과 다시 정상작동하는것으로 보이는데 redis에 다음과 같은 오류메세지가 있습니다.

 imageimage

 

이것을 어떻게 해결하면 될까요?

비슷한 다른 질문자님의 글보고 주키퍼 클라이언트로 접속한뒤 토픽 정보가 잘 생성되어있는지도 확인해보았는데

image

이렇게 뜨면 Z노드가 없다는 뜻인가요? 그럼 또 다른 문제가 발생한 것인지...

초보자라 리눅스 환경 적응도 어렵고 배우기가 쉽지않네요 ㅠㅠ,,,

Big.D님의 프로필 이미지
Big.D
지식공유자

네~ sanoh님!

문제가 거의 해결 되는듯 싶은데요..^^

스톰의 REDIS Bolt에서 Redis 서버에 접속이 안되는 것으로 보입니다.

Server02에 접속하셔서 아래 명령으로 Redis가 정상 실행중인지 확인해봐 주세요~

$ service redis_6379 status

참고로 Redis는 주키퍼에 의존성을 갖고 있지 않고요, 관련해 캡쳐된 로그는 정상입니다.

-빅디 드림

Sanoh님의 프로필 이미지
Sanoh
질문자

감사합니다. 확인 결과 redis는 정상작동 중인것으로 확인됩니다 image그러나 아직도 storm UI에서 동일한 redis 오류메세지가 떠있습니다 ㅠㅠ

Big.D님의 프로필 이미지
Big.D
지식공유자

안녕하세요! 빅디 입니다.

음...Redis가 정상 작동중이 었다면, Storm 쪽의 에러 로그를 좀더 상세히 파악해 봐야 할 것 같습니다. TT

해당 Stom 관리자 UI에서 발생된 에러 로그 전체를 올렵봐 주세요~

ps. 혹시 모르니 Redis를 리스타트후, 테스트도 한번 부탁 드립니다!

-빅디 드림

Sanoh님의 프로필 이미지
Sanoh
질문자

우선 redis 중지 후 재시작했는데 상태는,, 여전히 똑같구요

혹시 몰라 다시 스톰 토폴로지 재배포 단계도 2번 더 거쳤는데 마찬가지입니다..

아래는 에러 로그 입니다

image

스스로 해결하고 싶은데 아는 지식이 없으니 자꾸 질문이 길어지네요 ㅠㅠ 미리 양해부탁드립니다..

Big.D님의 프로필 이미지
Big.D
지식공유자

Sanoh님! 파일럿 프로젝트를 하면서 문제와 질문은 너~무 당연한 겁니다. ^^

그리고 이렇게 문제가 많이 생겨야, Sanoh님께는 더 많은 경험을 쌓는 프로젝트가 되는 거구요!!

 

보내주신 로그를 꼼꼼히 보면, Redis는 정상인데 Storm에서 접속이 안되는 것으로 봤을때...

Redis의 설정 파일을 체크해 봐야 할 것 같습니다.

 

Redis를 설치하고 , /etc/redis/6379.conf 파일에서 127.0.0.1 바인딩 주석 처리와

Protective 모드를 해제(No) 하기 위한 작업이 있었는데요...

동영상 강의로 "4. 실시간 적재 파일럿 실행 2단 03. Redis 설치" 의 8분3초 지점부터의 내용입니다. 아마도 이 내용을 따라하시다가 실수가 있었던것 같습니다.

해당 파일을 vi 에디터로 열어, 관련 내용으로 잘 수정이 되었는지 확인 부탁드립니다.

-빅디 드림

Sanoh님의 프로필 이미지
Sanoh
질문자

아.. redis에 문제가 있음을 알았을때 redis부터 뜯어봤어야 했는데 생각이 짧았던거 같습니다 ㅠㅠ 오타가 하나 있었네요

확실히 오류가 생기고 해결하는 과정에서 파일럿 환경에 대해 좀 더 이해가 깊어지고 어떤 매커니즘으로 작동하는지 잘 알게된 것 같습니다

도와주셔서 감사합니다 !

Big.D님의 프로필 이미지
Big.D
지식공유자

네~ "Sanoh"님!

파일럿 프로젝트 끝까지 파이팅입니다!!! ^^

-빅디 드림

0

Big.D님의 프로필 이미지
Big.D
지식공유자

안녕하세요! Sanoh님!

주말인데도 파일럿 프로젝트 열공 해주셨네요...^^*

두 가지 질문에 대해 아래 답변 드립니다~

 

Q1. python27은 정상적으로 설치가 됐어요.. 문제없는건가요?

A1. 네~ utils..부분에 에러가 나는게 맞습니다. Repo 위치가 바뀌어서 나는 현상인데, 관련 부분은 사용하지 않기 때문 문제 되지 않습니다.

 

Q2. HBase 탭에서 DriverCarInfo에 들어왔는데 실시간 적재 데이터가 하나도 없는데 실시간 적재 데이터를 다시 수행해야 하는 건지 아니면 데이터가 날라간건지 궁금 합니다.

A2. 아마도 실시간 데이터 적재 중에 어디선가 문제가 발생했고, 그로인해 최종 목적지인 Hbase에 저장 되지 않은것으로 보입니다. 참고로 특별히 삭제 명령을 진행 하지 않았다면, 기 적재된 데이터는 삭제 되진 않습니다.

 

말씀데로 다시한번 실시간 적재를 해보시고요...

스마트카시뮬레이터 > Flume > Kafka > Storm > Hadoop | Hbase

시작전 위 서버들 상태 및 실행 단계별 이상이 없는지 꼭~ 체크해봐 주세요~ -빅디 드림

 

Sanoh님의 프로필 이미지
Sanoh
질문자

다른 수강생들 질문보고 다음 로직대로 다시 해보았는데요

1. 스톰 토폴로지 삭제 : $ storm kill "DriverCarInfo

2. CM에서 카프카 중지

3. Service 명령으로 Storm 중지

4. CM에서 주키퍼 중지

5. CM에서 주키퍼 시작

6. Service 명령으로 Storm 시작

7. CM에서 카프카 시작

8. 스톰 토폴로지 배포

9. 실시간 테스트

실시간 적재는 잘 확인이 됐습니다만..

 


 

0. 먼저 스마트카 실시간 로그시뮬레이터를 실행

1. 아래 명령으로 시뮬레이터가 실시간 데이터를 생성중인지 확인

$ tail -f /home/pilot-pjt/working/driver-realtime-log/SmartCarDriverInfo.log

----> 정상 수행

2. 아래 명령으로 Kafka로 데이터가 잘 들어 오는지 확인

$ kafka-console-consumer --bootstrap-server server02.hadoop.com:9092 --topic SmartCar-Topic --partition 0

----> 정상 수행

3. Storm UI에 접속해 Topology Stats 의 Emitted/Transferred/Ack 카운트가 증가 하는지 확인

Storm-UI : http://server02.hadoop.com:8088

-----> 카운드 증가 안됨

 

다른 수강생분과 마찬가지로 3번 Storm UI 에서 Complete latency와 Acked가 카운트 되지 않네요.. 후에 redis smembers도 비어있다고 뜨구요,, 어떻게 해야하나요 ㅠㅠ 너무 어렵네요,,imageimage----------------------------------------------------------------------

image그런데 Hue 데이터 탐색 처리 단계에서 쿼리는 또 정상적으로 작동합니다 배터리 60미만인거 100대도 잘 출력되구요,,,,,,,

그 뒤로 쭉 진행되다가 파일럿 실행 4단계 데이터 준비에서 실시간 과속차량 조회 (위의 smembers문제) 에서 다시 막혔습니다,,,

Sanoh님의 프로필 이미지
Sanoh

작성한 질문수

질문하기