1.首先需要安装docker最新版,docker 目前自带swarm容器编排工具

2.选中一台机器作为master,执行命令sudo docker  swarm init [options]

3,再需要加入集群的集群上执行此命令

4.可以使用sudo docker node ls此命令来查询节点数

5编写docker-compose.yaml文件,目前我使用的是version 3版本,version2和3有区别,具体看官网介绍

贴一份完整的docker-compose.yaml供大家参考

version: '3'

services:
zookeeper:
image: zookeeper
ports:
- "2181:2181"
- "2182:2182"
volumes:
- "/data/clickhouse/zk/data:/data"
- "/data/clickhouse/zk/log:/datalog"
deploy:
placement:
constraints:
- node.hostname == SHA11DMPHAMP01
# networks:
# - clickhouse clickhouse203:
image: yandex/clickhouse-server
container_name: clickhouse203
expose:
- "9000"
- "8123"
user: root
privileged: true
deploy:
placement:
constraints:
- node.hostname == SHA11DMPHDOP01
ports:
- "111.250.128.203:9000:9000"
- "111.250.128.203:8123:8123"
volumes:
- "/data/clickhouse/etc:/etc/clickhouse-server"
- "/data/clickhouse/data:/var/lib/clickhouse"
- "/data/clickhouse/log:/var/log/clickhouse-server"
ulimits:
nofile:
soft: 262144
hard: 262144
depends_on:
- "zookeeper"
# networks:
# - clickhouse_network clickhouse204:
image: yandex/clickhouse-server
container_name: clickhouse204
expose:
- "9000"
- "8123"
user: root
privileged: true
deploy:
placement:
constraints:
- node.hostname == SHA11DMPHDOP02
ports:
- "111.250.128.204:9001:9000"
- "111.250.128.204:8124:8123"
volumes:
- "/data/clickhouse/etc:/etc/clickhouse-server"
- "/data/clickhouse/data:/var/lib/clickhouse"
- "/data/clickhouse/log:/var/log/clickhouse-server"
ulimits:
nofile:
soft: 262144
hard: 262144
depends_on:
- "zookeeper"
# networks:
# - clickhouse clickhouse205:
image: yandex/clickhouse-server
container_name: clickhouse205
expose:
- "9000"
- "8123"
user: root
privileged: true
deploy:
placement:
constraints:
- node.hostname == SHA11DMPHDOP03
ports:
- "111.250.128.205:9002:9000"
- "111.250.128.205:8125:8123"
volumes:
- "/data/clickhouse/etc:/etc/clickhouse-server"
- "/data/clickhouse/data:/var/lib/clickhouse"
- "/data/clickhouse/log:/var/log/clickhouse-server"
ulimits:
nofile:
soft: 262144
hard: 262144
depends_on:
- "zookeeper"
# networks:
# - clickhouse clickhouse206:
image: yandex/clickhouse-server
container_name: clickhouse206
expose:
- "9000"
- "8123"
user: root
privileged: true
deploy:
placement:
constraints:
- node.hostname == SHA11DMPHDOP04
ports:
- "111.250.128.206:9003:9000"
- "111.250.128.206:8126:8123"
volumes:
- "/data/clickhouse/etc:/etc/clickhouse-server"
- "/data/clickhouse/data:/var/lib/clickhouse"
- "/data/clickhouse/log:/var/log/clickhouse-server"
ulimits:
nofile:
soft: 262144
hard: 262144
depends_on:
- "zookeeper"
# networks:
# - clickhouse
#networds:
# clickhouse_network:

docker-compose.yaml

clickhouse的具体配置我就不介绍了,配置方面可以看我上一篇博客

希望大家尊重作者版权, 未经允许不得转载,违者必究!!

