zoukankan      html  css  js  c++  java
  • Elasticsearch 集群部署

    本文部署环境

    $ cat /etc/redhat-release
    CentOS Linux release 7.6.1810 (Core)

    部署前系统优化

    $ tail -4 /etc/security/limits.conf
    root soft nofile 65535
    root hard nofile 65535
    * soft nofile 65535
    * hard nofile 65535
    
    $ tail -1 /etc/sysctl.conf     # 添加内存参数,否则会报错
    vm.max_map_count=327650           # 定义了一个进程能拥有的最多的内存区域,Centos7.6默认为65530
    $ sysctl -p

    配置hosts

    $ tail -3 /etc/hosts
    192.168.1.11   mall-elasticsearch-1192.168.1.12   mall-elasticsearch-2192.168.1.13   mall-elasticsearch-3

    部署elasticsearch-7.4.1

    $ tar xf elasticsearch-7.4.1-linux-x86_64.tar.gz
    $ ln -s elasticsearch-7.4.1 elasticsearch
    $ cd elasticsearch
    $ grep ^[^#] config/elasticsearch.yml
    cluster.name: mall-elasticsearch
    node.name: mall-elasticsearch-1      #修改为当前主机的主机名,见上一步hosts配置
    network.host: 192.168.1.11       #修改为当前主机的ip地址
    http.port: 9200
    discovery.seed_hosts: ["mall-elasticsearch-1", "mall-elasticsearch-2", "mall-elasticsearch-3"]
    cluster.initial_master_nodes: ["mall-elasticsearch-1", "mall-elasticsearch-2", "mall-elasticsearch-3"]
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    xpack.sql.enabled: false
    $ vim config/jvm.options ...... -Xms4g -Xmx4g ......

    启动

    $ nohup bin/elasticsearch &

    验证

    $ curl mall-elasticsearch-1:9200
    {
      "name" : "mall-elasticsearch-1",
      "cluster_name" : "mall-elasticsearch",
      "cluster_uuid" : "Fg32p9bsRAq7HjIxcSF6Dg",
      "version" : {
        "number" : "7.4.1",
        "build_flavor" : "default",
        "build_type" : "tar",
        "build_hash" : "fc0eeb6e2c25915d63d871d344e3d0b45ea0ea1e",
        "build_date" : "2019-10-22T17:16:35.176724Z",
        "build_snapshot" : false,
        "lucene_version" : "8.2.0",
        "minimum_wire_compatibility_version" : "6.8.0",
        "minimum_index_compatibility_version" : "6.0.0-beta1"
      },
      "tagline" : "You Know, for Search"
    }

    为了方便维护,编写脚本如下:

    $ cat restart.sh
    #!/bin/bash
    cd /data/server/elasticsearch
    ./stop.sh
    sleep 1
    ./start.sh
    
    $ cat start.sh
    #!/bin/bash
    ExcuteUser='skuser'
    LoginUser=`whoami`
    if [ $LoginUser != $ExcuteUser ];then
    echo "Please change to skuser to execute this scripts!"
    exit 0
    fi
    cd /data/server/elasticsearch
    nohup bin/elasticsearch &
    
    $cat stop.sh
    #!/bin/bash
    KEYWORD="elasticsearch"
    PROCESS_COUNT=`ps -aux |grep java |grep $KEYWORD |wc -l`
    PID=`ps -aux |grep java |grep $KEYWORD |awk '{print $2}'`
    if [ $PROCESS_COUNT -ne 0 ];then
    kill -9 $PID
    echo "killed Process $PID"
    else
    echo "This process is already killed!"
    fi
  • 相关阅读:
    SQLServer 日期函数大全 SQLServer 时间函数大全
    matlab练习程序(最小二乘多项式拟合)
    常用的docker命令
    【Python】keras使用LSTM拟合曲线
    【Python】keras使用Lenet5识别mnist
    【Python】pydot安装失败解决方法
    【Python】keras卷积神经网络识别mnist
    【Python】keras神经网络识别mnist
    matlab练习程序(神经网络识别mnist手写数据集)
    判断exe是64位还是32位
  • 原文地址:https://www.cnblogs.com/juchangfei/p/12787207.html
Copyright © 2011-2022 走看看