草庐IT

Elasticsearch 8.3集群部署(centos7)实战

john&may 2023-04-10 原文

【提示】elasticsearch7以上的版本压缩包内自带JDK

本地安装

下载elasticsearch 的rpm包,然后 使用

rpm -ivh elasticsearch #这个命令安装,名字不全#
systemctl daemon-reload # 重新加载某个服务的配置文件,如果新安装了一个服务,归属于 systemctl 管理,要是新服务的服务程序配置文件生效,需重新加载 #
systemctl enable elasticsearch.service # 实现了开机自启的功能 #
systemctl restart elasticsearch.service #重启服务验证功能是否正常#
systemctl --type=service --state=active | grep elasticsearch

在线安装:

1.开始安装elasticsearch,导入gpg-key

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

2 建elasticsearch 的yum仓库, vi /etc/yum.repos.d/elasticsearch.repo 并且在库中输入以下内容

[elasticsearch]

name=Elasticsearch repository for 8.x packages

baseurl=https://artifacts.elastic.co/packages/8.x/yum

gpgcheck=1

gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch

enabled=0

autorefresh=1

type=rpm-md

3 开始安装

yum install --enablerepo=elasticsearch elasticsearch -y

4 重新启动配置文件,以及设置开机启动

systemctl daemon-reload #重新加载配置文件,如果要使新服务文件生效需要重新加载

systemctl enable --now elasticsearch.service #添加开机启动服务

4.1 可以开机启动elasticsearch,然后检测端口9200,9300是否起来了,如果能监听到这两个端口,则说明安装正确(9300端口是ES节点之间的通讯使用,9200端口是ES节点和外部通讯使用)

netstat -anpt (检查端口是否正常)

5 需要部署几台服务器,重复上面步骤即可,我是用的三台做实验。注意!!!开启elasticsearch和检测端口只是检测能否正常使用,但是请一定记得关闭elasticsearch,再进行配置文件更改,以免服务器集群失败。等配置文件更改完毕,再按照顺序开启elasticsearch(先开启主服务器)

6 域名解析请别忘记了 vi /etc/hosts

