Linux环境下Elasticsearch相关软件安装

Linux环境下Elasticsearch相关软件安装

本文将介绍在linux(Centos7)环境下安装Elasticsearch相关的软件。

1、安装Elasticsearch

1.1 Elasticsearch下载

首先去Elasticsearch官网下载相应版本的安装包,下载之后传输到linux服务器上。

官网地址:https://www.elastic.co/cn/downloads/past-releases

我这里下载的是elasticsearch-7.12.1-linux-x86_64.tar.gz

国内加速下载地址:https://www.newbe.pro/tags/Mirrors/

将下载好的tar包传到服务器上指定位置,解压。

在这里插入图片描述

在这里插入图片描述

解压后出现elasticsearch文件夹,一般来讲直接启动就行了,但就是有时候会有问题。

启动命令,直接使用bin下的命令:

./bin/elasticsearch 或者是

./bin/elasticsearch -d

-d代表的是后台运行

在这里插入图片描述

原因是Elasticsearch不能使用root启动,需要新建其它用户进行启动。

# 创建一个叫zsx242030的用户
useradd zsx242030
# 给zsx242030用户设置一个密码,输入两次密码
passwd *************
# 切换zsx242030用户
su zsx242030

切换用户登录重新启动:
在这里插入图片描述

发现存在上面问题,是因为elasticsearch用户没有该文件夹的权限,需要对新用户赋予对目录的操作权限:

# 切换到root用户
su root
# zsx243040是当前登陆用户
chown -R zsx242030:zsx242030 /home/zhangshixing/elasticsearch/elasticsearch-7.12.1
# 或者
chown -R zsx242030 /home/zhangshixing/elasticsearch/elasticsearch-7.12.1

然后再尝试启动,发现没有报错:

在这里插入图片描述

# 查看进程
ps -ef|grep elasticsearch

在这里插入图片描述

我们测试一下:

curl localhost:9200

在这里插入图片描述

此时我们在浏览器试一下,把 localhost: 改成服务器 ip:

在这里插入图片描述

访问不了,因为 elasticsearch 默认只有 localhost 能访问,怎么办呢,修改配置文件:

vim config/elasticsearch.yml

1、打开network.host的注释, 改成 0.0.0.0

2、打开 node.name的注释

3、打开cluster .initial_master_nodes的注释,设置为node-1

4、最下边加两行,允许跨域。

http.cors.enabled: true
http.cors.allow-origin: "*"

重启服务,先kill, 在重启。如果没有问题,会看到下面的界面:

在这里插入图片描述

在这里插入图片描述

如果再次重启的时候有问题,请参考下面遇到的问题,很大概率上是下面的问题。

如果能够正常重启,但是还是无法通过浏览器访问,先进行下面的操作。

那么是防火墙的问题,开放9200端口:

# 查看开放的端口号 
firewall-cmd --list-all
# 设置开放的端口号
firewall-cmd --add-port=9200/tcp --permanent
# 重启防火墙 
firewall-cmd --reload

1.2 安装Elasticsearch遇到的问题

期间还可能遇到的问题:

在这里插入图片描述

需要修改一些系统参数, 先切换回root用户

错误1: max file descriptors [4096] for elasticsearch process is too low, increase to least [65535]

解决: vim /etc/security/limits.conf 最下面加两行

* soft nofile 65536
* hard nofile 65536

在这里插入图片描述

nofile是单个进程允许打开的最大文件个数,soft nofile是软限制,hard nofile是硬限制。

退出回话,重新连接,执行ulimit -Hn 验证。

在这里插入图片描述

错误2:max number of threads [1024] for user [es] is too low, increase to at least [4096]

解决: vim /etc/security/limits.d/20-nproc.conf

在这里插入图片描述

错误3: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least

解决: vim /etc/sysctl.conf,增加配置vm.max_map_count=262144

在这里插入图片描述

执行下面命令,修改内核参数马上生效sysctl -p

如果不生效,重新启动虚拟机reboot

在这里插入图片描述

1.3 安装Elasticsearch-head插件

head插件主要是一个可以用于监控和操作es的一个图形化界面,安装这个插件,需要先安装node.js 从官网下载

最新的稳定版安装包,上传到服务器。

1.3.1 安装node

在这里插入图片描述

解压:tar -xvf node-v16.13.1-linux-x64.tar.gz

在这里插入图片描述

然后配置两个软链,也可以配置环境变量:

ln -s /home/zhangshixing/nodejs/node-v16.13.1-linux-x64/bin/npm /usr/local/bin/npm

