elastic search入门

参考1:Elastic Search 入门 - 知乎

参考2:Ubuntu上安装ElasticSearch_ubuntu elasticsearch-CSDN博客

1、ElasticSearch安装

1.1安装JDK,省略,之前已安装过

1.2创建ES用户

复制代码
创建用户:sudo useradd esuser
设置密码:sudo passwd esuser

1.3 下载ElasticSearch安装包

Ubuntu上下载:

复制代码
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.11.1-linux-x86_64.tar.gz

然后解压:

复制代码
tar -xvzf elasticsearch-7.11.1-linux-x86_64.tar.gz

1.4配置

配置jvm.options

复制代码
vi config/jvm.options

配置elasticsearch.yml:

复制代码
node.name: node-1            #配置当前es节点名称(默认是被注释的,并且默认有一个节点名)
cluster.name: my-application #默认是被注释的,并且默认有一个集群名
path.data: /home/lighthouse/es/data     # 数据目录位置
path.logs: /home/lighthouse/es/logs     # 日志目录位置
network.host: 0.0.0.0        #绑定的ip:默认只允许本机访问,修改为0.0.0.0后则可以远程访问cluster.initial_master_nodes: ["node-1", "node-2"] #默认是被注释的 设置master节点列表 用逗号分隔

根据以上设置的path.data和path.logs内容,需要在/home/lighthouse/目录下创建es目录,以及在es目录下创建文件data和logs。

ElasticSearch的配置信息:

属性名 说明

cluster.name 配置elasticsearch的集群名称,默认是elasticsearch。建议修改成一个有意义的名称。

node.name 节点名,es会默认随机指定一个名字,建议指定一个有意义的名称,方便管理

path.conf 设置配置文件的存储路径,tar或zip包安装默认在es根目录下的config文件夹,rpm安装默认在/etc/ elasticsearch

path.data 设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开

path.logs 设置日志文件的存储路径,默认是es根目录下的logs文件夹

path.plugins 设置插件的存放路径,默认是es根目录下的plugins文件夹

bootstrap.memory_lock 设置为true可以锁住ES使用的内存,避免内存进行swap

network.host 设置bind_host和publish_host,设置为0.0.0.0允许外网访问

http.port 设置对外服务的http端口,默认为9200。

transport.tcp.port 集群结点之间通信端口

discovery.zen.ping.timeout 设置ES自动发现节点连接超时的时间,默认为3秒,如果网络延迟高可设置大些

discovery.zen.minimum_master_nodes 主结点数量的最少值 ,此值的公式为:(master_eligible_nodes / 2) + 1 ,比如:有3个符合要求的主结点,那么这里要设置为2

1.5 修改/etc/security/limits.conf文件 增加配置

复制代码
sudo vi /etc/security/limits.conf

在文件最后,增加如下配置:

复制代码
* soft nofile 65536
* hard nofile 65536

在/etc/sysctl.conf文件最后添加一行 vm.max_map_count=655360 添加完毕之后,执行命令: sysctl -p

复制代码
vi /etc/sysctl.conf
vm.max_map_count=655360
sysctl -p

1.6启动ElasticSearch

启动前先给esuser用户权限,然后把用户切换到esuser用户

复制代码
sudo chgrp -R lighthouse ./es
sudo chown -R lighthouse ./es
sudo chmod 777 es
su esuser

启动ElasticSearch

复制代码
./bin/elasticsearch

然后参考资料修改了bin/elasticsearch-env文件,让es使用es目录里的jdk,

重新启动,报错如下:

复制代码
ERROR: [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
ERROR: Elasticsearch did not exit normally - check the logs at /home/lighthouse/es/logs/my-application.log

把该释放的内存(可以使用free -h查看)都释放出来后,重新启动,成功了。

可以看到绑定了两个端口:

  • 9300:集群节点间通讯接口

  • 9200:客户端访问接口

访问http://43.138.0.199:9200/在客户端可以看到以下信息:

相关推荐
七夜zippoe4 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
Fcy6486 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满6 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠6 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Harvey9036 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
珠海西格电力科技7 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
释怀不想释怀7 小时前
Linux环境变量
linux·运维·服务器
zzzsde8 小时前
【Linux】进程(4):进程优先级&&调度队列
linux·运维·服务器
聆风吟º9 小时前
CANN开源项目实战指南:使用oam-tools构建自动化故障诊断与运维可观测性体系
运维·开源·自动化·cann
NPE~9 小时前
自动化工具Drissonpage 保姆级教程(含xpath语法)
运维·后端·爬虫·自动化·网络爬虫·xpath·浏览器自动化