一个牛人写的博客
知道这个人是。 知乎看netty帖子—>netty自动重连—>netty长连接服务—>API Blueprint—> 简化部署API Blueprint: API Blueprint Docker 龚昱阳 Dozer的博客: http://www.dozer.cc/ 开始做,坚持做,重复做
Docker 1.12 在 2016 年 7 月 28 日正式 GA,除了大量的在使用上的改进和 bug 修复外,最引人瞩目的是Docker原生支持了 Swarm 模式,而不是将Swarm作为一个容器对集群进行管理。
而docker1.12的操作命令并不向下兼容,于是过去所有创建swarm集群的文档都不能参考了,本文描述了基于docker1.12版本创建Swarm集群的过程。
1、主机环境
在阿里云上申请三个vpc网络的ECS,安装centos7.0的镜像,ip和角色分配如下:
192.168.0.18 manager
192.168.0.19 worker
192.168.0.20 worker
2、docker安装
参考官方文档:https://docs.docker.com/engine/installation/linux/centos/
1)首先确认内核版本,内核版本至少要3.10以上
uname -r
2)增加docker的yum源配置
tee /etc/yum.repos.d/docker.repo <<-'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF
3)yum安装docker
yum install libdevmapper* -y
yum install docker-engine -y
4)启动docker
service docker start
ps auxwww | grep -i docker
5)配置阿里云的docker源镜像加速
登录阿里云账号,开通阿里云的容器服务
通过以下地址确认阿里云账号专属的加速器地 https://cr.console.aliyun.com/#/docker/booster
vi /usr/lib/systemd/system/docker.service
原内容:ExecStart=/usr/bin/dockerd
修改成 ExecStart=/usr/bin/dockerd --registry-mirror=https://被替换内容.mirror.aliyuncs.com
systemctl daemon-reload
service docker restart
3、docker原生swarm的概念普及
1)manager与worker
一个集群最多有3-7个manager,其他都是worker
manager节点:负责对任务进行调度和其它管理任务,多个管理节点通过 Raft 协议组成集群;
worker节点:负责运行具体的任务,管理节点可以同时作为工作节点
2)server包括两种类型:
复制服务(replicated services):类似 k8s 中复制集的概念,保持一定数量的相同任务在集群中运行;
全局服务(global services):类似 k8s 中 daemon 的概念,每个工作节点上运行一个。
一个服务由多个任务组成,一个任务即一个运行的容器。
4、swarm集群的创建
参考文档 https://docs.docker.com/engine/reference/commandline/swarm_init/
192.168.0.18 manager
192.168.0.19 worker
192.168.0.20 worker
初始化swarm集群
docker swarm init --advertise-addr 192.168.0.18
Swarm initialized: current node (4bl82cxazydg7y86kzbmfief3) is now a manager.
To add a worker to this swarm, run the following command:
docker swarm join \
--token SWMTKN-1-1mtdmuzd5n5il70r7mm1sg66rnr6ov38dumfdon408sq4nmqgz-0gej194ntpt73v3zhqiy0sq31 \
192.168.0.18:2377
To add a manager to this swarm, run the following command:
docker swarm join \
--token SWMTKN-1-1mtdmuzd5n5il70r7mm1sg66rnr6ov38dumfdon408sq4nmqgz-3pnkjncrpfh4d94aghk2a9h2w \
192.168.0.18:2377
manager上查看当前集群节点
docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
4bl82cxazydg7y86kzbmfief3 * iZ23ogad28gZ Ready Active Leader
192.168.0.19/192.168.0.20
docker swarm join --token SWMTKN-1-1mtdmuzd5n5il70r7mm1sg66rnr6ov38dumfdon408sq4nmqgz-0gej194ntpt73v3zhqiy0sq31 192.168.0.18:2377
manager上查看集群状态
docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
4bl82cxazydg7y86kzbmfief3 * iZ23ogad28gZ Ready Active Leader
avd0uhd0mjt939sz8pje1mdyq iZ232tm0nizZ Ready Active
dpqqdnkcagubmank7qw9i7jhz iZ23h6u54mvZ Ready Active
在192.168.0.20上,将节点手动脱离
docker swarm leave
Node left the swarm.
回到manager上查看集群状态
docker node ls
docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
4bl82cxazydg7y86kzbmfief3 * iZ23ogad28gZ Ready Active Leader
avd0uhd0mjt939sz8pje1mdyq iZ232tm0nizZ Ready Active
dpqqdnkcagubmank7qw9i7jhz iZ23h6u54mvZ Down Active
围绕集群和服务进行管理还涉及到如下的命令,可以直接参考官方文档
https://docs.docker.com/engine/reference/
swarm init
swarm join
service create
service inspect
service ls
service rm
service scale
service ps
service update
微信关注我们
转载内容版权归作者及来源网站所有!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。
为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。
Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。
Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。