elasticsearch安裝與配置介紹

基本概念

集群:一個(gè)或者多個(gè)elasticsearch節(jié)點(diǎn)組成的集合

索引:含有相同屬性的文檔集合,例如一個(gè)索引代表消費(fèi)者數(shù)據(jù),一個(gè)索引代表產(chǎn)品數(shù)據(jù)(相當(dāng)于MySQL的database)

類型:索引可以定義一個(gè)或多個(gè)類型爆阶,通常定義有相同字段的文檔作為一個(gè)類型斥扛,文檔必須屬于一個(gè)類型(相當(dāng)于MySQL的table)

文檔:文檔是可以被索引的基本數(shù)據(jù)單位,例如一個(gè)用戶的基本信息食茎,一片文章的數(shù)據(jù)蒂破,他是整個(gè)es里最小的存儲(chǔ)單位(相當(dāng)于MySQL的每一行具體的記錄)

單節(jié)點(diǎn)安裝

elasticsearch是基于java開發(fā)的,所以安裝之前需要先安裝版本大于等于1.8的jdk

jdk安裝:?下載---解壓---配置環(huán)境變量

下載地址:?https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html别渔,自己去這個(gè)地址下載附迷,因?yàn)樗麜?huì)帶一個(gè)認(rèn)證參數(shù)AuthParam

wget https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-i586.tar.gz?AuthParam=1551253769_ff54ba4acb29cacf09d358ec0798e55d

tar -zxvf jdk-8u201-linux-x64.tar.gz\?AuthParam\=1551253769_ff54ba4acb29cacf09d358ec0798e55d?

配置環(huán)境變量

sudo vi ~/.bash_profile

source ~/.bash_profile

elasticsearch安裝:?下載---解壓---配置---啟動(dòng)

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.2.tar.gz

tar -zxvf elasticsearch-6.6.2.tar.gz

sudo vi config/elasticsearch.yml

elasticsearch默認(rèn)安裝后設(shè)置的內(nèi)存是1GB,我這里只是自己的一個(gè)乞丐版本的服務(wù)器,內(nèi)存比較小哎媚,我就只給他分配256M(根據(jù)自己情況使用配置挟秤,如果內(nèi)存不夠的話,啟動(dòng)過程中會(huì)提示已殺死這類提示)

vi config/jvm.options

ps: 更多具體配置可以在elasticsearch官網(wǎng)查看

啟動(dòng): elasticsearch可以接收用戶輸入的腳本并且執(zhí)行抄伍,處于安全考慮艘刚,他不能root賬戶來啟動(dòng),不然會(huì)報(bào)下圖錯(cuò)誤

所以我需要為elasticsearch新建一個(gè)系統(tǒng)運(yùn)行賬號(hào)

groupadd?elasticsearch? ? ?//新建一個(gè)elasticsearch的用戶組

useradd -g?elasticsearch?elasticsearch? //在elasticsearch用戶組下面建立一個(gè)elasticsearch的用戶

將elasticsearch目錄的所有者給剛剛建立的賬號(hào)

chown -R elasticsearch:elasticsearch elasticsearch-6.6.2/

然后切換到剛剛的賬號(hào)啟動(dòng)elasticsearch

su elasticsearch

./elasticsearch-6.6.2/bin/elasticsearch

啟動(dòng)過程中可能會(huì)出現(xiàn)下面這類的錯(cuò)誤提示

錯(cuò)誤1:?elasticsearch這個(gè)用戶的最大打開線程數(shù)(3894)太低截珍,至少增加到4096

解決:

1. 查看用戶最大打開線程數(shù)

ulimit -a

2. 切換到root用戶攀甚,編輯文件

vi /etc/security/limits.conf

在文件末尾加上下面配置

* 表示匹配所有用戶, nproc 表示配置最大打開線程數(shù)

3. 退出從新登錄后岗喉,再次查看秋度,修改成功

錯(cuò)誤2:?最大虛擬內(nèi)存區(qū)域vm.max_map_count(65530)太低,至少增加到262144

解決:

在root賬號(hào)下修改配置文件

vi /etc/sysctl.conf

在末尾添加配置钱床,值大于等于實(shí)體的262144就可以

添加完成后執(zhí)行下面命令

sysctl -p

然后可以查看到成功修改成你設(shè)置的數(shù)字

上面問題解決后荚斯,切換成elasticsearch賬號(hào),繼續(xù)啟動(dòng)es,看到下圖的樣子證明就啟動(dòng)成功了

驗(yàn)證

瀏覽器輸入ip地址,加上自己在配置文件中配置的端口,比如我這里的9201訪問

我前面配置的host是0.0.0.0,所以可以用外網(wǎng)訪問,不需要外網(wǎng)訪問的話,就配置127.0.0.1或者對(duì)應(yīng)的內(nèi)網(wǎng)ip就行

