본문 바로가기
웹 프로그래밍

DataLake 설정

by Minius 2019. 9. 26.
반응형
  • ec2 생성
  • 키페어 생성
  • xshell, winSCP 설치 및 접속
  • aws-kinesis-agent 설치

https://docs.aws.amazon.com/ko_kr/firehose/latest/dev/writing-with-agents.html

 

Kinesis 에이전트를 사용하여 Kinesis Data Firehose에 쓰기 - Amazon Kinesis Data Firehose

Kinesis 에이전트를 사용하여 Kinesis Data Firehose에 쓰기 Amazon Kinesis 에이전트는 편리하게 데이터를 수집하여 Kinesis Data Firehose로 보낼 수 있는 독립형 Java 소프트웨어 애플리케이션입니다. 에이전트가 파일 집합을 지속적으로 모니터링하고 새로운 데이터를 Kinesis Data Firehose 전송 스트림에 보냅니다. 에이전트는 파일 로테이션, 검사를 처리하고 실패할 경우 다시 시도하며 적시에 안정적이

docs.aws.amazon.com

Amazon Linux AMI를 이용해 에이전트를 설치하려면

sudo yum install –y aws-kinesis-agent

Red Hat Enterprise Linux를 사용하여 에이전트를 설치하려면

sudo yum install –y https://s3.amazonaws.com/streaming-data-agent/aws-kinesis-agent-latest.amzn1.noarch.rpm

둘 중에 뭔지 모른다면, 둘 다 시도해도 된다.

 

  • AWS Kinesis로 이동
  • [Kinesis Firehose delivery streams] 부분에서 [Create Delivery Stream] 클릭하여 스트림 생성
    • (한국어) [Kinesis Firehose 전송 스트림] 부분에서 [전송 스트림 생성] 클릭하여 스트림 생성
  • Delivery stream name에 이름 적고 Next
  • Record transformation은 데이터 전처리를 사용하겠냐는 질문
    • Disable : 사용하지 않음
    • Enable : 만들어놓은 Lambda function을 이용해서 데이터 전처리 후 전송
    • 따라서 미리 Lambda를 만들어 놓아야 한다.
  • Next
  • S3 bucket을 선택한다.
    • Firehose 로 전송한 데이터가 모이는 곳이다. 
    • 만들어져 있으면 선택하면 되고,
    • 없다면 Create New를 선택해서 만들면 된다.
  • 밑에 Prefix에는 제일 상위 폴더를 설정해준다.
    • AWS에서는 [raw/]로 예를 들어줘서 그대로 사용하였다.
  • Next
  • Buffer size
    • S3에 쌓일, 파일 하나당 최대 크기.
    • 크게 설정해 놓아도 시간 term이 있으면 작게 나누어진다.
    • 비슷한 시간에 용량이 크게 발생할 경우에만 지정해준 용량 단위로 나누어 줌
  • Buffer interval
    • stream을 몇초마다 실행할건지
  • IAM role
    • Create new or choose를 클릭
    • IAM 역할은 firehose_delivery_role로 설정
    • 정책 이름은 새 역할 정책 생성을 만들어 준다.
  • 그리고 생성.

 

Kinesis Agent 설정

/etc/aws-kinesis/agent.json

해당 내용은 다른 글에 있어서 살짝 생략.

 

  • 설정 완료 후
sudo service aws-kinesis-agent start
  • 옵션
    • start : 시작
    • stop : 정지
    • restart : 재시작
    • on : 시스템 시작시 시작
  • 잘 올라가는지 확인
 tail -f /var/log/awskinesis-agent/aws-kinesis-agent.log

 

댓글