安裝ElasticSearch需要安裝ElasticSearch服務器和一個可視化界面(Kibana),它們的關係就和mysql和mysqlworkbench一樣。
安裝ElasticSearch
先從鏡像倉庫拉一個鏡像過來(版本自己選擇) docker pull elasticsearch:7.4.2
創建映射目錄方面和docker內的一些文件做映射(方便配置)
mkdir -p /mydata/elasticsearch/config
mkdir -p /mydata/elasticsearch/data
啓動docker容器 name是名字 p是端口(9200是供http訪問,9300集羣中節點的信息傳遞) -e是一些設置,單個節點,並且設置JVM最小內存64m最大128m否則會佔用全部 -v就是設置文件映射目錄,方面在外部配置文件和查看數據
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e “discovery.type=single-node” -e ES_JAVA_OPTS="-Xms64m -Xmx128m" -v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /mydata/elasticsearch/data:/usr/share/elasticsearch/data -v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins -d elasticsearch:7.4.2
給elasticsearch.yml寫入http.host(注意要符合yml規範,k前一個空格,冒號爲賦值,值與冒號也要有一個空格)
echo “http.host:0.0.0.0”>>/mydata/elasticsearch/config/elasticsearch.yml
如果是在阿里雲服務器上,需要開放9200和9300端口
如果出現權限不足,可以chmod -R 777 /mydata/elasticsearch/ 給所有用戶賦予讀寫和執行的權限。
可以訪問指定主機的9200端口查看是否安裝成功,可以發現是有成功響應的數據的
安裝Kibana
先從鏡像倉庫拉一個鏡像過來(版本自己選擇) docker pull kibana:7.4.2
然後啓動一個實例
docker run --name kibana -e ELASTICSEARCH_URL=http://120.27.240.223:9200 -p 5601:5601 -d kibana:7.4.2
URL就是安裝ES的主機的IP+端口,可以在5601端口進入Kibana
因爲Kibana的原理就是給ES發請求,因此也可以使用Postman來代替Kibana
使用Postman操作ES
把測試Elasticsearch的信息放在一個Collection中
比如剛剛的頁面就可以使用postman來發送請求,因爲在ES中只支持JSON格式,因此就使用JSON格式顯示。
ES的基本操作
- 查看所有節點
- 查看所有節點的健康狀況
- 查看主節點信息
- 保存數據:索引名,類型名,唯一標識對應數據庫的數據庫名,表明,和唯一索引
- post也可以新增和更新,可以不帶id,自動生成id
- 查詢數據(每次被更新都會版本號改變,可以用於樂觀鎖中,在修改時攜帶seq_num)
- 更新,_update會對比原數據(需要寫到doc裏),如果一致就不會改變原來數據的版本等,而前面的put和post是直接替換
- 更新增加屬性
- 刪除信息
- 刪除索引(在ES中不能進行刪除類型)
- 可以使用_bulk完成批量操作
這些就是一些簡單的數據操作!