AWS 데이터 분석 환경 구축

6346 단어 AWS

AWS 데이터 분석 환경 구축


EC2 환경 구축


CloudFormation을 사용하여 VPC를 제작합니다.작성된 VPC에서 로그를 출력하는 EC2를 작성합니다.
CloudFormation 화면으로 이동하여 스택을 만듭니다.
이번에 사용한 yaml 파일은 참고자료의 Giit에 있어서 그것을 이용합니다.
실행이 끝난 후 EC2가 완성되었습니다./root/esdemo/testapp.로그 출력은 로그에서 시작합니다.
만약 실행이 순조롭다면, 아래와 같이 EC2의 컨트롤러 화면에 실례를 세워 SSH를 연결합니다.
SSH 연결을 수행하면 다음과 같이 명령을 입력하면 로그가 출력됩니다.
$ sudo su -
# tail -f /root/es-demo/testapp.log
 
이렇게 시각화할 수 있다.

IAM 스크롤 막대 제작 및 EC2 첨부


IAM의 콘솔 화면으로 이동하여 역할을 선택하고 제작합니다.
AWS 서비스 를 선택하고 EC2 를 선택합니다.액세스 권한 정책, 탭의 추가 화면은 아무것도 하지 않고 캐릭터 이름을 입력하고 제작합니다.
제작된 IAM 캐릭터를 EC2에 첨부하기 위해 EC2의 콘솔 화면으로 이동하기 위해 방금 제작한 실례를 선택한다.선택한 경우 동작 버튼에서 인스턴스 설정 - IAM 스크롤 변환을 클릭합니다.그리고 아까 만든 IAM 볼륨을 같이 붙여주세요.

Flentd 설치


Flentd는 로그 데이터를 수집하여 JSON 출력으로 변환하는 기능을 제공하는 오픈 소스 소프트웨어입니다.이것을 사용하면 일지를 효율적으로 수집할 수 있다.
EC2에 SSH로 로그인하여 다음 명령을 실행합니다.
$ sudo su -
#yum -y install redhat-lsb-core gcc

# rpm -ivh http://packages.treasuredata.com.s3.amazonaws.com/3/redhat/6/x86_64/td-agent-3.1.1-0.el6.x86_64.rpm

# vi /etc/init.d/td-agent  (好きなエディタで大丈夫です)
TD_AGENT_USER=td-agent → TD_AGENT_USER=root 


# chkconfig td-agent on

Elastic Search Service 설정


관리 콘솔 화면에서 Elasticsearch 서비스를 선택합니다.
새 도메인 이름을 만들고 [개발 및 테스트] 디자인 유형을 선택합니다.
도메인 설정에 도메인 이름을 입력하십시오. 실례 형식은 't2.smal.elasticsearch' 를 선택했습니다.
액세스 및 보안 설정에서 네트워크 구성을 공통 액세스로 설정합니다.
도메인 액세스 정책 에서 사용자 지정 액세스 정책 을 선택하고 유형 에 IPv4 주소 를 입력하는 첫 페이지에 * 를 입력하고 작업 에 대해 라이센스 를 선택하여 구성합니다.
구축하는 데 시간이 좀 걸린다.

IAM 드럼 설정


방금 제작된 IAM 캐릭터에 다음과 같은 전략을 설정합니다.
IAM 화면에서 스크롤을 클릭합니다.그리고 아까 만든 캐릭터를 선택하세요.
역할에 대한 액세스 권한 탭에서 첨부 정책을 클릭합니다.
[AmazonESFullAcces]를 검색하고 첨부합니다.

Flentd 설정


Flentd에서 Elasticsearch Service로 로그 데이터를 보내도록 설정합니다.
먼저 Elasticsearch 서비스를 선택하고 대시보드에서 방금 만든 도메인 이름을 클릭하십시오.
끝점을 제어하는 URL 문자열입니다.
그런 다음 Elasticsearch Service에서 [액션]을 선택하고 [액세스 정책 변경]을 선택합니다.
역 접근 정책 중 사용자 정의 접근 정책을 선택하고 다음 내용을 설정하고 화면 맨 아래에 있는 전송을 클릭하십시오.
유형은 "IAM ARN"을, 기본 펄스에는 "*"을, 동작은 "라이센스"를 선택합니다.

