docker compose部署opensearch集群

docker compose 配置

假设有两台电脑

A电脑的ip为192.168.1.100

B电脑的ip为192.168.1.103

A电脑的docker compose 配置

bash 复制代码
version: '3'

services:
      
  opensearch:
    image: opensearchproject/opensearch:2.1.0
    container_name: opensearch-node-1
    environment:
      - cluster.name=opensearch-cluster
      - node.name=opensearch-node-1
      - network.publish_host=192.168.1.100
      - discovery.seed_hosts=192.168.1.100,192.168.1.103
      - cluster.initial_cluster_manager_nodes=192.168.1.100,192.168.1.103
      - bootstrap.memory_lock=true
      - "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m"
      - DISABLE_INSTALL_DEMO_CONFIG=true
      - DISABLE_SECURITY_PLUGIN=true
    ulimits:
      memlock:
        soft: -1
        hard: -1
      nofile:
        soft: 65536
        hard: 65536
    ports:
      - "9200:9200"
      - "9300:9300"
    volumes:
      - opensearch-data:/usr/share/opensearch/data
      - opensearch-config:/usr/share/opensearch/config

volumes:
  opensearch-data:
  opensearch-config:

B电脑的docker compose 配置

bash 复制代码
version: '3'

services:
      
  opensearch:
    image: opensearchproject/opensearch:2.1.0
    container_name: opensearch-node-3
    environment:
      - cluster.name=opensearch-cluster
      - node.name=opensearch-node-3
      - network.publish_host=192.168.1.103
      - discovery.seed_hosts=192.168.1.100,192.168.1.103
      - cluster.initial_cluster_manager_nodes=192.168.1.100,192.168.1.103
      - bootstrap.memory_lock=true
      - "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m"
      - DISABLE_INSTALL_DEMO_CONFIG=true
      - DISABLE_SECURITY_PLUGIN=true
    ulimits:
      memlock:
        soft: -1
        hard: -1
      nofile:
        soft: 65536
        hard: 65536
    ports:
      - "9200:9200"
      - "9300:9300"
    volumes:
      - opensearch-data:/usr/share/opensearch/data
      - opensearch-config:/usr/share/opensearch/config

volumes:
  opensearch-data:
  opensearch-config:

设置内存

临时

bash 复制代码
sysctl -w vm.max_map_count=262144

永久

Disable memory paging and swapping performance on the host to improve performance.

禁用主机上的内存分页和交换性能以提高性能。

ps:这个看情况,内存大的话,也可以关掉

bash 复制代码
sudo swapoff -a

Increase the number of memory maps available to OpenSearch.

增加OpenSearch可用的内存映射数量。

bash 复制代码
# Edit the sysctl config file
sudo vi /etc/sysctl.conf

# Add a line to define the desired value
# or change the value if the key exists,
# and then save your changes.
vm.max_map_count=262144

# Reload the kernel parameters using sysctl
sudo sysctl -p

# Verify that the change was applied by checking the value
cat /proc/sys/vm/max_map_count

两边同时启动

bash 复制代码
docker compose up -d

nginx设置集群

bash 复制代码
    server {
        listen       9200;
        location / {
            proxy_pass http://opensearch/;
			proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Forwarded-Port $server_port;
            proxy_set_header X-Forwarded-Host $http_host;

        }
    }
	upstream opensearch {
		server 192.168.1.100:9200;
		server 192.168.1.103:9200;
	}

参考

https://www.cnblogs.com/lz0925/p/12011026.html

https://opensearch.org/docs/latest/install-and-configure/install-opensearch/docker/

相关推荐
coder_copy40 分钟前
IDEA 2024 使用总结,踩坑
docker·intellij-idea
高峰君主2 小时前
Docker容器持久化
docker·容器·eureka
能来帮帮蒟蒻吗2 小时前
Docker安装(Ubuntu22版)
笔记·学习·spring cloud·docker·容器
秦始皇爱找茬10 小时前
docker部署Jenkins工具
docker·容器·jenkins
zru_960212 小时前
Docker 部署 Redis:快速搭建高效缓存服务
redis·缓存·docker
Golinie15 小时前
Docker底层原理浅析 | namespace+cgroups+文件系统
docker·容器·文件系统·cgroups·unionfs
晓柏15 小时前
OpenEuler 系统安装 docker 和 nvidia-docker
docker
FreeBuf_16 小时前
新型恶意软件采用独特混淆技术劫持Docker镜像
运维·docker·容器
李菠菜18 小时前
CentOS系统指定版本Docker与Docker-Compose在线安装教程
docker·容器·centos
包达叔18 小时前
dockercompose文件仓库
docker