ELK_Elasticsearch 환경 구축

목차

1. Windows에 Elasticsearch 설치

1. JDK 설치

2. 다운로드 및 압축 해제

3. 구성 파일

4. 시작

5. ES가 성공적으로 시작되는지 확인

6. 브라우저 접근

둘째, Windows 설치 Kibana


1. Windows에 Elasticsearch 설치

1. JDK 설치

버전 1.8.0_73 이상인 JDK를 설치하고 java -version을 확인하세요 .

2. 다운로드 및 압축 해제

Elasticsearch 설치 패키지를 다운로드하고 압축을 풀고 디렉터리 구조를 확인하세요.

https://www.elastic.co/cn/downloads/elasticsearch

bin: 시작, 중지 및 기타 실행 가능한 스크립트를 포함하는 스크립트 디렉터리

config: 구성 파일 디렉터리

데이터: 인덱스 파일이 저장되는 인덱스 디렉터리

로그: 로그 디렉터리

모듈: es의 기능 모듈을 포함한 모듈 디렉토리

플러그인 : 플러그인 디렉토리, es는 플러그인 메커니즘을 지원합니다.

3. 구성 파일

위치:

  • ES 구성 파일의 주소는 설치 형식에 따라 다릅니다.
  • zip과 tar를 이용하여 설치하며, 설정 파일의 주소는 설치 디렉터리의 config 아래에 있습니다.
  • RPM을 사용하여 설치하고 구성 파일은 /etc/elasticsearch 아래에 있습니다.
  • MSI 설치를 사용하면 구성 파일의 주소는 설치 디렉터리의 config 아래에 있으며 구성 디렉터리의 주소는 환경 변수 ES_PATH_CONF에 자동으로 기록됩니다.

탄력적 검색.yml

구성 형식은 YAML이며 다음 두 가지 방법으로 사용할 수 있습니다.

방법 1 : 계층적 방법

길:

    데이터: /var/lib/elasticsearch

    로그: /var/log/elasticsearch

방법 2 : 속성 방법

path.data: /var/lib/elasticsearch

path.logs: /var/log/elasticsearch

일반적으로 사용되는 구성 항목은 다음과 같습니다

Cluster.name: elasticsearch 의 클러스터 이름을 구성합니다 . 기본값은 elasticsearch 입니다 . 의미있는 이름으로 변경하는 것이 좋습니다.

node.name: 노드 이름, 일반적으로 물리적 서버는 노드입니다. 기본적으로 이름을 무작위로 지정 합니다 . 의미 있는 이름을 지정하는 것이 좋습니다. 하나 이상의 노드를 관리하여 클러스터 클러스터를 형성하는 것이 편리 합니다 . 논리적 개념, 노드는 물리적 개념이며 다음 장에서 자세히 소개됩니다.

path.conf: 구성 파일의 저장 경로를 설정합니다. tar 또는 zip 패키지 설치의 기본값은 es 루트 디렉터리 아래의 config 폴더 이며, rpm 설치의 기본값은 /etc/elasticsearch 입니다.

path.data: 인덱스 데이터의 저장 경로를 설정합니다. 기본값은 es 루트 디렉터리 아래의 데이터 폴더 입니다. 여러 저장 경로를 쉼표로 구분하여 설정할 수 있습니다.

path.logs: 로그 파일의 저장 경로를 설정합니다. 기본값은 es 루트 디렉터리 아래의 로그 폴더 입니다.

path.plugins: 플러그인의 저장 경로를 설정합니다. 기본값은 es 루트 디렉터리 플러그인 폴더 입니다.

bootstrap.memory_lock: true 메모리와 스왑 파티션 간의 데이터 교환을 방지하기 위해 ES 에서 사용하는 메모리를 잠그려면 true 로 설정하십시오 .

network.host: 바인딩 호스트의 IP 주소를 설정합니다. 0.0.0.0 으로 설정하면 모든 IP를 바인딩하여 외부 네트워크 접근을 허용한다는 의미입니다. 프로덕션 환경에서는 특정 IP 로 설정하는 것이 좋습니다 .

http.port: 9200 외부 서비스에 대한 http 포트를 설정합니다 . 기본값은 9200 입니다 .

Transport.tcp.port:  9300 클러스터 노드 간 통신 포트

