<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                # ElasticSearch7.x高可用集群版搭建 ## 1.前置準備 若之前未了解過ElasticSearch的安裝,在安裝集群版之前,建議先了解一下單機版創建。集群版無非就是拷貝了幾套單機版的安裝包,配置稍加改。 單機版安裝詳細教程以及安裝過程容易遇到的問題 **詳見:ElasticSearch單機版安裝** ### 集群環境準備 | **IP** | **監聽端口** | **主機名** | **系統** | **es實例名稱** | **es版本** | | :-: | :-: | :-: | :-: | :-: | :-: | | 192.168.3.21 | 9201/9301 | elastic | CentOS 7 | node-a | 7.4.0 | | 192.168.3.22 | 9201/9301 | elastic | CentOS 7 | node-b | 7.4.0 | | 192.168.3.23 | 9201/9301 | elastic | CentOS 7 | node-c | 7.4.0 | ## 2.下載安裝包 官方下載地址:[傳送門](https://www.elastic.co/cn/downloads/elasticsearch) 歷史版本下載:[傳送門](https://www.elastic.co/cn/downloads/past-releases#elasticsearch) 本文以7.4.0為例:[7.4.0下載地址](https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7-4-0) 命令下載 ~~~shell wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.0-linux-x86_64.tar.gz ~~~ ## 3.創建集群目錄 每一臺服務器都需要操作。 ~~~ #創建集群存儲主目錄 mkdir /usr/local/elasticsearch-cluster #解壓到集群目錄下 tar zxvf elasticsearch-7.4.0-linux-x86_64.tar.gz -C /usr/local/elasticsearch-cluster #切換到目錄下 cd /usr/local/elasticsearch-cluster #修改解壓后的文件名為 elasticsearch-a,(為了方便區分根據節點名) mv elasticsearch-7.4.0 elasticsearch-a # 創建數據存儲目錄 mkdir -p /usr/local/elasticsearch-cluster/elasticsearch-a/data # 創建日志存儲目錄 mkdir -p /usr/local/elasticsearch-cluster/elasticsearch-a/logs ~~~ 注:這里為了區分是es的多個節點, * 第1臺的目錄文件夾為 elasticsearch-a * 第2臺的目錄文件夾為 elasticsearch-b * 第3臺的目錄文件夾為 elasticsearch-c 注:安裝包不用下載多次可以使用SCP命令傳輸到另外兩臺示例: ~~~ scp -r elasticsearch-7.4.0-linux-x86_64.tar.gz root@192.168.3.23:/usr/local ~~~ ## 4.節點[node](https://so.csdn.net/so/search?q=node&spm=1001.2101.3001.7020)\-a配置 進入到es安裝目錄下的config文件夾中,修改elasticsearch.yml 文件 ~~~ #配置es的集群名稱,同一個集群中的多個節點使用相同的標識 #如果在同一網段下有多個集群,就可以用這個屬性來區分不同的集群。 cluster.name: my-es-cluster #節點名稱 node.name: node-a #是不是有資格競選主節點 node.master: true #是否存儲數據 node.data: true #最大集群節點數 node.max_local_storage_nodes: 3 #數據存儲路徑 path.data: /usr/local/elasticsearch-cluster/elasticsearch-a/data #日志存儲路徑 path.logs: /usr/local/elasticsearch-cluster/elasticsearch-a/logs #節點所綁定的IP地址,并且該節點會被通知到集群中的其他節點 #通過指定相同網段的其他節點會加入該集群中 0.0.0.0任意IP都可以訪問elasticsearch network.host: 192.168.3.21 #對外提供服務的http端口,默認為9200 http.port: 9201 #內部節點之間溝通端口 transport.tcp.port: 9301 #es7.x 之后新增的配置,寫入候選主節點的設備地址,在開啟服務后可以被選為主節點 discovery.seed_hosts: ["192.168.3.21:9301","192.168.3.22:9301","192.168.3.23:9301"] #es7.x 之后新增的配置,初始化一個新的集群時需要此配置來選舉master cluster.initial_master_nodes: ["node-a", "node-b","node-c"] #ES默認開啟了內存地址鎖定,為了避免內存交換提高性能。但是Centos6不支持SecComp功能,啟動會報錯,所以需要將其設置為false bootstrap.memory_lock: false # 是否支持跨域 http.cors.enabled: true # *表示支持所有域名 http.cors.allow-origin: "*" ~~~ ## 5.節點node-b配置 ~~~ #配置es的集群名稱,同一個集群中的多個節點使用相同的標識 #如果在同一網段下有多個集群,就可以用這個屬性來區分不同的集群。 cluster.name: my-es-cluster #節點名稱 node.name: node-b #是不是有資格競選主節點 node.master: true #是否存儲數據 node.data: true #最大集群節點數 node.max_local_storage_nodes: 3 #數據存儲路徑 path.data: /usr/local/elasticsearch-cluster/elasticsearch-b/data #日志存儲路徑 path.logs: /usr/local/elasticsearch-cluster/elasticsearch-b/logs #節點所綁定的IP地址,并且該節點會被通知到集群中的其他節點 #通過指定相同網段的其他節點會加入該集群中 0.0.0.0任意IP都可以訪問elasticsearch network.host: 192.168.3.22 #對外提供服務的http端口,默認為9200 http.port: 9201 #內部節點之間溝通端口 transport.tcp.port: 9301 #es7.x 之后新增的配置,寫入候選主節點的設備地址,在開啟服務后可以被選為主節點 discovery.seed_hosts: ["192.168.3.21:9301","192.168.3.22:9301","192.168.3.23:9301"] #es7.x 之后新增的配置,初始化一個新的集群時需要此配置來選舉master cluster.initial_master_nodes: ["node-a", "node-b","node-c"] #ES默認開啟了內存地址鎖定,為了避免內存交換提高性能。但是Centos6不支持SecComp功能,啟動會報錯,所以需要將其設置為false bootstrap.memory_lock: false # 是否支持跨域 http.cors.enabled: true # *表示支持所有域名 http.cors.allow-origin: "*" ~~~ ## 6.節點node-c配置 ~~~ #配置es的集群名稱,同一個集群中的多個節點使用相同的標識 #如果在同一網段下有多個集群,就可以用這個屬性來區分不同的集群。 cluster.name: my-es-cluster #節點名稱 node.name: node-c #是不是有資格競選主節點 node.master: true #是否存儲數據 node.data: true #最大集群節點數 node.max_local_storage_nodes: 3 #數據存儲路徑 path.data: /usr/local/elasticsearch-cluster/elasticsearch-c/data #日志存儲路徑 path.logs: /usr/local/elasticsearch-cluster/elasticsearch-c/logs #節點所綁定的IP地址,并且該節點會被通知到集群中的其他節點 #通過指定相同網段的其他節點會加入該集群中 0.0.0.0任意IP都可以訪問elasticsearch network.host: 192.168.3.23 #對外提供服務的http端口,默認為9200 http.port: 9201 #內部節點之間溝通端口 transport.tcp.port: 9301 #es7.x 之后新增的配置,寫入候選主節點的設備地址,在開啟服務后可以被選為主節點 discovery.seed_hosts: ["192.168.3.21:9301","192.168.3.22:9301","192.168.3.23:9301"] #es7.x 之后新增的配置,初始化一個新的集群時需要此配置來選舉master cluster.initial_master_nodes: ["node-a", "node-b","node-c"] #ES默認開啟了內存地址鎖定,為了避免內存交換提高性能。但是Centos6不支持SecComp功能,啟動會報錯,所以需要將其設置為false bootstrap.memory_lock: false # 是否支持跨域 http.cors.enabled: true # *表示支持所有域名 http.cors.allow-origin: "*" ~~~ ## 7.啟動用戶與賦權 由于ES限制不能使用root 用戶啟動,與單機版教程一致 這里與單機版安裝時使用了相同的elasticsearch用戶 創建用戶:elasticsearch ~~~shell adduser elasticsearch ~~~ 設置用戶密碼,需要輸入兩次 ~~~shell passwd elasticsearch ~~~ 賦權 注:由于是偽集群,都在同一臺服務器,所以3個節點目錄都需要賦權,多臺服務器的話,都需要操作 ~~~ chown -R elasticsearch /usr/local/elasticsearch-cluster/elasticsearch-a ~~~ ## 8.啟動集群環境 啟動之前,建議針對實際使用場景,設置合適的JVM內存,詳見文末附錄 ~~~ #切換到用戶 su elasticsearch #切換到a節點 cd /usr/local/elasticsearch-cluster/elasticsearch-a/bin #控制臺啟動命令 ./elasticsearch #后臺啟動命令 #./elasticsearch -d ~~~ 同啟動a節點一致,分別再次啟動 b節點、C節點 注:啟動小妙招,先不要著急后臺啟動,直接使用 ./elasticsearch 啟動看一下是否報錯。若出現報錯,可以到前一篇文章單機版ES搭建中找下,列舉出來了常見的幾種啟動問題。 注:開機自啟設置方式,詳見單機版搭建過程 ## 9.查看集群 ### 9.1查看集群狀態 可以通過訪問(任選一個)瀏覽器輸入,查看集群節點:\[http://IP:9201/\_cat/nodes?v\] ![](https://img.kancloud.cn/e3/81/e3813e497cdc0197c22aacf120a98380_1490x212.png) 命令查看 注:若已經設置了賬密則需要輸入賬密 ~~~ # curl -u 用戶名:密碼 -XGET 'http://IP:9201/_cat/nodes?v' curl -u elastic:1234567 -XGET 'http://localhost:9201/_cat/nodes?v' ~~~ ![](https://img.kancloud.cn/1f/f0/1ff075b32a51cb3ddaaa58b75924cc89_1634x226.png) 可以通過訪問(任選一個)查看集群狀態: ![](https://img.kancloud.cn/28/78/2878c3aa92b0ac20d51a00bbdfa139e9_1938x1128.png) ### 9.2ElasticSearch-Head可視化插件查看 也可以使用head查看集群信息如下,說明搭建成功 ![](https://img.kancloud.cn/72/9c/729c68b261691c5e6b168ce809003180_1768x638.png) ## 附錄: ### 1.修改JVM參數 官網也介紹了如何[**設置堆大小**](https://www.elastic.co/guide/en/elasticsearch/reference/current/jvm-options.html)。 默認情況,ES 告訴 JVM 使用一個最小和最大都為 1GB 的堆。但是到了生產環境,這個配置就比較重要了,確保 ES 有足夠堆空間可用。 ES 使用`Xms(minimum heap size)`和`Xmx(maxmimum heap size)`設置堆大小。你應該將這兩個值設為同樣的大小。 **`Xms`和`Xmx`不能大于你物理機內存的 50%。** 設置的示例: 切換到 conf/ 打開 vim jvm.options ![](https://img.kancloud.cn/0e/48/0e487e86d00ca28b7d677beacde88b12_566x150.png) 建議:可用 RAM 的 50%,最多最大 30GB RAM,以避免垃圾回收。 官方文檔最大指 32 GB,官網JVM最大值設置:[傳送門](https://www.elastic.co/guide/en/elasticsearch/guide/master/heap-sizing.html)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看