일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Python
- error
- Windows
- 엘라스틱서치
- Git
- docker
- build
- logstash
- 유니티
- API
- s3
- AWS
- 영어
- Ai
- ChatGPT
- unity
- sample
- Linux
- MSSQL
- MySQL
- elasticsearch
- JavaScript
- mariadb
- ssh
- 설정
- Kibana
- 구글
- JS
- nodejs
- Today
- Total
목록Kibana (13)
가끔 보자, 하늘.
우선 Docker Desktop에서 Elasticsearch , Kibana 이미지를 찾아 실행합니다. 둘 모두 잘 실행되었다면 kibana로 접속합니다. http://localhost:5601로 접속하면 아래와 같은 화면이 뜹니다. docker 로 둘을 실행하면 서로 다른 네트웍으로 인식하고 elasticsearch에서는 kibana의 원격접속 인증을 위해 elasticsearch에서 발급한 토큰을 입력하라고 요청합니다. elasticsearch docker에 exec 탭에서 아래 커멘드를 입력해 토큰을 생성합니다. bin/elasticsearch-create-enrollment-token --scope kibana이렇게 발급된 코드값을 복사해 kibana 웹 페이지에서 입력합니다. 그럼 아래와 같은 ..
예들들어 data_type이 10001인 2023년 12월 25일 데이터를 모두 지우고 재구축하고 싶다면 kibana DevTools혹은 api를 이용해 다음과 같은 순서로 진행합니다. 1. 우선 count api를 이용해 삭제할 수량 확인 및 검증합니다. # index 파일을 날짜로 구분할 경우 한국은 +9 이므로 한국 시간 기준 0시부터 9시까지의 데이터는 logstash-2023.12.24에 포함됩니다. # 그러므로 logstash-2023.12.24에서도 동일한 쿼리를 실행해야 한국시간 기준으로 정확힌 데이터를 확인할 수 있습니다. GET /logstash-2023.12.25/_count { "query": { "bool": { "must": [ { "term": { "data_type": "10..
1. 재설치 wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list' sudo apt update && sudo apt -y upgrade sudo apt install apt-transport-https ca-certificates wget sudo apt install elasticsearch 2. 설정 (7.x에 대한 상세한 설정 참고 링크) > sudo vi /etc/elasticsear..
최신 버전 테스트 할 일이 있어서 windows 11에서 Elasticsearch, Kibana 를 Docker에서 테스트하면서 정리했습니다. 우선 Docket Desktop을 설치합니다. 그리고 docker image에서 Elasticsearch를 검색해 공식 이미지를 내려받습니다. 저는 es 8.10.1 버전을 다운 받았습니다. 현재 공식 이미지의 OS는 ubuntu 20.04 버전이며, max_map_count를 같이 수정해야 합니다. 원래 linux 시스템에서는 sysctl 이나 /etc/sysctl.conf에서 수정하면 되는데 windows 에서 docket desktop으로 실행할 때는 wslconfig 파일을 만들어서 설정해두는게 좋습니다. 설정하지 않고 도커 이미지를 실행하면 "max vi..
운영하는 인프라 중 elasticsearch가 있다. 심지어 버전은 7.11. 5개 node를 운영하고 있으며, 일 데이터가 7GB 정도 누적된다. 오래된 데이터를 자동으로 S3로 백업되면서 용량 이슈도 거의 없어 최근에 2년 정도는 손 댄 기억이 거의 없었다. (* 최근 여러 서비스의 data pipeline을 통합하려고 aws glue, athena, quicksight로 통합하려고 보고 있는데 가성비가 es를 따라가기는 어려울 것으로 판단된다. 이거 다음에 이야기할 기회가 있을 듯 하고.. 어쨌든 PB 운영 용량이 아니면 거의 문제없을 정도로 뛰어난 제품이다.) node 중 하나가 갑자가 샤드 할당에 문제가 발생한 듯 보였다. 현상은 아래와 같았다. Kibana에서 확인하니 Status 이미 yel..
8 버전부터는 Kibana의 Stack Monitoring이 기존 방식으로 지원하지 않는다고 메세지가 떠서 Metricbeat를 설치해 Monitoring 설정을 진행했습니다. Self-managed(On premise)로 운영중인 세 대(172.31.1.10 ~ 12)의 Elasticsearch의 모니터링을 위해 별도 시스템 혹은 기존 시스템에 metricbeat를 설치하여 모니터링 한다고 가정합니다. 그리고 시스템 로그는 추가하지 않게 설정해 보겠습니다. Metricbeat는 실행을 위해 root 권한이 필요합니다. 1. 설치 > curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-7.11.0-linux-x86_6..
nodejs에서 elasticsearch-js를 이용해 데이터 분석, 취합을 할 때, 잘못된 인덱스 이름, 혹은 존재하지 않는 인덱스 이름으로 인해 문제가 발생하는 경우가 있습니다. 이 경우 검색이 중단되고 404 에러가 발생하며 중단됩니다. 에러를 막기위해 검색 시 아래 예제와 같이 ignore키워드를 지정할 수 있습니다. const result = await client.search({ index: 'my-index', from: 20, size: 10, body: { foo: 'bar' } }, { ignore: [404], maxRetries: 3 }) 이 방법은 에러를 막을 수 있지만, 검색이 중단되는 것은 동일합니다. 예를들어 ['seoul', 'busan', 'jeju']라는 인덱스들에서 어..
DSL에서는 precision_threshold값을 적용하여 사용했는데, Kibana에서는 적용해본 적이 없다가 사용하시는 동료들이 값이 이상하다며 내용을 찾아보게 되었습니다. Metrics에 Y-Axis의 Aggregation을 Unique Count로 지정했을때 아래와 같은 값이 출력되고 있었습니다. 이 값이 terms로 뽑을 때와 3% 정도 차이가 나고 있어 DSL에 적용한 precision_threshold 설정을 적용해 봤습니다. Metrics 하단에 JSON input 란이 있습니다. 여기에 아래와 같이 입력하면 됩니다. precision_thredshold의 기본값은 3000이며, 최대값은 40000입니다. 아래와 같이 조정이 되지만 terms와 완전히 동일한 값이 되지는 않습니다. hits..