做响应式网站的流程,暖暖韩国中文免费观看播放,58同城网站建设 推广,西宁建设网站文章目录 版本选择单机ES安装与配置创建非root用户导入安装包安装包解压配置JDK环境变量配置single-node配置JVM参数后台启动|启动日志查看启动成功#xff0c;访问终端访问浏览器访问 Kibana安装修改配置后台启动|启动日志查看浏览器访问 ES三节点集群搭建停止es服务域名配置… 文章目录 版本选择单机ES安装与配置创建非root用户导入安装包安装包解压配置JDK环境变量配置single-node配置JVM参数后台启动|启动日志查看启动成功访问终端访问浏览器访问 Kibana安装修改配置后台启动|启动日志查看浏览器访问 ES三节点集群搭建停止es服务域名配置配置修改集群配置配置说明配置节点1配置节点2配置节点3分别启动验证集群搭建成功 Kibana配置修改重启Kibana查看进程停止Kibana服务启动Kibana验证 ES开启认证 版本选择
在[ElasticSearch]分析京东商城商品搜索实现|聚合|全文查找|搜索引擎|ES Java High Level Rest Client|ES Java API Client这篇文章里进行了说明使用的7.17.3版本不再赘述。
Elasticsearch 7.17.3下载地址Kibana 7.17.3下载地址环境CentOS 7.6.1
单机ES安装与配置
创建非root用户
ES不允许root用户运行使用root用户为其创建一个用户es为用户es配置密码并切换到es用户。
adduser es
passwd es
su es导入安装包
将下载好的ElasticsearchKibana导入到es用户home目录
[espolaris ~]$ cd ~
[espolaris ~]$ pwd
/home/es
[espolaris ~]$ ls
kibana-7.17.3-linux-x86_64.tar.gz
elasticsearch-7.17.3-linux-x86_64.tar.gz 安装包解压
tar -zxvf elasticsearch-7.17.3-linux-x86_64.tar.gz
tar -zxvf kibana-7.17.3-linux-x86_64.tar.gz配置JDK环境变量
当前还在用户home目录下 添加两行(ES7.x及以后版本内置了jdk)
export ES_JAVA_HOME/home/es/elasticsearch-7.17.3/jdk
export ES_HOME/home/es/elasticsearch-7.17.3[espolaris ~]$ vim .bash_profile # .bash_profile# Get the aliases and functions
if [ -f ~/.bashrc ]; then. ~/.bashrc
fi# User specific environment and startup programsexport ES_JAVA_HOME/home/es/elasticsearch-7.17.3/jdk
export ES_HOME/home/es/elasticsearch-7.17.3PATH$PATH:$HOME/.local/bin:$HOME/binexport PATH执行以下命令使之生效。(之后使用es用户开启一个终端会话参考ES环境变量设置的问题分析用户级环境变量设置与读取报错分析与解决⚠️ usage of JAVA_HOME is deprecated, use ES_JAVA_HOME该环境变量配置就会是生效的)
source .bash_profile配置single-node
切换到es目录
cd elasticsearch-7.17.3/# 0. 备份一下原配置文件
cp config/elasticsearch.yml config/elasticsearch.yml.origin
# 修改配置
vim config/elasticsearch.yml
# 1. 开启远程访问监听所有网卡可以在虚拟机外部如win主机上访问
network.host: 0.0.0.0
# 2. 单节点模式
discovery.type: single-node配置JVM参数 官方建议将 Xms 和 Xmx 设置为不超过总内存的 50%。 Elasticsearch 需要内存用于 JVM堆以外的用途。例如Elasticsearch 使用堆外缓冲区来实现高效的网络通信并依赖操作系统的文件系统缓存来高效地访问文件。 JVM本身也需要一些内存。Elasticsearch 使用的内存多于 Xmx 设置配置的限制是正常的。 机器情况CPU 4核8线程内存16GB打算搭三节点集群演示主机上还会运行一些东西因此为每个虚拟机分配了2GB的内存处理器数量2个单个处理器内核数量设置为了2个处理器内核总数为4 虚拟机内存2GB堆内存设置不超过50%这里设置1GB
# 0. 备份一下原配置文件
cp config/jvm.options config/jvm.options.origin
# 修改堆内存
vim config/jvm.option-Xms1g
-Xmx1g后台启动|启动日志查看
后台启动可以保证启动成功后当前会话断开es还是在运行不会随着终端会话关闭而终止。
bin/elasticsearch -d如果启动有问题可以查看es启动日志
tail -f logs/elasticsearch.log启动成功访问
终端访问 浏览器访问 如果浏览器访问不通那么可以关闭防火墙简化操作 云服务器的话可以通过配置安全组规则进行端口映射开放端口参考添加安全组规则 这样单节点的es就可以正常工作之后通过修改配置把他加入到集群。
Kibana安装
Kibana是官方提供的ES一个客户端连接工具。 只在一台虚拟机上安装即可或者win主机上安装一个都行注意修改配置使之能够访问到es单机或集群以及可以对外提供服务Kibana对外能够被访问。 这里是在虚拟机上安装。
修改配置
cd ~/kibana-7.17.3-linux-x86_64/
#备份一个源文件
cp config/kibana.yml config/kibana.yml.origin
#修改配置
vim config/kibana.yml#指定Kibana服务器监听的端口号
server.port: 5601
#开启远程访问监听所有网卡可以在虚拟机外部如win主机上访问
server.host: 0.0.0.0
#指定Kibana连接到的ES实例的访问地址
#如果访问本地的ES(Kibana与ES安装在同一台服务器上)就是localhost访问其他的换成ip
#集群的话就配上所有的节点elasticsearch.hosts: [http://192.168.43.69:9200, http://192.168.43.133:9200, http://192.168.43.225:9200]
elasticsearch.hosts: [http://localhost:9200]
#将 Kibana 的界面语言设置为简体中文。默认en
i18n.locale: zh-CN 后台启动|启动日志查看
后台启动可以保证启动成功后当前会话断开kibana还是在运行不会随着终端会话关闭而终止。
nohup bin/kibana 如果启动有问题可以查看Kibana启动日志
tail -f nohup.out浏览器访问
win主机浏览器访问机器ip“:”port(5601)
http://192.168.43.69:5601/到此Elasticsearch环境及客户端Kibana就安装配置完成。 这里查看到的节点ip是192.168.25.74而不是我们访问的机器ip 192.168.43.69是有问题的正常情况是不会有这个问题的。这个问题的原因参考[ES] ElasticSearch节点加入集群失败经历分析主节点选举、ES网络配置 [publish_address不是当前机器ip]
下面说明ES集群搭建方法。
ES三节点集群搭建 可以把刚才的虚拟机克隆出额外的两个也可以在额外的两个虚拟机上重复上面es的安装过程Kibana不需要再装了它只是个es连接工具装一个就行了 停止es服务
#查看es进程
ps -ef|grep elasticsearch
#停止es运行
kill pid #pid是上面命令查出来的进程号域名配置
三台机器都切换root用户配置机器ip与域名对应关系用于在服务发现时集群内的各节点通过这个域名彼此可以找到彼此。
su
vim /etc/hosts192.168.43.69 es-node1
192.168.43.133 es-node2
192.168.43.225 es-node3之后再切换回es用户
su es配置修改
注释掉单节点
#注释掉单节点
#discovery.type: single-node集群配置 注意数据目录日志目录单独指定要和之前单机启动区别开 配置说明
cluster.name集群名称指定一个避免因未指定启动一个es就会加入到集群中配置好其他属性然后集群同名才可加入到这个集群中。node.name节点名字集群内唯一node.master是否有资格为master节点默认为true表示这个节点有资格成为主节点master node。主节点主要负责集群级别的操作如创建或删除索引、跟踪集群中哪些节点是活动的等。node.data是否为data数据节点默认为true表示这个节点也是一个数据节点data node它会存储索引数据并处理搜索请求。http.cors.enabled: true允许跨源资源共享CORS。当你想从另一个域的网页或应用访问这个Elasticsearch节点时CORS允许这样的请求http.cors.allow-origin: “*” : 允许来自任何域的CORS请求。但出于安全考虑通常不建议在生产环境中使用*而是指定特定的域名。path.data定义了Elasticsearch用于存储索引数据的路径。path.logs定义了Elasticsearch存储其日志文件的路径。network.host: 0.0.0.0告诉Elasticsearch监听所有可用的网络接口。但在生产环境中为了安全起见通常会指定特定的IP地址或范围。discovery.seed_hosts定义了Elasticsearch在启动时用于发现其他集群成员的初始主机列表。可以通过es-node1、es-node2和es-node3这些主机域名或IP地址来访问其他节点。(上面配置了域名与机器ip的映射关系因此可以使用机器域名)cluster.initial_master_nodes在Elasticsearch第一次启动时需要指定哪些节点应该成为主节点指定node.name指定的节点名字列表。
配置节点1
vim config/elasticsearch.yml
# node-1
cluster.name: es-clusternode.name: node-1
node.master: true
node.data: truehttp.cors.enabled: true
http.cors.allow-origin: *path.data: /home/es/elasticsearch-7.17.3/data-cluster
path.logs: /home/es/elasticsearch-7.17.3/logs-clusternetwork.host: 0.0.0.0discovery.seed_hosts: [es-node1,es-node2,es-node3]
cluster.initial_master_nodes: [node-1, node-2,node-3]
配置节点2
vim config/elasticsearch.yml
# node-2
cluster.name: es-clusternode.name: node-2
node.master: true
node.data: truehttp.cors.enabled: true
http.cors.allow-origin: *path.data: /home/es/elasticsearch-7.17.3/data-cluster
path.logs: /home/es/elasticsearch-7.17.3/logs-clusternetwork.host: 0.0.0.0discovery.seed_hosts: [es-node1,es-node2,es-node3]
cluster.initial_master_nodes: [node-1, node-2,node-3]配置节点3
vim config/elasticsearch.yml
# node-3
cluster.name: es-clusternode.name: node-3
node.master: true
node.data: truehttp.cors.enabled: true
http.cors.allow-origin: *path.data: /home/es/elasticsearch-7.17.3/data-clusterpath.logs: /home/es/elasticsearch-7.17.3/logs-clusternetwork.host: 0.0.0.0discovery.seed_hosts: [es-node1,es-node2,es-node3]
cluster.initial_master_nodes: [node-1, node-2,node-3]分别启动
bin/elasticsearch -d验证集群搭建成功 Kibana配置修改
集群搭建成功更改kibana的配置中的ES instances地址
elasticsearch.hosts: [http://192.168.43.6:9200, http://192.168.43.133:9200, http://192.168.43.225:9200]重启Kibana
查看进程
netstat -tunlp|grep 5601[espolaris kibana-7.17.3-linux-x86_64]$ netstat -tunlp|grep 5601
(Not all processes could be identified, non-owned process infowill not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:5601 0.0.0.0:* LISTEN 7379/bin/../node/bi 停止Kibana服务
kill 7379启动Kibana
nohup bin/kibana 验证 ES开启认证
参考Elasticsearch开启认证|为ES设置账号密码|ES账号密码设置|ES单机开启认证|ES集群开启认证