【无标题】Elasticsearch for windows

avatar
作者
筋斗云
阅读量:4

一、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,

 
 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!