CentOS系統環境搭建(十二)——CentOS7安裝Elasticsearch

centos系統環境搭建專欄🔗點擊跳轉

CentOS 7.9安裝Elasticsearch 7.17.6

文章目錄

  • CentOS 7.9安裝Elasticsearch 7.17.6
    • 1.下載
    • 2.上傳
    • 3.解壓
    • 4.調整es占用內存
    • 5.修改es默認Java為本地Java
    • 6.修改elasticsearch配置文件
    • 7.創建用戶
    • 8.Elasticsearch 后臺啟動與關閉
    • 9.es管理腳本
      • 9.1 關閉elasticsearch
      • 9.2 啟動elasticsearch

1.下載

🔗https://www.elastic.co/downloads/past-releases/elasticsearch-7-17-6

若你是centos64位服務器,下載LINUX X86_64,下載后上傳到linux服務器。

2.上傳

上傳至/usr/local/

image-20230815104113974

3.解壓

進入/usr/local/

cd /usr/local/

執行解壓

tar -zxvf elasticsearch-7.17.6-linux-x86_64.tar.gz

4.調整es占用內存

若你電腦性能強勁,這個應該可以不改。

vim /usr/local/elasticsearch-7.17.6/config/jvm.options

image-20230815105759898

修改為1g內存占用。

5.修改es默認Java為本地Java

在當前版本,已經內置jdk,不需要配置本地。這里只分享一個查找本機JDK的安裝路徑的方法。

方式一:用JAVA_HOME

echo $JAVA_HOME

方式二:專門為通過yum安裝的jdk查找

which java
ls -lrt /usr/bin/java 
ls -lrt /etc/alternatives/java

最后查出的/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-1.el7_9.x86_64/jre/bin/java才是jdk真正的路徑。

6.修改elasticsearch配置文件

編輯elasticsearch.yml

vim /usr/local/elasticsearch-7.17.6/config/elasticsearch.yml

設置節點名稱

node.name: node-1

集群名

cluster.name: my-application

設置master節點列表

cluster.initial_master_nodes: ["node-1"]

端口

http.port: 9200

允許遠程訪問

network.host: 0.0.0.0

到這里要特別注意!!!

這里我們需要先去/data目錄下新建文件夾es7,然后去es7文件夾下新建文件夾datalogs

這一步的必要在于,如果將來你的es服務做更新升級,默認的data文件夾是存放在elasticsearch原始根目錄下的,那么data文件夾里的數據就會隨著升級而丟失。如果你是生產環境,這就是一個很嚴重的問題了。

path.data: /data/es7/data
path.logs: /data/es7/logs

7.創建用戶

elasticsearch默認不允許以root賬號運行

創建用戶

useradd es

把文件夾分配給組用戶

chown es:es -R /usr/local/elasticsearch-7.17.6
chown es:es -R /data/es7

分配權限 只有具有 root 權限的用戶和es用戶可以讀取、寫入和執行

chmod -R 700 /data/es7

增大es用戶擁有的內存權限

vim /etc/sysctl.conf

在最后一行添加如下

vm.max_map_count=262144

image-20230815112702563
保存退出,刷新配置文件

sysctl -p

切換到es用戶

su es

啟動elasticsearch

cd /usr/local/elasticsearch-7.17.6/bin
./elasticsearch

8.Elasticsearch 后臺啟動與關閉

切換為es用戶

su es

后臺啟動(重啟)

sh /usr/local/elasticsearch-7.17.6/bin/elasticsearch -d

查看進程

ps aux | grep elasticsearch

執行后會看到如下