node.master: 노드가 마스터 노드로 선출될 자격이 있는지 여부를 지정합니다. 기본값은 true 입니다 . 원래 마스터가 다운되면 새 마스터가 다시 선택됩니다 .

node.data: 노드가 인덱스 데이터를 저장하는지 여부를 지정합니다. 기본값은 true 입니다 .

discovery.zen.ping.unicast.hosts: ["host1:port", "host2:port", "..."] 클러스터에 있는 마스터 노드의 초기 목록을 설정합니다 .

discovery.zen.ping.timeout: 3s ES가 노드 연결을 자동으로 검색하는 시간 초과 시간을 설정합니다 . 기본값은 3 초입니다. 네트워크 지연이 높을 경우 더 크게 설정할 수 있습니다.

discovery.zen.minimum_master_nodes: 마스터 노드 수의 최소값 이 값의 공식은 (master_eligible_nodes / 2) + 1 입니다. 예: 요구 사항을 충족하는 마스터 노드가 3개 있는 경우 2 로 설정합니다 . 여기 .

node.max_local_storage_nodes: 单机允许的最大存储结点数,通常单机启动一个结点建议设置为1,开发环境如果单机启动多个节点可设置大于1

jvm.options

设置最小及最大的JVM堆内存大小:在jvm.options中设置 -Xms和-Xmx:

1) 两个值设置为相等

2) 将Xmx 设置为不超过物理内存的一半。

log4j2.properties

日志文件设置,ES使用log4j,注意日志级别的配置。

4、启动

启动Elasticsearch:bin\elasticsearch.bat,es的特点就是开箱即,无需配置,启动即可。

注意:es7 windows版本不支持机器学习,所以elasticsearch.yml中添加如下几个参数:

node.name: node-1 

cluster.initial_master_nodes: ["node-1"] 

xpack.ml.enabled: false

http.cors.enabled: true

http.cors.allow-origin: /.*/

5、检查ES是否启动成功

检查ES是否启动成功:http://localhost:9200/?Pretty

{

    "name": "node-1",

    "cluster_name": "elasticsearch",

    "cluster_uuid": "HqAKQ_0tQOOm8b6qU-2Qug",

    "version": {

        "number": "7.3.0",

        "build_flavor": "default",

        "build_type": "zip",

        "build_hash": "de777fa",

        "build_date": "2019-07-24T18:30:11.767338Z",

        "build_snapshot": false,

        "lucene_version": "8.1.0",

        "minimum_wire_compatibility_version": "6.8.0",

        "minimum_index_compatibility_version": "6.0.0-beta1"

    },

    "tagline": "You Know, for Search"

}

解释:

name: node名称,取自机器的hostname

cluster_name: 集群名称(默认的集群名称就是elasticsearch)

version.number: 7.3.0,es版本号

version.lucene_version:封装的lucene版本号

6、浏览器访问

浏览器访问http://localhost:9200/_cluster/health查询集群状态

{

    "cluster_name": "elasticsearch",

    "status": "green",

    "timed_out": false,

    "number_of_nodes": 1,

    "number_of_data_nodes": 1,

    "active_primary_shards": 0,

    "active_shards": 0,

    "relocating_shards": 0,

    "initializing_shards": 0,

    "unassigned_shards": 0,

    "delayed_unassigned_shards": 0,

    "number_of_pending_tasks": 0,

    "number_of_in_flight_fetch": 0,

    "task_max_waiting_in_queue_millis": 0,

    "active_shards_percent_as_number": 100

}

解释:

Status:集群状态。Green 所有分片可用。Yellow所有主分片可用。Red主分片不可用,集群不可用。

二、 Windows安装Kibana

1、kibana是es数据的前端展现,数据分析时,可以方便地看到数据。作为开发人员,可以方便访问es。

2、下载,解压kibana。

3、启动Kibana:bin\kibana.bat

4、浏览器访问 http://localhost:5601 进入Dev Tools界面。像plsql一样支持代码提示。

5、发送get请求,查看集群状态GET _cluster/health。相当于浏览器访问。

总览

​ Dev Tools界面

​ 监控集群界面(展示集群状态--搜索速率、索引速率等)

추천

출처blog.csdn.net/wanghaiping1993/article/details/129097336