- ElasticSearch 系统配置
- ElasticSearch 配置
- ElasticSearch 安装
- Kibana安装
- Docker 方式安装
- ElasticSearch 集群
- 参考文献
版本信息:7.13.4
ElasticSearch 系统配置
关闭swap
配置文件:/etc/security/limits.conf
1 2 3 4 5
| # allow user 'elasticsearch' mlockall * soft memlock unlimited * hard memlock unlimited # 或者采用下述替换 * - memlock unlimited
|
配置文件:/etc/sysctl.conf,或者执行命令sudo swapoff -a(配置文件/etc/fstab),
虚拟内存
配置文件:/etc/sysctl.conf,命令行sysctl -w vm.max_map_count=262144
文件句柄设置
配置文件:/etc/security/limits.conf,配置命令 ulimit -n(-a) 65536
线程数
配置文件:/etc/security/limits.conf,配置命令ulimit -u 4096
最大文件大小
配置文件:/etc/security/limits.conf
最大虚拟内存(地址空间)
配置文件:/etc/security/limits.conf
ElasticSearch 配置
配置文件:elasticsearch.yml
内存锁定
1
| bootstrap.memory_lock: true
|
elasticsearch.yml
常用配置说明
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
cluster.name: logging-prod
node.name: prod-data-2
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 192.168.1.10
http.port: 9200
transport.port: 9300
discovery.type: single-node
node.processors: 2
action.destructive_requires_name: true
discovery.seed_hosts: ["192.168.1.10:9300"]
cluster.initial_master_nodes: ["prod-data-2"]
|
jvm.options
常用配置说明
此配置文件不要进行修改,需要修改的话在jvm.options.d目录下创建配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| # 堆内存设置 -Xms2g -Xmx2g # 临时目录 -Djava.io.tmpdir=/path/to/temp/dir # JNA 临时目录 -Djna.tmpdir=/path/jna/temp/dir
#GC 相关设置 # jdk 14 以下使用CMS,当前还是CMS最好 8-13:-XX:+UseConcMarkSweepGC # jdk 14 以上 14-:-XX:+UseG1GC # GC日志 8:-Xloggc:logs/gc.log
|
ElasticSearch 安装
elasticsearch下载地址
修改配置
按照elasticsearch.yml
常用配置说明调整对应的配置
启动
1 2
| # -d 为后台启动 ./bin/elasticsearch -d
|
验证启动成功
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| http: # 访问此地址返回信息 { "name": "node-1", "cluster_name": "elasticsearch", "cluster_uuid": "0--VFiGwQF-r72vLFEufuQ", "version": { "number": "7.13.4", "build_flavor": "default", "build_type": "tar", "build_hash": "c5f60e894ca0c61cdbae4f5a686d9f08bcefc942", "build_date": "2021-07-14T18:33:36.673943207Z", "build_snapshot": false, "lucene_version": "8.8.2", "minimum_wire_compatibility_version": "6.8.0", "minimum_index_compatibility_version": "6.0.0-beta1" }, "tagline": "You Know, for Search" }
|
Kibana安装
Kibana下载地址
修改配置
1 2 3 4 5 6 7 8
| server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://127.0.0.1:9200"]
kibana.index: ".kibana"
|
启动
验证启动成功:http://127.0.0.1:5601
Docker 方式安装
1 2 3 4 5 6 7 8 9 10
| # 下载对应的版本 docker pull elasticsearch:7.13.4 docker pull kibana:7.13.4 # 创建网络 docker network create group # 启动elasticsearch docker run -d --name elasticsearch --net group -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e "ES_JAVA_OPTS=-Xms1g -Xmx1g" elasticsearch:7.13.4 # 启动kibana docker run -d --name kibana --net group -p 5601:5601 kibana:7.13.4
|
ElasticSearch 集群
docker-compose
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
| version: '3' services: cerebro: image: lmenezes/cerebro:latest container_name: cerebro ports: - "9000:9000" command: - -Dhosts.0.host=http://elasticsearch:9200 networks: - es7net kibana: image: kibana:7.13.4 container_name: kibana7 environment: - I18N_LOCALE=zh-CN - XPACK_GRAPH_ENABLED=true - TIMELION_ENABLED=true - XPACK_MONITORING_COLLECTION_ENABLED="true" ports: - "5601:5601" networks: - es7net elasticsearch: image: elasticsearch:7.13.4 container_name: es7_01 environment: - cluster.name=es_cluster - node.name=es7_01 - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - discovery.seed_hosts=es7_01,es7_02,es7_03 - cluster.initial_master_nodes=es7_01,es7_02,es7_03 ulimits: memlock: soft: -1 hard: -1 volumes: - es7data1:/usr/share/elasticsearch/data ports: - 9200:9200 networks: - es7net elasticsearch2: image: elasticsearch:7.13.4 container_name: es7_02 environment: - cluster.name=es_cluster - node.name=es7_02 - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - discovery.seed_hosts=es7_01,es7_02,es7_03 - cluster.initial_master_nodes=es7_01,es7_02,es7_03 ulimits: memlock: soft: -1 hard: -1 volumes: - es7data2:/usr/share/elasticsearch/data networks: - es7net elasticsearch3: image: elasticsearch:7.13.2 container_name: es7_03 environment: - cluster.name=es_cluster - node.name=es7_03 - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - discovery.seed_hosts=es7_01,es7_02,es7_03 - cluster.initial_master_nodes=es7_01,es7_02,es7_03 ulimits: memlock: soft: -1 hard: -1 volumes: - es7data3:/usr/share/elasticsearch/data networks: - es7net
volumes: es7data1: driver: local es7data2: driver: local es7data3: driver: local
networks: es7net: driver: bridge
|
执行命令docker-compose up
参考文献
- 系统配置参数
- 应用配置参数
- 主要检查项