Docker(十三):OpenStack部署Docker集群
1、介绍
本教程使用Compose、Machine、Swarm工具把WordPress部署在OpenStack上。
本节采用Consul作为Swarm的Discovery Service模块,要利用Consul实现服务的注册与发现,需要建立Consul Cluster。在Consul方案中,每个提供服务的节点上都要部署和运行Consul的agent,所有运行Consul agent节点的集合会构成Consul Cluster。
2、创建虚拟机
使用docker-machine create命令创建5个虚拟机,其中虚拟机1用作Swarm的Master,虚拟机2用作Consul的服务发现,虚拟机3~5用作Swarm的节点。
创建lfkdockermachine1虚拟机
#docker-machine create -d openstack --openstack-insecure --openstack-auth-url=Keystone_Auth_URL --openstack-username=UserName --openstack-password=PassWord --openstack-tenant-id=TenantID --openstack-tenant-name=TenantName --openstack-flavor-id=FlavorID --openstack-image-id=ImageID --openstack-region=az0.dcl --openstack-net-id=NetID --openstack-availability-zone=az1.dc1 --openstack-sec-groups=GroupsID --openstack-floatingip-pool=external_relay_network lfkdockermachine1
Creating machine...
更多参数详见:https://docs.docker.com/machine/drivers/openstack/#options
3、查看虚拟机
#docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
lfkdockermachine1 openstack running tcp://100.64.0.31:2376
lfkdockermachine2 openstack running tcp://100.64.0.32:2376
lfkdockermachine3 openstack running tcp://100.64.0.33:2376
lfkdockermachine4 openstack running tcp://100.64.0.34:2376
lfkdockermachine5 openstack running tcp://100.64.0.35:2376
通过OpenStack的nova list查看
#nova list --all_te | grep lfk | head -1
| 65ad59c7-39df-4cdc-8957-eb2e396ac8d6 | lfkdockermachine1 | ACTIVE | - | Running | docker-VM_network=192.168.10.91,100.64.0.31 |
4、搭建Swarm的Discovery Service模块
在lfkdockermachine2上通过consul命令搭建Consul Server节点
#consul agent -server -bootstrap-expect=1 -data-dir=data -bind=192.168.10.92 -client=192.168.10.92 &
在lfkdockermachine3、lfkdockermachine4、lfkdockermachine5上搭建Consul Client节点
#consul agent -data-dir=data -node=lfkdockermachine3 -join=192.168.10.92 -bind=192.168.10.93 -client=192.168.10.93 &
此时在日志lfkdockermachine2上可看到Consul Client节点加入了集群
consul:member 'lfkdockermachine3' joined, marking health alive
将lfkdockermachine4和lfkdockermachine5也加入集群
在Consul Server节点通过members命令列出整个集群的综合信息
#consul members -rpc-addr=192.168.10.92:8400
Node Address Status Type Build Protocol
lfkdockermachine2 192.168.10.92 alive server 0.5.0 2
lfkdockermachine3 192.168.10.93 alive client 0.5.0 2
lfkdockermachine4 192.168.10.94 alive client 0.5.0 2
lfkdockermachine5 192.168.10.95 alive client 0.5.0 2
5、搭建Swarm集群
在lfkdockermachine1上搭建Swarm Master,直接使用官方提供的Swarm可执行程序来创建Swarm Master
#swarm manage consul://192.168.10.92:8500/swarm --strategy "random" -H tcp://0.0.0.0:2375 &
[2] 3307
INFO[0000] Listening for HTTP addr=0.0.0.0:2375 proto=tcp
使用swarm join将3~5加入swarm集群
#swarm join consul://192.168.10.92:8500/swarm --addr=192.168.10.93:2375 &
在Swarm Master上查看Swarm节点信息
#swarm list consul://192.168.10.192:8500/swarm
192.168.10.93:2375
192.168.10.94:2375
192.168.10.95:2375
5、利用Compose部署WordPress
借鉴:http://www.cnblogs.com/XYJK1002/p/5386187.html
部署系统
# docker-compose up
查看是否启动
# docker -H tcp://192.168.10.92:2375 ps -a
Docker(十三):OpenStack部署Docker集群的更多相关文章
- 使用docker或者docker-compose部署Zookeeper集群
之前有介绍过Zookeeper的安装部署(Zookeeper基础教程(二):Zookeeper安装),但是那里我是基于独立的虚拟机来实现部署的,这种部署方式适合线上集群部署.后来有几次想用一下Zook ...
- docker环境下solrcloud+zookeeper集群部署教程
前言:两个月前的16年11月份完成的配置,使用的solr6.1和zookeeper3.4,刚刚写成blog,目前版本可能有小版本的变化. 本例完成结果为:在docker环境下部署solrcloud集群 ...
- Docker部署Consul集群
服务介绍 Consul是一种分布式.高可用.支持水平扩展的服务注册与发现工具.包含的特性有:服务发现.健康检查.键值存储.多数据中心和服务管理页面等. 官方架构设计图: 图中包含两个Consul数据中 ...
- 使用docker部署hadoop集群
最近要在公司里搭建一个hadoop测试集群,于是采用docker来快速部署hadoop集群. 0. 写在前面 网上也已经有很多教程了,但是其中都有不少坑,在此记录一下自己安装的过程. 目标:使用doc ...
- 使用docker-compose部署Kafka集群
之前写过Kafka集群的部署,不过那是基于宿主机的,地址:Kafka基础教程(二):Kafka安装 和Zookeeper一样,有时想简单的连接Kafka用一下,那就需要开好几台虚拟机,如果Zookee ...
- Docker部署Hadoop集群
Docker部署Hadoop集群 2016-09-27 杜亦舒 前几天写了文章"Hadoop 集群搭建"之后,一个朋友留言说希望介绍下如何使用Docker部署,这个建议很好,Doc ...
- Docker 容器部署 Consul 集群
Docker 容器部署 Consul 集群 一.docker安装与启动1.1安装docker[root@localhost /]# yum -y install docker-io 1.2更改配置文件 ...
- 使用docker安装部署Spark集群来训练CNN(含Python实例)
使用docker安装部署Spark集群来训练CNN(含Python实例) http://blog.csdn.net/cyh_24/article/details/49683221 实验室有4台神服务器 ...
- Docker部署Elasticsearch集群
http://blog.sina.com.cn/s/blog_8ea8e9d50102wwik.html Docker部署Elasticsearch集群 参考文档: https://hub.docke ...
- docker 快速部署ES集群 spark集群
1) 拉下来 ES集群 spark集群 两套快速部署环境, 并只用docker跑起来,并保存到私库. 2)弄清楚怎么样打包 linux镜像(或者说制作). 3)试着改一下,让它们跑在集群里面. 4) ...
随机推荐
- 裸板驱动总结(makefile+lds链接脚本+裸板调试)
在裸板2440中,当我们使用nand启动时,2440会自动将前4k字节复制到内部sram中,如下图所示: 然而此时的SDRAM.nandflash的控制时序等都还没初始化,所以我们就只能使用前0~40 ...
- Struts2超链接
Structs2中的<s:url>标签可以生成一个URL 地址,而且可以内嵌<s:param>标签,为URL指定请求参数. 具体属性有: action:可选属性,指定生成的 U ...
- MVC模式tp框架四中路由形式
①基本get形式 http://网址/index.php?m=分组&c=控制器&a=操作方法 该方法是最底层的get形式,传统的传递参数方式,不安全. ②pathinfo路径形式[默认 ...
- Docker 三剑客之 Docker Swarm
上一篇:Docker 三剑客之 Docker Compose 阅读目录: Docker Machine 创建 Docker 主机 Docker Swarm 配置集群节点 Docker Service ...
- npm常用命令整理
npm是一个NodeJS包管理跟分发工具,已经成为了非官方的发布node模块(包)的标准.它可以帮助我们解决代码部署上的一些问题,将开发者从繁琐的包管理工作中(版本.依赖等)解放出来,更加专注于功能上 ...
- BP算法从原理到python实现
BP算法从原理到实践 反向传播算法Backpropagation的python实现 觉得有用的话,欢迎一起讨论相互学习~Follow Me 博主接触深度学习已经一段时间,近期在与别人进行讨论时,发现自 ...
- 深入理解Mysql数据库主从延迟
1什么会增加主从延迟? 1 网络不好 2 从库硬件差 3 索引没做好,从库执行慢 4 从库锁等待,多见于myisam 5 主库写频繁,从库单线程执行慢 6 使用row复制,或mix使用行复制 2如何优 ...
- 打开和创建SqlCe(.sdf文件)
打开SqlCe的工具有些少,目前能看到Vs2010安装插件之后打开.sdf文件 [转载]https://weblogs.asp.net/scottgu/vs-2010-sp1-and-sql-ce 需 ...
- DOM操作整理
DOM获取 1. 直接获取 document.getElementById("box_id") 通过ID获取 document.getElementsByName("my ...
- Ext.chart.Chart 显示图标 -- 本地数据
先来张直观的图,基于ext4.2制作 这就是弹出来的图表了. 今天先搭建一个本地数据版,也是静态数据版. 点击一个按钮执行一个function,来看function里面的东西: 一.依赖 Ext.re ...