使用容器编排工具docker swarm安装clickhouse多机集群的更多相关文章

  1. Docker Swarm和Kubernetes在大规模集群中的性能比较

    Contents 这篇文章主要针对Docker Swarm和Kubernetes在大规模部署的条件下的3个问题展开讨论.在大规模部署下,它们的性能如何?它们是否可以被批量操作?需要采取何种措施来支持他 ...

  2. Docker swarm结合Openresty部署rabbitmq集群

    Docker swarm结合Openresty部署rabbitmq集群 大家好,年底了,年味儿越来越浓了.2019年的寒冬被定义为未来10年中最好的一年,对于这一说法悲观的人和乐观的人的理解是不一样的 ...

  3. 用Docker swarm快速部署Nebula Graph集群

    用Docker swarm快速部署Nebula Graph集群 一.前言 本文介绍如何使用 Docker Swarm 来部署 Nebula Graph 集群. 二.nebula集群搭建 2.1 环境准 ...

  4. 本文介绍如何使用 Docker Swarm 来部署 Nebula Graph 集群,并部署客户端负载均衡和高可用

    本文作者系:视野金服工程师 | 吴海胜 首发于 Nebula Graph 论坛:https://discuss.nebula-graph.com.cn/t/topic/1388 一.前言 本文介绍如何 ...

  5. Docker - 容器编排工具 compose 之安装

    准备 首先,在使用和安装 docker compose之前,我们应该确保我们已经安装了 docker engine. 安装 官网上面有好多种安装方式,由于我们现在是在使用Docker, 个人感觉应该以 ...

  6. Docker系列10—容器编排工具Docker Compose详解

    本文收录在容器技术学习系列文章总目录 1.Docker Compose 概述 Compose是一个用于定义和运行多容器Docker应用程序的工具.使用Compose,您可以使用Compose文件来配置 ...

  7. Docker Swarm(十)Portainer 集群可视化管理

    前言 搭建好我们的容器编排集群,那我们总不能日常的时候也在命令行进行操作,所以我们需要使用到一些可视化的工具,Docker图形化管理提供了很多工具,有Portainer.Docker UI.Shipy ...

  8. 在Docker中安装和部署MongoDB集群

    此文已由作者袁欢授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 在Docker中安装mongodb 采用的mongodb镜像:https://registry.hub.doc ...

  9. docker swarm快速部署redis分布式集群

    环境准备 四台虚拟机 192.168.2.38(管理节点) 192.168.2.81(工作节点) 192.168.2.100(工作节点) 192.168.2.102(工作节点) 时间同步 每台机器都执 ...

随机推荐

  1. LinkedList与Queue

    https://blog.csdn.net/u013087513/article/details/52218725

  2. 在source中查看代码

    如果你想查看网页的代码,有时会出现这种情况: o my god!啥都看不出来!这要怎么办?放弃吗,当然不啦! 点击这个神奇的按钮,奇迹发生了! 瞬间变成这个样子,哇,好激动!

  3. php之微信公众号发送模板消息

    讲一下开发项目中微信公众号发送模板消息的实现过程(我用的还是Thinkphp5.0). 先看一下效果,如图: 就是类似于这样的,下面讲一下实现过程: 第一步:微信公众号申请模板消息权限: 立即申请: ...

  4. Pyinstaller 打包exe

    安装 ​ pip insatll Pyinstaller 参数 pyinstaller -Fw main.py 参数 概述 -F,-onefile 打包一个单个文件,如果你的代码都写在一个.py文件的 ...

  5. elasticsearch6.x集群环境部署

    elasticsearch集群部署安装jdk chmod 755 jdk-8u161-linux-x64.tar.gztar -zxvf jdk-8u161-linux-x64.tar.gzcp jd ...

  6. UML在代码中的展现

    依赖:一个类使用了另外一个类,这种关系是临时的.脆弱的. 如人需要过河,需要船,这时人.过河(船)  中船被当做参数传入,船的实现变化会影响过河方法.     聚合:体现是整体与部分.has-a的关系 ...

  7. 使用ES6的模块编写web页面碰到的坑

    昨天写最近在做的web应用时,在web页面的js文件中使用了模块功能,这样在html文件中只需要导入一个js就好了

  8. flask轻量级框架入门

    # -*- encoding: utf-8 -*- #导入Flask类, 导入重定向,url_for是简易寻址跳转, from flask import Flask,redirect,url_for, ...

  9. video标签,在移动端获取第一帧作为展示

    写在前面 video标签,获取第一帧作为poster.网上能找着很多案例,很容易实现,在pc端 效果明显.但是在移动端,这些实现方式并不能起作用.原因是 移动端 对video标签的限制,许多video ...

  10. Servlet 易错点和注意点

    目录 @WebServlet("/")与@WebServlet("/*")的区别 @WebServlet("/")与@WebServlet( ...