項(xiàng)目基本環(huán)境:
OS:CentOs7
JDK:1.8
ElasticSearch:7.6.2
IK:7.6.2
1、ElasticSearch下載
下載安裝包:
地址1: https://www.elastic.co/downloads/elasticsearch
地址2: https://elasticsearch.cn/download/ (推薦惭墓,方便選擇不同版本)
選擇linux版,版本7.6.2弹渔,下載文件格式為tar.gz。文件名稱:elasticsearch-7.6.2-linux-x86_64.tar.gz
2躁垛、解壓與安裝
2.1 解壓縮
mkdir /data/ELK
cd /data/ELK
tar -zxf /home/elasticsearch-7.6.2-linux-x86_64.tar.gz
mv elasticsearch-7.6.2/ elasticsearch/
2.2 創(chuàng)建ES用戶
由于Elastic部分版本無法用root用戶運(yùn)行的問題,所以新建一個(gè)es用戶,密碼es
useradd es
passwd es
chown -R es:es /data/ELK
2.3 修改配置文件
2.3.1 進(jìn)入配置文件目錄
cd elasticsearch/config/
2.3.2 修改JVM運(yùn)行內(nèi)存
JVM配置文件文件為jvm.options,可根據(jù)系統(tǒng)具體需求修改-Xms列吼、-Xmx參數(shù)
vim jvm.options
jvm.options文件說明:
- 以#開頭的行是注釋,例如疗琉, #this is a comment
- 以-開頭的行是不依賴JVM版本的選項(xiàng)冈欢,例如,-Xmx2g
- 以數(shù)值:-開頭的行是依賴于JVM版本的選項(xiàng)盈简,例如凑耻,8:-Xmx2g
- 以數(shù)值-:加-開頭的行是大于等于JVM版本的選項(xiàng),例如柠贤,8-:-Xmx2g
- 以數(shù)值-數(shù)值:-開頭的行是在這個(gè)JVM版本之間的選項(xiàng)香浩,例如,8-9:-Xmx2g
2.3.3 修改基礎(chǔ)配置
ES基礎(chǔ)配置保存于文件elasticsearch.yml中臼勉,可按需要修改即可
vim elasticsearch.yml
本測(cè)試環(huán)境修改如下
network.host: 0.0.0.0 #可遠(yuǎn)程訪問
node.name: node-base #節(jié)點(diǎn)名稱 這個(gè)與下面一點(diǎn)一定要配邻吭,不然即使啟動(dòng)成功也會(huì)操作超時(shí)或發(fā)生master_not_discovered_exception
cluster.initial_master_nodes: ["node-base"] #發(fā)現(xiàn)當(dāng)前節(jié)點(diǎn)名稱
path.conf: /data/ELK/elasticsearch/conf
path.data: /data/ELK/elasticsearch/data
http.port: 9200 #端口號(hào)
http.cors.allow-origin: "*" #以下皆是跨域配置
http.cors.enabled: true
http.cors.allow-headers : X-Requested-With,X-Auth-Token,Content-Type,Content-Length,Authorization
http.cors.allow-credentials: true
elasticsearch.yml常用配置及說明如下:
##################### Elasticsearch Configuration Example #####################
#
# 只是挑些重要的配置選項(xiàng)進(jìn)行注釋,其實(shí)自帶的已經(jīng)有非常細(xì)致的英文注釋了!
# https://www.elastic.co/guide/en/elasticsearch/reference/current/modules.html
#
################################### Cluster ###################################
# 代表一個(gè)集群,集群中有多個(gè)節(jié)點(diǎn),其中有一個(gè)為主節(jié)點(diǎn),這個(gè)主節(jié)點(diǎn)是可以通過選舉產(chǎn)生的,主從節(jié)點(diǎn)是對(duì)于集群內(nèi)部來說的.
# es的一個(gè)概念就是去中心化,字面上理解就是無中心節(jié)點(diǎn),這是對(duì)于集群外部來說的,因?yàn)閺耐獠縼砜磂s集群,在邏輯上是個(gè)整體,你與任何一個(gè)節(jié)點(diǎn)的通信和與整個(gè)es集群通信是等價(jià)的。
# cluster.name可以確定你的集群名稱,當(dāng)你的elasticsearch集群在同一個(gè)網(wǎng)段中elasticsearch會(huì)自動(dòng)的找到具有相同cluster.name的elasticsearch服務(wù).
# 所以當(dāng)同一個(gè)網(wǎng)段具有多個(gè)elasticsearch集群時(shí)cluster.name就成為同一個(gè)集群的標(biāo)識(shí).
# cluster.name: elasticsearch
#################################### Node #####################################
# https://www.elastic.co/guide/en/elasticsearch/reference/5.1/modules-node.html#master-node
# 節(jié)點(diǎn)名稱同理,可自動(dòng)生成也可手動(dòng)配置.
# node.name: node-1
# 允許一個(gè)節(jié)點(diǎn)是否可以成為一個(gè)master節(jié)點(diǎn),es是默認(rèn)集群中的第一臺(tái)機(jī)器為master,如果這臺(tái)機(jī)器停止就會(huì)重新選舉master.
# node.master: true
# 允許該節(jié)點(diǎn)存儲(chǔ)數(shù)據(jù)(默認(rèn)開啟)
# node.data: true
# 配置文件中給出了三種配置高性能集群拓?fù)浣Y(jié)構(gòu)的模式,如下:
# 1. 如果你想讓節(jié)點(diǎn)從不選舉為主節(jié)點(diǎn),只用來存儲(chǔ)數(shù)據(jù),可作為負(fù)載器
# node.master: false
# node.data: true
# node.ingest: true #默認(rèn)true
# 2. 如果想讓節(jié)點(diǎn)成為主節(jié)點(diǎn),且不存儲(chǔ)任何數(shù)據(jù),并保有空閑資源,可作為協(xié)調(diào)器
# node.master: true
# node.data: false
# node.ingest: true
# 3. 如果想讓節(jié)點(diǎn)既不稱為主節(jié)點(diǎn),又不成為數(shù)據(jù)節(jié)點(diǎn),那么可將他作為搜索器,從節(jié)點(diǎn)中獲取數(shù)據(jù),生成搜索結(jié)果等
# node.master: false
# node.data: false
# node.ingest: true
#
# 4. 僅作為協(xié)調(diào)器
# node.master: false
# node.data: false
# node.ingest: false
# 監(jiān)控集群狀態(tài)有一下插件和API可以使用:
# Use the Cluster Health API [http://localhost:9200/_cluster/health], the
# Node Info API [http://localhost:9200/_nodes] or GUI tools # such as <http://www.elasticsearch.org/overview/marvel/>,
# A node can have generic attributes associated with it, which can later be used
# for customized shard allocation filtering, or allocation awareness. An attribute
# is a simple key value pair, similar to node.key: value, here is an example:
# 每個(gè)節(jié)點(diǎn)都可以定義一些與之關(guān)聯(lián)的通用屬性宴霸,用于后期集群進(jìn)行碎片分配時(shí)的過濾
# node.rack: rack314
# 默認(rèn)情況下囱晴,多個(gè)節(jié)點(diǎn)可以在同一個(gè)安裝路徑啟動(dòng)膏蚓,如果你想讓你的es只啟動(dòng)一個(gè)節(jié)點(diǎn),可以進(jìn)行如下設(shè)置
# node.max_local_storage_nodes: 1
#################################### Index ####################################
# 設(shè)置索引的分片數(shù),默認(rèn)為5
#index.number_of_shards: 5
# 設(shè)置索引的副本數(shù),默認(rèn)為1:
#index.number_of_replicas: 1
# 配置文件中提到的最佳實(shí)踐是,如果服務(wù)器夠多,可以將分片提高,盡量將數(shù)據(jù)平均分布到大集群中去
# 同時(shí),如果增加副本數(shù)量可以有效的提高搜索性能
# 需要注意的是,"number_of_shards" 是索引創(chuàng)建后一次生成的,后續(xù)不可更改設(shè)置
# "number_of_replicas" 是可以通過API去實(shí)時(shí)修改設(shè)置的
#################################### Paths ####################################
# 配置文件存儲(chǔ)位置
# path.conf: /path/to/conf
# 數(shù)據(jù)存儲(chǔ)位置(單個(gè)目錄設(shè)置)
# path.data: /path/to/data
# 多個(gè)數(shù)據(jù)存儲(chǔ)位置,有利于性能提升
# path.data: /path/to/data1,/path/to/data2
# 臨時(shí)文件的路徑
# path.work: /path/to/work
# 日志文件的路徑
# path.logs: /path/to/logs
# 插件安裝路徑
# path.plugins: /path/to/plugins
#################################### Plugin ###################################
# 設(shè)置插件作為啟動(dòng)條件,如果一下插件沒有安裝,則該節(jié)點(diǎn)服務(wù)不會(huì)啟動(dòng)
# plugin.mandatory: mapper-attachments,lang-groovy
################################### Memory ####################################
# 當(dāng)JVM開始寫入交換空間時(shí)(swapping)ElasticSearch性能會(huì)低下,你應(yīng)該保證它不會(huì)寫入交換空間
# 設(shè)置這個(gè)屬性為true來鎖定內(nèi)存,同時(shí)也要允許elasticsearch的進(jìn)程可以鎖住內(nèi)存,linux下可以通過 `ulimit -l unlimited` 命令
# bootstrap.mlockall: true
# 確保 ES_MIN_MEM 和 ES_MAX_MEM 環(huán)境變量設(shè)置為相同的值,以及機(jī)器有足夠的內(nèi)存分配給Elasticsearch
# 注意:內(nèi)存也不是越大越好,一般64位機(jī)器,最大分配內(nèi)存別才超過32G
############################## Network And HTTP ###############################
# 設(shè)置綁定的ip地址,可以是ipv4或ipv6的,默認(rèn)為0.0.0.0
# network.bind_host: 192.168.0.1 #只有本機(jī)可以訪問http接口
# 設(shè)置其它節(jié)點(diǎn)和該節(jié)點(diǎn)交互的ip地址,如果不設(shè)置它會(huì)自動(dòng)設(shè)置,值必須是個(gè)真實(shí)的ip地址
# network.publish_host: 192.168.0.1
# 同時(shí)設(shè)置bind_host和publish_host上面兩個(gè)參數(shù)
# network.host: 192.168.0.1 #綁定監(jiān)聽I(yíng)P
# 設(shè)置節(jié)點(diǎn)間交互的tcp端口,默認(rèn)是9300
# transport.tcp.port: 9300
# 設(shè)置是否壓縮tcp傳輸時(shí)的數(shù)據(jù)畸写,默認(rèn)為false,不壓縮
# transport.tcp.compress: true
# 設(shè)置對(duì)外服務(wù)的http端口,默認(rèn)為9200
# http.port: 9200
# 設(shè)置請(qǐng)求內(nèi)容的最大容量,默認(rèn)100mb
# http.max_content_length: 100mb
# 使用http協(xié)議對(duì)外提供服務(wù),默認(rèn)為true,開啟
# http.enabled: false
###################### 使用head等插件監(jiān)控集群信息驮瞧,需要打開以下配置項(xiàng) ###########
# http.cors.enabled: true
# http.cors.allow-origin: "*"
# http.cors.allow-credentials: true
################################### Gateway ###################################
# gateway的類型,默認(rèn)為local即為本地文件系統(tǒng),可以設(shè)置為本地文件系統(tǒng)
# gateway.type: local
# 下面的配置控制怎樣以及何時(shí)啟動(dòng)一整個(gè)集群重啟的初始化恢復(fù)過程
# (當(dāng)使用shard gateway時(shí),是為了盡可能的重用local data(本地?cái)?shù)據(jù)))
# 一個(gè)集群中的N個(gè)節(jié)點(diǎn)啟動(dòng)后,才允許進(jìn)行恢復(fù)處理
# gateway.recover_after_nodes: 1
# 設(shè)置初始化恢復(fù)過程的超時(shí)時(shí)間,超時(shí)時(shí)間從上一個(gè)配置中配置的N個(gè)節(jié)點(diǎn)啟動(dòng)后算起
# gateway.recover_after_time: 5m
# 設(shè)置這個(gè)集群中期望有多少個(gè)節(jié)點(diǎn).一旦這N個(gè)節(jié)點(diǎn)啟動(dòng)(并且recover_after_nodes也符合),
# 立即開始恢復(fù)過程(不等待recover_after_time超時(shí))
# gateway.expected_nodes: 2
############################# Recovery Throttling #############################
# 下面這些配置允許在初始化恢復(fù),副本分配,再平衡,或者添加和刪除節(jié)點(diǎn)時(shí)控制節(jié)點(diǎn)間的分片分配
# 設(shè)置一個(gè)節(jié)點(diǎn)的并行恢復(fù)數(shù)
# 1.初始化數(shù)據(jù)恢復(fù)時(shí),并發(fā)恢復(fù)線程的個(gè)數(shù),默認(rèn)為4
# cluster.routing.allocation.node_initial_primaries_recoveries: 4
# 2.添加刪除節(jié)點(diǎn)或負(fù)載均衡時(shí)并發(fā)恢復(fù)線程的個(gè)數(shù),默認(rèn)為2
# cluster.routing.allocation.node_concurrent_recoveries: 2
# 設(shè)置恢復(fù)時(shí)的吞吐量(例如:100mb,默認(rèn)為0無限制.如果機(jī)器還有其他業(yè)務(wù)在跑的話還是限制一下的好)
# indices.recovery.max_bytes_per_sec: 20mb
# 設(shè)置來限制從其它分片恢復(fù)數(shù)據(jù)時(shí)最大同時(shí)打開并發(fā)流的個(gè)數(shù),默認(rèn)為5
# indices.recovery.concurrent_streams: 5
# 注意: 合理的設(shè)置以上參數(shù)能有效的提高集群節(jié)點(diǎn)的數(shù)據(jù)恢復(fù)以及初始化速度
################################## Discovery ##################################
# 設(shè)置這個(gè)參數(shù)來保證集群中的節(jié)點(diǎn)可以知道其它N個(gè)有master資格的節(jié)點(diǎn).默認(rèn)為1,對(duì)于大的集群來說,可以設(shè)置大一點(diǎn)的值(2-4)
# discovery.zen.minimum_master_nodes: 1
# 探查的超時(shí)時(shí)間,默認(rèn)3秒,提高一點(diǎn)以應(yīng)對(duì)網(wǎng)絡(luò)不好的時(shí)候,防止腦裂
# discovery.zen.ping.timeout: 3s
# For more information, see
# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-discovery-zen.html>
# 設(shè)置是否打開多播發(fā)現(xiàn)節(jié)點(diǎn).默認(rèn)是true.
# 當(dāng)多播不可用或者集群跨網(wǎng)段的時(shí)候集群通信還是用單播吧
# discovery.zen.ping.multicast.enabled: false
# 這是一個(gè)集群中的主節(jié)點(diǎn)的初始列表,當(dāng)節(jié)點(diǎn)(主節(jié)點(diǎn)或者數(shù)據(jù)節(jié)點(diǎn))啟動(dòng)時(shí)使用這個(gè)列表進(jìn)行探測(cè)
# discovery.zen.ping.unicast.hosts: ["host1", "host2:port"]
# Slow Log部分與GC log部分略,不過可以通過相關(guān)日志優(yōu)化搜索查詢速度
################ X-Pack ###########################################
# 官方插件 相關(guān)設(shè)置請(qǐng)查看此處
# https://www.elastic.co/guide/en/x-pack/current/xpack-settings.html
#
############## Memory(重點(diǎn)需要調(diào)優(yōu)的部分) ################
# Cache部分:
# es有很多種方式來緩存其內(nèi)部與索引有關(guān)的數(shù)據(jù).其中包括filter cache
# filter cache部分:
# filter cache是用來緩存filters的結(jié)果的.默認(rèn)的cache type是node type.node type的機(jī)制是所有的索引內(nèi)部的分片共享filter cache.node type采用的方式是LRU方式.即:當(dāng)緩存達(dá)到了某個(gè)臨界值之后,es會(huì)將最近沒有使用的數(shù)據(jù)清除出filter cache.使讓新的數(shù)據(jù)進(jìn)入es.
# 這個(gè)臨界值的設(shè)置方法如下:indices.cache.filter.size 值類型:eg.:512mb 20%枯芬。默認(rèn)的值是10%论笔。
# out of memory錯(cuò)誤避免過于頻繁的查詢時(shí)集群假死
# 1.設(shè)置es的緩存類型為Soft Reference,它的主要特點(diǎn)是據(jù)有較強(qiáng)的引用功能.只有當(dāng)內(nèi)存不夠的時(shí)候,才進(jìn)行回收這類內(nèi)存,因此在內(nèi)存足夠的時(shí)候,它們通常不被回收.另外,這些引用對(duì)象還能保證在Java拋出OutOfMemory異常之前,被設(shè)置為null.它可以用于實(shí)現(xiàn)一些常用圖片的緩存,實(shí)現(xiàn)Cache的功能,保證最大限度的使用內(nèi)存而不引起OutOfMemory.在es的配置文件加上index.cache.field.type: soft即可.
# 2.設(shè)置es最大緩存數(shù)據(jù)條數(shù)和緩存失效時(shí)間,通過設(shè)置index.cache.field.max_size: 50000來把緩存field的最大值設(shè)置為50000,設(shè)置index.cache.field.expire: 10m把過期時(shí)間設(shè)置成10分鐘.
# index.cache.field.max_size: 50000
# index.cache.field.expire: 10m
# index.cache.field.type: soft
# field data部分&&circuit breaker部分:
# 用于fielddata緩存的內(nèi)存數(shù)量,主要用于當(dāng)使用排序,faceting操作時(shí),elasticsearch會(huì)將一些熱點(diǎn)數(shù)據(jù)加載到內(nèi)存中來提供給客戶端訪問,但是這種緩存是比較珍貴的,所以對(duì)它進(jìn)行合理的設(shè)置.
# 可以使用值:eg:50mb 或者 30%(節(jié)點(diǎn) node heap內(nèi)存量),默認(rèn)是:unbounded #indices.fielddata.cache.size: unbounded
# field的超時(shí)時(shí)間.默認(rèn)是-1,可以設(shè)置的值類型: 5m #indices.fielddata.cache.expire: -1
# circuit breaker部分:
# 斷路器是elasticsearch為了防止內(nèi)存溢出的一種操作,每一種circuit breaker都可以指定一個(gè)內(nèi)存界限觸發(fā)此操作,這種circuit breaker的設(shè)定有一個(gè)最高級(jí)別的設(shè)定:indices.breaker.total.limit 默認(rèn)值是JVM heap的70%.當(dāng)內(nèi)存達(dá)到這個(gè)數(shù)量的時(shí)候會(huì)觸發(fā)內(nèi)存回收
# 另外還有兩組子設(shè)置:
#indices.breaker.fielddata.limit:當(dāng)系統(tǒng)發(fā)現(xiàn)fielddata的數(shù)量達(dá)到一定數(shù)量時(shí)會(huì)觸發(fā)內(nèi)存回收.默認(rèn)值是JVM heap的70%
#indices.breaker.fielddata.overhead:在系統(tǒng)要加載fielddata時(shí)會(huì)進(jìn)行預(yù)先估計(jì),當(dāng)系統(tǒng)發(fā)現(xiàn)要加載進(jìn)內(nèi)存的值超過limit * overhead時(shí)會(huì)進(jìn)行進(jìn)行內(nèi)存回收.默認(rèn)是1.03
#indices.breaker.request.limit:這種斷路器是elasticsearch為了防止OOM(內(nèi)存溢出),在每次請(qǐng)求數(shù)據(jù)時(shí)設(shè)定了一個(gè)固定的內(nèi)存數(shù)量.默認(rèn)值是40%
#indices.breaker.request.overhead:同上,也是elasticsearch在發(fā)送請(qǐng)求時(shí)設(shè)定的一個(gè)預(yù)估系數(shù),用來防止內(nèi)存溢出.默認(rèn)值是1
# Translog部分:
# 每一個(gè)分片(shard)都有一個(gè)transaction log或者是與它有關(guān)的預(yù)寫日志,(write log),在es進(jìn)行索引(index)或者刪除(delete)操作時(shí)會(huì)將沒有提交的數(shù)據(jù)記錄在translog之中,當(dāng)進(jìn)行flush 操作的時(shí)候會(huì)將tranlog中的數(shù)據(jù)發(fā)送給Lucene進(jìn)行相關(guān)的操作.一次flush操作的發(fā)生基于如下的幾個(gè)配置
#index.translog.flush_threshold_ops:當(dāng)發(fā)生多少次操作時(shí)進(jìn)行一次flush.默認(rèn)是 unlimited #index.translog.flush_threshold_size:當(dāng)translog的大小達(dá)到此值時(shí)會(huì)進(jìn)行一次flush操作.默認(rèn)是512mb
#index.translog.flush_threshold_period:在指定的時(shí)間間隔內(nèi)如果沒有進(jìn)行flush操作,會(huì)進(jìn)行一次強(qiáng)制flush操作.默認(rèn)是30m #index.translog.interval:多少時(shí)間間隔內(nèi)會(huì)檢查一次translog,來進(jìn)行一次flush操作.es會(huì)隨機(jī)的在這個(gè)值到這個(gè)值的2倍大小之間進(jìn)行一次操作,默認(rèn)是5s
#index.gateway.local.sync:多少時(shí)間進(jìn)行一次的寫磁盤操作,默認(rèn)是5s
# 以上的translog配置都可以通過API進(jìn)行動(dòng)態(tài)的設(shè)置 - See more at: http://bigbo.github.io/pages/2015/04/10/elasticsearch_config/#sthash.AvOSUcQ4.dpuf
2.4 安裝分詞插件
分詞插件IK下載地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
注意下載對(duì)應(yīng)的版本。放置在home目錄下備用
cd /data/ELK/elasticsearch/plugins
#解壓縮
unzip -d /data/ELK/elasticsearch/plugins/ik /home/elasticsearch-analysis-ik-7.6.2.zip
如果提示
unzip: 未找到命令
千所,可以通過yum install unzip
安裝相關(guān)插件包
2.5 啟動(dòng)Es
由于ES不支持root用戶啟動(dòng)狂魔,請(qǐng)切換到剛剛創(chuàng)建的es用戶進(jìn)行操作
cd /data/ELK/elasticsearch/bin
./elasticsearch
注意:?jiǎn)?dòng)時(shí)會(huì)提示:
future versions of Elasticsearch will require Java 11; your Java version from [/***/jre] does not meet this requirement
忽略即可.
2.5.1 常見錯(cuò)誤及解決辦法
- max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
每個(gè)進(jìn)程最大同時(shí)打開文件數(shù)太小,可通過下面2個(gè)命令查看當(dāng)前數(shù)量
ulimit -Hn
ulimit -Sn
解決辦法:
修改/etc/security/limits.conf文件淫痰,增加如下配置最楷,用戶退出后重新登錄生效
* soft nproc 65536 * hard nproc 65536 * soft nofile 65536 * hard nofile 65536
- max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
elasticsearch用戶擁有的內(nèi)存權(quán)限太小,至少需要262144待错;
解決辦法:
在 /etc/sysctl.conf文件最后添加一行
vm.max_map_count=262144
執(zhí)行命令
sysctl -p
- the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured
解決辦法:
在elasticsearch的config目錄下管嬉,修改elasticsearch.yml配置文件,修改cluster.initial_master_nodes參數(shù)
cluster.initial_master_nodes: ["node-1"] #這里的node-1為node-name配置的值
2.5.2 將Elasticsearch添加為系統(tǒng)服務(wù)
2.5.2.1 創(chuàng)建es 的系統(tǒng)啟動(dòng)服務(wù)文件
cd /etc/init.d #進(jìn)入到目錄
vi elasticsearch #創(chuàng)建服務(wù)文件
文件內(nèi)容如下(請(qǐng)注意修改對(duì)應(yīng)的ES目錄和用戶名稱es)
#!/bin/bash
#chkconfig: 345 63 37
#description: elasticsearch
#processname: elasticsearch-7.6.2
export ES_HOME=/data/ELK/elasticsearch
case $1 in
start)
su es<<!
cd $ES_HOME
./bin/elasticsearch -d -p pid
exit
!
echo "elasticsearch is started"
;;
stop)
pid=`cat $ES_HOME/pid`
kill -9 $pid
echo "elasticsearch is stopped"
;;
restart)
pid=`cat $ES_HOME/pid`
kill -9 $pid
echo "elasticsearch is stopped"
sleep 1
su es<<!
cd $ES_HOME
./bin/elasticsearch -d -p pid
exit
!
echo "elasticsearch is started"
;;
*)
echo "start|stop|restart"
;;
esac
exit 0
2.5.2.2 修改權(quán)限
chmod 777 elasticsearch
2.5.2.3 添加和刪除服務(wù)并設(shè)置啟動(dòng)方式
chkconfig --add elasticsearch #添加系統(tǒng)服務(wù)
chkconfig --del elasticsearch #刪除系統(tǒng)服務(wù)
2.5.2.3 關(guān)閉和啟動(dòng)服務(wù)朗鸠;
service elasticsearch start #啟動(dòng)
service elasticsearch stop #停止
service elasticsearch restart #重啟
七:設(shè)置服務(wù)是否開機(jī)啟動(dòng)蚯撩;
chkconfig elasticsearch on #開啟
chkconfig elasticsearch off #關(guān)閉
4 CentOS關(guān)閉防火墻
如果出現(xiàn)訪問不到的狀況,請(qǐng)檢查防火墻是否關(guān)閉
firewall-cmd --state #檢查防火墻狀態(tài)
systemctl stop firewalld.service #關(guān)閉防火墻
systemctl disable firewalld.service #永久禁用防火墻
寫在最后
由于時(shí)間倉(cāng)促,自己也是剛剛接觸全文檢索烛占,尚處摸索階段胎挎,如有錯(cuò)誤,請(qǐng)私信,我會(huì)及時(shí)修改忆家。