转自:https://www.cnblogs.com/jsonhc/p/7832642.html

安装之前的环境:

两个节点,节点1:192.168.101.14,用来创建manager1 machine,节点2:192.168.101.15,被节点1通过远程创建work1 machine

两个节点环境:都是基于centos7,节点1安装了docker daemon,节点2没有安装任何docker环境(节点1通过generic驱动来安装machine)

1、在节点1上安装docker-machine

[root@docker tools]# mv docker-machine  /usr/local/bin/
[root@docker bin]# chmod +x docker-machine

docker-machine的二进制文件通过之前的文章进行下载,这里不详述了,安装好docker-machine之后,为节点1创建manager1 machine

[root@docker ~]# ssh-keygen
[root@docker ~]# ssh-copy-id root@192.168.101.14 将key传给自己
[root@docker ~]# docker-machine create -d generic --generic-ip-address=192.168.101.14 --generic-ssh-key ~/.ssh/id_rsa --generic-ssh-user=root manager1

由于是在节点1本机上创建machine,所以key传给自己,现在在节点1上通过docker-machine为节点2创建work1 machine

[root@docker ~]# ssh-copy-id root@192.168.101.15      将key传给15
[root@docker ~]# docker-machine create -d generic --generic-ip-address=192.168.101.15 --generic-ssh-key ~/.ssh/id_rsa --generic-ssh-user=root work1

这样操作之后,能够在节点2(192.168.101.15)上安装docker、docker-machine等环境

2、查看创建完成后的machine:

[root@manager1 ~]# docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
manager1 - generic Running tcp://192.168.101.14:2376 v17.09.0-ce
work1 - generic Running tcp://192.168.101.15:2376 v17.10.0-ce

3、在manager1节点上创建swarm,并将manager1节点作为swarm的管理节点:

[root@manager1 ~]# docker swarm init --advertise-addr 192.168.101.14

4、创建的swarm有一个manager1节点,也就是管理节点了,现在为swarm添加一个work节点,将work1节点添加到swarm集群中:

[root@work1 ~]# docker swarm join --token SWMTKN-1-3fcp657en1bt3kemq4okp411fzxsoet5ayvvos1ipxlogliejr-3qznuxm91ccgx0rgx6zhg6h4z 192.168.101.14:2377
This node joined a swarm as a worker.

在主机192.168.101.15也就是work1节点上执行此命令(将自己work1节点添加到swarm中去)

如果不知道添加work节点的命令,可以通过在manager1节点上执行下面命令,查看具体添加work节点的命令:

# docker swarm join-token worker

将得到后的命令结果在work节点上执行

5、在swarm集群中的管理节点上查看节点信息:

[root@manager1 ~]# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
fr67r1aa0oq3hkhd7knqev61w * manager1 Ready Active Leader
kfihkvme0tp6vao1j5894y3cl work1 Ready Active

还可以通过docker info查看更加详细的信息(当然还是在管理节点上执行)

利用docker-machine安装swarm的更多相关文章

  1. docker学习笔记(一)-vagrant/docker machine安装docker,阿里云通过docker machine安装docker

    首先需要先安装virtualbox https://www.vagrantup.com/ 下载安装vagrant 安装完毕后通过vagrant下载镜像,生成实例 mkdir test_centos7 ...

  2. 在CentOS下利用Docker一键安装seafile

    https://cloud.seafile.com/published/seafile-manual-cn/docker/pro-edition/%E7%94%A8Docker%E9%83%A8%E7 ...

  3. Docker(五):Docker 三剑客之 Docker Machine

    上篇文章Docker(四):Docker 三剑客之 Docker Compose介绍了 Docker Compose,这篇文章我们来了解 Docker Machine . Docker Machine ...

  4. 容器技术之Docker Machine

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

  5. Docker Machine 简介

    Docker Machine 是什么? Docker Machine 是 Docker 官方提供的一个工具,它可以帮助我们在远程的机器上安装 Docker,或者在虚拟机 host 上直接安装虚拟机并在 ...

  6. Docker(二十五)-Docker Machine

    Docker Machine 是什么? Docker Machine 是 Docker 官方提供的一个工具,它可以帮助我们在远程的机器上安装 Docker,或者在虚拟机 host 上直接安装虚拟机并在 ...

  7. Docker:安装部署RabbitMQ

    前言 今天原本想讲解SpringBoot集成RabbitMQ的,临近开始写时才发现家里的电脑根本没有安装RabbitMQ呀.这下只好利用已有的阿里云服务器,直接Docker安装一下了,顺道记录下,算是 ...

  8. docker showdoc安装

    自动脚本安装 前言 自动脚本脚本利用docker来安装运行环境,适用于linux服务器.如果你的服务器没有docker服务,脚本会尝试安装之.安装docker的过程可能有些慢.如果你已经安装过dock ...

  9. docker方式安装zabbix

    这个示例展现了如何运行支持MySQL数据库的Zabbix server,基于Nginx web服务器运行Zabbix web接口,以及Zabbix Java gateway. 1. 启动一个空的MyS ...

  10. centos7下安装docker(24docker swarm 数据管理)

    service的容器副本会scal up/down,会failover,会在不同的主机上创建和销毁,这就引出一个问题,如果service有数据,那么这些数据该如何存放呢? 1.打包在容器中: 显然不行 ...

随机推荐

  1. Java项目部署服务器操作

    有 2个工具需要下载,我使用的是 xshell(操作Linux命令),xftp5(操作文件传输) 需要知道服务器 ip ,账号,密码 xshell连接时,协议选择SSH连接,其他正常输入. xftp5 ...

  2. Java 3-Java 基本数据类型

    Java 基本数据类型 变量就是申请内存来存储值.也就是说,当创建变量的时候,需要在内存中申请空间. 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据. 因此,通过定义不 ...

  3. php添加多组数据到数据库

    //添加sql的数据 $sqldatas=getParam('sqldatas');//这里的sqldatas是从前台传过来的json字符串 //将json字符串转为json对象 $sqldata=j ...

  4. 20165205 2017-2018-2 《Java程序设计》实验三 敏捷开发与XP实践

    20165205 2017-2018-2 <Java程序设计>实验三 敏捷开发与XP实践 实验内容 检查点1: 安装alibaba 插件,解决代码中的规范问题 首先把搭档加入到自己的项目中 ...

  5. Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录显示全局异常信息

    </pre>Spring MVC 学习笔记10 -- 实现简单的用户管理(4.3)用户登录--显示全局异常信息<p></p><p></p>& ...

  6. 这个开挂一般的工具,承包你所有的PPT

    本文转自知乎 作者:挖数 ----------------------------------------------------- 俗话说,办公有三宝,PPT.Word 和 Excel.后边两个大家 ...

  7. 我练就数据分析技能从HR转型为产品经理

    本文转自知乎 作者:空白白白白 ----------------------------------------------------- 空白白白白写在前面:当我在奥兰多的时候,一位漂亮的女学员(看 ...

  8. 46.纯 CSS 创作一个在容器中反弹的小球

    原文地址:https://segmentfault.com/a/1190000015221260 练习地址:https://scrimba.com/c/c3GEWmTb 感想: 原来animation ...

  9. 2.HTML文件中<!DOCTYPE html>的作用

    <!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前.此标签可告知浏 览器文档使用哪种 HTML 或 XHTML 规范.(重点:告诉浏览器按照何种规 ...

  10. Centos配置jdk和tomcat环境

    centos java+tomcat环境配置 一.安装java环境 在CentOS7.2上安装jdk1.8(tar.gz安装包),并配置环境变量 jdk安装在/home/soft/jdk1.8.0-1 ...