对于集群服务器来讲,要在每台机器上手动安装Docker是一件及其痛苦的事情,还好有Docker Machine这一工具,Docker三剑客中的一角.

一、Docker Machine介绍

  这个工具已经出了比较久了,Docker Machine官方介绍:https://docs.docker.com/v1.13/machine/overview/ ,按我的理解就是一个控制系的高手操作着地下一批人,犹如该图,面对不同的服务器,云、虚拟机、本地主机等。通过Docker Machine进行批量安装。

  

二、服务器环境介绍

  当前服务器版本CentOS7.2 64bit,Docker版本1.13.1,Docker Machine版本0.10.0。

  服务器列表:

    Master:182.61.xxx.218  -- A

    Slave:106.12.xxx.4 --B

    Slave:118.126.xxx.29 --C

    Slave:123.207.xxx.233 --D

  将通过服务器A完成在B、C和D上完成Docker环境的安装

三、完成Docker Machine搭建:

  首先我们在A服务器上安装Docker环境,安装过程可见:https://www.cnblogs.com/CKExp/p/8159269.html,在此直接开始Docker Machine的安装。

  在服务器A上开始安装Docker Machine,输入以下命令从docker仓库中下载下来,并完成权限配置,注意我这里下载的版本是0.10.0,如果需要更高的版本呢下载可以选择其它版本下载

 $ curl -L https://github.com/docker/machine/releases/download/v0.10.0/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine &&
chmod +x /tmp/docker-machine &&
sudo cp /tmp/docker-machine /usr/local/bin/docker-machine

  搭建成功,查看服务器版本:

docker-machine -v

  

四、用docker Machine配置子节点安装Docker engine

  首先我们首先得保证两个服务器的正常通讯,因此先生成密钥对,保证免交互登录。

  创建密钥对(在A主机操作),输入命令并一直回车

# ssh-keygen  

  拷贝公钥到B、C和D主机上,过程中需要确认连接、输入密码(直接登录目标主机的密码)等操作,正常进行即可。

# ssh-copy-id root@106.12.xxx.4

  然后通过该命令连接是否可以正常登录到目标主机

# ssh root@106.12.xxx.

  接下来,可以依次将docker环境安装到各子节点上,通过docker-machine提供的命令create及其各种附带指定, -d命令指定了引用的驱动类型,我这全是Linux下服务器,直接用generic即可,如果是其它类型,可以看一下官网提供的驱动类型。

# docker-machine create -d generic --generic-ip-address=106.12.xxx.4 --generic-ssh-user=root host3

  指定目标服务器命名为host3,当登录该服务器后,名称也变为了host3。

  

  加入成功,查看当前节点信息

# docker-machine ls

  

  至此,三台子节点服务器的Docker,环境安装完毕。

  接下来开始搭建swarm集群,完成服务的分发。

  本文地址:https://www.cnblogs.com/CKExp/p/9552272.html

  欢迎关注微信订阅号,有新的文章将同步到订阅号中

  

2018-09-01,望技术有成后能回来看见自己的脚步

Docker Machine搭建并加入节点的更多相关文章

  1. Docker Swarm搭建多服务器下Docker集群

    对于有多台服务器来讲,如果每一台都去手动操控,那将会是一件非常浪费时间的事情,毕竟时间这东西,于我们而言,十分宝贵,或许在开始搭建环境的时候耗费点时间,感觉是正常的,我也如此,花费大堆时间在采坑和填坑 ...

  2. Istio入门实战与架构原理——使用Docker Compose搭建Service Mesh

    本文将介绍如何使用Docker Compose搭建Istio.Istio号称支持多种平台(不仅仅Kubernetes).然而,官网上非基于Kubernetes的教程仿佛不是亲儿子,写得非常随便,不仅缺 ...

  3. docker swarm 搭建与服务更新

    一,docker swarm 是什么 Docker Swarm.Docker Machine与Docker Compose号称Docker三剑客Docker Swarm 和 Docker Compos ...

  4. docker——三剑客之Docker Machine

    Docker Machine是Docker官方三剑客项目之一,负责使用Docker的第一步,在多种平台上快速安装Docker环境.它支持多种平台,让用户在很短时间内搭建一套Docker主机集群. Ma ...

  5. 使用Docker Compose搭建Service Mesh

    使用Docker Compose搭建Service Mesh 本文将介绍如何使用Docker Compose搭建Istio.Istio号称支持多种平台(不仅仅Kubernetes).然而,官网上非基于 ...

  6. DOCKER 学习笔记7 Docker Machine 在阿里云实例化ECS 以及本地Windows 实例化虚拟机实战

    前言 通过以上6小节的学习,已经可以使用DOCKER 熟练的部署应用程序了.大家都可以发现使用 DOCKER 带来的方便之处,因为现在的话,只是在一台服务器上部署,这样部署,我们只需要一条命令,需要的 ...

  7. DOCKER 学习笔记7 Docker Machine 建立虚拟机实战,以及错误总结

    前言 通过以上6小节的学习,已经可以使用DOCKER 熟练的部署应用程序了.大家都可以发现使用 DOCKER 带来的方便之处,因为现在的话,只是在一台服务器上部署,这样部署,我们只需要一条命令,需要的 ...

  8. 容器技术之Docker Machine

    前文我们聊了下docker容器的资源限制,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13138725.html:今天我们来聊一聊docker machine ...

  9. 用 Docker Machine 创建 Azure 虚拟主机

    搭建环境向来是一个重复造轮子的过程,Docker Machine 则把用户搭建 Docker 环境的各种方案汇集在了一起.笔者在<Docker Machine 简介>一文中演示了使用 Do ...

随机推荐

  1. django(权限、认证)系统——自定义UserProfile储存User额外信息

    上篇文章我们引出了Django内置的权限控制系统,讲了安装,和最核心和基本的User模型的API和其Manager的API. 接下来我们继续深入下去,使用User对象做一些事情,首先当然就是创建一个U ...

  2. java集合框架之ArrayList

    参考http://how2j.cn/k/collection/collection-arraylist/363.html 使用数组的局限性 一个长度是10的数据:Hero[] heroArr=new ...

  3. 理解channel 工作原理以及源码

    Go 的并发特性  goroutines: 独立执行每个任务,并可能并行执行 channels: 用于 goroutines 之间的通讯.同步 一个简单的事务处理的例子  对于下面这样的非并发的程序: ...

  4. JUC中Lock和ReentrantLock介绍及源码解析

    Lock框架是jdk1.5新增的,作用和synchronized的作用一样,所以学习的时候可以和synchronized做对比.在这里先和synchronized做一下简单对比,然后分析下Lock接口 ...

  5. 【cogs 775】山海经 ——Segment Tree

    题目链接:      TP 题解:   我数据结构真心是弱啊= =. 线段树好厉害啊,一直不会区间最大连续和,今天刚学习了一下233. 维护前缀最大和后缀最大,越界最大(?),再维护一个区间最大,瞎搞 ...

  6. javascript && php &&java 轰炸!!!

    java && javascript && php 轰炸!!!恢复 1.javascript简介 *是基于对象和时间的驱动语言,应用于客户端. -----基于对象: * ...

  7. 一行代码实现数组去重(ES6)

    ES6中新增了Set数据结构,类似于数组,但是 它的成员都是唯一的 ,其构造函数可以接受一个数组作为参数,如: let array = [1, 1, 1, 1, 2, 3, 4, 4, 5, 3]; ...

  8. LaTeX 公式编辑

    推荐一篇关于LaTeX的文档:<一份不太简短的LATEX 2ε介绍> 1. 常用数学公式符号: 求期望 $\mathbb{E}$ \mathbb{E} 正负无穷 $+\infty$,$-\ ...

  9. 【学习笔记Part 1 ● Linux】

    本章目标 Linux简介 Linux发展 Linux界面熟悉 Linux常用命令 Linux简介 经常看到的或者熟悉的操作系统: Windows操作系统:Window 10或者Window 7 Mac ...

  10. nginx 隐藏版本号与WEB服务器信息

    nginx不仅可以隐藏版本信息,还支持自定义web服务器信息 先看看最终的隐藏结果吧 具体怎么实现呢,其实也很简单,请往下看 1 官网下载最新稳定版 wget http://nginx.org/dow ...