注:由于es和jdk是一个强依赖的关系,所以当我们在新版本的ElasticSearch压缩包中包含有自带的jdk,但是当我们的Linux中已经安装了jdk之后,就会发现启动es的时候优先去找的是Linux中已经装好的jdk,此时如果jdk的版本不一致,就会造成jdk不能正常运行。
如果Linux服务本来没有配置jdk,则会直接使用es目录下默认的jdk,反而不会报错。
安装es8之前版本装需要JDK8及以上版本,安装es8版本则需要JDK17。
docker pull elasticsearch:7.7.0
docker pull kibana:7.7.0
docker run --name elasticsearch -d -e ES_JAVA_OPTS=“-Xms512m -Xmx512m” -e “pe=single-node” -p 9200:9200 -p 9300:9300 elasticsearch:7.7.0
docker run -d -p 5601:5601 --name kibana --link elasticsearch:elasticsearch docker.io/kibana:7.7.0
访问http:ip:9200 回车后得到一串es配置数据,则es配置成功
访问ip:5601 可以正常进入Kibana,说明kibana容器启动成功。
systemctl stop firewalld
systemctl disable firewalld
vm.max_map_count=655360 #sysctl -p 重启生效
mkdir -p /data/elasticsearch/{data,logs,config,plugins}
chmod -R 777 /data/elasticsearch/data
chmod -R 777 /data/elasticsearch/logs
vi /data/elasticsearch/l
#跨域配置
abled: true
s.allow-origin: "*"
#集群名称
cluster.name: elasticsearch-cluster
#节点名称
node.name: node-1
#是不是有资格竞选主节点
node.master: true
#是否存储数据
node.data: true
#最大集群节点数
node.max_local_storage_nodes: 3
#网络地址
network.host: 0.0.0.0
#设置其他节点与该节点交互的IP地址
network.publish_host: 192.168.3.90
#端口
http.port: 9200
#内部节点之间沟通端口
p.port: 9300
#es7.x 之后新增的配置,写入候选主节点的设备地址,在开启服务后可以被选为主节点
discovery.seed_hosts: ["192.168.3.90","192.168.3.91","192.168.3.92"]
#es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master
cluster.initial_master_nodes: ["node-1", "node-2","node-3"]
docker run -d --name=elasticsearch --restart=always -p 9200:9200 -p 9300:9300 -v /data/elasticsearch/l:/usr/share/elasticsearch/l -v /data/elasticsearch/data:/usr/share/elasticsearch/data -v /data/elasticsearch/logs:/usr/share/elasticsearch/logs -v /data/elasticsearch/plugins:/usr/share/elasticsearch/plugins elasticsearch:7.7.0#运行kibana 注意IP改成你自己的
docker run --name kibana -e ELASTICSEARCH_HOSTS=192.168.3.90:9200 -p 5601:5601 -d kibana:7.7.0
curl -XGET “$(hostname):9200/_cluster/health?pretty=true”
{"cluster_name" : "elasticsearch-cluster","status" : "green","timed_out" : false,"number_of_nodes" : 3,"number_of_data_nodes" : 3,"active_primary_shards" : 3,"active_shards" : 6,"relocating_shards" : 0,"initializing_shards" : 0,"unassigned_shards" : 0,"delayed_unassigned_shards" : 0,"number_of_pending_tasks" : 0,"number_of_in_flight_fetch" : 0,"task_max_waiting_in_queue_millis" : 0,"active_shards_percent_as_number" : 100.0
}
curl ( h o s t n a m e ) : 9200 / c l u s t e r / s t a t s ? p r e t t y c u r l h t t p : / / (hostname):9200/_cluster/stats?pretty curl (hostname):9200/cluster/stats?prettycurl(hostname):9200/_cat/nodes?v&h=http,version,al,disk.used,disk.avail,disk.used_percent,heap.current,heap.percent,heap.max,ram.current,ram.percent,ram.max,master
docker logs --since 5m a13e768edb4aed7c
修改jvm.options文件:
PUT elasticsearch_index
{
“mappings”: {
“properties”: {
“name”: {
“type”: “text”
},
“desc”: {
“type”: “text”
}
}
}
}
GET _all/_settings
PUT elasticsearch_index/_doc/1
{
“name”:“zhang san”,
“desc”:“some things!”
}
GET /elasticsearch_index/_search
GET /elasticsearch_index/_count
GET /_cat/shards?v
GET /_cat/indices?v
GET _analyze // ES引擎中已有standard分词器, 所以可以不指定index
{
“analyzer”: “standard”,
“text”: “There-is & a DOG
in house”
}
// 关闭索引:
POST elasticsearch_index/_close
// 启用English停用词token filter
PUT elasticsearch_index/_settings
{
“analysis”: {
“analyzer”: {
“my_token_filter”: { // 自定义的分词器名称
“type”: “standard”,
“stopwords”: “english”
}
}
}
}
// 打开索引:
POST elasticsearch_index/_open
PUT /elasticsearch_index/_doc/ID
{
“name”:“验证PUT方法”
}
DELETE /elasticsearch_index/_doc/ID
本文发布于:2024-02-02 15:52:40,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170686035944834.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |