29. docker swarm 创建 三个节点 swarm 的集群

1.使用 vagrant 部署 三台 centos/7 的 环境

###Vagrantfile

# -*- mode: ruby -*-

# vi: set ft=ruby :

Vagrant.require_version ">= 1.6.0"

boxes = [

{

:name=>"docker-host",

:eth1=>"192.168.205.10",

:mem=>"1024",

:cpu=>"1",

:port=>"8888"

},

{

:name=>"docker-node1",

:eth1=>"192.168.205.11",

:mem=>"1024",

:cpu=>"1",

:port=>"8889"

},

{

:name=>"docker-node2",

:eth1=>"192.168.205.12",

:mem=>"1024",

:cpu=>"1",

:port=>"8890"

}

]

Vagrant.configure(2) do |config|

config.vm.box = "centos/7"

boxes.each do |opts|

config.vm.define opts[:name] do |config|

config.vm.hostname = opts[:name]

config.vm.network "forwarded_port", guest: 80, host: opts[:port]

config.vm.provider "vmware_fusion" do |v|

v.vmx["memsize"] = opts[:mem]

v.vmx["numvcpus"] = opts[:cpu]

end

config.vm.provider "virtualbox" do |v|

v.customize ["modifyvm", :id, "--memory", opts[:mem]]

v.customize ["modifyvm", :id, "--cpus", opts[:cpu]]

end

config.vm.network :private_network, ip: opts[:eth1]

end

end

config.vm.synced_folder "./labs", "/home/vagrant/labs"

config.vm.provision "shell", privileged: true, path: "./setup.sh"

end

2.编写 setup.sh

###setup.sh

#/bin/sh

# install some tools

sudo yum install -y wget

sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak

sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

sudo yum makecache

sudo yum -y update

sudo yum install -y git vim gcc glibc-static telnet bridge-utils

# install docker

curl -fsSL get.docker.com -o get-docker.sh

sh get-docker.sh

# start docker service

sudo groupadd docker

sudo usermod -aG docker vagrant

sudo systemctl start docker

rm -rf get-docker.sh

sudo tee /etc/docker/daemon.json <<-‘EOF‘

{

"registry-mirrors": ["https://v2ltjwbg.mirror.aliyuncs.com"]

}

EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

docker version

3.创建labs 文件夹 并启动容器

  mkdir  lables

  vagrant up

4. 进去 host 节点

  vagrant ssh docker-host

  声明节点

  docker swarm init --advertise-addr=192.168.205.10

  只需要 在其他节点运行这段代码 即可 进入这个节点

5. 进入node1节点 并 加入 swarm 集群

  进入docker-node1 节点

    vagrant ssh docker-node1

  运行刚刚生成的代码即可加入 swarm 集群

  

  在 host 节点查看集群节点情况

    docker-host 下

    docker node ls

  docker-node2 节点同理

6. 在 docker-machine 上进行 swarm 安装

  docker-machine create swarm-manager

  docker-machine create swarm-node1

  docker-machine create swarm-node2

  同理 加入

7. 在 labs.play-with-docker.com

  常见三个虚拟主机即可运行上面的命令即可

原文地址:https://www.cnblogs.com/zonehoo/p/11378863.html

时间: 2024-10-11 16:59:32

29. docker swarm 创建 三个节点 swarm 的集群的相关文章

实战1 伪分布式Hadoop单节点实例 CDH4集群安装 Hadoop

Hadoop由两部分组成 分布式文件系统HDFS 分布式计算框架MapReduce 其中分布式文件系统(HDFS)主要用于大规模数据的分布式存储,而MapReduce则构建在分布式文件系统之上,对于存储在分布式文件系统中的数据进行分布式计算. 详细的介绍个节点的作用 NameNode: 1.整个Hadoop集群中只有一个NameNode.它是整个系统的中枢,它负责管理HDFS的目录树和相关文件 元数据信息.这些信息是以"fsimage (HDFS元数据镜像文件)和Editlog(HDFS文件改动

搭建5个节点的Hadoop集群