발송이 끝난 후 EC2에 로그인하여 Elasticsearch 플러그인을 설치합니다.
$ sudo su -
#Elasticsearch のプラグインをインストール
# td-agent-gem install -v 2.6.0 fluent-plugin-elasticsearch

#プラグインのインストールの確認
# td-agent-gem list | grep plugin-elasticsearch

#td-agent.confを書き直します。
# vi /etc/td-agent/td-agent.conf

td-agent.conf를 다시 쓰는 내용은 다음과 같습니다.
<source>
    @type tail
    path /root/es-demo/testapp.log
    pos_file /var/log/td-agent/testapp.log.pos
    format /^\[(?<timestamp>[^ ]* [^ ]*)\] (?<alarmlevel>[^ ]*) *? (?<host>[^ ]*) * (?<user>[^ ]*) * (?<number>.*) \[(?<text>.*)\]$/
    time_format %d/%b/%Y:%H:%M:%S %z
    types size:integer, status:integer, reqtime:float, runtime:float, time:time
    tag testappec2.log
</source>

<match testappec2.log>
    type_name testappec2log
    @type elasticsearch
    include_tag_key true
    tag_key @log_name
    host ここに先程控えたURLを記入します。https:// は含めないです。
    port 443
    scheme https
    logstash_format true
    logstash_prefix testappec2log
    flush_interval 10s
    retry_limit 5
    buffer_type file
    buffer_path /var/log/td-agent/buffer/testapp.log.buffer
    reload_connections false
</match>
편집이 끝나면 다음 명령을 입력하여 작업을 확인합니다.
#td-agent のプロセスを起動します。
# /etc/init.d/td-agent start

#Fluentd のログを確認
# tail -f /var/log/td-agent/td-agent.log

Elastic Search Service 설정


관리 콘솔 화면에서 Elasticsearch 서비스를 선택합니다.
먼저 작성한 도메인의 [도메인 상태]가 [활성화]이고 [검색 가능한 문서]가 하나 이상인지 확인하고 선택합니다.
Kibana 오른쪽에 있는 URL을 클릭하십시오.
[Welcome to Elastic Kibana] 화면이 표시되므로 [Explore on myown]을 선택하여 Kibana 화면을 엽니다.
[Create index pattern]을 클릭하고 [Create index pattern] 화면에서 [Index pattern]에 "testappec2log-*"를 입력하고 오른쪽의 [Next step]를 클릭합니다.
[Time Filter field name]에서 [@timestamp]]을(를) 선택하고 화면 오른쪽 아래에 있는 [Create index pattern]을 클릭합니다.
키바나 화면의 왼쪽 창부터.관리 아이콘을 클릭하고 [saved Object]를 클릭합니다.화면의 오른쪽 위 모서리에서 [Import]를 클릭합니다.
[saved Object] 화면에서 [Import] 아이콘을 클릭하여 "2-visualization.json"을 선택하고 [Import]을 클릭합니다.다음 화면에서 [New index patten]에 대해 "test appec2log-*"를 선택하고 [Confirm all changees]를 클릭하여 가져오기를 완료합니다.가져오기가 완료되면 [Doe]를 클릭하여 원래 화면으로 돌아갑니다.(이 2-visualization.json 파일은 참고 자료의Giit에 있으니 참고하십시오.)
이어서 [saved Object] 화면에서 [Import] 아이콘을 다시 누르고 Asset 자료의 [2-dashboard.json]을 선택하고 [Import]를 누르면 가져옵니다.가져오기가 완료되면 [Doe]를 클릭하여 원래 화면으로 돌아갑니다.(이 2-dashboard.json 파일도 참고 자료의Giit에 있으니 참고하세요.)
위 설정을 할 수 있다면 키바나 화면에는 다음과 같은 수치가 표시될 것이다.
『참고자료』
https://github.com/aws-samples/amazon-s3-datalake-handson/tree/master/JP
Flentd 정보
AWS의 IAM 역할과 정책의 차이

좋은 웹페이지 즐겨찾기