![图片](https://img-blog.csdnimg.cn/3aae7406513448f0aa24e406fa0c4d13.png

6.1 systemctl stop elasticsearch

7 修改配置文件参数 vi /etc/elasticsearch/elasticsearch.yml

没有注释的部分为添加修改部分:

①这里指定的是集群名称,需要修改为对应的,开启了自发现功能后,ES会按照此集群名称进行集群发现

#cluster.name: my-application

cluster.name: mh_elk

节点名称

#node.name: node-1

node.name: elk01

②#不在启动的时候锁定内存

#bootstrap.memory_lock: true

bootstrap.memory_lock: false

③#修改一下ES的监听地址,这样别的机器也可以访问

#network.host: 192.168.0.1

network.host: 0.0.0.0

④#修改一下ES的监听地址,这样别的机器也可以访问

#http.port: 9200

http.port: 9200

⑤在构建Elasticsearch(ES)多节点集群的时候,通常情况下只需要将elasticsearch.yml中的cluster.name设置成相同即可,ES会自动匹配并构成集群。但是很多时候可能由于不同的节点在不同的网段下,导致无法自动获取集群。此时可以将启用单播,显示指定节点的发现。具体做法是在elasticsearch.yml文件中设置如下两个参数:

#discovery.seed_hosts: [“host1”, “host2”]

discovery.seed_hosts: [“192.168.116.201”,“192.168.116.202”]

⑥同上

#xpack.security.enabled: true

xpack.security.enabled: false

xpack.security.enrollment.enabled: false

Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents

xpack.security.http.ssl:

enabled: false

Enable encryption and mutual authentication between cluster nodes

xpack.security.transport.ssl:

enabled: false

#cluster.initial_master_nodes: [“localdomain”,“localdomain”]

cluster.initial_master_nodes: [“192.168.116.200”,“192.168.116.201”,“192.168.116.202”]

📎elasticsearch.yml(附件为本操作成功后的配置文件)#存放位置在:/etc/elasticsearch/elasticsearch.yml#

注意事项:

修改系统参数,确保系统有足够资源启动Elasticsearch

8 使配置文件生效,且按顺序开启

systemctl daemon-reload

systemctl start elasticsearch.service

9 检查集群健康状态,total.node 则会显示几个,虽然我没配置data.node 但是数据也会显示,因为默认每个es都可以充当node.data

curl -X GET “localhost:9200/_cat/health?v”

那么集群就配置成功了哦~~~

10 查看集群节点信息

curl -X GET"localhost:9200/_cat/nodes?v"

有关Elasticsearch 8.3集群部署(centos7)实战的更多相关文章

  1. ruby-on-rails - 无法在centos上安装therubyracer(V8和GCC出错) - 2

    我正在尝试在我的centos服务器上安装therubyracer,但遇到了麻烦。$geminstalltherubyracerBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtherubyracer:ERROR:Failedtobuildgemnativeextension./usr/local/rvm/rubies/ruby-1.9.3-p125/bin/rubyextconf.rbcheckingformain()in-lpthread...yescheckingforv8.h...no***e

  2. ruby-on-rails - 每次我尝试部署时,我都会得到 - (gcloud.preview.app.deploy) 错误响应 : [4] DEADLINE_EXCEEDED - 2

    我是Google云的新手,我正在尝试对其进行首次部署。我的第一个部署是RubyonRails项目。我基本上是在关注thisguideinthegoogleclouddocumentation.唯一的区别是我使用的是我自己的项目,而不是他们提供的“helloworld”项目。这是我的app.yaml文件runtime:customvm:trueentrypoint:bundleexecrackup-p8080-Eproductionconfig.ruresources:cpu:0.5memory_gb:1.3disk_size_gb:10当我转到我的项目目录并运行gcloudprevie

  3. ruby-on-rails - Ruby on Rails 可以部署在 Azure 网站上吗? - 2

    我可以在Azure网站上部署RubyonRails吗? 最佳答案 还没有。目前仅支持.NET和PHP。 关于ruby-on-rails-RubyonRails可以部署在Azure网站上吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/12964010/

  4. jenkins部署1--jenkins+gitee持续集成 - 2

    前置步骤我们都操作完了,这篇开始介绍jenkins的集成。话不多说,看操作1、登录进入jenkins后会让你选择安装插件,选择第一个默认的就行。安装完成后设置账号密码,重新登录。2、配置JDK和Git都需要执行路径,所以需要先把执行路径找到,先进入服务器的docker容器,2.1JDK的路径root@69eef9ee86cf:/usr/bin#echo$JAVA_HOME/usr/local/openjdk-82.2Git的路径root@69eef9ee86cf:/#whichgit/usr/bin/git3、先配置JDK和Git。点击:ManageJenkins>>GlobalToolCon

  5. 深度学习部署:Windows安装pycocotools报错解决方法 - 2

    深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal

  6. 微信小程序开发入门与实战(Behaviors使用) - 2

    @作者:SYFStrive @博客首页:HomePage📜:微信小程序📌:个人社区(欢迎大佬们加入)👉:社区链接🔗📌:觉得文章不错可以点点关注👉:专栏连接🔗💃:感谢支持,学累了可以先看小段由小胖给大家带来的街舞👉微信小程序(🔥)目录自定义组件-behaviors    1、什么是behaviors    2、behaviors的工作方式    3、创建behavior    4、导入并使用behavior    5、behavior中所有可用的节点    6、同名字段的覆盖和组合规则总结最后自定义组件-behaviors    1、什么是behaviorsbehaviors是小程序中,用于实现

  7. kvm虚拟机安装centos7基于ubuntu20.04系统 - 2

    需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc

  8. Ruby,使用包含 TK GUI 的 ocra 部署一个 exe - 2

    Ocra无法处理需要“tk”的应用程序require'tk'puts'nope'用奥克拉http://github.com/larsch/ocra不起作用(如链接中的一个问题所述)问题:https://github.com/larsch/ocra/issues/29(Ocra是1.9的"new"rubyscript2exe,本质上它用于将rb脚本部署为可执行文件)唯一的问题似乎是缺少tcl的DLL文件我不认为这是一个问题据我所知,问题是缺少tk的DLL文件如果它们是已知的,则可以在执行ocra时将它们包括在内有没有办法知道tk工作所需的DLL依赖项? 最佳答

  9. ruby-on-rails - NameError(未初始化常量 Unzipper::Zip)但仅在 Heroku 部署(Rails)上 - 2

    我有一个类unzipper.rb,它使用Rubyzip解压文件。在我的本地环境中,我可以成功解压缩文件,而无需使用require'zip'明确包含依赖项但是在Heroku上,我得到一个NameError(uninitializedconstantUnzipper::Zip)我只能通过使用明确的require来解决问题:为什么这在H​​eroku环境中是必需的,但在本地主机上却不是?我的印象是Rails自动需要所有gem。app/services/unzipper.rbrequire'zip'#OnlyrequiredforHeroku.Workslocallywithout!class

  10. ruby - Sinatra + Heroku + Datamapper 使用 dm-sqlite-adapter 部署问题 - 2

    出于某种原因,heroku尝试要求dm-sqlite-adapter,即使它应该在这里使用Postgres。请注意,这发生在我打开任何URL时-而不是在gitpush本身期间。我构建了一个默认的Facebook应用程序。gem文件:source:gemcuttergem"foreman"gem"sinatra"gem"mogli"gem"json"gem"httparty"gem"thin"gem"data_mapper"gem"heroku"group:productiondogem"pg"gem"dm-postgres-adapter"endgroup:development,:t

随机推荐