一、环境准备
1、服务器准备
ip hostname 172.16.23.171 app-server1 172.16.23.172 app-server2 172.16.23.173 app-server3
在三台服务器分别执行以下命令(服务器IP地址和域名可根据实际情况修改)
(1)配置hostname
172.16.23.171服务器执行
hostnamectl set-hostname app-server1
172.16.23.172服务器执行
hostnamectl set-hostname appserver2
172.16.23.173服务器执行
hostnamectl set-hostname app-server3
(2)添加hosts解析(域名和ip根据实际情况修改)
172.16.23.171服务器执行
vim /etc/hosts 172.16.23.171 app-server1 172.16.23.172 app-server2 172.16.23.173 app-server3
172.16.23.172服务器执行
vim /etc/hosts 172.16.23.171 app-server1 172.16.23.172 app-server2 172.16.23.173 app-server3
172.16.23.173服务器执行
vim /etc/hosts 192.168.59.166 app-server1 192.168.59.167 app-server2 192.168.59.168 app-server3
(3)修改内存设置(三台服务器都执行)
vim /etc/sysctl.conf vm.max_map_count=655360 载入sysctl配置文件 sysctl -p
(4)修改文件句柄数(三台服务器都执行,重启服务器生效)
vim /etc/security/limits.conf #在最后面追加下面内容 root hard nofile 65536 root soft nofile 65536
2、java环境准备
(1)卸载系统自带jdk
rpm -e --nodeps `rpm -qa | grep jdk`
(2)下载jdk,上传至服务器
jdk-8u161-linux-x64.rpm https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html 需要注册oracle账号下载jdk-8u161-linux-x64.rpm
(3)在服务器jdk上传目录执行以下命令安装jdk
rpm -ivh jdk-8u161-linux-x64.rpm
(4)检测java环境
二、elasticsearch安装
1、elasticsearch离线包准备(三台服务器都需要操作)
(1)下载elasticsearch-7.2.1-x86_64.rpm,上传至服务器
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.2.1-x86_64.rpm
(2)在elasticsearch-7.2.1-x86_64.rpm上传路径执行以下命令安装
rpm -ivh elasticsearch-7.2.1-x86_64.rpm
2、修改配置文件
每个节点根据实际情况修改配置文件
(1)配置文件在/etc/elasticsearch/elasticsearch.yml
(2)elasticsearch.yml配置项说明
集群名称cluster.name:
节点名称(即主机名)node.name:
是否设置为主节点(master节点,值为true或者false)node.master:
该节点是否存储索引(数据默认为true) node.data:
数据目录path.data: /data/es/elasticsearch
日志目录path.logs: /data/es/log/elasticsearch
设置访问地址network.host: 0.0.0.0
客户端访问接口http.port: 9200
集群节点间通讯接口transport.tcp.port: 9300
用于启动当前节点时,发现其他节点的初始列表discovery.seed_hosts: []
初始的候选 master 节点列表:cluster.initial_master_nodes: [“主 机名1”,”主机名1”]
注意:该处的主机名1、主机名2、、、,要参考该节点是否可选举为master 节点即该节点是否可成为主节点(node.master: true)
允许跨域访问:
http.cors.enabled: true
http.cors.allow-origin: "*"
(3)各节点配置文件详情
172.16.23.171
172.16.23.172
172.16.23.173
(4)修改jvm.options
vim /etc/elasticsearch/jvm.options
根据实际情况修改每个而是节点
(5)创建es数据、日志目录(每个es节点都执行)
创建数据目录:
mkdir /data/es/elasticsearch
创建日志目录:
mkdir /data/es/log/elasticsearch
(6)修改目录权限(每个es节点都执行)
cd /data chown -R elasticsearch:elasticsearch es
三、创建es集群用户密码
1、生成节点通信证书
(1)生成证书在elasticsearch.yml配置中node.master:参数为ture节点 执行即172.16.23.172节点执行
(2)通过以下命令生成允许节点安全通信的证书
/usr/share/elasticsearch/bin/elasticsearch-certutil cert -out /etc/elasticsearch/elastic-certificates.p12 -pass ""
证书目录/etc/elasticsearch/
将elastic-certificates.p12配置文件分发到每个节点的 /etc/elasticsearch目录(172.16.23.171、172.16.23.173)并修改文件 所属用户
修改 elastic-certificates.p12所属用户
chown elasticsearch:elasticsearch elastic-certificates.p12
2、x-pack安全认证
(1)配置elasticsearch.yml,每个节点都要修改
在文件的最后添加以下内容:
vim /etc/elasticsearch/elasticsearch.yml xpack.security.enabled: true xpack.security.transport.ssl.enabled: true xpack.security.transport.ssl.verification_mode: certificate xpack.security.transport.ssl.keystore.path: elastic-certificates.p12 xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
3、启动es集群并设置集群密码
(1)启动主节点master节点(172.16.21.172)
systemctl start elasticsearch
设置开机自启
systemctl enable elasticsearch
(2)设置Elasticsearch集群密码
/usr/share/elasticsearch/bin/elasticsearch-setup-passwords auto
密码将随机生成并打印到控制台 按下 y 确认
(3)启动其他节点
systemctl start elasticsearch
设置开机自启
systemctl enable elasticsearch
(4)验证elasticsearch是否安装成功
例如:
四、安装kibana
1、离线包下载
(1)kibana离线包下载并上传服务器(三个节点只需上传至一个节点)
https://artifacts.elastic.co/downloads/kibana/kibana-7.2.1-x86_64.rpm
2、安装kinaba
(1)在离线包上传目录执行以下命令安装kibana
rpm -ivh kibana-7.2.1-x86_64.rpm
3、修改kibana配置
(1)文件配置说明
vim /etc/kibana/kibana.yml
kibana服务默认端口:server.port:5601
指定后端服务器的主机地址server.host:
配置es集群url:elasticsearch.hosts: []
配置es用户密码:
4、启动kibana
(1)启动kibana
systemctl start kibana
开机自启:
systemctl enable kibana
(2)验证kibana是否安装成功