일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- springboot
- AWS
- java
- 요리
- php
- IntelliJ
- jenkins
- redis
- ReactJS
- 맛집
- javascript
- laravel
- devops
- elasticsearch
- Web Server
- ubuntu
- Spring Batch
- linux
- db
- Spring
- it
- tool
- JVM
- Spring Boot
- Oracle
- Git
- MySQL
- Gradle
- jsp
- Design Patterns
- Today
- Total
목록Data Store/Elastic Stack (28)
아무거나
성능 최적화 H/W 세팅 CPU: 8 Core, RAM: 30GB, Disk: 80GB (SSD) 정도로 세팅하여 리소스에 따라 세팅하자. (AWS EC2 기준 m3.2xlarge 부터 추천) Elasticsearch JVM Heap Memory는 32GB 이상 지정할 수 없다. 따라서 64GB 이상을 사용하는 서버를 사용할 이유가 없다. JVM Option은 -Xms와 -Xmx 설정값을 동일하게 설정한다. CPU 사용률이 60% 이상이면 CPU 확장 필요 Document 세팅 Shard Shard 개수는 데이터 크기가 작으면 default 값으로 유지하는게 좋고 데이터 크기가 클수록 응답속도 성능에 맞춰 증가시키는 것이 좋다. Shard의 물리적인 크기는 20GB ~ 40GB 정도의 사이즈가 적절하다...
[elasticsearch] 타입 매핑 관련.. 일반적으로 elasticsearch는 오토매핑이라 넘어오는 데이터순으로 필드들이 생성되어진다. 그럴경우에 데이터 형태가 맞지않는 경우 예를들어 1 or 2 등의 데이터를 string값으로 인식하여 내려주는경우. 즉, 이 값을 int값으로 사용하고 싶을 떄 타입매핑을 사용한다.(데이터 형식을 정해줌.) 보통 인덱스 최초생성때 타입매핑을 해준다. 그 이유는 인덱스별로 alias를 사용하는경우 alias가 변경될때마다 계속 인덱스를 생성하므로 직접 타입매핑 api를 날려도 소용이없는 상황이 생기기 때문이다. 또한 이런 의문이 생길수도있다. "난 데이터형식에 대한 정의가 명시적인게 좋다" 이럴 경우에 최초에 생성하면되는데 속도가 매우 느려진다고 한다. --> 자세..
[logstash를 이용한 db에서 es로 데이터 전송 5.5.0 기준] # 스펙 # tar.gz 형태 # logstash 5.5.0 # mysql-connector-java-5.1.36.jar 1. logstash를 설치한다. ex) wget https://artifacts.elastic.co/downloads/logstash/logstash-5.5.0.tar.gz 2. logstash 압축을 푼다 ex) tar -xvzf logstash-5.5.0.tar.gz 3. mysql-connector-java-5.1.38.jar 다운 * 참조 : https://mvnrepository.com/artifact/mysql/mysql-connector-java/5.1.38 - wget http://central...
[elasticsearch] 검색쿼리 요청시 count(size) 10000이 넘을 경우 에러 elasticsearch 기본 count 세팅값은 10000으로 되어있다. 이 부분을 수정하려면 2가지 방법이 있다. 1. elasticsearch.yml에 아래 값을 지정하여 준다. [elasticsearch.yml] index.max_result_window {count} 2. api를 호출하여 수정한다. - curl -XPUT "http://localhost:9200/my_index/_settings" -d '{ "index" : { "max_result_window" : 200000 } }'
[AWS S3를 활용한 ELK 스택 로그 백업 및 복원] 1. 설치(S3 repository plugin) - elasticsearch 와 같은 서버에 설치한다. - cd /usr/share/elasticsearch - sudo bin/elasticsearch-plugin install repository-s3 - sudo service elasticsearch restart 2. s3 백업을 등록(aws IAM 기준) - curl -XPUT 'http://127.0.0.1:9200/_snapshot/s3_elk_backup' -d '{ "type":"s3", "settings":{ "access_key":"[YOUR_ACCESS_KEY]", "secret_key":"[YOUR_SECRET_KEY]", ..
[큐레이터 - qurator] ELK 스택을 장기간 운용하게 되면 과거의 많은 로그가 디스크 공간을 차지하게 된다. 매번 운영자가 오래된 데이터를 삭제하는 것보다, 이를 자동화해서 관리하는게 시스템을 보다 안정적으로 운용할 수 있다. 큐레이터는 기간 및 디스크 사이즈 기준으로 오래된 로그를 지워주는 프로그램이다. ex) 한달 이상된 인덱스를 지워라.. 1. 설치 - pip install elasticsearch-curator - 명령어에 curator라고 치면 관련에러를 볼 수 있다. 2. curator config 설정 # [curator.yml] --- # Remember, leave a key empty if there is no value. None will be a string, # not a ..
[filebeat 설치] 1. https://www.elastic.co/downloads/beats/filebeat 접속하여 다운 - wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - - sudo apt-get install apt-transport-https - echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list - sudo apt-get update && sudo apt-get install filebeat 2. filebeat conf..
[logstash] 실전 주식 분석 1. https://finance.yahoo.com/ 접속하여 FB라고 검색(facebook) 그러면 주식정보가 나온다. 2. 탭중 Historical Data를 클릭하면 이 주식이 어떤 가격이었는지 모든 정보가 표시된다. - Time Period 에서 5Y를 클릭하고 Done를 클릭한다음 우측에 Apply를 클릭 그리고 Download Data를 클릭하여 다운받는다(5년 동안의 주식정보) 3. logstash의 conf파일을 생성하고 설정해주자. // 해당 내용의 설명은 https://bkjeon1614.tistory.com/312 참고 # [logstash_stock.conf] input { file { path => "/home/ubuntu/table.csv" s..
[logstash] 실전 인구분석 1. 데이터는 catalog.data.gov/dataset 에서 직접 다운받도록 한다. ( 해당 사이트는 데이터가 많으므로 알아놓으면 좋다. ) - 세계 인구에 대한 dataset을 다운받는다. 검색어에 population by country(1980 - 2010) 로 검색한다. - csv클릭하여 직접 다운받자(데이터가 NA나 --로 되어있는걸 지우는 작업을 하자. -> 해당 변경된 파일 첨부해놓음) 2. sudo vi logstash.conf 생성하자 // 파일에서 input을 받을 것이고 path는 절대경로로 지정하고 start_position을 beginning로 설정 // 현재 logstash 버전에서는 end가 기본설정이다 하지만 우리는 파일에서 받기 때문에 처..
[logstash] data -> logstash(input담당) -> elasticsearch -> kibana logstash는 많은 유형의 데이터를 자기한테 흡수시켜서 변환시킨후 elasticsearch로 보낼수가 있다. 예1) mysql, mongoDB 등.. 많은 종류의 데이터를 흡수할 수 있다. 이렇게 흡수된 데이터들을 자기가 원하는 데이터 포맷으로 변경이 가능하다. 예2) csv와 같은 파일은 모두 text파일인데 우리가 그 값을 수치적으로 더하고 빼고 하려면 text를 수치로 변환시킬수 있다. -> elasticsearch 1. https://www.elastic.co 에서 logstash 최신버전을 받는다. - java 설치여부 확인 - wget -qO - https://artifacts..