[es@VM-4-17-centos logs]$ ps aux | grep elasticsearch
es       31876  181 34.7 3856940 1312716 pts/0 Sl   11:52   0:27 /usr/local/elasticsearch-7.17.6/jdk/bin/java -Xshare:auto -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=10 -XX:+AlwaysPreTouch -Xss1m -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djna.nosys=true -XX:-OmitStackTraceInFastThrow -XX:+ShowCodeDetailsInExceptionMessages -Dio.netty.noUnsafe=true -Dio.netty.noKeySetOptimization=true -Dio.netty.recycler.maxCapacityPerThread=0 -Dio.netty.allocator.numDirectArenas=0 -Dlog4j.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -Dlog4j2.formatMsgNoLookups=true -Djava.locale.providers=SPI,COMPAT --add-opens=java.base/java.io=ALL-UNNAMED -Djava.security.manager=allow -Xms1g -Xmx1g -XX:+UseG1GC -Djava.io.tmpdir=/tmp/elasticsearch-185143932475254405 -XX:+HeapDumpOnOutOfMemoryError -XX:+ExitOnOutOfMemoryError -XX:HeapDumpPath=data -XX:ErrorFile=logs/hs_err_pid%p.log -Xlog:gc*,gc+age=trace,safepoint:file=logs/gc.log:utctime,pid,tags:filecount=32,filesize=64m -XX:MaxDirectMemorySize=536870912 -XX:G1HeapRegionSize=4m -XX:InitiatingHeapOccupancyPercent=30 -XX:G1ReservePercent=15 -Des.path.home=/usr/local/elasticsearch-7.17.6 -Des.path.conf=/usr/local/elasticsearch-7.17.6/config -Des.distribution.flavor=default -Des.distribution.type=tar -Des.bundled_jdk=true -cp /usr/local/elasticsearch-7.17.6/lib/* org.elasticsearch.bootstrap.Elasticsearch -d
es       31899  0.0  0.1  54520  4448 pts/0    Sl   11:52   0:00 /usr/local/elasticsearch-7.17.6/modules/x-pack-ml/platform/linux-x86_64/bin/controller
es       31983  0.0  0.0 112812   984 pts/0    S+   11:52   0:00 grep --color=auto elasticsearch

關閉(殺死端口)

kill 31876 31899

查看日志

tail -f /data/es7/logs/my-application.log

9.es管理腳本

但是這樣仍然讓我感到麻煩,es的今后的各種配置伴隨要做大量的重啟工作,我決心創建一個腳本,幫我完成這些復雜的事情。

9.1 關閉elasticsearch

腳本名稱killes.sh,放到/usr/local/elasticsearch-7.17.6/bin/下。

#!/bin/bash# 獲取Elasticsearch進程ID列表
es_pids=$(ps -ef | grep elasticsearch | grep -v grep | awk '{print $2}')# 逐個殺死Elasticsearch進程
for pid in $es_pids; dokill $pid
done

為腳本添加執行權限

chmod +x /usr/local/elasticsearch-7.17.6/bin/killes.sh

關閉elasticsearch

cd /usr/local/elasticsearch-7.17.6/bin
./killes.sh

9.2 啟動elasticsearch

su es
sh /usr/local/elasticsearch-7.17.6/bin/elasticsearch -d

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/42861.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/42861.shtml
英文地址,請注明出處:http://en.pswp.cn/news/42861.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

查看 Linux 內核版本的幾種方法

uname -a uname -srm uname -r 分拆:Linux 5.13.0-19-generic x86 64 5-內核版本 13-主修訂版本 0-19 -次要修訂版本 過查看 /proc/version 文件確認 /proc 目錄包含虛擬文件,其中包含有關系統內存,CPU內核,已安裝文件系統等的信…

020-從零搭建微服務-認證中心(九)

寫在最前 如果這個項目讓你有所收獲,記得 Star 關注哦,這對我是非常不錯的鼓勵與支持。 源碼地址(后端):https://gitee.com/csps/mingyue 源碼地址(前端):https://gitee.com/csps…

【C#】條碼管理操作手冊

前言:本文檔為條碼管理系統操作指南,介紹功能使用、參數配置、資源鏈接,以及異常的解決等。思維導圖如下: 一、思維導圖 二、功能操作–條碼打印(客戶端) 2.1 參數設置 功能介紹:二維碼圖片樣…

Windows定時任務計劃無法顯示任務程序界面的問題解決

筆者這兩天寫了一個python腳本程序,用來自動從公司的主數據系統獲取數據,并按格式編制成excel。腳本程序編寫一切順利,運行結果很是完美,筆者很是舒心。但在最后一步,用上班的電腦每天早上定時運行它時,出了…

JAVA設計模式總結之23種設計模式

一、什么是設計模式 設計模式(Design pattern)是一套被反復使用、多數人知曉的、經過分類編目的、代碼設計…

【Git】Git中的鉤子

Git Book——Git的自定義鉤子 Git中的鉤子分為兩大類: 1、客戶端鉤子:由諸如提交和合并這樣的操作所調用 2、服務端鉤子:由諸如接收被推送的提交這樣的聯網操作 客戶端鉤子: 提交工作流鉤子 pre-commit:在提交信息前…

ahooks.js:一款強大的React Hooks庫及其API使用教程(三)

一、ahooks.js簡介二、ahooks.js安裝三、繼續ahooks.js API的介紹與使用教程41. useAsyncEffect42. useDebounceEffect43. useDebounceFn44. useThrottleFn45. useThrottleEffect46. useDeepCompareEffect47. usePrevious48. useRafState49. useSafeState50. useGetState 一、a…

開源和自研——機器人

雙足機器人: MPC技術:封閉性非常高。沒有開源方案可抄。 因為開源,不需要從0構建。 這也是前兩年,國外一開源華為就遙遙領先。 射頻芯片/射頻天線:技術封閉。華為雖然做通信,但卻沒有攻破。 鴻蒙&#…

計算復雜度基礎

1. 抽象問題 抽象問題包括決策問題和優化問題 注意:描述中,I的縮寫是Instance,S的縮寫是Solution。 2. 決策問題 3. 優化問題 將一個優化問題轉換為決策問題后,不會變的更難。 \color {green}將一個優化問題轉換為決策問題后&…

【C++】int a;和int *p=new int;有什么區別?

2023年8月19日,周六早上 int a; 和 int *p new int; 之間有以下區別: 1. 內存分配方式:int a; 是在棧上分配內存,而 int *p new int; 是在堆上動態分配內存。 2. 生命周期:int a; 的生命周期與其所在的作用域相同&…

Python繪圖系統6:自定義坐標列表控件

文章目錄 自定義坐標列表控件顯示和隱藏加載按鈕坐標設置控件的顯示和隱藏源代碼 Python繪圖系統: 基礎:將matplotlib嵌入到tkinter 📈簡單的繪圖系統 📈數據導入📈三維繪圖系統自定義控件:坐標設置控件&a…

【Spring Boot】JdbcTemplate數據連接模板 — JdbcTemplate入門

JdbcTemplate入門 本節從基礎的部分開始介紹什么是JDBC、什么是JdbcTemplate,然后介紹Spring Boot項目如何使用JdbcTemplate操作數據庫。 1.JdbcTemplate簡介 1.1 什么是JDBC JDBC(Java Data Base Connectivity,Java數據庫連接&#xff0…

【二叉樹】100. 相同的樹

100. 相同的樹 解題思路 深度優先遍歷首先寫的就是遞歸結束條件當兩個節點都是null 直接返回true當只有其中一個節點是null 返回false當兩個節點的值不相等的時候 直接false然后兩棵樹的左節點 兩個樹的右節點 /*** Definition for a binary tree node.* public class TreeN…

android resoure資源圖片顏色值錯亂

最近androidstudio開發,添加一些顏色值或者drawable資源文件時,運行app,顏色值或者圖片對應不上,暫時找不到原因,望告知。 暫時解決方法:

鏈游再進化 Web3版CSGO來襲

過去幾年,游戲開發者們一直希望借Web3這個價值流通網絡,改造傳統游戲的經濟系統,將虛擬資產的掌管權交給用戶,讓資產自由地在市場流通。 Web3游戲發展史上,涌現過CryptoKitties、Axie Infinity兩大爆款,但…

【C++深入淺出】初識C++中篇(引用、內聯函數)

目錄 一. 前言 二. 引用 2.1 引用的概念 2.2 引用的使用 2.3 引用的特性 2.4 常引用 2.5 引用的使用場景 2.6 傳值、傳引用效率比較 2.7 引用和指針的區別 三. 內聯函數 3.1 內聯函數的概念 3.2 內聯函數的特性 一. 前言 上期說道,C是在C的基礎之上&…

onvif中imaging setting圖像畫質總結!

前言: 大家好,今天給大家來分享一篇關于圖像質量的內容,這個內容是我在做onvif中的imaging setting的時候,關注到里面有關于: brightness(亮度)color saturation(色彩飽和度)contrast(對比度)sharpness(銳度)white balance(白平衡…

C語言刷題指南(二)

📙作者簡介: 清水加冰,目前大二在讀,正在學習C/C、Python、操作系統、數據庫等。 📘相關專欄:C語言初階、C語言進階、C語言刷題訓練營、數據結構刷題訓練營、有感興趣的可以看一看。 歡迎點贊 &#x1f44d…

TDI(Time Delay Integration)

TDI(Time Delay Integration)是一種特殊的圖像采集技術,常用于線陣CCD(Charge-Coupled Device)相機。TDI技術可以在保持高分辨率的同時增強圖像的信噪比(Signal-to-Noise Ratio, SNR)&#xff0…

kubesphere 集成 sonar

文章目錄 安裝 helm通過 helm 安裝 sonar配置 SonarQube 服務器創建 SonarQube 管理員令牌SonarQube 配置添加到 ks-installer創建 Webhook 服務器將 SonarQube 服務器添加至 Jenkins將 sonarqubeURL 添加到 KubeSphere 控制臺重啟服務 為新項目創建 SonarQube Token 官方文檔&…