Elasticsearch-linux环境部署
本文主要介绍linux下elasticsearch的部署。通过在一台linux服务器中分别对elasticsearch-6.7.2版本,elasticsearch-7.3.0版本来进行安装,记录在安装elasticsearch-7.3.0版本时出现的异常情况,以及elasticsearch-head的安装。
基础环境
本机已经安装、配置了jdk 1.8 版本的继续环境,nodejs环境(elasticsearch-head安装需要)。
使用以下网盘地址,下载需要版本的elasticsearch包
通过网盘分享的文件:elasticsearch-7.3.0-linux-x86_64.tar.gz
链接: https://pan.baidu.com/s/1hSRQgoOvz-aOj1MqcGgMow 提取码: xiao
通过网盘分享的文件:elasticsearch-6.7.2.tar.gz
链接: https://pan.baidu.com/s/1uoHF70mqxB2o_sjx3WzsUA 提取码: xiao
在github中,下载最新的elasticsearch-head包
源码地址:https://github.com/mobz/elasticsearch-head/
安装包地址:https://github.com/mobz/elasticsearch-head/releases/tag/v5.0.0
启动elasticsearch服务不能使用root账号,所以需要新建一个用户,用来启动elasticsearch服务
adduser es
passwd es
安装6.7.2版本
-
解压压缩文件
cd /data2 tar -zxvf elasticsearch-6.7.2.tar.gz -
更改配置文件
elasticsearch.ymlpath.data: /data2/elasticsearch-6.7.2/data path.logs: /data2/elasticsearch-6.7.2/logs network.host: 0.0.0.0 http.port: 8099 -
切换es用户启动
su es cd /data2/elasticsearch-6.7.2 # 后台启动elasticsearch服务 ./bin/elasticsearch -d -
查看是否启动成功
-
查看日志
cd /data2/elasticsearch-6.7.2/logs # 查看日志是否正常启动 tail -f elasticsearch.log -
查看进程
ps -ef |grep elasticsearch -
查看api:
http://10.10.87.20:8099/{"name" : "6W3MY3q","cluster_name" : "elasticsearch","cluster_uuid" : "Obz1OlM9S4KcLEKN6SYkdg","version" : {"number" : "6.7.2","build_flavor" : "default","build_type" : "tar","build_hash" : "56c6e48","build_date" : "2019-04-29T09:05:50.290371Z","build_snapshot" : false,"lucene_version" : "7.7.0","minimum_wire_compatibility_version" : "5.6.0","minimum_index_compatibility_version" : "5.0.0"},"tagline" : "You Know, for Search" }
-
安装7.3.0版本
elasticsearch 7以上版本开始内置了jdk,如本文中部署的7.3.0版本就内置了jdk 11,如果使用的服务器已经安装配置了jdk 1.8的话,可以直接使用elasticsearch-7.3.0自带的jdk。
-
解压压缩文件
cd /data2 tar -zxvf elasticsearch-7.3.0-linux-x86_64.tar.gz -
更改配置文件
elasticsearch.ymlpath.data: /data2/elasticsearch-7.3.0/data path.logs: /data2/elasticsearch-7.3.0/logs network.host: 0.0.0.0 http.port: 19200 # 以下配置都是出现异常后的,新增的配置 一台服务器中部署两个elasticsearch不同版本的服务 # 注:node.name 的值要与 cluster.initial_master_nodes 的值保持一致 node.name: node-2 discovery.seed_hosts: ["127.0.0.1"] cluster.initial_master_nodes: ["node-2"] -
更改配置文件
jvm.options# 由于在启动时,出现了异常,需要更换GC算法 #-XX:+UseConcMarkSweepGC -XX:+UseG1GC -
更换脚本文件
elasticsearch-env#if [ ! -z "$JAVA_HOME" ]; then # JAVA="$JAVA_HOME/bin/java" #else # if [ "$(uname -s)" = "Darwin" ]; then # # OSX has a different structure # JAVA="$ES_HOME/jdk/Contents/Home/bin/java" # else # JAVA="$ES_HOME/jdk/bin/java" # fi #fi # 将以上原始的脚本段注释掉,使用以下内容;JAVA 为 elasticsearch自带的jdk的路径 if [ ! -z "$JAVA_HOME" ]; thenJAVA="/data2/elasticsearch-7.3.0/jdk/bin/java" elseif [ "$(uname -s)" = "Darwin" ]; then# OSX has a different structureJAVA="/data2/elasticsearch-7.3.0/jdk/bin/java"elseJAVA="/data2/elasticsearch-7.3.0/jdk/bin/java"fi fi -
切换es用户启动
su es cd /data2/elasticsearch-7.3.0 # 后台启动elasticsearch服务 ./bin/elasticsearch -d -
查看是否启动成功
-
查看日志
cd /data2/elasticsearch-7.3.0/logs # 查看日志是否正常启动 tail -f elasticsearch.log -
查看进程
ps -ef |grep elasticsearch -
查看api:
http://10.10.87.20:19200/{"name" : "centos74-0.novalocal","cluster_name" : "elasticsearch","cluster_uuid" : "_na_","version" : {"number" : "7.3.0","build_flavor" : "default","build_type" : "tar","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" }
-
安装elasticsearch异常情况
-
出现以下错误,说明默认走的内置的jdk 11的,便需要更改启动脚本
elasticsearch-env中的配置信息bash-4.2$ ./bin/elasticsearch -d future versions of Elasticsearch will require Java 11; your Java version from [/usr/local/java/jdk1.8.0_73/jre] does not meet this requirementvim elasticsearch-env# 注释以下 内容 # now set the path to java #if [ ! -z "$JAVA_HOME" ]; then # JAVA="$JAVA_HOME/bin/java" #else # if [ "$(uname -s)" = "Darwin" ]; then # # OSX has a different structure # JAVA="$ES_HOME/jdk/Contents/Home/bin/java" # else # JAVA="$ES_HOME/jdk/bin/java" # fi #fi # 将被注释的配置块,复制一份,将JAVA的信息更给为 elasticsearch自带的jdk的路径 if [ ! -z "$JAVA_HOME" ]; thenJAVA="/data2/elasticsearch-7.3.0/jdk/bin/java" elseif [ "$(uname -s)" = "Darwin" ]; then# OSX has a different structureJAVA="/data2/elasticsearch-7.3.0/jdk/bin/java"elseJAVA="/data2/elasticsearch-7.3.0/jdk/bin/java"fi fi -
出现以下错误,说明需要更换GC算法,便需要更改
jvm.options中的配置信息OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.cd jvm.options # 从ConcMarkSweepGC切换到G1GC #-XX:+UseConcMarkSweepGC -XX:+UseG1GC -
当启动时出现以下异常信息时,需要更给配置文件
elasticsearch.yml中的配置信息[2024-11-04T16:58:51,926][ERROR][o.e.b.Bootstrap ] [centos74-0.novalocal] node validation exception [1] bootstrap checks failed [1]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured [2024-11-04T16:58:51,929][INFO ][o.e.n.Node ] [centos74-0.novalocal] stopping ... [2024-11-04T16:58:51,951][INFO ][o.e.n.Node ] [centos74-0.novalocal] stopped [2024-11-04T16:58:51,951][INFO ][o.e.n.Node ] [centos74-0.novalocal] closing ... [2024-11-04T16:58:51,965][INFO ][o.e.n.Node ] [centos74-0.novalocal] closed [2024-11-04T16:58:51,968][INFO ][o.e.x.m.p.NativeController] [centos74-0.novalocal] Native controller process has stopped - no new native processes can be starteddiscovery.seed_hosts: ["127.0.0.1"] cluster.initial_master_nodes: ["node-1"]
安装elasticsearch-head
-
解压压缩文件
cd /data2 tar -zxvf elasticsearch-head-5.0.0.tar.gz -
编辑
Gruntfile.js,添加hostnamevim Gruntfile.jshostname: '*', port: 9100, base: '.', keepalive: true -
更改配置文件
elasticsearch.yml# 进入安装目录 cd elasticsearch-head-5.0.0 # 安装 npm install --registry=https://registry.npmmirror.com/ -
启动服务
#前台启动 npm run start # 后台启动: nohup npm run-script start & -
查看是否启动成功,访问
http://10.10.87.20:9100/
安装elasticsearch-head异常情况
当elasticsearch-head启动正常,elasticsearch也启动正常,但是无法通过elasticsearch-head连接elasticsearch服务。

