首页 > 其他分享 >Swarm集群弹性创建服务(8)

Swarm集群弹性创建服务(8)

时间:2022-11-22 15:13:48浏览次数:62  
标签:服务 service nginx 弹性 Swarm 集群 docker my

Swarm集群弹性创建服务

扩缩容功能,创建服务,动态扩展服务,更新服务,日志,灰度发布(更新网站(服务)时依旧提出服务,不挂404)

功能:扩缩容功能(扩容:增加容器,缩容:减少容器),灰度发布

目的:创建 nginx 服务、动态扩展服务、动态更新服务

# docker service --help 

Usage:  docker service COMMAND

Manage services

Commands:
create      # 创建一个新服务
inspect     # 显示一个或多个服务的详细信息
logs        # 获取服务或任务的日志
ls          # 服务列表
ps          # 列出一个或多个服务的任务
rm          # 删除一个或多个服务
rollback    # 回滚恢复对服务配置的更改
scale       # 扩展扩展一个或多个复制业务
update      # 更新服务

1、创建服务(192.168.64.134)
以前是docker run(单机),现在是 docker service (集群)

docker service create -p 8888:80 --name my-nginx nginx

2、查看服务(192.168.64.134)

# docker service ls 
ID             NAME       MODE         REPLICAS   IMAGE          PORTS
cccvbtrm38lt   my-nginx   replicated   1/1        nginx:latest   *:8888->80/tcp

虽然是在192.168.64.134机器上创建的,但也有可能跑在其他机器上

# docker ps 
CONTAINER ID   IMAGE          COMMAND                  CREATED              STATUS              PORTS     NAMES
a9c147315120   nginx:latest   "/docker-entrypoint.…"   About a minute ago   Up About a minute   80/tcp    my-nginx.1.z9q9ym9npjh6nx5mrmz0whcfa

查看my-nginx 服务的状态

# docker service ps my-nginx 
ID             NAME         IMAGE          NODE             DESIRED STATE   CURRENT STATE            ERROR     PORTS
z9q9ym9npjh6   my-nginx.1   nginx:latest   192.168.64.134   Running         Running 28 minutes ago

3、动态扩缩容,扩容到3个副本 集群中的任意节点都可访问,实现高可用

# docker service update --replicas 3 my-nginx 
my-nginx
overall progress: 3 out of 3 tasks
1/3: running
2/3: running
3/3: running
verify: Service converged

动态扩容成功

# docker service ls 
ID             NAME       MODE         REPLICAS   IMAGE          PORTS
cccvbtrm38lt   my-nginx   replicated   3/3        nginx:latest   *:8888->80/tcp

4、动态扩缩容(scale 同 updata)
$ docker service scale my-nginx=10

# docker service ls 
ID             NAME       MODE         REPLICAS   IMAGE          PORTS
cccvbtrm38lt   my-nginx   replicated   10/10       nginx:latest   *:8888->80/tcp

动态更新nginx成3个副本,三台主机上都有nginx服务。(但用第四台主机的ip也能访问到nginx)
5、动态缩容,回滚到1个

$ docker service scale my-nginx=1

# docker service scale my-nginx=1 
my-nginx scaled to 1
overall progress: 1 out of 1 tasks
1/1: running   [==================================================>]
verify: Service converged

k8s更难,功能更多。swarm相当于简单版的k8s

Swarm总结

swarm
集群的管理和编号。docker可以初始化一个swarm集群,其他节点可以加入。(管理、工作者)

Node
就是一个docker节点。多个节点就组成了一个网络集群。(管理、工作者)

Service
任务,可以在管理节点或者工作节点来运行。核心。!用户访问!

Task
容器内的命令,细节任务!


:::
image.png

标签:服务,service,nginx,弹性,Swarm,集群,docker,my
From: https://www.cnblogs.com/yutoujun/p/16915194.html

相关文章

  • LAB-17:集群故障排查
    LAB-17:集群故障排查LAB概述一个名为k8s-node-0的节点状态为NotReady,让其他恢复至正常状态,并确认所有的更改开机自动完成 LAB预配#预配关闭k8s-node-3节点......
  • Haproxy搭建web集群
    一、常见的web集群调度器目前常见的web集群调度器分为软件和硬件软件通常使用开源的LVS、Haproxy、Nginx,LVS性能最好,但搭建复杂。Nginx并发量,性能低于Haproxy硬件一般......
  • aws 与 aliyun 容器集群升级调研
    https://help.aliyun.com/document_detail/86497.html#section-t4q-rgc-7daACK保障最近的三个Kubernetes子版本的稳定运行,同时支持最新版本往前两个子版本的升级功能。例......
  • 让搭建DM8主备集群更科学
    1安装前准备1.1集群规划A机器B机器业务IP172.16.1.1172.16.1.2心跳IP192.168.1.1192.168.1.2实例名DW1_01DW1_02实例端口52365236MAL端口53365336MAL守护进程端......
  • Note.js框架中的cluster集群和断言测试的实战剖析
    Cluster节点。Js在单个线程中运行单个实例。为了使用当前的多核系统,用户(开发人员)有时会使用一个Node字符串。js进程来处理加载任务。集群模块允许轻松创建共享服务器端口......
  • mysql 集群
    【摘要】1、MySQL搭建主从集群1.1、好处数据安全给主服务增加一个数据备份。基于这个目的,可以搭建主从架构,或者也可以基于主从架构搭建互主的架构。读写分离MySQl的主从......
  • Eureka集群原理说明
      问题:微服务RPC远程服务调用最核心的是什么高可用,试想你的注册中心只有一个onlyone,它出故障了那就呵呵( ̄▽ ̄)"了,会导致整个为服务环境不可用,所以解决办......
  • 在华为云 OSC 上快速部署 EMQX MQTT 集群
    ​​EMQXKubernetesOperator​​是EMQ发布的一个封装、部署和管理工具,也是一个特定的应用控制器,方便DevOps人员在Kubernetes上编排EMQXMQTT消息服务集群,管理其......
  • 华为云弹性负载均衡ELB,如何保障服务器不瘫痪?
    想象一下,过年回家的时候,为了方便大家快速进站,不耽误回家的行程,高铁站、火车站一般都设置了多个排队入口。然而,如果没有工作人员合理引导大家排队,很容易出现最近的入口人挤人......
  • kubeadm安装多master节点k8s高可用集群
    百度网盘链接:https://pan.baidu.com/s/15t_TSH5RRpCFXV-93JHpNw?pwd=8od3 提取码:8od39kubeadm安装多master节点k8s高可用集群9.1初始化实验环境K8S集群角色I......