centos安装elasticsearch+elasticsearch华为镜像

文章目录

    • 一、学习目标:
    • 二、安装步骤:
      • 1、下载需要的文件:
        • 《通过华为镜像地址下载》
      • 2、上传文件至ecs:
        • 1)、上传jdk文件到ecs
      • 3、安装jdk
        • 1)、复制到`/opt/`下,并解压
        • 2)、重命名为jdk
        • 3)、配置环境变量
        • 4)、查看是否安装成功:
      • 4、Elasticsearch安装配置
        • 1)Elasticsearch安装
        • 2)修改系统参数
          • a)、设置内核参数
          • b)、执行以下命令确保配置生效。
          • c)、设置资源参数
          • d)、设置用户资源参数
        • 3)添加启动用户,设置权限
        • 4)Elasticsearch配置
        • 5)使用elk用户启动Elasticsearch服务
          • ①、切换用户并页面启动
          • ②、测试是否成功:
          • ③、内网可以访问:
          • ④、后台启动elasticsearch
    • 参考:

一、学习目标:

本文主要记录我初步学习elastic search,安装至阿里云ecs上的centos的linux系统上。
前几天安装window上成功,今天想测试安装centos上。

二、安装步骤:

1、下载需要的文件:

首先,我们需要查看我们需要安装的elastic search需要什么版本的jdk(java环境),
查看elasticsearch支持的jdk版本地址

centos安装elasticsearch+elasticsearch华为镜像_第1张图片
elasticsearch 下载地址:

java jdk11下载地址添加链接描述

JDK推荐直接下载1.8版本的,也是8版本,全部elasticsearch都支持。
jdk1.8版本官方地址。

《通过华为镜像地址下载》

根据需要,我们下载jdk11和elasticsearch7.8
jdk版本下载源

上面下载elasticsearch实在太慢。推荐下面的镜像地址下载:
elasticsearch所有版本
默认运行网址:http://localhost:9200/

kibana所有版本
默认运行网址:http://localhost:5601/

2、上传文件至ecs:

使用winscp软件,登陆ecs,上传文件。

1)、上传jdk文件到ecs

上传jdk文件到/opt/目录下,或者先集体上传到一个目录下,一会复制到指定目录下再解压也行。

比如我就是先集体上传到一个自己创建的目录下面。然后再复制到指定目录解压。

centos安装elasticsearch+elasticsearch华为镜像_第2张图片

3、安装jdk

我这里以自己的为例子,先集体上传的指定目录。

1)、复制到/opt/下,并解压

复制、切换到指定目录,然后解压。

cp jdk-11.0.8_linux-x64_bin.tar.gz /opt/
cd /opt/
tar -zxvf jdk-11.0.8_linux-x64_bin.tar.gz

centos安装elasticsearch+elasticsearch华为镜像_第3张图片

2)、重命名为jdk

mv jdk-11.0.8 jdk

centos安装elasticsearch+elasticsearch华为镜像_第4张图片

3)、配置环境变量

输入命令:

vi /etc/profile

在文件尾部加入如下内容:
这个很重要很重要,我都第一次找到文章跟着弄不出来。

下面这是正确的写法,错误代码我删了,不过我下面留张错误的图。

export JAVA_HOME=/opt/jdk
export JRE_HOME=${
     JAVA_HOME}/jre
export CLASSPATH=.:${
     JAVA_HOME}/lib:${
     JRE_HOME}/lib
export PATH=${
     JAVA_HOME}/bin:$PATH

下面是我找到第一个方式,但是没有成功,为了防止后面有人出错我留着吧。
错误的
centos安装elasticsearch+elasticsearch华为镜像_第5张图片
正确的图。
centos安装elasticsearch+elasticsearch华为镜像_第6张图片

修改完成后,保存文件,退出。

通过source命令重新加载/etc/profile文件,使得修改后的内容生效,命令如下。

4)、查看是否安装成功:

java -version

centos安装elasticsearch+elasticsearch华为镜像_第7张图片
其实如果可以,还是安装1.8版本的比较稳定,我发现1.8版本的jdk,都支持,目前1.8版本的jdk可以维护到2030年左右。
jdk1.8版本官方地址,推荐使用镜像下载,官方要注册什么的。还比较慢。

4、Elasticsearch安装配置

1)Elasticsearch安装

这里选择放在了/opt目录下,进入/opt目录,复制、安装解压命令如下。

cp /root/000_zjf_2020/002_elasticsearch/elasticsearch-7.8.0-linux-x86_64.tar.gz ./
tar -zxvf elasticsearch-7.8.0-linux-x86_64.tar.gz
mv elasticsearch-7.8.0 elasticsearch


centos安装elasticsearch+elasticsearch华为镜像_第8张图片

同样为了后续使用方面将解压后的目录文件重命名为elasticsearch,重命名命令如下。centos安装elasticsearch+elasticsearch华为镜像_第9张图片

2)修改系统参数

修改系统参数的目的是确保系统有足够的资源启动Elasticsearch。

a)、设置内核参数

增加以下参数

vi /etc/sysctl.conf
vm.max_map_count=655360

centos安装elasticsearch+elasticsearch华为镜像_第10张图片

b)、执行以下命令确保配置生效。
sysctl -p

centos安装elasticsearch+elasticsearch华为镜像_第11张图片

c)、设置资源参数
vi /etc/security/limits.conf


* soft nofile 65536
* hard nofile 65536
* soft nproc 4096
* hard nproc 4096
* soft memlock unlimited
* hard memlock unlimited

