brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Jul 31. 2020

427. Kinesis Firehose에서 ES로 보내

키네시스,람다,ES로 데이터 전송  순서 보기

목차

<0> 구성

<1> 람다 생성

<2> Kinesis Firehose  생성

<3> Elasticsearch Cluster 접속하기

<4> 스트림 데이터 보내기

<5> 키바나에서 데이터 보기 

<6> 클라우드 와치로  데이터 전송에 대해  모니터링 하기



<0> 구성

소스-----------Kinesis Firehose  ------- lambda-------Elasticsearch 


1

ES가 먼저 만들어져 있어야 한다.

// kinesis 만드는 과정에서 S3나 ES를 만들수는 있다.


2

kinesis에서 람다가 처리해 ES로 보낸다.

람다를 만든다.


3

키네시스 파이어호스를 만든다.

만드는중 데이터처리를 위해  람다를 호출한다.

목적지로 ES로 지정한다.

kinesis 데이터를  S3로도 보낸다.  kinesis만드는 과정에서 S3도 만들수 있다.



4

키네시스는  람다로 처리해, 다이나모DB나  Elastic Search로 보내는 경우가 많다.

키세시스는 데이터 전송 Enable 하면 람다를 지정하게 되어 있다. 




<1> 람다 생성


1

사전에 role을 만들어야 한다.  

정책 > 역할 만들기 

seo-es-full-role

람다에서 es로 보낸다. 그래서 es권한이 필요하다.


2

람다 > 함수 생성 > 새로 작성

seo-kinesis-to-elasticsearch-lambda

파이선 2.7

기존 역할 사용  

seo-es-full-role

함수 생성


3

람다 코드 수정

// 코드 변경


4

기본 설정  > 편집

add data

파이썬 2.7

핸들러

lambda_function.lambda_handler

1분

저장



<2> Kinesis Firehose  생성


1

서비스 > kinesis >  Kinesis Data firehose  데이터 스트림 이름

seo-stream11 

>  다음


2

데이터 전송  

Enabled  하면 람다 함수를 선택하게 된다.


람다함수 

seo-kinesis-to-elasticsearch-lambda

다음


3

목적지 

Elasticsearch Service  선택

Domain 

es3

Index : 

stock

type : 

stock


3

S3 backup >  Backup S3 bucket   >   버킷 선택

다음


4

버퍼 사이즈

1

버퍼 인터벌

60


5

IAM Role > 존재하는  IAM role

seo-kinesis-Firehose-to-es-role   (es policy를 만들어야 한다)

> 다음  > 만들기





<3> Elasticsearch Cluster 접속하기


1

서비스 > Elasticsearch  >  stock 클릭 >  키바나 링크 클릭






<4>  스트림 데이터 보내기


1

서비스 > Kinesis  > 왼편  전송 스트림   > seo-stream11    > 테스트 데모 데이터 클릭 >   데모 데이터 전송 시작하기




<5> 키바나에서 데이터 보기 


1

키바나 사이트

stock 

timestamp

> 생성하기





2. 

왼편 Visualize  > 비쥬얼 라이즈 만들기 > 


3

Visualization 타입 선택  > 라인 차트 > stock 클릭


4

매트릭 >  Y-Axis 

통합 :  평균

필드 : 가격

 

X-Axis

통합 :  date 

필드 : timestamp


서브 버킷 추가하기




5

Splite Lines 

서브 통합 :

terms

필드 :

ticker -symbol.keyword


실행 버튼 클릭






<6> 클라우드 와치로  데이터 전송에 대해  모니터링 하기


1

키네시스 모니터링 보기


Kinesis >  전송 스트림 >   seo-stream11    >   모니터링 





2

람다 모니터링 보기


디테일 탭 >   람다 함수   > seo-kinesis-to-elasticsearch-lambda  > 모니터링 텝



감사합니다.


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari