es集群安装
Elasticsearch 5.6.9部署说明 (部署集群)
1 安装jdk1.8(5.6.9依赖jdk1.8)
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2 下载好后,将jdk1.8传至服务器 /home/coolgua/soft
3 安装jdk
rpm -ivh jdk-8u191-linux-x64.rpm
4 验证是否安装成功
Java -version
5 部署elasticsearch
1 首先创建elastic用户(用户名随便起),并切换至elastic用户
useradd elastic
Su elastic
2 下载elasticsearch的安装包至elastic用户目录下
cd /home/elastic
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.9.tar.gz
3 解压安装包
tar zcvf elasticsearch-5.6.9.tar.gz
4 解压后,将elasticsearch-5.6.9改名为elasticsearch-5.6.9_node1
5 将elasticsearch-5.6.9_node1拷贝两份出来(因为要在一台上面模拟es集群)
6 编辑es的配置文件
cd /home/elastic/elasticsearch-5.6.9_node1/config
vim elasticsearch.yml
path.data: /home/es/elasticsearch-5.6.9_node1/data/elasticsearch (数据目录存放位置)
cluster.name: my-application (集群名字)
node.name: node-1 (此节点名字,注意后面两个节点名字要不一样)
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
network.host: 192.168.100.222 (此节点IP地址)
http.port: 9200 (设置对外服务http端口,各几点应该不一样)
transport.tcp.port: 9300 (设置节点间交互的tcp端口,各节点应该不一样)
discovery.zen.ping.unicast.hosts: ["192.168.100.222:9300", "192.168.100.222:9301", "192.168.100.222:9302"] (设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点。)
discovery.zen.ping.timeout: 3s (设置集群中自动发现其它节点时ping连接超时时间,默认为3秒,对于比较差的网络环境可以高点的值来防止自动发现时出错)
http.cors.enabled: true (是否支持跨域,默认为false)
http.cors.allow-origin: "*" (当设置允许跨域,默认为*,表示支持所有域名)
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
action.auto_create_index: .security,.security-6,.monitoring*,.watches,.triggered_watches,.watcher-history*,app-a-*,app-b-*,.ml*
7 修改 /etc/security/limits.conf,要不然启动es异常
vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
8 修改 /etc/sysctl.conf 添加下面一行
Vim /etc/sysctl.conf
vm.max_map_count=262144
9 将各节点的es配置文件都需要修改一下,然后重启机器
10 机器重启后,启动es节点
su elastic
cd /home/elastic/elasticsearch-5.6.9_node1/bin
./elasticsearch -d (其他节点也用同样的方法启动)
11 浏览器访问 ip:port 测试
Elasticsearch部署head插件
1 首先安装一些环境
curl -sL https://rpm.nodesource.com/setup_8.x | bash -
sudo yum install gcc-c++ make
curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
yum -y install yarn nodejs git
npm install -g grunt-cli
cd /home/elastic #在elasticsearch的同级目录下
#clone head插件
git clone git://github.com/mobz/elasticsearch-head.git
2 修改Gruntfile.js 文件
cd elasticsearch-head/
Vim Gruntfile.js
#修改下面这一段:
connect: {
server: {
options: {
port: 9100,
hostname: '*', #添加hostname这一行
base: '.',
keepalive: true
}
}
}
3 修改app.js
cd elasticsearch-head/_site
vim app.js
#修改下面这一段,就是修改ip:port,
#如果使用的是通过公网ip来访问,此处就写公网ip,否则就写局域网ip,port是elasticsearch配置文件的http.port
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://ip:port";
4 install grunt
npm install grunt --save-dev
npm install
5 启动head服务
nohup grunt server &
6 打开浏览器,访问http://ip:9100