操作系统配置
在开始部署之前,需要对操作系统进行一些前置设置。
- 关闭swap:关闭Swap能够禁止内存和Swap交换,获得更好的性能,但是极端情况下,内存爆了,系统会卡死,登录都登录不上....这个需要根据自身的情况来判断是否要执行
sudo swapoff -a
- 增加进程可用的VMA的数量
sudo vi /etc/sysctl.conf
====
vm.max_map_count=262144
====
sudo sysctl -p
部署单节点OpenSearch
首先准备好docker-compose,然后编写以下docker-compose.yml
version: "3"
services:
opensearch-node1:
image: "opensearchproject/opensearch:2.11.1"
restart: always
environment:
- cluster.name=opensearch-cluster
- node.name=opensearch-node1
- discovery.seed_hosts=opensearch-node1
- cluster.initial_cluster_manager_nodes=opensearch-node1
- bootstrap.memory_lock=true
- OPENSEARCH_HOSTS='["https://opensearch-node1:9200"]'
- logger.deprecation.level=warn
- "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 65535
hard: 65535
networks:
- inner
volumes:
- opensearch:/usr/share/opensearch/data
- ./conf/internal_users.yml:/usr/share/opensearch/config/opensearch-security/internal_users.yml:ro
ports:
- "9200:9200"
volumes:
opensearch:
networks:
inner:
external: true
需要部署集群可以参考这个文件:docker-compose.yml,主要变化的地方是集群发现的配置,对着修改就可以了
部署完之后,可以使用curl快速验证一下
curl https://localhost:9200 -ku admin:<password>
部署OpenSearch DashBoard
OpenSearch DashBoard是OpenSearch的面板,可以简单认为等于Kibana,但是OpenSearch又包装了下(还挺不错的来着)
version: "3.0"
services:
opensearch-dashboard:
image: opensearchproject/opensearch-dashboards:2.11.1
restart: always
environment:
OPENSEARCH_HOSTS: '["https://opensearch-node1:9200"]'
networks:
- inner
- traefik
networks:
traefik:
external: true
inner:
external: true