搭建5个节点的Hadoop集群 节点 在实验室192.168.100.20:8006,用户名:root,密码:gzudb604,申请了5个节点,分别是: 192.168.100.120 #主节点 192.168.100.123 #节点1 192.168.100.126 #节点2 192.168.100.127 #节点3 192.168.100.128 #节点4 网络基本配置 255.255.255.0 #子网掩码 192.168.100.1 #网关 233.6.6.6 #使用阿里的DNS 各个节

近千节点的Redis集群运维经验总结

分享一篇好文章 redis越来越实用了 服务器宕机并恢复后,需要重启Redis实例,因为集群采用主从结构并且宕机时间比较长,此时宕机上的节点对应的节点都是主节点,宕掉的节点重启后都应该是从节点.启动Redis实例,我们通过日志发现节点一直从不断的进行主从同步.我们称这种现象为主从重同步. 主从同步机制 为了分析以上问题,我们首先应该搞清楚Redis的主从同步机制.以下是从节点正常的主从同步流程日志: 17:22:49.763 * MASTER <-> SLAVE sync started17:

搭建三节点高可用集群配置步骤,zookeeper

步骤一:干净的集群,全新的hdfs在第一台主机上配置配置文件core-site.xml:<configuration><property> <name>fs.defaultFS</name> <value>hdfs://bcqm1711</value></property><property> <name>hadoop.tmp.dir</name> <value>/home/

Docker中自动化搭建Hadoop2.6完全分布式集群

这一节将在<Dockerfile完成Hadoop2.6的伪分布式搭建>的基础上搭建一个完全分布式的Hadoop集群. 1. 搭建集群中需要用到的文件 [[email protected] hadoop-cluster]# ll total 340648# 用自动化构建集群的脚本 -rwxr-xr-x. 1 root root 2518 Aug 13 01:20 build-cluster.sh# 使用scp 来下载的文件的脚本 -rwxr-xr-x. 1 root root 314 Aug 1

GlusterFs卷类型分析及创建、使用(结合kubernetes集群分析)

引言 本文通过对卷类型的分析对比,来帮助读者选取生产环境最符合服务的挂载存储,命令可结合<glusterfs详解及kubernetes 搭建heketi-glusterfs>进行实验,下面进入正题 几种卷类型 基础卷:布式卷(distribute).条带卷(stripe).复制卷(replica).纠错卷(Dispersed ) 复合卷:分布式条带卷(distribute stripe).分布式复制卷(distribute replica).条带复制卷(stripe replica).分布式条

全新一台node节点加入到集群中

目录 前言 对新节点做解析 方法一 hosts 文件解析 方法二 bind 解析 测试 分发密钥对 推送 CA 证书 flanneld 部署 推送flanneld二进制命令 推送flanneld秘钥 推送flanneld启动文件 启动flanneld 查看etcd中网络数据 docker 安装配置 安装 创建配置文件 修改Docker启动参数 启动查看 kubelet 安装 推送 kubelet 二进制文件 创建 kubelet bootstrap kubeconfig 文件 分发 bootst

mysql进阶(三)MHA高可用集群

简介: 1.MHA目前在MySQL高可用方面是一个相对成熟的解决方案,是MySQL高可用环境下故障切换和主从提升的高可用软件 2.MHA能在短时间内完成故障切换,并且在最大程度上保证数据的一致性,以达到真正意义上的高可用 3.MHA基于mysql协议,通过mysql主从或主主进行复制 4.MHA官网:https://code.google.com/p/mysql-master-ha/ 软件由两部分组成:MHA Manager(关理节点)和MHA Node(数据节点) 1.MHA Manager可

docker应用-6(mysql+mycat 搭建数据库集群)

上一节,通过使用overlay网络,搭建了跨主机的docker容器集群.下面,在这个跨主机的docker容器集群环境下,搭建mysql 数据库集群. mysql主从自动备份和自动切换 从数据安全性考虑,对数据库的数据进行及时备份非常重要.mysql就提供了主从备份的机制,从数据库会非常及时的将主数据库的操作更新到从库上,从而当主数据库down掉之后,数据不会丢失:同时,也可以通过keepalived等程序来实现主库down掉之后,迅速将数据访问服务切换到从库,从而尽可能维护数据库服务的不间断运行