需要更改elasticsearch的配置文件elasticsearch.yml,进行跨域访问。
# 在配置文件末尾添加以下配置
http.cors.enabled: true
http.cors.allow-origin: "*"
重启elasticsearch后,访问http://10.10.87.20:9100/

相关文章:
Elasticsearch-linux环境部署
本文主要介绍linux下elasticsearch的部署。通过在一台linux服务器中分别对elasticsearch-6.7.2版本,elasticsearch-7.3.0版本来进行安装,记录在安装elasticsearch-7.3.0版本时出现的异常情况,以及elasticsearch-head的安装。 基础环境 本机已…...
LeetCode 每日一题 长度为 K 的子数组的能量值
长度为 K 的子数组的能量值 给你一个长度为 n 的整数数组 nums 和一个正整数 k 。 一个数组的 能量值 定义为: 如果 所有 元素都是依次 连续 且 上升 的,那么能量值为 最大 的元素。 否则为 -1 。 你需要求出 nums 中所有长度为 k 的 子数组 的能量值。 …...
人工智能——小白学习指南
知孤云出岫 目录 1. **智能评测系统**2. **个性化学习路径推荐**3. **虚拟学习助手**4. **学习行为分析**5. **数据驱动的教学决策**6. **自动化课程推荐**7. **数据隐私与安全保护** 人工智能知识点的总结和学习路线,以数据表格形式呈现,并附带在教育行…...
go 集成Gin Web开发框架
引入gin的依赖 下载并安装 gin go get -u github.com/gin-gonic/gin 将 gin 引入到代码中 import "github.com/gin-gonic/gin" 开始 package mainimport "github.com/gin-gonic/gin"func main() {r : gin.Default()r.GET("/ping", func(c …...
c++ 多态性
类的多态 多态概念入门 #include <iostream> using namespace std;/* 多态的前提: 拥有继承关系的类中有相同的函数(返回类型、函数名、形参列表) 多态解决的问题:1、派生类的对象被赋值给基类对象时2、派生类的对象初始化基类的引用时3、基类的指针指向派生…...
块存储、文件存储和对象存储详细介绍
块存储、文件存储和对象存储介绍 块存储:像跑车,因为它们都能提供快速的响应和高性能,适合需要即时数据访问的场景,比如数据库和虚拟化技术。 文件存储:像货车,因为它们都能承载大量货物(文件&…...
移植 AWTK 到 纯血鸿蒙 (HarmonyOS NEXT) 系统 (9) - 编译现有的AWTK应用程序
AWTK 应用程序开发完成后,在配置文件中添加 harmonyos 的选项,通过create_project.py脚本即可生成 DevEco Studio的工程。 安装开发环境 DevEco Studio HarmonyOS 的开发工具。 Python 运行环境。 git 源码管理工具。 下载 awtk 和 awtk-harmonyos…...
ssm基于BS的仓库在线管理系统的设计与实现+vue
系统包含:源码论文 所用技术:SpringBootVueSSMMybatisMysql 免费提供给大家参考或者学习,获取源码看文章最下面 需要定制看文章最下面 目 录 第一章 绪论 1 1.1 研究背景 1 1.2 研究意义 1 1.3 研究内容 2 第二章 开发环境与技术3 …...
面试题:Spring(一)
1. Spring框架中bean是单例么? Service Scope("singleton") public class UserServiceImpl implements UserService { }singleton : bean在每个Spring IOC容器中只有一个实例。prototype:一个bean的定义可以有多个实例。 2. Spring框架中的…...
MySQ怎么使用语法介绍(详细)
一、什么是库结构 库结构的意思就是指数据库的结构。所以,理解“库结构”就要先理解“库”是什么。 在数据库的上下文中,库指的是一个数据库。简单来说,数据库(库)是用来存储和管理数据的容器。它不仅存储实际的数据…...
新能源汽车与公共充电桩布局
近年来,全球范围内对新能源汽车产业的推动力度不断增强,中国新能源汽车市场也呈现蓬勃发展的势头,在政策与市场的共同推动下,新能源汽车销量持续增长。然而,据中国充电联盟数据显示,充电基础设施建设滞后于新能源汽车数量增长的现状导致充电桩供需不平衡,公共充电桩服务空白区域…...
【GIT】sourceTree的“当前分支“,“合并分支“与“检出分支的区别
GIT三款经典可视化 由上文文档得出灵感写出此篇 这三个概念在 Git 操作中都是很常见的, 来逐个解析: 1. 当前分支 “当前分支”就是你目前正在工作的分支。你在进行任何代码修改、提交等操作时,都会应用到“当前分支”上。换句话说…...
【Git】如何在 Git 中高效合并分支:完整指南
目录 引言1. 切换到主分支1.1 切换分支命令1.2 相关命令1.3 切换分支示意图 2. 合并分支2.1 基本合并命令2.2 合并选项2.3 合并流程示意图 3. 解决冲突3.1 解决冲突的步骤3.2 相关命令3.3 解决冲突示意图 4. 本地更新分支4.1 拉取远程更改4.2 更新主分支4.3 拉取远程更新到本地…...
成都睿明智科技有限公司抖音电商服务效果如何?
在这个短视频风起云涌的时代,抖音电商以其独特的魅力,成为了众多商家竞相追逐的新蓝海。而在这片波澜壮阔的商海中,成都睿明智科技有限公司犹如一艘稳健的航船,引领着无数企业驶向成功的彼岸。今天,就让我们一起揭开成…...
收集的linux命令/Docker命令/git命令
查看linux发行版本 lsb_release -a显示操作系统的发行版号 uname -r1. 启动 Docker。 sudo systemctl start docker2. 通过运行映像来验证 Docker 引擎安装是否成功。hello-world sudo docker run hello-world查看docker版本 docker -v查看docker配置信息 docker infodoc…...
DNS域名解析实验
准备工作 [rootlocalhost ~]# setenforce 0 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# mount /dev/sr0 /mnt [rootlocalhost ~]# dnf install bind -y DNS正向解析: 对主配置文件进行修改 [rootlocalhost ~]# vim /etc/named.conf 正向解析…...
Dify 本地部署指南
一、前置条件 Clone Dify 代码: git clone https://github.com/langgenius/dify.git 在启用业务服务之前,我们需要先部署 PostgresSQL / Redis / Weaviate(如果本地没有的话),可以通过以下命令启动: cd…...
15分钟学 Go 第 38 天:数据库基础
第38天 - 数据库基础 学习目标 学习如何连接和操作数据库,包括基本的增、删、改、查功能,以及如何使用Go语言中的database/sql包进行数据库交互。 内容概述 在现代应用程序中,数据库是数据持久化的重要部分。Go语言通过database/sql包提供…...
【Python】图片处理
一、获取图片尺寸 优点缺点Pillow功能丰富,支持多种图像处理操作。使用简单,适合快速原型开发。对于处理大型图像或批量图像时,性能可能不如OpenCV。OpenCV性能强大,适合处理大型图像和视频处理。提供了丰富的计算机视觉算法。相…...
面相小白的php反序列化漏洞原理剖析
前言 欢迎来到我的博客 个人主页:北岭敲键盘的荒漠猫-CSDN博客 本文整理反序列化漏洞的一些成因原理 建议学习反序列化之前 先对php基础语法与面向对象有个大体的了解 (我觉得我整理的比较细致,了解这俩是个啥就行) 漏洞实战情况 这个漏洞黑盒几乎不会被发现&am…...
Java 语言特性(面试系列2)
一、SQL 基础 1. 复杂查询 (1)连接查询(JOIN) 内连接(INNER JOIN):返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
