【无标题】Elasticsearch for windows

一、windows安装Elasticsearch

1、Elasticsearch:用于存储数据、计算和搜索;

2、Logstash/Beats:用于数据搜集

3、Kibana:用于数据可视化

以上三个被称为ELK,常用语日志搜集、系统监控和状态分析

Elasticsearch安装(用于数据存储、计算和搜索):Download Elasticsearch | Elastic

Kibana安装():Download Kibana Free | Get Started Now | Elastic

IK分词器下载:Releases · infinilabs/analysis-ik · GitHub

二、下载Elasticsearch、Kibana、IK;

1、因为ES和Kibana属于同一家公司的产品,所以kibana的下载方式和elasticsearch基本一致,可放在同级文件夹。

2、ik分词器的版本一定要和elasticsearch保持一致,在elasticsearch目录的plugins目录中创建名为ik的文件夹,将下载好的ik分词器解压在创建的ik文件夹中

二、修改elasticsearch配置文件

1、首先在elasticsearch的config目录下,打开elasticsearch.yml

es集群名称

cluster.name: es-cluster

elasticsearch数据存放目录

path.data: D:\software\elasticSearch\elasticsearch-7.12.1\data\data

elasticsearch日志存放目录

path.logs: D:\software\elasticSearch\elasticsearch-7.12.1\data\logs

服务启动地址

network.host: 127.0.0.1

监听端口号

http.port: 9200/

#集群名字

cluster.name: my-elasticseach

#节点名字

node.name: node-01

network.host: 0.0.0.0

#访问es默认使用端口

http.port: 9200

ip访问策略 如果使用ip访问不了 一般就是这个配置出现问题

http.cors.enabled: true

#当设置允许跨域,默认为*,表示支持所有域名

http.cors.allow-origin: "*"

ES/bin/执行密码重置

elasticsearch-reset-password -u elastic

2、

其次在elasticsearch的bin目录下,修改elasticsearch配置文件

这里修改的目的是:大多数企业使用的是jdk1.8版本,而ES7.12.1使用的是jdk11版本,这里修改为ES使用内置的jdk,避免因为项目使用的jdk版本和ES使用的jdk版本不一致导致的一些问题

添加一下几行内容

#使用ES内置的jdk

export JAVA_HOME=D:\software\elasticSearch\elasticsearch-7.12.1\jdk\

export PATH=JAVA_HOME\\bin:PATH

#添加jdk判断

if -x "$JAVA_HOME\\bin" ; then

JAVA="D:\software\elasticSearch\elasticsearch-7.12.1\jdk\bin"

else

JAVA=`which java`

fi

完整配置如下:

#!/bin/bash

CONTROLLING STARTUP:

This script relies on a few environment variables to determine startup

behavior, those variables are:

ES_PATH_CONF -- Path to config directory

ES_JAVA_OPTS -- External Java Opts on top of the defaults set

Optionally, exact memory values can be set using the `ES_JAVA_OPTS`. Example

values are "512m", and "10g".

ES_JAVA_OPTS="-Xms8g -Xmx8g" ./bin/elasticsearch

#使用ES内置的jdk

#---开始---

export JAVA_HOME=D:\software\elasticSearch\elasticsearch-7.12.1\jdk\

export PATH=JAVA_HOME\\bin:PATH

#---结束---

source "`dirname "$0"`"/elasticsearch-env

CHECK_KEYSTORE=true

DAEMONIZE=false

for option in "$@"; do

case "$option" in

-h|--help|-V|--version)

CHECK_KEYSTORE=false

;;

-d|--daemonize)

DAEMONIZE=true

;;

esac

done

if -z "$ES_TMPDIR" ; then

ES_TMPDIR=`"JAVA" "XSHARE" -cp "$ES_CLASSPATH" org.elasticsearch.tools.launchers.TempDirectory`

fi

get keystore password before setting java options to avoid

conflicting GC configurations for the keystore tools

unset KEYSTORE_PASSWORD

KEYSTORE_PASSWORD=

