Elastic Search 环境搭建

2020-01-29  本文已影响0人  老骥码字

一,安装环境

1,服务器

尽可能选用Centos7(以下说明针对Centos7,可以通过 cat /etc/redhat-release查看系统版本)

[es@dev-01 ~]$ cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)

2,修改服务系统设置,请使用root用户操作

a,设置内核参数
[root@dev-01 ~]# vim /etc/sysctl.conf

添加以下内容

fs.file-max=65536
vm.max_map_count=262144

检查是否生效

[root@dev-01 ~]# sysctl -p #刷新下配置
[root@dev-01 ~]# sysctl -a #查看是否生效,如果不成功的(启动es还是失败,不是所有人都碰得到,好像是在7.6碰到了)请尝试执行以下命令。:
 
rm -f /sbin/modprobe 
ln -s /bin/true /sbin/modprobe
rm -f /sbin/sysctl 
ln -s /bin/true /sbin/sysctl   
b,设置资源参数,解除资源访问限制
[root@dev-01 ~]# vi /etc/security/limits.conf
# 添加一下内容,* 表示针对所有用户享用该配置:
* soft nofile 65536
* hard nofile 131072
* soft nproc  2048
* hard nproc  4096
c,修改进程数
[root@dev-01 ~]# vi /etc/security/limits.d/20-nproc.conf
# 配置完后,需要重新打开新的窗口。
* soft    nproc     4096

3,JDK:1.8及以上,本测试采用jdk1.8

[es@dev-01 ~]$ java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)

如果系统默认安装了openjdk,请使用root用户卸载后安装oracle jdk。

rpm -qa|grep java
rpm -e –nodeps *

二,ElasticSearch安装(本测试采用版本6.6.0)

1,新建es用户

ElasticSearch5之后,不允许使用root用户启动,除非修改源码。因此我们需要新建用户。

[root@dev-01 ~]# useradd es -m 
[root@dev-01 ~]# su es
[es@dev-01 root]$ cd
[es@dev-01 ~]$

2,下载并解压

地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.0.tar.gz

[es@dev-01 ~]$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.0.tar.gz
[es@dev-01 ~]$ tar -zxvf elasticsearch-6.6.0.tar.gz

3,修改es配置文件

修改配置文件 elasticsearch-6.6.0/config/elasticsearch.yml

# 配置es的集群名称, es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。
cluster.name: bi-cluster
# 节点名称
node.name: node-master
# 存储数据的目录
path.data: /home/elasticsearch/data
# 存储日志的目录
path.logs: /home/elasticsearch/logs
# 设置绑定的ip地址还有其它节点和该节点交互的ip地址
network.host: 0.0.0.0
# 指定http端口,你使用head、kopf等相关插件使用的端口
http.port: 9200
# 设置节点间交互的tcp端口,默认是9300
transport.tcp.port: 9300
#设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点。
discovery.zen.ping.unicast.hosts: ["10.108.4.203:9300", "10.108.4.204:9300", "10.108.4.205:9300"]   
#如果没有这种设置,遭受网络故障的集群就有可能将集群分成两个独立的集群 - 分裂的大脑 - 这将导致数据丢失
discovery.zen.minimum_master_nodes: 3
http.cors.enabled: true        #es5.x版本以上需要,head访问
http.cors.allow-origin: "*"
bootstrap.memory_lock: false    #某些系统需要 是因为centos6.x操作系统不支持SecComp,而elasticsearch 5.5.2默认   bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。
bootstrap.system_call_filter: false

4,启动

[es@dev-01 elasticsearch-6.6.0]$ ./bin/elasticsearch -d 

-d表示后台启动。启动后,可以打开浏览器,访问http://ip:9200/。如果返回一连串json说明,则表示启动成功。

{
    "name": "node-01",
    "cluster_name": "m-es",
    "cluster_uuid": "5uBN2C7hSuOqw2oQ7lEAJw",
    "version": {
        "number": "6.6.0",
        "build_flavor": "default",
        "build_type": "tar",
        "build_hash": "a9861f4",
        "build_date": "2019-01-24T11:27:09.439740Z",
        "build_snapshot": false,
        "lucene_version": "7.6.0",
        "minimum_wire_compatibility_version": "5.6.0",
        "minimum_index_compatibility_version": "5.0.0"
    },
    "tagline": "You Know, for Search"
}

5,安装中文分词

默认不支持中文分词,因此需要安装中文分词,安装中文分词的时候,需要注意采用elasticsearch对应的版本号。有两种方式,一种直接调用命令,在线安装。

[es@dev-01 elasticsearch-6.6.0]$ ./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.6.0/elasticsearch-analysis-ik-6.6.0.zip

但是经常因为网络不好,安装失败。因此,还可以先把文件下载好,下载地址参考上面的命令,下载好后解压安装。

在elasticsearch目录下的plugins文件夹中新建文件夹 ik,然后将解压内容放入即可。

[es@dev-01 plugins]$ mkdir ik
[es@dev-01 ik]$ cp ~/elasticsearch-analysis-ik-6.6.0.zip ./
[es@dev-01 ik]$ unzip elasticsearch-analysis-ik-6.6.0.zip

然后重启elasticsearch即可。

三,安装kibana

Kibana 是为 Elasticsearch设计的开源分析和可视化平台。可以使用 Kibana 来搜索,查看存储在 Elasticsearch 索引中的数据并与之交互。可以很容易实现高级的数据分析和可视化,以图标的形式展现出来。

1,下载并解压

[es@dev-01 ~]$ wget https://mirrors.huaweicloud.com/kibana/6.6.0/kibana-6.6.0-linux-x86_64.tar.gz
[es@dev-01 ~]$ tar -zxvf kibana-6.6.0-linux-x86_64.tar.gz

2,修改config/kibana.yml

# 访问端口
server.port: 5601
# 访问来源ip
server.host: "0.0.0.0"
# elasticsearch 地址
elasticsearch.hosts: ["http://127.0.0.1:19200"]

3,启动

[es@dev-01 bin]$ nohup ./kibana &

nohup &表示后台启动。

四,安装head

由于head插件本质上还是一个nodejs的工程,因此需要安装node,使用npm来安装依赖的包。

1,安装node(使用root用户安装,如已安装,可以略过)

地址:https://nodejs.org/download/release/v8.13.0/node-v8.13.0-linux-x64.tar.gz

下载后解压,并简历软连接(或者修改环境变量,加入到PATH中)

[root@dev-01 ~]# gunzip  node-v8.13.0-linux-x64.tar.xz
[root@dev-01 ~]# tar -xf node-v8.13.0-linux-x64.tar
[root@dev-01 ~]# mv node-v8.13.0-linux-x64 /usr/local/share/
[root@dev-01 ~]# ln -s /usr/local/share/node-v8.13.0-linux-x64/bin/node /usr/bin/node
[root@dev-01 ~]# ln -s /usr/local/share/node-v8.13.0-linux-x64/bin/npm /usr/bin/npm

完成后,检查一下

[root@dev-01 ~]# node -v
v8.13.0
[root@dev-01 ~]# npm -v
6.4.1

2,安装head插件

a,下载head插件
[es@dev-01 ~]$ git clone git://github.com/mobz/elasticsearch-head.git

如果提示git找不到,则先使用root用户,安装git

[root@dev-01 ~]# yum install -y git
b,启动head

启动后,访问:http://ip:9100/ 即可。

[es@dev-01 ~]$ npm config set registry https://registry.npm.taobao.org
[es@dev-01 ~]$ npm install
[es@dev-01 ~]$ npm run start 
上一篇下一篇

猜你喜欢

热点阅读