centos安装elasticsearch+elasticsearch华为镜像_第12张图片

d)、设置用户资源参数
vi /etc/security/limits.d/20-nproc.conf

# 设置elk用户参数
elk    soft    nproc     65536

centos安装elasticsearch+elasticsearch华为镜像_第13张图片

3)添加启动用户,设置权限

因为启动Elasticsearch5.0版本及以上需要使用非root用户,需要新建一个用户来启动Elasticsearch,命令如下所示。

useradd elk         #创建用户elk
groupadd elk        #创建组elk
useradd elk -g elk  #将用户添加到组

mkdir  -pv  /opt/elk/{
     data,logs} # 创建数据和日志目录

# 修改文件所有者
chown -R elk:elk /opt/elk
chown -R elk:elk /opt/elasticsearch/                                

4)Elasticsearch配置

修改Elasticsearch的配置文件/opt/elasticsearch/config/elasticsearch.yml

以下配置仅供参考。

经过俩天的摸索总算配置好了,可以参考下我的配置,上面有中文解释,
[discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes]这几个必须配置哈,至少要配置一个,不然会报错。

# ======================== Elasticsearch Configuration =========================
#
# NOTE: Elasticsearch comes with reasonable defaults for most settings.
#       Before you set out to tweak and tune the configuration, make sure you
#       understand what are you trying to accomplish and the consequences.
#
# The primary way of configuring a node is via this file. This template lists
# the most important settings you may want to configure for a production cluster.
#
# Please consult the documentation for further information on configuration options:
# https://www.elastic.co/guide/en/elasticsearch/reference/index.html
#
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
# 集群名称
cluster.name: my-application
#
# ------------------------------------ Node ------------------------------------
#
# Use a descriptive name for the node:
# 当前的节点名称
node.name: node-1
#
# Add custom attributes to the node:
#
#node.attr.rack: r1
#
# ----------------------------------- Paths ------------------------------------
#
# Path to directory where to store the data (separate multiple locations by comma):
# 储存数据的路径
path.data: /opt/elk/data
#
# Path to log files:
# 储存的日志logs
path.logs: /opt/elk/logs
#
# ----------------------------------- Memory -----------------------------------
#
# Lock the memory on startup:
#
#bootstrap.memory_lock: true
#
# Make sure that the heap size is set to about half the memory available
# on the system and that the owner of the process is allowed to use this
# limit.
#
# Elasticsearch performs poorly when the system is swapping the memory.
#
# ---------------------------------- Network -----------------------------------
#
# Set the bind address to a specific IP (IPv4 or IPv6):
#部署的ecs,内网ip
#network.host: 172.16.54.31
network.host: 0.0.0.0
#
# Set a custom port for HTTP:
#启动的端口
http.port: 9200
#
# For more information, consult the network module documentation.
#
# --------------------------------- Discovery ----------------------------------
#
# Pass an initial list of hosts to perform discovery when this node is started:
# The default list of hosts is ["127.0.0.1", "[::1]"]
#
#discovery.seed_hosts: ["host1", "host2"]
#集群的所以节点
discovery.seed_hosts: ["node-1"]
#
# Bootstrap the cluster using an initial set of master-eligible nodes:
#
#cluster.initial_master_nodes: ["node-1", "node-2"]
#主节点
cluster.initial_master_nodes: ["node-1"]
#
# For more information, consult the discovery and cluster formation module documentation.
#
# ---------------------------------- Gateway -----------------------------------
#
# Block initial recovery after a full cluster restart until N nodes are started:
#这个时集群使用,意思时至少几个节点集群才能使用,如果时默认的3就是要三个节点或者以上才有效,所以我这里不配置。
#gateway.recover_after_nodes: 3
#
# For more information, consult the gateway module documentation.
#
# ---------------------------------- Various -----------------------------------
#
# Require explicit names when deleting indices:
#
## 删除全部索引
#DELETE /_all
#注意,这种操作非常危险,不推荐使用,如果想禁用这种操作,可在在es的config/elasticsearch.yml中将参数action.destructive_requires_name设置为true,如
#设置为true防止所有索引被删除。
action.destructive_requires_name: true

5)使用elk用户启动Elasticsearch服务

①、切换用户并页面启动

切换到创建的elk用户,并且后台启动elasticsearch。

# 切换用户,必须
su elk
# 启动

/opt/elasticsearch/bin/elasticsearch

centos安装elasticsearch+elasticsearch华为镜像_第14张图片
如图,启动成功

②、测试是否成功:

使用winscp,新打开一个命令窗口,因为我现在不是后台启动。

curl http://127.0.0.1:9200

返回一个json即可是

centos安装elasticsearch+elasticsearch华为镜像_第15张图片

③、内网可以访问:
http://你自己ecs的公网:9200/
④、后台启动elasticsearch

再elk用户下(elk你可以自己随便创建用户)

 nohup /opt/elasticsearch/bin/elasticsearch &

centos安装elasticsearch+elasticsearch华为镜像_第16张图片
这样就可以一直在ecs上使用了。

参考:

https://blog.csdn.net/dog_one/article/details/97959389
https://www.cnblogs.com/xphhh/p/11546246.html
https://www.cnblogs.com/stulzq/p/9286878.html
https://mp.weixin.qq.com/s/y8HZbUezHVaCtdSDDx7SWg
重要的配置
https://www.elastic.co/guide/cn/elasticsearch/guide/current/important-configuration-changes.html

https://juejin.im/post/6844903905436909575#heading-9

你可能感兴趣的:(elasticsearch)