ln -s /home/zhangshixing/nodejs/node-v16.13.1-linux-x64/bin/node /usr/local/bin/node

主要目的就是可是识别node,npm命令,执行完毕之后验证一下:

node -v

npm -v

看版本信息是否出现:

在这里插入图片描述

如果nodejs安装过程中出现缺包,yum安装一下。

1.3.2 安装head

下载head插件: 地址 https://github.com/mobz/elasticsearch-head

可以下载zip包传到服务器上解压, 如果机器上有git , 也可以使用git clone 复制下来。
在这里插入图片描述

# 解压
unzip elasticsearch-head-master.zip

下载下来解压之后,cd 进入head 目录

在这里插入图片描述

npm install -g grunt --registry=https://registry.npm.taobao.org

在这里插入图片描述

#检测是否安装成功,如果执行命令后出现版本号就表明成功
./grunt -version

在这里插入图片描述

然后使用npm install 进行编译。

在这里插入图片描述

然后要改一个配置,把localhost改为ip地址,否则head监控的是localhost的地址,如果head和es不在一台机器上

会有问题。

修改Gruntfile.js文件,修改为ES服务器IP:
在这里插入图片描述

connect: {server: {options: {hostname:'192.168.2.186',port: 9100,base: '.',keepalive: true}}}

在这里插入图片描述

最后使用 npm run start 执行,也可以使用 grunt server启动。

在这里插入图片描述

需要关闭防火墙,开放9100端口。

# 查看开放的端口号 
firewall-cmd --list-all
# 设置开放的端口号
firewall-cmd --add-port=9100/tcp --permanent
# 重启防火墙 
firewall-cmd --reload

在这里插入图片描述

连接 http://192.168.2.186:9200/

在这里插入图片描述

1.4 Elasticsearch分词器Elasticsearch-Analysis-ik安装

这个比较简单,下载之后,解压到es安装目录下的plugin目录中即可,注意下载相应的版本。

ik地址:https://github.com/medcl/elasticsearch-analysis-ik

在这里插入图片描述

新建一个ik目录,mkdir ik

解压:unzip -d ik/ elasticsearch-analysis-ik-7.12.1.zip

在这里插入图片描述

在这里插入图片描述

将ik拷贝到elasticsearch的plugins目录下:

在这里插入图片描述

在这里插入图片描述

然后重启es,进行分词测试。

在这里插入图片描述

2、安装ElasticHD

打开Xshell,连接到Linux系统中;

第一步:我们来下载程序压缩包

wget https://github.com/360EntSecGroup-Skylar/ElasticHD/releases/download/1.4/elasticHD_linux_amd64.zip

也可以提前下载好上传到服务器上elasticHD_linux_amd64.zip

在这里插入图片描述

第二步:解压

unzip elasticHD_linux_amd64.zip

提示

Archive: elasticHD_linux_amd64.zip
inflating: ElasticHD

说明解压成功;

在这里插入图片描述

在这里插入图片描述

第三步:授权

chmod 0777 ElasticHD

第四步:启动

./ElasticHD -p 192.168.2.186:9800

在这里插入图片描述

说明启动成功了,需要关闭防火墙,开放9800端口。

# 查看开放的端口号 
firewall-cmd --list-all
# 设置开放的端口号
firewall-cmd --add-port=9800/tcp --permanent
# 重启防火墙 
firewall-cmd --reload

我们用浏览器测试下:

在这里插入图片描述

3、安装Kibana

1、下载kibana

wget https://artifacts.elastic.co/downloads/kibana/kibana-7.12.1-linux-x86_64.tar.gz

也可以提前下载好,传输到linux服务器上。

在这里插入图片描述

2、解压

tar -zxvf kibana-7.12.1-linux-x86_64.tar.gz

在这里插入图片描述

3、修改配置文件

vim config/kibana.yml# 放开注释,将默认配置改成如下
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: "http://192.168.2.186:9200"
kibana.index: ".kibana"

4、启动

./bin/kibana

在这里插入图片描述

切换到新建的普通用户

在这里插入图片描述

# 使用root用户赋予权限
chown -R zsx242030:zsx242030 /home/zhangshixing/elasticsearch/kibana-7.12.1-linux-x86_64

然后重新启动:

在这里插入图片描述

5、访问

需要关闭防火墙,开放5601端口。

# 查看开放的端口号 
firewall-cmd --list-all
# 设置开放的端口号
firewall-cmd --add-port=5601/tcp --permanent
# 重启防火墙 
firewall-cmd --reload

http://192.168.87.120:5601

在这里插入图片描述

在这里插入图片描述

可以在config/kibana.yml配置文件中配置:

