安装ES集群
下载ES镜像
官方dockerhub中最新的ES镜像为7.12.1版本,下载:
docker pull elasticsearch:7.12.1
创建ES目录
mkdir -p /mydata/elasticsearch/config
mkdir -p /mydata/elasticsearch/data
chmod -R 777 /mydata/elasticsearch/data
修改 /etc/sysctl.conf
vim /etc/sysctl.conf
vm.max_map_count = 262144
sysctl -p
修改es配置文件
配置文件如下所示:各个节点只需修改node.name即可
controller1:
vim /mydata/elasticsearch/config/elasticsearch.yml
node.name: controller1
network.host: 0.0.0.0
cluster.name: elasticsearch_cluster
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ['192.168.10.190', '192.168.10.191', '192.168.10.192']
discovery.zen.minimum_master_nodes: 2
http.port: 9200
transport.tcp.port: 9300
cluster.initial_master_nodes: controller1
controller2:
vim /mydata/elasticsearch/config/elasticsearch.yml
node.name: controller2
network.host: 0.0.0.0
cluster.name: elasticsearch_cluster
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ['192.168.10.190', '192.168.10.191', '192.168.10.192']
discovery.zen.minimum_master_nodes: 2
http.port: 9200
transport.tcp.port: 9300
cluster.initial_master_nodes: controller1
controller3:
vim /mydata/elasticsearch/config/elasticsearch.yml
node.name: controller3
network.host: 0.0.0.0
cluster.name: elasticsearch_cluster
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ['192.168.10.190', '192.168.10.191', '192.168.10.192']
discovery.zen.minimum_master_nodes: 2
http.port: 9200
transport.tcp.port: 9300
cluster.initial_master_nodes: controller1
启动
docker run --name elasticsearch --net="host" -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms256m -Xmx256m" \
-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.12.1
启动完成,查看ES集群状态
浏览器访问:http://192.168.10.191:9200/_cat/health?v
查看ES node状态