上一篇[002、win10环境-Elasticsearch、Kibana安装]
下一篇[未完待续]
GitHub:https://github.com/jijicai/Elasticsearch/tree/master/book
Linux环境(CentOS7) JDK8 安装
下载页面:http://openjdk.java.net/install/执行命令,即可开始安装:[root@localhost ~]# yum install java-1.8.0-openjdk
CentOS7环境-Elasticsearch集群、Kibana安装
在CentOS7服务器中,文本使用账号:elsearch,去运行es服务、Kibana服务。
规划
主机名称IPnode.name(es)集群名称es-138192.168.110.138es_server_001jijicai_clusteres-139192.168.110.139es_server_002jijicai_clusteres-140192.168.110.140es_server_003jijicai_clusterKibana:单节点,部署在 es-140机器上。先部署es-138机器。
Elasticsearch下载
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.8.0.tar.gz若上面的方式下载比较慢,推荐使用迅雷下载,然后通过工具(WinSCP)传到Linux服务器(CentOS7)。把文件elasticsearch-6.8.0.tar.gz放到目录:/home/elsearch/softwares
Elasticsearch配置
解压:tar -xzf elasticsearch-6.8.0.tar.gz进入es主目录:cd elasticsearch-6.8.0/OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N
不能使用root账号启动 es服务,否则会报如下错误:
[2019-07-12T05:29:52,163][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [unknown] uncaught exception in thread [main]org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:163) ~[elasticsearch-6.8.0.jar:6.8.0] at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-6.8.0.jar:6.8.0] at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.8.0.jar:6.8.0] at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.8.0.jar:6.8.0] at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.8.0.jar:6.8.0] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:116) ~[elasticsearch-6.8.0.jar:6.8.0] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:93) ~[elasticsearch-6.8.0.jar:6.8.0]Caused by: java.lang.RuntimeException: can not run elasticsearch as root at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:103) ~[elasticsearch-6.8.0.jar:6.8.0] at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170) ~[elasticsearch-6.8.0.jar:6.8.0] at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:333) ~[elasticsearch-6.8.0.jar:6.8.0] at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-6.8.0.jar:6.8.0]
配置max file descriptors、配置max number of threads
打开文件:vi /etc/security/limits.conf在文件结尾添加:elsearch - nofile 65535 elsearch - nproc 4096退出账号elsearch重新登录即可生效。
配置max virtual memory
打开文件:vi /etc/sysctl.conf在文件结尾添加:vm.max_map_count = 262144执行命令:sysctl -p,即可生效。ulimit -n 65535/etc/security/limits.confulimit -u 4096/etc/security/limits.confsysctl -w vm.max_map_count=262144/etc/sysctl.conf把参数network.host配置为非默认值,切上面的参数没有配置的话,启动时控制台会报如下错误:ERROR: [3] bootstrap checks failed[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535][2]: max number of threads [3795] for user [hongka] is too low, increase to at least [4096][3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]参考:https://www.elastic.co/guide/en/elasticsearch/reference/6.8/file-descriptors.html参考:https://www.elastic.co/guide/en/elasticsearch/reference/6.8/max-number-of-threads.html参考:https://www.elastic.co/guide/en/elasticsearch/reference/6.8/vm-max-map-count.html
配置防火墙
执行命令:firewall-cmd --state(或: systemctl status firewalld.service),查看防火墙的状态。若防火墙正在运行,请关闭它,或者设置9200端口可以穿过防火墙。这样局域网内的其他机器才能访问该es服务。关闭服务:systemctl stop firewalld.service在开机时禁用服务:systemctl disable firewalld.service
配置文件config/elasticsearch.yml
在文件结尾添加:cluster.name: jijicai_clusternode.name: es_server_001network.host: _site_#network.bind_host: _site_#network.publish_host: _site_#http.port: 9200discovery.zen.ping.unicast.hosts: ["192.168.110.138