一:环境:
阿里云ECS
docker
elasticsearch7.12.0 (我遇到的坑,7.10版本死活部署不了集群)
二:步骤
创建文件夹,并给与权限
mkdir -p /downloads/elasticsearch/data1
mkdir -p /downloads/elasticsearch/data2
mkdir -p /downloads/elasticsearch/data3
chmod 777 /downloads/elasticsearch/data1
chmod 777 /downloads/elasticsearch/data2
chmod 777 /downloads/elasticsearch/data3
创建文件
touch /downloads/elasticsearch/es1.yml
touch /downloads/elasticsearch/es2.yml
touch /downloads/elasticsearch/es3.yml
es1.yml内容
cluster.name: elk
node.name: ela1
node.data: true
network.host: 0.0.0.0
http.port: 9200
transport.port: 9300
discovery.seed_hosts:
- 106.14.250.100:9300
- 106.14.250.100:9301
- 106.14.250.100:9302
cluster.initial_master_nodes: [“ela1”, “ela2”, “ela3”]
http.cors.enabled: true
http.cors.allow-origin: “*”
es2.yml内容
cluster.name: elk
node.name: ela2
node.data: true
network.host: 0.0.0.0
http.port: 9201
transport.port: 9301
discovery.seed_hosts:
- 106.14.250.100:9300
- 106.14.250.100:9301
- 106.14.250.100:9302
cluster.initial_master_nodes: [“ela1”, “ela2”, “ela3”]
http.cors.enabled: true
http.cors.allow-origin: “*”
es3.yml
cluster.name: elk
node.name: ela3
node.data: true
network.host: 0.0.0.0
http.port: 9202
transport.port: 9302
discovery.seed_hosts:
- 106.14.250.100:9300
- 106.14.250.100:9301
- 106.14.250.100:9302
cluster.initial_master_nodes: [“ela1”, “ela2”, “ela3”]
http.cors.enabled: true
http.cors.allow-origin: “*”
三,修改/etc/sysctl.conf文件
增加 vm.max_map_count=262144
执行 sysctl -p
四、创建脚本1.sh (可以不创建手动执行,我是嫌麻烦)
docker stop ES01
docker rm ES01
docker stop ES02
docker rm ES02
docker stop ES03
docker rm ES03
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 -v /downloads/elasticsearch/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /downloads/elasticsearch/data1:/usr/share/elasticsearch/data --name ES01 elasticsearch:7.12.0
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9201:9201 -p 9301:9301 -v /downloads/elasticsearch/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /downloads/elasticsearch/data2:/usr/share/elasticsearch/data --name ES02 elasticsearch:7.12.0
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9202:9202 -p 9302:9302 -v /downloads/elasticsearch/es3.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /downloads/elasticsearch/data3:/usr/share/elasticsearch/data --name ES03 elasticsearch:7.12.0