自建docker swarm体验简单之美
之前用的阿里云容器服务,但由于acsrouting的路由错乱问题,被逼上自建docker swarm的梁山。今天尝试自己搭建docker swarm,竟然轻松搞定,简单的超乎想象。
以下是实际搭建操作步骤:
1. 创建集群
# docker swarm init --advertise-addr 10.251.242.231
Swarm initialized: current node (m9dfl7r9wo1e9jxsp3oe5du3x) is now a manager. To add a worker to this swarm, run the following command: docker swarm join --token xxx 10.251.242.231:2377 To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
主:10.251.242.231 是 docker 主机的内网IP地址
2. docker info 查看刚刚创建的集群信息
Swarm: active
NodeID: m9dfl7r9wo1e9jxsp3oe5du3x
Is Manager: true
ClusterID: j01wzizw7gy0ck95p1d7a4pmv
Managers: 1
Nodes: 1
Orchestration:
Task History Retention Limit: 5
3. docker node ls 查看节点信息
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
m9dfl7r9wo1e9jxsp3oe5du3t * swarm-websites-node1 Ready Active Leader
4. 创建用于部署应用容器的网络
# docker network create --driver=overlay --attachable cnblogs
5. 创建用于部署Docker Flow Proxy容器的网络(Docker Flow Proxy支持根据主机名将请求转发至对应的应用容器)
docker network create --driver overlay proxy
6. 查看刚刚创建的网络
# docker network ls
NETWORK ID NAME DRIVER SCOPE
rl96kcw8ytpa cnblogs overlay swarm
61kbxtvnivkx proxy overlay swarm
7. 部署 Docker Flow Proxy stack
7.1 下载 docker-compose-stack.yml 文件
# curl -o docker-compose-stack.yml \
https://raw.githubusercontent.com/\
vfarcic/docker-flow-proxy/master/docker-compose-stack.yml
7.2 部署 stack
# docker stack deploy -c docker-compose-stack.yml proxy
8. 编写示例应用 openapi 的 docker-compose-stack.yml
version: '3.2'
services:
api:
image: open-api:latest
deploy:
replicas: 2
update_config:
delay: 5s
labels:
- com.df.notify=true
- com.df.distribute=true
- com.df.serviceDomain=api.cnblogs.com
- com.df.port=80
networks:
- cnblogs
- proxy
networks:
cnblogs:
external: true
proxy:
external: true
9. 部署示例应用的 stack
docker stack deploy -c docker-compose-stack.yml openapi
10. 部署完成后可以通过 http://api.cnblogs.com 访问运行在 openapi_api service 中的站点
11. 添加机器进集群作为节点
docker swarm join --token xxxxxxxxx IP:2377
12. 将节点提升为manager
docker node promote ID或HOSTNAME
【参考资料】
自建docker swarm体验简单之美的更多相关文章
- 云计算之路-阿里云上-容器难容:自建docker swarm集群遭遇无法解决的问题
我们从今年6月开始在生产环境进行 docker 容器化部署,将已经迁移至 ASP.NET Core 的站点部署到 docker swarm 集群上.开始我们选用的阿里云容器服务,但是在使用过程中我们遭 ...
- 云计算之路-阿里云上-容器难容:容器服务故障以及自建 docker swarm 集群故障
3月21日,由于使用阿里云服务器自建 docker swarm 集群的不稳定,我们将自建 docker swarm 集群上的所有应用切换阿里云容器服务 swarm 版(非swarm mode). 3月 ...
- 云计算之路-阿里云上-容器难容:优化自建 docker swarm 集群的部署
在上周六遭遇阿里云容器服务 swarm 版的故障之后,我们决定还是走自建 docker swarm 之路,只要不是阿里云底层的问题,我们相信会找到办法解决或避开自建 docker swarm 不稳定的 ...
- docker--搭建docker swarm集群
10 搭建docker swarm集群 10.1 swarm 介绍 Swarm这个项目名称特别贴切.在Wiki的解释中,Swarm behavior是指动物的群集行 为.比如我们常见的蜂群,鱼群,秋天 ...
- docker-compose,docker-machine,docker swarm 的简单总结
1.docker-compose: 用来在单机上启动一组应用服务.这个服务中可能包含有很多应用,比如你的app服务,redis,mysql,等等. (1)我们需要先创建好docker-compose的 ...
- 云计算之路-阿里云上-2017年最错误的选择: 生产环境使用 docker swarm
2017年12月29日 10:18 ~ 11:00 左右,由于整个 docker swarm 集群宕机,造成我们迁移至 .net core 跑在 docker swram 上的所有站点无法正常访问,由 ...
- 云计算之路-阿里云上:节点 CPU 波动引发 docker swarm 集群故障
非常抱歉,今天 10:05-10:20 左右,我们用阿里云服务器搭建的 docker swarm 集群又出现故障,又是因为突然的节点 CPU 波动. 受这次故障影响的站点有 闪存,博问,班级,园子,短 ...
- 云计算之路-阿里云上:docker swarm 问题最新进展
今天中午我们在 docker swarm 集群上发布应用时遇到了一个奇怪的 docker swarm 内置负载均衡的问题,该应用的 2 个新容器成功启动后,在容器内访问正常,但通过服务名访问时一会正常 ...
- 【故障公告】10:30-10:45 左右 docker swarm 集群节点问题引发故障
非常抱歉,今天 10:30-10:45 左右由于 docker swarm 集群节点出现问题,造成除博客之外的站点出现访问异常,由此给您带来很大的麻烦,请您谅解. 故障开始时出现有时访问正常有时访问出 ...
随机推荐
- 【转发】Cookie存储的值大小限制和个数问题
Cookie以及LocalStorage.SessionStorage的区别 缓存机制对于用户访问网页来说是很方便的.如果将用户名,偏好设定或者其他一些数据存储到客户端,而不必每次访问网页都输入数据, ...
- 登录sqlplus 后,显示问号 ????
登录sqlplus 后,显示 ???? SYS@orcl>startup ORACLE instance started. Total System Global Area 3290345472 ...
- Linux系统级日志系统
linux日志系统,在不同的发行版本名字不同.本质一样都是对系统运行非正常状态的记录... rhel5.x syslogrhel6.x rsyslog service rsyslog st ...
- MVC通用控件库展示-MVC4.0+WebAPI+EasyUI+Knockout--SNF快速开发平台3.0
在我们开发中怎么才能提高效率,就是要有大量的公共组件(控件)可以直接使用而不用自己再开发一遍,既然是公共控件那也得简单实用才行.下面就介绍一下SNF-MVC当中的控件库. 总体控件库展示: 1.通用用 ...
- axios的初步使用
1.数据格式 [ { "title": "喵1", "href": "1", "url": &quo ...
- 【九天教您南方cass 9.1】 12 道路断面土方计算
同学们大家好,欢迎收看由老王测量上班记出品的cass9.1视频课程 我是本节课主讲老师九天. 我们讲课的教程附件也是共享的,请注意索取 在测量空间中. [点击索取cass教程]5元立得 (给客服说暗号 ...
- Git 推送操作
Jerry 修改了他的最后一次提交的修改操作,他已经准备好将更改.推操作的数据永久存储的 Git 仓库.推操作成功后,其他开发人员可以看到Jerry 的变化. 他执行的git日志命令来查看提交的细节. ...
- Java知多少(21)this关键字详解
this 关键字用来表示当前对象本身,或当前类的一个实例,通过 this 可以调用本对象的所有方法和属性.例如: public class Demo{ public int x = 10; publi ...
- Linux软件源
Kali科大软件源: vim /etc/apt/sources.list 下面的粘帖进去. deb http://mirrors.ustc.edu.cn/kali kali main non-free ...
- 为什么V8引擎这么快?[转]
转载请注明出处:http://blog.csdn.net/horkychen Google研发的V8 JavaScript引擎性能优异.我们请熟悉内部程序实现的作者依源代码来看看V8是如何加速的. 作 ...