i18n.locale: "zh-CN"

让界面中文展示:

在这里插入图片描述

4、安装Logstash

1、下载Logstash

本人是从本地上传到服务器上的,使用的7.12.1。

logstash-7.12.1-linux-x86_64.tar.gz

在这里插入图片描述

2、解压Logstash

进入上传目录解压Logstash

tar -zxvf logstash-7.12.1-linux-x86_64.tar.gz

在这里插入图片描述

3、启动

./bin/logstash -e 'input { stdin { } } output { stdout {} }'

在这里插入图片描述

在这里插入图片描述

具体的使用案例请参考《Windows环境下Elasticsearch相关软件安装》。

5、安装Filebeat

1、下载安装包

https://www.elastic.co/cn/downloads/beats/filebeat

在这里插入图片描述

根据自己的需要,点击View past releases →下载相应的版本,这里我下载的是这个版本filebeat-7-12-1

2、上传服务器解压

$ tar -xvf filebeat-7.12.1-linux-x86_64.tar.gz

在这里插入图片描述

3、修改配置文件

编辑filebeat.yml配置文件:

a:配置 filebeat:inputs:path ,这里的路径是所要收集日志的路径

在这里插入图片描述

b:配置 enabled: true 这个配置很重要,只有配置为true之后配置才可生效,否则不起作用。

在这里插入图片描述

c:配置Outputs ,这里的Outputs有elasticsearch,logstash。按照配置文件下面的示例配置即可,只能配置一

个输出,默认是ElasticSearch。

在这里插入图片描述

4、启动

./filebeat -e -c filebeat.yml

在这里插入图片描述

正常情况下,应该有个链接ES的过程,将数据输出到es。

在这里插入图片描述

5、测试

用以下命令向beat.log文件写入内容,以下内容是全量覆盖,不是追加往里面写内容,若想改成追加内容,把下

面的>符号改成 >>即可。

echo "2020-10-31 08:55:09,578 [8] INFO  test.Logging - 2017-06-11 08:55:09--System.ArgumentOutOfRangeException" > /home/zhangshixing/elasticsearch/filebeat-7.12.1-linux-x86_64/logs/beat.log

后台打印信息:

在这里插入图片描述

kinaba查看,多了一个索引:

在这里插入图片描述

默认情况下,Filebeat写事件到名为filebeat-7.12.1-yyyy.MM.dd的索引,其中yyyy.MM.dd是事件被索引的日

期。为了用一个不同的名字,你可以在Elasticsearch输出中设置index选项。

在这里插入图片描述

在这里插入图片描述

到目前为止,和Elasticsearch相关的一些常用的软件都介绍完毕。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/8802.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python采集某网站小视频内容, m3u8视频内容下载

目录标题 前言环境使用:模块使用:代码实现步骤代码展示尾语 前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 环境使用: python 3.8 运行代码 pycharm 2021.2 辅助敲代码 模块使用: import requests >>> pip install requests 内置模块 你安装好python环境就…

Windows 微信更新内核(小程序框架)的指南

