CENTOS 下elasticsearch集群安装配置

elasticsearch安装:

参考文章:http://www.ruanyifeng.com/blog/2017/08/elasticsearch.html

LINUX环境

1、先确保安装JDK 1.8
2、下载 elasticsearch-6.1.2.tar.gz 安装包

tar -zxvf ./elasticsearch-6.1.2.tar.gz

3、sudo sysctl -w vm.max_map_count=262144

4、通过root用户,修改 /etc/security/limits.conf

  * soft nofile 65536
  * hard nofile 65536

5、重新登录

6、禁用(centos):
在elasticsearch.yml中配置bootstrap.system_call_filter为false,注意要在Memory下面:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

7、集群部署
(master,slave1,slave2,slave3,slave4)
将ES拷贝到每台机器上,ssh到每台机器上,先用ROOT用户执行:
sudo sysctl -w vm.max_map_count=262144
vi /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536

编辑ES的配置文件:
vi ./config/elasticsearch.yml
设置其中的配置:
cluster.name: kdap ##每台机器都一样
node.name: node-1 ##各机器不一样 可以是 node-1 ~node-5
network.host: 10.201.60.62 ##各机器不一样 62 63 64 65 67
discovery.zen.ping.unicast.hosts: [“master”, “slave1”,“slave2”,“slave3”,“slave4”] ##各机器 相同
bootstrap.memory_lock: false ##各机器 相同
bootstrap.system_call_filter: false ##各机器 相同

8、分词器安装
下载 elasticsearch-analysis-ik-6.1.2.zip
cd /usr/local/szkingdom-kap-cluster-runtime/elasticsearch-6.1.2
unzip elasticsearch-analysis-ik-6.1.2.zip
cp ./elasticsearch ./plugins/ -R
cd ./plugins/
mv elasticsearch analysis-ik
scp -r ./analysis-ik/ hadoop@slave1:/usr/local/szkingdom-kap-cluster-runtime/elasticsearch-6.1.2/plugins/
scp -r ./analysis-ik/ hadoop@slave2:/usr/local/szkingdom-kap-cluster-runtime/elasticsearch-6.1.2/plugins/
scp -r ./analysis-ik/ hadoop@slave3:/usr/local/szkingdom-kap-cluster-runtime/elasticsearch-6.1.2/plugins/
scp -r ./analysis-ik/ hadoop@slave4:/usr/local/szkingdom-kap-cluster-runtime/elasticsearch-6.1.2/plugins/

9、运行

每台机器上执行
setsid ./bin/elasticsearch

10、查看版本

  curl master:9200

11、创建INDEX

 curl -X PUT 'master:9200/accounts' -H 'Content-Type: application/json'  -d '
 {                                                                                     
  "mappings": {                                                                        
    "person": {                                                                        
      "properties": {                                                                  
        "user": {                                                                      
          "type": "text",                                                              
          "analyzer": "ik_max_word",                                                   
          "search_analyzer": "ik_max_word"                                             
        },                                                                             
        "title": {                                                                     
          "type": "text",                                                              
          "analyzer": "ik_max_word",                                                   
          "search_analyzer": "ik_max_word"                                             
        },                                                                             
        "desc": {                                                                      
          "type": "text",                                                              
          "analyzer": "ik_max_word",                                                   
          "search_analyzer": "ik_max_word"                                             
        }                                                                              
      }                                                                                
    }                                                                                  
   }                                                                                   
 }'

12、插入数据

curl -X PUT 'master:9200/accounts/person/1'  -H 'Content-Type: application/json'  -d '
{
  "user": "张三",
  "title": "工程师",
  "desc": "数据库管理"
}' 
curl -X POST 'master:9200/accounts/person/2'  -H 'Content-Type: application/json'  -d '
{
  "user": "李四",
  "title": "工程师",
  "desc": "系统管理"
}'    

curl -X POST 'master:9200/accounts/person'  -H 'Content-Type: application/json'  -d '
{
  "user": "李四",
  "title": "工程师",
  "desc": "系统管理"
}'

13、查看数据

curl -X GET 'http://master:9200/_cat/indices?v'

curl -X GET ‘http://master:9200/accounts/person/1/
curl -X GET ‘http://master:9200/accounts/person/1/_source

curl 'master:9200/accounts/person/1?pretty=true'

curl 'master:9200/accounts/person/_search'

11、条件查询

curl 'master:9200/accounts/person/_search'  -H 'Content-Type: application/json'  -d '
{
  "query" : { "match" : { "desc" : "数据库" }}
}'

对ES的关键理解

1 在ES中索引包含两层意思:一种是名词:类似传统数据库的库,一种是动词:将数据存储的行为。

2 下面是常用的将ES一些概念和数据库进行对比图:

Relational DB -> Databases -> Tables -> Rows -> Columns

Elasticsearch -> Indices -> Types -> Documents -> Fields

3 ES中可以有多个索引(index)(数据库),每个索引可以包含多个类型(type)(表),每个类型可以包含多个文档(document)行,然后每个文档可以包含多个字段(Field)(列)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值