安裝head插件

安裝好ES后,你就可以通過官網(wǎng)提供的相關(guān)命令開進(jìn)行索引的創(chuàng)建,但是更多人還是習(xí)慣用界面直接操作.這個(gè)時(shí)候就可以用elasticsearch-head這個(gè)插件了.elasticsearch-head 是用于監(jiān)控 ES 狀態(tài)的客戶端插件查牌,包括數(shù)據(jù)可視化事期、執(zhí)行增刪改查操作等(我就簡單暴露的把它理解成了像Navicat這類的工具).

git地址:?https://github.com/mobz/elasticsearch-head

安裝前準(zhǔn)備

在上面地址說明中可以看到,安裝他需要npm包管理工具,所以先在系統(tǒng)下安裝一下node.js吧

nodejs下載地址:?https://nodejs.org/en/download/

長期維護(hù)的版本可能不包含最新版本最新特性,但是比較穩(wěn)定,所以這里就用穩(wěn)定的版本吧.可以選擇源碼安裝,就是可能坑有點(diǎn)多(被坑過一次的經(jīng)歷),我這里就直接下載'編譯好的二進(jìn)制文件',因?yàn)楹唵温?/p>

wget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.xz? ? ?//下載

xz -d node-v10.15.3-linux-x64.tar.xz? ? ? ? ? ? //解壓xz格式

tar -xf node-v10.15.3-linux-x64.tar? ? ? ? //最終解壓

進(jìn)入里面的bin目錄就可以看到已經(jīng)編譯好的node和npm了,直接使用就好.

分別給他們設(shè)置個(gè)軟連方便全局使用node和npm命令

ln -s /opt/soft/node-v10.15.3-linux-x64/bin/node /usr/local/bin/

ln -s /opt/soft/node-v10.15.3-linux-x64/bin/npm /usr/local/bin/

開始安裝head

git clone git://github.com/mobz/elasticsearch-head.git

cd elasticsearch-head

npm install? ? //知道node的應(yīng)該明白這一步其實(shí)就是在下載安裝相關(guān)的依賴擴(kuò)展

如果在安裝圖中的擴(kuò)展的時(shí)候報(bào)錯(cuò)了,就直接忽略他,執(zhí)行下面命令

npm install phantomjs-prebuilt@2.1.16 --ignore-scripts? ? ? ? ?//執(zhí)行這個(gè)命令前,先把node_modules/目錄下已經(jīng)有的擴(kuò)展全部刪除了

到這里先不要忙去執(zhí)行 'npm run start' 運(yùn)行,先修改一下配置文件吧

sudo vi Gruntfile.js

上面配置文件中可以修改head插件監(jiān)聽的端口.默認(rèn)是9100,我改成9101

sudo vi _site/app.js

上面配置文件中可以修改head訪問es的端口,這里改的端口需要和你es的一致

最開始我在配置es的時(shí)候,配置了兩個(gè)允許跨域的選項(xiàng)就是為了這里head能夠訪問es

npm run start? //啟動(dòng)

啟動(dòng)之前保證es是啟動(dòng)的狀態(tài), 如果不想占用終端,就在es啟動(dòng)命令中添加一個(gè) '-d'參數(shù), 然后瀏覽器輸入http://localhost:9101訪問就可以,如果是云服務(wù)器,就用對(duì)應(yīng)的ip地址替換localhost

ps: 在這個(gè)插件中我們就能界面化es的操作,還是比較方便的,但是也正因?yàn)榉奖?而且這個(gè)擁有各種刪除什么的權(quán)限,只能在開發(fā)階段的時(shí)候用,生產(chǎn)環(huán)境一定要關(guān)閉他

elasticsearch集群搭建

集群中包含三臺(tái)服務(wù)器,內(nèi)網(wǎng)ip分別是

172.27.0.17(master)----主服務(wù)器纸颜,這也是上面步驟安裝的服務(wù)器

172.27.0.11(slave1)-----從服務(wù)器1

172.27.0.6 (slave2)-----從服務(wù)器2

按照前面的步驟分配在兩臺(tái)從服務(wù)器中安裝ES兽泣,注意下圖中是和主節(jié)點(diǎn)配置不一樣的地方

cluster.name: 集群名字必須一致

node.name: 從服務(wù)器節(jié)點(diǎn)名字(兩個(gè)從節(jié)點(diǎn)分別為slave1個(gè)slave2)

node.master: 是否為主節(jié)點(diǎn)

discovery.zen.ping.unicast.hosts: 節(jié)點(diǎn)向指定的主機(jī)發(fā)送單播請求,可以理解成尋找他的主節(jié)點(diǎn)胁孙,數(shù)組的形式證明可以多個(gè)唠倦,這里只有一個(gè)