if \[ $CHECK_KEYSTORE = true ] \

&& bin/elasticsearch-keystore has-passwd --silent

then

if ! read -s -r -p "Elasticsearch keystore password: " KEYSTORE_PASSWORD ; then

echo "Failed to read keystore password on console" 1>&2

exit 1

fi

fi

The JVM options parser produces the final JVM options to start Elasticsearch.

It does this by incorporating JVM options in the following way:

- first, system JVM options are applied (these are hardcoded options in the

parser)

- second, JVM options are read from jvm.options and jvm.options.d/*.options

- third, JVM options from ES_JAVA_OPTS are applied

- fourth, ergonomic JVM options are applied

ES_JAVA_OPTS=`export ES_TMPDIR; "JAVA" "XSHARE" -cp "ES_CLASSPATH" org.elasticsearch.tools.launchers.JvmOptionsParser "ES_PATH_CONF" "$ES_HOME/plugins"`

#添加jdk判断

#---开始---

if -x "$JAVA_HOME\\bin" ; then

JAVA="D:\software\elasticSearch\elasticsearch-7.12.1\jdk\bin"

else

JAVA=`which java`

fi

#---结束---

manual parsing to find out, if process should be detached

if \[ $DAEMONIZE = false ]; then

exec \

"$JAVA" \

"$XSHARE" \

$ES_JAVA_OPTS \

-Des.path.home="$ES_HOME" \

-Des.path.conf="$ES_PATH_CONF" \

-Des.distribution.flavor="$ES_DISTRIBUTION_FLAVOR" \

-Des.distribution.type="$ES_DISTRIBUTION_TYPE" \

-Des.bundled_jdk="$ES_BUNDLED_JDK" \

-cp "$ES_CLASSPATH" \

org.elasticsearch.bootstrap.Elasticsearch \

"@" \<\<\<"KEYSTORE_PASSWORD"

else

exec \

"$JAVA" \

"$XSHARE" \

$ES_JAVA_OPTS \

-Des.path.home="$ES_HOME" \

-Des.path.conf="$ES_PATH_CONF" \

-Des.distribution.flavor="$ES_DISTRIBUTION_FLAVOR" \

-Des.distribution.type="$ES_DISTRIBUTION_TYPE" \

-Des.bundled_jdk="$ES_BUNDLED_JDK" \

-cp "$ES_CLASSPATH" \

org.elasticsearch.bootstrap.Elasticsearch \

"$@" \

<<<"$KEYSTORE_PASSWORD" &

retval=$?

pid=$!

$retval -eq 0 || exit $retval

if ! -z "$ES_STARTUP_SLEEP_TIME" ; then

sleep $ES_STARTUP_SLEEP_TIME

fi

if ! ps -p $pid > /dev/null ; then

exit 1

fi

exit 0

fi

exit $?

3、

修改kibana配置文件

在kibana的安装目录的config目录下,修改kibana.yml配置文件

监听端口号

server.port: 5601

服务启动地址

server.host: "localhost"

es节点地址,可配置多个

elasticsearch.hosts: "http://localhost:9200"

4、

启动elasticsearch

在elasticsearch安装目录的bin目录中,双击elasticsearch.bat。

可以看到启动过程中成功加载ik分词器插件

5、接下来访问elasticsearch。在浏览器输入http://localhost:9200

6、

启动Kibana

在kibana的按照目录下,找到bin目录,双击kibana.bat即可启动kibana服务

7、启动完成后,浏览器访问http://localhost:5601,

相关推荐
大树882 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠2 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
大志哥1232 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
霸道流氓气质2 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工2 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智2 天前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_2 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
TableRow2 天前
参数化搜索的实现原理:从多维索引到查询优化
elasticsearch·全文检索
施努卡机器视觉2 天前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造
AC赳赳老秦2 天前
用 OpenClaw 搭建服务器故障应急响应系统,自动处理 80% 常见运维故障
android·运维·服务器·python·rxjava·deepseek·openclaw