Centos7.6 DockerインストールElasticsearch-7.6.1クラスタ

6251 ワード

Elasticsearch-7.6.0クラスタインストール
  • インストール手順
  • 一、準備作業
  • 二、取り付け開始
  • 三、発生する可能性のあるエラー設定
  • インストール手順
    一、準備
    1、まず本機がJAVA運行環境を設置したことを確認する
    vi ~/.bash_profile       vi ~/.profile
    
    export JAVA_HOME=/home/dcs_dbsas/yyliu/kafkaAZB/jdk1.8.0_151
    
    export JRE_HOME=${JAVA_HOME}/jre
    
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
    
    export PATH=${JAVA_HOME}/bin:$PATH
    

    上のjdkパスを置き換えるsource~/.profile
    2、本機がすでにdocker環境をインストールしたことを確保して、具体的に私の別のdockerのインストールを見ます
    二、取り付け開始
    1、ミラーを引く
    docker pull elasticsearch:7.6.1
    
    docker pull kibana:7.6.1
    
    docker pull logstash:7.6.1
    
    

    2、新規フォルダ
    #          
    mkdir -p elasticsearch/node-1/config
    mkdir -p elasticsearch/node-2/config
    mkdir -p elasticsearch/node-3/config
    #        
    mkdir -p elasticsearch/node-1/data
    mkdir -p elasticsearch/node-2/data
    mkdir -p elasticsearch/node-3/data
    #          
    mkdir -p elasticsearch/node-1/log
    mkdir -p elasticsearch/node-2/log
    mkdir -p elasticsearch/node-3/log
    #  IK        
    mkdir -p elasticsearch/node-1/plugins
    mkdir -p elasticsearch/node-2/plugins
    mkdir -p elasticsearch/node-3/plugins
    
        
    chmod 744 -R elasticsearch/
    

    自分でフォルダをインストールするパスを任意に調整できることに注意してください.
    3、プロファイルを作成yaml文建を作成し、各configフォルダの下にelasticsearchを作成する.ymlファイルyml
    注意異なるノード間のポートとnodeが異なる場合は変更が必要です
    #    
    cluster.name: my-es
    #        
    node.name: node-1
    #           
    node.master: true
    #      
    node.data: true
    #       
    node.max_local_storage_nodes: 3
    #          (    )
    #node.attr.rack: r1
    #      
    path.data: /usr/share/elasticsearch/data
    #      
    path.logs: /usr/share/elasticsearch/log
    #         (    )
    #bootstrap.memory_lock: true
    #      ,        ,                 IP  ,
    #          IP  ,    9300  ,       0.0.0.0
    network.host: 0.0.0.0
    #             ip  ,           ,        ip  ,         ,
    #   docker     IP      IP   docker  ip
    network.publish_host: 111.231.110.177
    #      
    http.port: 9200
    #          
    transport.tcp.port: 9300
    #        127.0.0.1:9300,                  ,           
    #es7.x        ,            ,              ,             
    discovery.seed_hosts: ["111.231.110.177:9300","111.231.110.177:9301","111.231.110.177:9302"]
    #          ,         ,         ,
    #    ,            ,       ,             ,
    #       ,elasticsearch      ,            
    cluster.initial_master_nodes: ["node-1","node-2","node-3"]
    #                ,    N   
    #          ,           ,            ,        ,
    gateway.recover_after_nodes: 2
    #              ,     
    #action.destructive_requires_name: true
    

    4、ネットワークの構築
    kibanaなどの他のインストールが必要な場合は、elasticsearchとkibanaが通信できるように、同じネットワークに名前を任意に付けるネットワークを作成する必要があります.ネットワーク名はカスタマイズできます.
    docker network create es-net
    5、インストール起動
         node-1  
    docker run -e ES_JAVA_OPTS="-Xms340m -Xmx340m" --network es-net -d -p 9200:9200 -p 9300:9300 -v /root/elasticsearch/node-1/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/elasticsearch/node-1/plugins:/usr/share/elasticsearch/plugins -v /home/elasticsearch/node-1/data:/usr/share/elasticsearch/data -v /home/elasticsearch/node-1/log:/usr/share/elasticsearch/log --name es-node-1 elasticsearch:7.6.1
    
         node-2  
    
    docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" --network es-net -d  -p 9201:9201 -p 9301:9301  -v /root/elasticsearch/node-2/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml  -v /home/elasticsearch/node-2/plugins:/usr/share/elasticsearch/plugins   -v /home/elasticsearch/node-2/data:/usr/share/elasticsearch/data -v /home/elasticsearch/node-2/log:/usr/share/elasticsearch/log --name es-node-2 elasticsearch:7.6.1
    
         node-3  
    docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" --network es-net -d -p 9202:9202 -p 9302:9302  -v /root/elasticsearch/node-3/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/elasticsearch/node-3/plugins:/usr/share/elasticsearch/plugins -v /home/elasticsearch/node-3/data:/usr/share/elasticsearch/data/ -v /home/elasticsearch/node-3/log:/usr/share/elasticsearch/log --name es-node-3 elasticsearch:7.6.1
    

    6、クラスタの構築が成功したかどうかを検査する
    ブラウザを開き、アクセスアドレスとポートを入力し、接尾辞**_を追加します.cat/nodes?pretty**
    http://111.231.110.177:9200/_cat/nodes?pretty
    

    以下の画像が表示されます.*付きはmasterノードです.
    6、Kibanaマウントディレクトリの設定
    mkdir -p /home/kibana/config
    
    

    7、KibanaのYMLファイルを作成する
    vim /home/kibana/config/kibana.yml
    
    

    8、入力内容
    #Kibana     
    server.port: 5601
    
    #    
    server.host: "0.0.0.0"
    
    #Kibana         
    server.name: "kibana-111.231.110.177"
    
    #Elasticsearch     ,         IP
    elasticsearch.hosts: ["http://111.231.110.177:9200","http://111.231.110.177:9201","http://111.231.110.177:9202"]
    
    #      ,    zh-CN,    en
    i18n.locale: "zh-CN"
    
    xpack.monitoring.ui.container.elasticsearch.enabled: true
    
    

    9、起動
    コマンドを入力してnetworkネットワークを指定する
    docker run -d -p 5601:5601 -v /home/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml --network es-net  --name kibana kibana:7.6.0
    
    

    10、ログイン検証
    http://111.231.110.177:5601
    
    

    11.クラスタ接続の確認
    コンソールインタフェースでコマンドを送信すると、ノードの生存ツリーが表示されます.
    GET _cat/nodes?v
    
    

    三、発生する可能性のあるエラー設定
    1、  /etc/security/limits.conf
    
                             :
    
    * soft nofile 65536
    
    * hard nofile 131072
    
           
    
    dcs_svcas soft nofile 65536
    
    dcs_svcas hard nofile 131072
    
            
    
    * soft as -1
    
    * hard as -1
    
    2、           vim /etc/sysctl.conf   ,      
    
     vm.max_map_count= 262144
    
     sysctl –p
     3、         ,      ,   
    

    vim/etc/sysctl.conf vm.max_map_count=655360 sysctl -p
    
    
    

    4、rootユーザーの下でesを起動できない問題を解決する
    
     root        opt   
    
    cp -r /root/es_single/ /opt/
    
      elsearch    elsearch  :
    
    groupadd elsearch
    
    useradd elsearch -g elsearch
    
    passwd elsearch
    
        
    
      elasticsearch                
    
    elsearch:elsearch
    
    cd /opt
    
    chown -R elsearch:elsearch  es_single
    
       elsearch     
    
    su elsearch 
    
    cd /opt/es_single/elasticsearch-7.6.1/bin
    
    ./elasticsearch