Elasticsearch是一个分布式搜索服务,提供Restful API,底层基于Lucene,采用多shard的方式保证数据安全,并且提供自动resharding的功能,github等大型的站点也都采用Elasticsearch作为其搜索服务。废话在此就不多赘述了,下面记录下CentOS7下Elasticsearch集群部署过程:
创新互联公司是一家以网站设计建设,重庆小程序开发、网站开发设计,网络软件产品开发,企业互联网推广服务为主的民营科技公司。主要业务涵盖:为客户提供网站策划、网站设计、网站开发、申请域名、网站优化排名、买友情链接等服务领域。凭借建站老客户口碑做市场,建设网站时,根据市场搜索规律和搜索引擎的排名收录规律编程,全力为建站客户设计制作排名好的网站,深受老客户认可和赞誉。1)基础信息
elk-es01.kevin.cn 192.168.10.44
elk-es02.kevin.cn 192.168.10.45
elk-es03.kevin.cn 192.168.10.46
下面操作在三个节点机上都要操作
[root@elk-es01 ~]# systemctl stop firewalld.service
[root@elk-es01 ~]# systemctl disable firewalld.service
[root@elk-es01 ~]# firewall-cmd --state
not running
[root@elk-es01 ~]# setenforce 0
setenforce: SELinux is disabled
[root@elk-es01 ~]# getenforce
Disabled
[root@elk-es01 ~]# vim /etc/sysconfig/selinux
......
SELINUX=disabled
[root@elk-es01 ~]# cat /etc/hosts
.....
192.168.10.44 elk-es01.kevin.cn
192.168.10.45 elk-es02.kevin.cn
192.168.10.46 elk-es03.kevin.cn
[root@elk-es01 ~]# /usr/sbin/ntpdate ntp1.aliyun.com
2)安装java8环境,官方建议5.4版本最至少Java 8或以上(三个节点机都要操作)
解压文件到/opt/
jdk-8u121-linux-x64.tar.gz
配置环境变量
#vim /etc/profile
#**************DMP JAVA ENV********************
export JAVA_HOME=/opt/jdk1.8.0_121
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
3)安装elasticsearch(三个节点机都要操作)
创建用户,用户组
#groupadd es
#useradd es –g es –p 123456
#chown –R es:es /opt/els-node1
#chown –R es:es /opt/els-node2
#chown –R es:es /opt/els-node3
创建数据目录和日志目录
#mkdir -p /opt/els-data/{data1,log1}
#mkdir -p /opt/els-data/{data2,log2}
#mkdir -p /opt/els-data/{data3,log3}
#chown -R es:es /opt/els-node*
优化系统
1,
# cd /etc [root@localhost etc]
# cp sysctl.conf sysctl.conf.bak
# vim sysctl.conf
# elasticsearch config start
vm.max_map_count=262144
# elasticsearch config end
#sysctl -p
2,
# cd /etc/security/
cp limits.conf limits.conf.bak
然后编辑limits.conf增加如下配置:
# elasticsearch config start
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
# elasticsearch config end
下载安装包
#wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.0.zip
配置els
Node-1
node.name: node-1
path.data: /opt/els-data/data1
path.logs: /opt/els-data/logs1
network.host: 192.168.15.143
transport.tcp.port: 9301
http.port: 9201
discovery.zen.ping.unicast.hosts: ["192.168.15.143:9301", "192.168.15.143:9302", "192.168.15.143:9303"]
http.cors.enabled: true
http.cors.allow-origin: "*"
Node-2
node.name: node-2
path.data: /opt/els-data/data2
path.logs: /opt/els-data/logs2
network.host: 192.168.15.143
transport.tcp.port: 9302
http.port: 9202
discovery.zen.ping.unicast.hosts: ["192.168.15.143:9301", "192.168.15.143:9302", "192.168.15.143:9303"]
http.cors.enabled: true
http.cors.allow-origin: "*"
Node-3
node.name: node-3
path.data: /opt/els-data/data3
path.logs: /opt/els-data/logs3
network.host: 192.168.15.143
transport.tcp.port: 9303
http.port: 9203
discovery.zen.ping.unicast.hosts: ["192.168.15.143:9301", "192.168.15.143:9302", "192.168.15.143:9303"]
http.cors.enabled: true
http.cors.allow-origin: "*"
启动服务
./bin/elasticsearch -d
测试:
curl "192.168.15.143:9203"
{
"name" : "node-3",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "5HJLIt_5Ra26HHs4vNRQuA",
"version" : {
"number" : "6.3.0",
"build_flavor" : "default",
"build_type" : "zip",
"build_hash" : "424e937",
"build_date" : "2018-06-11T23:38:03.357887Z",
"build_snapshot" : false,
"lucene_version" : "7.3.1",
"minimum_wire_compatibility_version" : "5.6.0",
"minimum_index_compatibility_version" : "5.0.0"
},
"tagline" : "You Know, for Search"
}
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。