Elasticsearch 单机多节点
下载Elasticsearch安装包(本文实验环境版本为5.5.1)
将安装包复制多份,然后修改Elasticsearch目录中
config
下的elasticsearch.yml
文件下列属性值:
cluster.name: pekxxoo
node.name: node-2
node.max_local_storage_nodes: 2
http.port: 9201
cluster.name: 保证集群名称一致,再启动时相同集群名称的节点会自动加入到集群中
node.name: 节点名称,自己定义,只要相互不冲突就可以;
node.max_local_storage_nodes:最大节点个数,按照你准备部署的个数设置;
http.port: 端口号,只要不冲突就行;
进入Elasticsearch安装包
\bin
目录下,执行下列命令将其安装为本机服务:elasticsearch-service.bat install
这里需要注意,因为我们是进行单机多节点安装,因此需要修改elasticsearch-service.bat
文件中的服务名称,避免本机服务名冲突,我的修改如下:
if errorlevel 1 goto x86
set EXECUTABLE=%ES_HOME%\bin\elasticsearch-service-x64.exe
set SERVICE_ID=elasticsearch-service-x64-2
set ARCH=64-bit
goto checkExe
:x86
set EXECUTABLE=%ES_HOME%\bin\elasticsearch-service-x86.exe
set SERVICE_ID=elasticsearch-service-x86-2
set ARCH=32-bit
只需修改上文中set SERVICE_ID
等号后的值即可;
然后在
\bin
目录下运行elasticsearch-service.bat manager
命令,打开服务管理界面,启动服务;
cat命令
当节点都运行起来后,我们可以使用如下命令查询相关信息:curl host:port/_cat
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 493 100 493 0 0 32866 0 --:--:-- --:--:-- --:--:-- 481k=^.^=
/_cat/allocation
/_cat/shards
/_cat/shards/{index}
/_cat/master
/_cat/nodes
/_cat/tasks
/_cat/indices
/_cat/indices/{index}
/_cat/segments
/_cat/segments/{index}
/_cat/count
/_cat/count/{index}
/_cat/recovery
/_cat/recovery/{index}
/_cat/health
/_cat/pending_tasks
/_cat/aliases
/_cat/aliases/{alias}
/_cat/thread_pool
/_cat/thread_pool/{thread_pools}
/_cat/plugins
/_cat/fielddata
/_cat/fielddata/{fields}
/_cat/nodeattrs
/_cat/repositories
/_cat/snapshots/{repository}
/_cat/templates
以上列出了_cat
命令可以查询的相关信息
headers
headers
通过这个参数可以指定输出的字段curl host:port/_cat/master?h=host,ip,node
Head插件
ES集群管理工具,它是完全油html5编写的独立网页程序,可视化管理集群状态
https://github.com/mobz/elast...
命令行安装:在
Elasticsearch
的bin
目录下执行:plugin install mobz/elasticsearch-head
(5.x以上版本不支持站点插件安装)
5.x安装Head插件
Running with built in server
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
npm run start
open http://localhost:9100/
没有安装npm
的这里不做详细描述,可以参考这里
5.x版本的elasticsearch
可能会出现访问http://localhost:9100/后不能连接集群的状况,需要在配置文件elasticsearch.yml
中加入以下内容:
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization
现在就可以成功使用elasticsearch-head
方便的管理集群: