swarm 使用整理
swarm 是 docker 公司弄的 docker 集群管理工具。 整理使用实践如下。
1. 准备 3 台实例机 ip 地址分别是 192.168.0.131 ~ 133
2. 在三台机器上安装 docker 和 修改 docker 启动文件 配置 vim /etc/sysconfig/docker 加入 -H tcp://0.0.0.0:2375
OPTIONS='-g /cutome-path/docker -H tcp://0.0.0.0:2375'
3. 三台机器启动 docker 分别 docker pull swarm
4. 创建 swarm 集群
-- 创建 swarm
docker swarm init --advertise-addr 192.168.182.110
返回: SWMTKN-1-16izmwyfwxhok9lgoq8idlefumipgq2y7iv2pjja6zf53epaya-0cqbeordfj92bj86prcajmft3
--另外俩台机器加入 集群
docker swarm join \
--token SWMTKN-1-16izmwyfwxhok9lgoq8idlefumipgq2y7iv2pjja6zf53epaya-0cqbeordfj92bj86prcajmft3 \
192.168.0.131:2377
可以用以下命令查看 swarm集群的信息:
docker node list
docker network ls ()默认一个公用网络名称 ingress
docker service ls
5. 创建服务
docker service create --replicas 2 --name mynginx_swarm -p 8000:80 --network=ingress nginx
-- 调整 replicas 数量
docker service scale hpuwfzb963yy=3 或 docker service scale mynginx_swarm =3
-- 查看服务
docker service ps mynginx_swarm 或 docker service ps hpuwfzb963yy
--删除服务,慎用
docker service rm mynginx_swarm
6.滚动更新实践
创建一个 redis服务练手
docker service create \
--replicas 3 \
--name redis \
--update-delay 10s \
redis:3.0.6
--update-delay 是一个设置, 在后续的更新过程中,每个 replica 更新间隔 10 秒
2.开始更新
docker service update --image redis:3.0.7 redis
--暂停一个节点的服务
docker node update --availability drain worker1
worker1 是节点名, 节点id
--查看服务
docker service inspect --pretty mynginx_swarm
docker service inspect mynginx_swarm
参考:
http://www.runoob.com/docker/docker-install-nginx.html
https://www.jianshu.com/p/0e231a928ee6
http://dockone.io/article/227
https://www.cnblogs.com/liuyansheng/p/8178341.html
https://blog.csdn.net/u011781521/article/details/80468985 (主要)
https://docs.docker.com/swarm/ (字典)
swarm 使用整理的更多相关文章
- Docker 三剑客之 Docker Swarm
上一篇:Docker 三剑客之 Docker Compose 阅读目录: Docker Machine 创建 Docker 主机 Docker Swarm 配置集群节点 Docker Service ...
- Docker 小记 — Compose & Swarm
前言 任何相对完整的应用服务都不可能是由单一的程序来完成支持,计划使用 Docker 来部署的服务更是如此.大型服务需要进行拆分,形成微服务集群方能增强其稳定性和可维护性.本篇随笔将对 Docker ...
- centos7 部署 docker swarm
=============================================== 2019/4/9_第3次修改 ccb_warlock 更新说 ...
- [原创]Docker学习记录: Shipyard+Swarm+Consul+Service Discover 搭建教程
网上乱七八糟的资料实在是太多了, 乱, 特别乱, 而看书呢, 我读了2本书, 一本叫做<>, 另一本叫做<< Docker进阶与实战>> 在 服务发现这块讲的又不清 ...
- DevOps开源工具的三种分类整理
原文地址:http://www.360doc.com/content/16/0322/07/31263000_544210096.shtml 随着开发运维一体化的DevOps运动在国内外蓬勃发展,De ...
- docker swarm和compose 的使用(阿里)
基本的docker使用参考:Docker 入门 到部署Web 程序- (阿里面试常用的docker命令和优点) 昨天去阿里面试 问我如果给你5台服务器 如何部署docker,我说一个个拷贝,面试官听了 ...
- 094、Swarm 中最重要的概念(Swarm01)
参考https://www.cnblogs.com/CloudMan6/p/7845365.html 从主机层面来看,Docker Swarm 管理的是 Docker Host 集群.所以先来讨论 ...
- paper 15 :整理的CV代码合集
这篇blog,原来是西弗吉利亚大学的Li xin整理的,CV代码相当的全,不知道要经过多长时间的积累才会有这么丰富的资源,在此谢谢LI Xin .我现在分享给大家,希望可以共同进步!还有,我需要说一下 ...
- docker swarm搭建tidb踩坑日记
背景 公司新项目数据量翻了一倍,每天上亿数据量的读写,传统的单库单表已经满足不了目前的需求,得考虑下分布式存储了.那用啥呢,之前有考虑用到mycat,但是一进官网,一股山寨气息扑面而来,技术群进群还收 ...
随机推荐
- 通过Shell脚本将VSS项目批量创建并且提交迁移至Gitlab
脚本运行环境:Git Bash 系统环境:Windows 10 Pro 1709 VSS版本:Microsoft Visual SourceSafe 2005 我的VSS工作目录结构如下: D:\wo ...
- 介绍Kubernetes监控Heapster
什么是Heapster? Heapster是容器集群监控和性能分析工具,天然的支持Kubernetes和CoreOS,Kubernetes有个出名的监控agent—cAdvisor.在每个kubern ...
- 《CSS世界》读书笔记(十四)
<!-- <CSS世界>张鑫旭著 --> 功勋卓越的 border 属性 border-width 不支持百分比值 border-style 类型 border-style ...
- cent OS 7查询IP
环境: win7旗舰版 VMware Workstation Pro (虚拟机软件) CentOS-7-x86_64-DVD-1804.iso 安装时选择了默认配置,最小系统安装. 安装好后用 if ...
- Echarts 柱状图配置详解
1.基本柱状图 // 指定图表的配置项和数据 var option = { // ---- 标题 ----- title: { text: '主标题', textStyle: { color: 're ...
- opencv学习之路(33)、SIFT特征点提取(一)
一.简介 二.OpenCV中的SIFT算法接口 #include "opencv2/opencv.hpp" #include <opencv2/nonfree/nonfree ...
- export ,export default 和 import 区别 以及用法
首先要知道export,import ,export default是什么 ES6模块主要有两个功能:export和importexport用于对外输出本模块(一个文件可以理解为一个模块)变量的接口i ...
- 如何安装mariadb服务器和解决 can't connect to local mysql server through socket...
故障现象, ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.s ...
- luoguP1919 A*B Problem升级版 ntt
luoguP1919 A*B Problem升级版 链接 luogu 思路 ntt模板题 代码 #include <bits/stdc++.h> #define ll long long ...
- python链接mysql获得某列最大值
import pymysqlconn = pymysql.connect(host='10.1.2.198', port= 3306 ,user='root',passwd='123456',db=' ...