1.全文搜索引擎 Elasticsearch 入門教程(http://www.ruanyifeng.com/blog/2017/08/elasticsearch.html)html
2.elasticsearch的一次體驗——1.Java環境的安裝(https://blog.csdn.net/lowerxiaoshen/article/details/79208758)java
3.Elasticsearch 權威指南(中文版)(https://es.xiaoleilu.com/)node
1.去java官網下載jdk8 java環境官方下載地址(https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)mysql
2.將下載好的壓縮包上傳到服務器。在這裏能夠選擇安裝ftp服務,也可使用在線導入安裝包的插件。linux
ftp安裝查看
lrzsz插件安裝查看 git
3.解壓文件並添加添加環境變量github
經過 vim /etc/profile
命令打開 profile 文件盤配置環境變量
文本最後添加sql
export JAVA_HOME=/home/lxshen/java/jdk1.8.0_161 #這個是本身的java文件的位置 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin
保存完以後輸入:source /etc/profile
命令使剛纔配置的環境變量生效
4.查看Java環境是否安裝成功 docker
到這裏說明Java環境安裝成功。數據庫
1. 安裝完 Java,就能夠跟着官方文檔安裝 Elastic。直接下載壓縮包比較簡單。
$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.zip $ unzip elasticsearch-5.5.1.zip $ cd elasticsearch-5.5.1/
2.接着,進入解壓後的目錄,運行下面的命令,啓動 Elastic。
$ ./bin/elasticsearch
3.若是這時報錯"max virtual memory areas vm.maxmapcount [65530] is too low",要運行下面的命令。
$ sudo sysctl -w vm.max_map_count=262144
若是出現這個錯誤,是由於使用root用戶啓動elasticsearch,elasticsearch是不容許使用root用戶啓動的,因此咱們須要添加用戶。
建立新用戶 建立一個用戶名爲:linuxidc [root@localhost ~]# adduser linuxidc 爲這個用戶初始化密碼,linux會判斷密碼複雜度,不過能夠強行忽略: [root@localhost ~]# passwd linuxidc 更改用戶 zhangbiao 的密碼 。 新的 密碼: 無效的密碼: 密碼未經過字典檢查 - 過於簡單化/系統化 從新輸入新的 密碼: passwd:全部的身份驗證令牌已經成功更新。
centos系統添加/刪除用戶和用戶組(https://blog.csdn.net/qq_31279347/article/details/82696731)
CentOS 7中添加一個新用戶並受權(https://www.linuxidc.com/Linux/2016-11/137549.htm)
adduser *** //添加用戶
passwd *** //給用戶賦值
添加完用戶以後:
用root用戶執行 : chown -R 文件夾名 用戶名
將這幾個壓縮包所在的文件夾及解壓完的文件夾權限給你新建的用戶。以後再使用新用戶啓動就OK了。
其餘幾個問題:https://segmentfault.com/a/1190000011899522
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
max_map_count 的值是指一個進程最多可用於的內存映射區(memory map areas),在調用malloc會用到,由mmap/mprotect生成。
解決辦法:
切換到root用戶修改配置/etc/sysctl.conf
su root
vim /etc/sysctl.conf
加入
vm.max_map_count=655360
而後使其生效
sysctl -p
[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]
文件描述符過低
解決辦法:
切換到root用戶修改/etc/security/limits.conf
su root
vim /etc/security/limits.conf
加入
* soft nofile 65536 * hard nofile 131072 * soft nproc 2048 * hard nproc 4096
使用supervisor啓動時,查看日誌仍然報下面的錯誤
[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]
解決辦法:
切換到root用戶修改vim /etc/supervisord.d/elasticsearch.conf
[supervisord] minfds=65536 minprocs=32768 [program:es] process_name=%(program_name)s_%(process_num)02d directory=/usr/local/elasticsearch-5.6.3/ command=/usr/local/elasticsearch-5.6.3/bin/elasticsearch ;autostart=true autorestart=false user=testuser numprocs=1
4.若是一切正常,Elastic 就會在默認的9200端口運行。這時,打開另外一個命令行窗口,請求該端口,會獲得說明信息。
$ curl localhost:9200 { "name" : "atntrTf", "cluster_name" : "elasticsearch", "cluster_uuid" : "tf9250XhQ6ee4h7YI11anA", "version" : { "number" : "5.5.1", "build_hash" : "19c13d0", "build_date" : "2017-07-18T20:44:24.823Z", "build_snapshot" : false, "lucene_version" : "6.6.0" }, "tagline" : "You Know, for Search" }
上面代碼中,請求9200端口,Elastic 返回一個 JSON 對象,包含當前節點、集羣、版本等信息。
按下 Ctrl + C,Elastic 就會中止運行。
默認狀況下,Elastic 只容許本機訪問,若是須要遠程訪問,能夠修改 Elastic 安裝目錄的config/elasticsearch.yml
文件,去掉network.host
的註釋,將它的值改爲0.0.0.0
,而後從新啓動 Elastic。
network.host: 0.0.0.0
上面代碼中,設成0.0.0.0
讓任何人均可以訪問。線上服務不要這樣設置,要設成具體的 IP。
https://blog.csdn.net/lck5602/article/details/79673087
一、下載安裝包
https://www.elastic.co/downloads/elasticsearch wget https://www.elastic.co/downloads/elasticsearch
二、解壓到文件夾
tar -zxvf elasticsearch-5.2.2.tar.gz -C /bigdata/
三、修改配置文件(在安裝目錄的config目錄下)
編輯配置文件elasticsearch.yml(配置es的相關配置)
vi /bigdata/elasticsearch-5.2.2/config/elasticsearch.yml 修改
cluster.name: ELK #集羣名稱,以此做爲是不是贊成集羣的判斷 node.name: es-01 #節點名稱,以此做爲集羣中不一樣節點的分區條件 path.data: /data/es/data #數據存儲地址 path.logs: /data/es/logs #日誌存儲地址 network.host: 192.168.1.34 #(主機地址)對外發布的網絡地址 http.port: 9200 #ES默認監聽的端口 discovery.zen.ping.unicast.hosts: ["node01"]
編輯配置文件jvm.options(jvm的相關配置)
IMPORTANT: JVM heap size #配置jvm的大小(默認配置是2G) -Xms2g -Xmx2g
編輯配置文件log4j2.properties(日誌打印輸出相關配置,通常不須要修改)
配置文件的參數也能夠在啓動的時候指定
例如:bin/elasticsearch -Ehttp.port=19200
本地快速啓動集羣
bin/elasticsearch #默認的配置啓動 bin/elasticsearch -Ehttp.port=19200 #修改端口號爲19200啓動 #看到started說明集羣啓動成功 輸入:http://ip:port 查看Elasticsearch服務狀態 查看節點時候組成集羣,在瀏覽器中輸入http://ip:port/_cat/nodes 例如: http:192.168.1.31:9200/_cat/nodes 查看集羣相關信息,執行http://ip:port/_cluster/stats http://192.168.1.31:9200/_cluster/stats
四、elasticsearch經常使用術語
Document文檔數據(就是具體存在ES中的一條數據)
Index索引(能夠理解爲mysql中的數據庫)
Type索引中的數據類型(能夠理解爲mysql中的table)
Field字段,文檔的屬性
Query DSL查詢語法
五、Elasticsearch中CRUD操做
Create建立文檔 POST /accounts/person/1 { "name":"John", "lastname":"Doe", "job_description":"Systems asministrator and Linux specialit" } #accounts 至關於索引Index #person 至關於類型Type Read讀取文檔 GET /accounts/person/1 update更新文檔 POST /accounts/person/1/_update { "name":"John", "lastname":"Doe", "job_description":"Systems asministrator and Linux specialit" } Delete刪除文檔 DELETE /accounts/person/1
六、ElasticSearch 中Query語法
第一種Query String GET /accounts/person/_search?q=john 第二種Query DSL GET /accounts/person/_search { "query" :{ "match" :{ "name" : "john" } } }
一、下載kabana
https://www.elastic.co/downloads/kibana
二、解壓縮
tar -zxvf kibana-6.2.3-darwin-x86_64.tar.gz -C /bigdata/
三、修改配置文件安裝啓動
修改config/kibana.yml
server.port: 5601 # Kibana對外訪問的端口 server.host: "192.168.1.31" #Kibana對外訪問的地址 elasticsearch.url: "http://192.168.1.31:9200" #Kibana須要訪問的ElasticSearch的地址 啓動服務後,看到server running的時候說明已經跑起來了
四、kabana經常使用功能
Discover數據搜索查看
Visualize圖表製做
Dashboard儀表盤製做
Timelion時序數據的高級可視化分析
DevTools開發者工具(常常會用到)
Managerment配置管理
一、下載
https://www.elastic.co/downloads/logstash
二、解壓縮
三、準備logstash 配置文件
input { stdin { } } output { elasticsearch { hosts => ["127.0.0.1:9200"] } stdout { codec => rubydebug } }
四、啓動
logstash -f logstash.conf