三臺(tái)es服務(wù)器以及head插件都分別配置好并且啟動(dòng)后称鳞,直接訪問head所在服務(wù)器以及監(jiān)聽的端口,就能看到es集群了

IK分詞插件的安裝

詳細(xì)地址: https://github.com/medcl/elasticsearch-analysis-ik稠鼻,上面有具體的安裝步驟

版本選擇

上圖是版本的選擇冈止,我這里安裝的es版本是6.6.2,多以直接選擇ik的master版本

安裝

他提供了兩種安裝方式候齿,第一種是去?https://github.com/medcl/elasticsearch-analysis-ik/releases這個(gè)地址下載對(duì)應(yīng)的版本熙暴,然后在你自己的es目錄下的擴(kuò)展插件目錄下,解壓出來就可以毛肋,第二種方式是直接用es安裝插件的運(yùn)行命令怨咪,下面分別試一試

ps: 兩種安裝方式都記得切換到為es服務(wù)創(chuàng)建的賬號(hào)下進(jìn)行操作,比如我這里切換到?elasticsearch 這個(gè)賬號(hào)

1. 下載的方式安裝

進(jìn)入es的plugins目錄润匙,創(chuàng)建ik目錄诗眨,下載ik分詞插件,解壓

wge?https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.6.2/elasticsearch-analysis-ik-6.6.2.zip

停止掉es服務(wù)重新啟動(dòng)孕讳,在啟動(dòng)的日志中匠楚,就可以看到是否加載了ik插件

2.? 命令的方式安裝

這種安裝方式需要需要es版本大于等于5.5.1,剛剛的安裝方式我是在集群的master節(jié)點(diǎn)安裝的厂财,接下來我切換到slave1節(jié)點(diǎn)安裝

查看es運(yùn)行狀態(tài)芋簿,如果運(yùn)行中,直接停止

切換到es服務(wù)賬號(hào)璃饱,在es的bin目錄下執(zhí)行安裝命令

./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.6.2/elasticsearch-analysis-ik-6.6.2.zip

測試分詞器的分詞計(jì)劃

1. 默認(rèn)的standard

2. 剛剛安裝的ik分詞器

可以看到,默認(rèn)的standard是把每個(gè)字都單獨(dú)分開了,而ik_smart是只能的分解成了一些詞語,顯然后者比較適用

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末与斤,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子荚恶,更是在濱河造成了極大的恐慌撩穿,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,539評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件谒撼,死亡現(xiàn)場離奇詭異食寡,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)廓潜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評(píng)論 3 396
  • 文/潘曉璐 我一進(jìn)店門抵皱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人辩蛋,你說我怎么就攤上這事呻畸。” “怎么了堪澎?”我有些...
    開封第一講書人閱讀 165,871評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵擂错,是天一觀的道長。 經(jīng)常有香客問我樱蛤,道長钮呀,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,963評(píng)論 1 295
  • 正文 為了忘掉前任昨凡,我火速辦了婚禮爽醋,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘便脊。我一直安慰自己蚂四,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評(píng)論 6 393
  • 文/花漫 我一把揭開白布哪痰。 她就那樣靜靜地躺著遂赠,像睡著了一般。 火紅的嫁衣襯著肌膚如雪晌杰。 梳的紋絲不亂的頭發(fā)上跷睦,一...
    開封第一講書人閱讀 51,763評(píng)論 1 307
  • 那天,我揣著相機(jī)與錄音肋演,去河邊找鬼抑诸。 笑死,一個(gè)胖子當(dāng)著我的面吹牛爹殊,可吹牛的內(nèi)容都是我干的蜕乡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,468評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼梗夸,長吁一口氣:“原來是場噩夢啊……” “哼层玲!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起反症,我...
    開封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤辛块,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后惰帽,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體憨降,經(jīng)...
    沈念sama閱讀 45,850評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評(píng)論 3 338
  • 正文 我和宋清朗相戀三年该酗,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了授药。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,144評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡呜魄,死狀恐怖悔叽,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情爵嗅,我是刑警寧澤娇澎,帶...
    沈念sama閱讀 35,823評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站睹晒,受9級(jí)特大地震影響趟庄,放射性物質(zhì)發(fā)生泄漏括细。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評(píng)論 3 331
  • 文/蒙蒙 一戚啥、第九天 我趴在偏房一處隱蔽的房頂上張望奋单。 院中可真熱鬧,春花似錦猫十、人聲如沸览濒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽贷笛。三九已至,卻和暖如春宙项,著一層夾襖步出監(jiān)牢的瞬間乏苦,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評(píng)論 1 272
  • 我被黑心中介騙來泰國打工杉允, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留邑贴,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,415評(píng)論 3 373
  • 正文 我出身青樓叔磷,卻偏偏與公主長得像拢驾,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子改基,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評(píng)論 2 355