WMPF-PC 更新指引: 准备工作 1. 安装最新微信客户端( https://dldir1.qq.com/weixin/Windows/WeChatSetup.exe ) 2. 在微信在搜索栏输入:showcmdwnd (包括前面冒号) 中输入以下代码以开启 wmpf 新内核版本(已经是现网默认,可以…

Spring Boot 3.x 系列【51】启动流程 | 最后阶段

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot版本3.1.0 源码地址:https://gitee.com/pearl-organization/study-spring-boot3 文章目录 1. 前言2. 执行流程2.1 打印启动完成日志2.2 发布启动完成事件2.3 调用Runner2.4 异常处理2.5 Ready 事件2.6 返回上下文1…

springboot整合log4j2

1.排除springboot本身日志 2.添加log4j2 maven没有父项目 就必须指定version!! 3.配置application.yml文件 打印sql级别为debug 4.配置log4j2.xmllogging.configclasspath:log4j2.xml logging.level.com.zhkj.shoppingdebug #mybatis-plus.mapper-locations classpath*:/mapp…

web前端开发小知识

当今互联网技术迅猛发展,web前端开发也成为了非常热门的职业之一。作为一个web前端开发者,不仅需要掌握各种前端开发技术,还需要了解一些小技巧和小知识。下面,我们将介绍一些web前端开发小知识,希望对你的工作有所帮助…

39. 组合总和

题目描述 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制重复被…

连续三年!瑞数信息入选Gartner《2023年中国ICT技术成熟度曲线报告》云安全代表厂商

连获殊荣 近日,全球权威IT研究与顾问咨询公司Gartner发布《2023年中国ICT技术成熟度曲线报告》(Hype Cycle for ICT in China, 2023》,瑞数信息入选云安全领域代表厂商(Sample Vendor)。 这是继2021年、2022年后&…

ChatGPT API进阶调用指南

原文:ChatGPT API进阶调用指南 ChatGPT API 进阶调用指南 ChatGPT API 是基于 OpenAI 的 GPT模型的一个强大工具,可以用于构建各种对话式应用。以下是一些使用 Markdown 语法的进阶调用指南,以帮助您更好地利用 ChatGPT API。 设置用户角色…

vue3-vite使用amfe-flexible

1. 安装postcss-pxtorem npm install postcss-pxtorem --save-dev2. 安装lib-flexible npm i -s amfe-flexible3. 在main.js引入插件 import amfe-flexible4. 配置postcss.config.js文件 在根目录,和package.json同级,创建一个名为postcss.config.j…

Spring Security 6.x 系列【64】扩展篇之多线程支持

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 3.1.0 本系列Spring Security 版本 6.1.0 本系列Spring Authorization Server 版本 1.1.0 源码地址:https://gitee.com/pearl-organization/study-spring-security-demo 文章目录 1. 问题演示2. 解决方案:…

安装redis,适配阿里云服务器,Liunx安装redis

下载redis以及编译安装 下载redis文件 wget http://download.redis.io/releases/redis-6.0.8.tar.gz #下载redis压缩文件 tar xzf redis-6.0.8.tar.gz #解压缩 cd redis-6.0.8 make 查看是否安装了gcc编译输入gcc --version如果没有…

对比CahtGPT Bard Claude2对中文的理解

对比CahtGPT Bard Claude2对中文的理解 今天简单测试了一下目前这三个很火的模型对中文的理解能力 简单问题 鲁迅和周树人的关系 Bard CahtGPT Claude 介绍一下平凡的世界这本书 Bard CahtGPT

Java并发编程 | 创建线程的几种方式

文章目录 一、简介二、使用Thread类创建线程2.1 继承Thread类2.1.1 创建Thread子类2.1.2 重写run方法2.1.3 启动线程的方式方式一:创建线程对象后调用start方法方式二:直接使用匿名内部类创建线程对象并调用start方法 2.2 使用匿名内部类创建线程2.3 线程…

5.CSS(二)

目录 一、Emmet语法 (一)快速生成HTML结构语法 (二)快速生成CSS样式语法 二、CSS的复合选择器 (一)后代选择器(重要) (二)子选择器(重要&…

自然语言处理从入门到应用——LangChain:模型(Models)-[聊天模型(Chat Models):使用少量示例和响应流式传输]

分类目录:《自然语言处理从入门到应用》总目录 使用少量示例 本部分的内容介绍了如何在聊天模型(Chat Models)中使用少量示例。关于如何最好地进行少量示例提示尚未形成明确的共识。因此,我们尚未固定任何关于此的抽象概念&#…

什么是Java中的JVM(Java虚拟机)?

JVM(Java虚拟机)是Java平台的核心组件之一,是一个用于执行Java字节码的虚拟计算机。Java源代码经过编译器编译,生成字节码文件(.class文件),然后由JVM来解释和执行这些字节码。JVM负责将字节码翻…

kafka消息监听

1,spring配置kafka网址 2,listener Component public class OrderMsgListener {KafkaListener(topics "order",groupId "order-service")public void listen(ConsumerRecord record){System.out.println("收到消息&#xf…

Upload文件导入多条数据到输入框

需求场景:文本框内容支持批量导入(文件类型包括’.txt, .xls, .xlsx’)。使用AntD的Upload组件处理。 下面是Upload的配置(伪代码),重点为beforeUpload中的逻辑 // Antd 中用到的Upload组件 import { UploadOutlined } from ant…

静态路由小实验

文章目录 一、实验要求及拓扑图二、实验步骤三、思考题 一、实验要求及拓扑图 二、实验步骤 1、创建VLAN,将端口划入vlan 在交换机S3、S4上创建VLAN10、20 Switch(config)#vl 10 Switch(config-vlan)#vl 20 S3(config)#int f0/3 S3(config-if)#switchport access …

vue3 实现排序按钮

需求背景解决效果index.vue 需求背景 需要实现一个复用性&#xff0c;是提供表单顺倒排序的按钮 解决效果 index.vue <!--/*** author: liuk* date: 2023/7/25* describe: 排序按钮*/--> <template><div class"sort-fn"><span :class"[…