最近正在学习服务器应用平台的搭建的相关知识。有幸从朋友与书上了解到Elastic套件的使用,我花了两天的时间把最新的套件部署在我的服务器上,中间踩了数不清的坑。我把整个过程都记录了下来与各位有需要的朋友们分享一下。
Update
经过测试该安装破解方案已兼容Elasticsearch6.4.2至Kibana6.5.1版本
环境说明
- 操作系统:CentOS 7.5 腾讯云公共镜像
- 最低配置:1核2G(容易崩溃)
- 建议配置:2核4G(比较稳定)
- 推荐配置:越强越好(有钱真好)
- 软件来源:官方yum源,官网网站:https://www.elastic.co/
- 本文中使用的代码方式已在腾讯云服务器实际测试过,安装过程采用yum安装,若用rpm安装应该差异不大。
- 最近一次成功配置服务的时间为:2018-10-22,若因为版本更新导致本文的配置方案有初入或者失效的请见谅。
- 若有配置维护等问题欢迎讨论(其实我也是刚刚入门),联系我:mailto@wolfbolin.com
准备工作
- 首先你可以给自己的主机起一个好听的名字,方便在未来区分不同的主机
hostnamectl set-hostname xxx
- 最好把系统上已有的应用更新到最新版本
yum update -y
- Elasticsearch需要Java 1.8.0_131或更高版本,方便起见可以直接安装OpenJDK,如果有特别需要的朋友也可以选择OracleJDK
yum install java-1.8.0* -y
从现在开始我们就要开始安装Elastic套件了,注意细节、提示与顺序
一、安装Elasticsearch 6.4.2
该过程的官方文档请参考如下链接
安装过程概览:https://www.elastic.co/products
Elasticsearch下载:https://www.elastic.co/downloads/elasticsearch
官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/6.4/index.html
根据文档的指引有以下步骤:
- 导入GPG密钥避免在安装过程中提示密钥信任问题
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
- 在源目录
/etc/yum.repos.d/
中添加源elasticsearch.repo
可直接执行vim /etc/yum.repos.d/elasticsearch.repo
,并在添加完成后保存 - 向
elasticsearch.repo
中写入源信息:
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
- 在源添加完成后更新源数据并应通过yum安装Elasticsearch
yum update -y && yum install elasticsearch -y
二、初步配置Elasticsearch 6.4.2
该过程的官方文档请参考如下链接
配置说明:https://www.elastic.co/guide/en/elasticsearch/reference/current/settings.html
根据文档的提示,我提取出一些关键信息
- 默认设置已经足够入门使用,应该尽量少的修改配置文件
- yum安装的Elasticsearch运行目录:
/usr/share/elasticsearch/
- yum安装的Elasticsearch配置文件目录:
/etc/elasticsearch/
- elasticsearch.yml 文件用于配置Elasticsearch
- jvm.options 文件用于配置Elasticsearch JVM设置
- log4j2.properties 文件用于配置Elasticsearch日志记录
- 你可能想修改:
- 需要修改主机IP为公网IP、内网IP或任意IP:
network.host: 0.0.0.0
- 修改端口:
http.port: 9200
- 数据存放位置:
path.data: /var/lib/elasticsearch
- 日志存放位置:
path.logs: /var/log/elasticsearch
- 修改运行时内存限制:见下文
- 程序自启动:
systemctl enable elasticsearch.service
- 启动主程序:
systemctl start elasticsearch.service
- 需要修改主机IP为公网IP、内网IP或任意IP:
关于修改运行时内存
官方文档重点翻译:
您应该很少需要更改Java虚拟机(JVM)选项。如果需要修改,最可能的更改是设置堆大小。设置JVM选项(包括系统属性和JVM标志)的首选方法是通过jvm.options配置文件修改。
您最好将最小堆大小(Xms)和最大堆大小(Xmx)设置为彼此相等。
Elasticsearch可用的堆越多,它可用于缓存的内存就越多。但是请注意,过多的堆可能会使您的机器陷入长时间的垃圾收集暂停。
设置Xmx为不超过物理RAM的50%,以确保有足够的物理RAM留给内核文件系统缓存。
官方关于JVM的文档: