- 安装:
https://www.elastic.co/downloads/elasticsearch
- 下载安装包后解压
配置elastaticsearch.yml:
# ======================== Elasticsearch Configuration ========================= # # NOTE: Elasticsearch comes with reasonable defaults for most settings. # Before you set out to tweak and tune the configuration, make sure you # understand what are you trying to accomplish and the consequences. # # The primary way of configuring a node is via this file. This template lists # the most important settings you may want to configure for a production cluster. # # Please consult the documentation for further information on configuration options: # https://www.elastic.co/guide/en/elasticsearch/reference/index.html # # ---------------------------------- Cluster ----------------------------------- # # Use a descriptive name for your cluster: # #cluster.name: my-application # # ------------------------------------ Node ------------------------------------ # # Use a descriptive name for the node: # #node.name: node-1 # # Add custom attributes to the node: # #node.attr.rack: r1 # # ----------------------------------- Paths ------------------------------------ # # Path to directory where to store the data (separate multiple locations by comma): # #path.data: /path/to/data # # Path to log files: # #path.logs: /path/to/logs # # ----------------------------------- Memory ----------------------------------- # # Lock the memory on startup: # #bootstrap.memory_lock: true # # Make sure that the heap size is set to about half the memory available # on the system and that the owner of the process is allowed to use this # limit. # # Elasticsearch performs poorly when the system is swapping the memory. # # ---------------------------------- Network ----------------------------------- # # By default Elasticsearch is only accessible on localhost. Set a different # address here to expose this node on the network: # #network.host: 192.168.0.1 # # By default Elasticsearch listens for HTTP traffic on the first free port it # finds starting at 9200. Set a specific HTTP port here: # http.port: 9200 # # For more information, consult the network module documentation. # # --------------------------------- Discovery ---------------------------------- # # Pass an initial list of hosts to perform discovery when this node is started: # The default list of hosts is ["127.0.0.1", "[::1]"] # #discovery.seed_hosts: ["host1", "host2"] # # Bootstrap the cluster using an initial set of master-eligible nodes: # #cluster.initial_master_nodes: ["node-1", "node-2"] # # For more information, consult the discovery and cluster formation module documentation. # # --------------------------------- Readiness ---------------------------------- # # Enable an unauthenticated TCP readiness endpoint on localhost # #readiness.port: 9399 # # ---------------------------------- Various ----------------------------------- # # Allow wildcard deletion of indices: # #action.destructive_requires_name: false http.cors.enabled: true http.cors.allow-origin: "*" #----------------------- BEGIN SECURITY AUTO CONFIGURATION ----------------------- # # The following settings, TLS certificates, and keys have been automatically # generated to configure Elasticsearch security features on 15-07-2022 05:45:57 # # -------------------------------------------------------------------------------- # Enable security features xpack.security.enabled: false xpack.security.enrollment.enabled: true # Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents xpack.security.http.ssl: enabled: true keystore.path: certs/http.p12 # Enable encryption and mutual authentication between cluster nodes xpack.security.transport.ssl: enabled: true verification_mode: certificate keystore.path: certs/transport.p12 truststore.path: certs/transport.p12 # Create a new cluster with the current node only # Additional nodes can still join the cluster later # Allow HTTP API connections from anywhere # Connections are encrypted and require user authentication http.host: 127.0.0.1 # Allow other nodes to join the cluster from anywhere # Connections are encrypted and mutually authenticated #transport.host: 0.0.0.0 #----------------------- END SECURITY AUTO CONFIGURATION ------------------------- action.auto_create_index: .security,.monitoring*,.watches,.triggered_watches,.watcher-history* xpack.graph.enabled: false xpack.ml.enabled: false |
3.进入bin目录下,双击执行elasticsearch.bat
4.看到started说明启动成功,打开浏览器测试一下,如下图
http://localhost:9200
3、安装ElasticSearch-head插件
下载插件
GitHub - mobz/elasticsearch-head: A web front end for an elastic search cluster下载安装包
本地安装node环境,下载安装包解压后执行npm install; npm run start 即可;下载插件时如果插件版本过低可以用如下配置替换:
{ |
启动后访问 127.0.0.1:9100即可;
这个插件是elastaticsearch的图形化操作页面
- springboot集成:
pom文件加入:
<dependency> |
Application.yml 配置es地址及连接:没有设置账号密码,但是可以设置
spring: |
定义实体,映射es上的索引:es上需要建立名为accounts的索引,并插入数据,通过head可视化界面操作即可:
http://localhost:9200/accounts put请求
{
"mappings": {
"properties": {
"user": {
"type": "text"
},
"title": {
"type": "text"=
},
"desc": {
"type": "text"
}
}
}
}
http://localhost:9200/accounts/_doc/ post请求
{"user":"123","title":"123","desc":"123"}
@Data |
Service方法,实现es查询,采用ElasticsearchRestTemplate模板:
public void test() { |