版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验11Swarm编排工具的使用【实验要求】掌握Swarm工具的安装方法。掌握Swarm工具的使用方法。【实验环境】选用3台部署在VMwareWorkstationpro16中的RHEL8.1虚拟机,虚拟机均已预先安装好DockerCE26.1.3,并与外部网络互通,且关闭防火墙和SELinux配置。各主机环境要求如表5-4所示。表11-1各主机环境要求主机名IP地址角色master0/24管理节点node10/24工作节点1node20/24工作节点2【实验步骤】步骤1:在各主机上,使用下列命令验证初始环境#docker--versionDockerversion26.1.3,buildb72abbb#systemctlstatusfirewalldfirewalld.service-firewalld-dynamicfirewalldaemonLoaded:loaded(/usr/lib/systemd/system/firewalld.service;disabled;vendorpreset:enabled)Active:inactive(dead)Docs:man:firewalld(1)#getenforceDisabled步骤2:修改各主机的主机名(1)将主机IP地址为0的主机名命名为master。#hostnamectlset-hostnamemaster (2)将主机IP地址为0的主机名命名为node1。#hostnamectlset-hostnamenode1(3)将主机IP地址为0的主机名命名为node2。#hostnamectlset-hostnamenode2步骤3:各主机配置时钟同步#timedatectlset-timezoneAsia/Shanghai#chronycmakestep步骤4:编辑docker.service文件在各主机上编辑docker.service文件,修改ExecStart参数信息。#vi/lib/systemd/system/docker.service//修改如下参数信息ExecStart=/usr/bin/dockerd-Htcp://:2375-Hunix:///var/run/docker.sock文件编辑完成后,保存文件并退出,返回命令行,并重启Docker服务。#systemctldaemon-reload#systemctlrestartdocker如果出现“active(running)”提示,则表示Docker服务已经成功运行。可通过netstat命令查看启动的端口信息,应看到2375端口的信息,该端口为Docker引擎默认的HTTPAPI的端口。如果使用netstat命令后返回“bash:netstat:commandnotfound”提示,则通过yum命令安装net-tools包后,即可使用netstat命令。#netstat-tunlp如果是一个集群,则集群中所有相关的主机都要启动2375端口的Docker服务。步骤5:查看集群节点信息(1)在各主机节点上获取swarm镜像。各主机节点上传swarm.tar至/root目录后,导入swarm镜像。#lsswarm.tar#dockerload-iswarm.tar#dockerimagesREPOSITORYTAGIMAGEIDCREATEDSIZEswarmlatest1a5eb59a410f5yearsago12.7MB(2)在master节点上初始化集群,获取唯一的token,将其作为集群的唯一标识。#dockerswarminit--advertise-addr0Swarminitialized:currentnode(k8tcb8pz3r53cm8dxawqzj0uj)isnowamanager.Toaddaworkertothisswarm,runthefollowingcommand:dockerswarmjoin--tokenSWMTKN-1-6b7kh7jvf4h77xzs428porckmes5sifxtqd4ft3x4l06totliq-dnoe5e7n7zg02x4c0uyqgpu8x0:2377Toaddamanagertothisswarm,run'dockerswarmjoin-tokenmanager'andfollowtheinstructions.以上命令执行后,master节点自动加入Swarm集群中,并会创建一个集群token,获取全球唯一的token,将其作为集群的唯一标识。后续可利用获取的token值将其他节点加入集群。其中,--advertise-addr参数表示其他Swarm中的工作节点使用此IP地址与管理节点联系。命令的输出内容中包含了其他节点加入集群的命令。(3)将node1和node2加入集群,在node1和node2节点上执行以下命令。#dockerswarmjoin--tokenSWMTKN-1-6b7kh7jvf4h77xzs428porckmes5sifxtqd4ft3x4l06totliq-dnoe5e7n7zg02x4c0uyqgpu8x0:2377Thisnodejoinedaswarmasaworker. //节点已加入集群(4)在master节点上查看集群中各节点的信息。#dockernodelsID HOSTNAME STATUS AVAILABILITY MANAGERSTATUSk8tcb8pz3r53cm8dxawqzj0uj* master Ready Active Leadergz8ubge1xk7canwk8a922vm3f node2 Ready Activecuor0rmdbock0ix3o32cqkf28 node1 Ready Active步骤6:部署服务在Swarm集群中部署服务,本任务以部署nginx服务为例进行介绍。(1)在各主机上下载nginx:latest镜像。各主机节点上传nginx_latest.tar至/root目录后,导入nginx镜像。#lsnginx_latest.tar#dockerload-inginx_latest.tar#dockerimagesREPOSITORYTAGIMAGEIDCREATEDSIZEswarmlatest1a5eb59a410f5yearsago12.7MBnginxlatesta72860cb95fd17monthsago188MB(2)在master节点上创建一个网络nginx_net,用于使不同主机上的容器网络互通。#dockernetworkcreate-doverlaynginx_net iklbexncxwsccuh2sut2fz1dm#dockernetworkls NETWORKID NAME DRIVER SCOPE926ff50b9f89 bridge bridge localf8caf2023a7f docker_gwbridge bridge localf7368fda9b67 host host local5ch25bm0p1ki ingress overlay swarmIklbexncxwsc nginx_net overlay swarmeeed0dab7d51 none null local从命令的返回信息来看,网络nginx_net已创建。(3)在master节点上创建一个副本数为1的nginx容器。#dockerservicecreate--replicas1--networknginx_net--namemy-test-p9999:80nginx打开浏览器,在其地址栏中依次输入“0:9999”“0:9999”和“0:9999”进行验证,效果分别如图11-1、图11-2和图11-3所示。截图本步骤结果内容至实训报告图11-1master节点效果图11-2node1节点效果图11-3node2节点效果(选做)步骤7:swarm常用命令的使用各命令需在master节点上执行。(1)列出已创建的服务。#dockerservicelsID NAME MODE REPLICASIMAGE PORTSjbhomnm8ktv4 my-test replicated 1/1 nginx:latest *:9999->80/tcp从命令的返回信息来看,my-test服务已创建。(2)查看my-test服务的详细信息。#dockerserviceinspect--prettymy-testID:jbhomnm8ktv41shrufa329v4dName:my-testServiceMode:ReplicatedReplicas:1Placement:UpdateConfig:Parallelism:1…Ports:PublishedPort=9999Protocol=tcpTargetPort=80PublishMode=ingress或使用dockerserviceinspectmy-test命令查看更详细的信息。(3)使用dockerserviceps命令查询在哪个节点上运行my-test容器。#dockerservicepsmy-test#dockerservicepsmy-testIDNAMEIMAGENODEDESIREDSTATECURRENTSTATEERRORPORTSdo9msak7hlqdmy-test.1nginx:latestmasterRunningRunning2minutesago从命令的返回信息来看,my-test容器运行在master节点上。(4)伸缩容器。将my-test容器扩展到5个,在master节点上执行以下命令。#dockerservicescalemy-test=5my-testscaledto5…verify:Servicemy-testconverged#dockerservicepsmy-testID NAME IMAGE NODE DESIREDSTATECURRENTSTATE……njxc57ckm5kl my-test.1 nginx:latest master Running Running6minutesagoal57r47b0ihs my-test.2 nginx:latest node2 Running Runningabout……hes9osedqq6r my-test.3 nginx:latest master Running Runningabout……a9ovea5n2x9v my-test.4 nginx:latest node1 Running Runningabout……hkhtcvljy1y6 my-test.5 nginx:latest node2 Running Runningabout……和创建服务一样,在增加scale数量之后,将会创建新的容器。执行命令前,my-test容器只在master节点上有一个实例,而现在又增加了4个实例。此时,5个副本的my-test容器分别运行在master、node1和node2这3个节点上。(5)节点宕机处理。如果一个节点出现了宕机情况,则该节点会从Swarm集群中被移出,可使用dockernodels命令进行查看。此时,在宕机节点上运行的容器会被调度到其他节点上,以满足指定数量的副本保持运行状态。例如,通过在node1节点上把Docker服务关闭,或者关机以模拟node2节点宕机,并在master节点上查看Swarm集群中各节点的状态,具体操作如下。在node1节点上关闭Docker服务,模拟node1节点宕机。#systemctlstopdocker在master节点上查看节点信息。#dockernodelsID HOSTNAME STATUS AVAILABILITY MANAGERSTATUSk8tcb8pz3r53cm8dxawqzj0uj* master Ready Active Leadergz8ubge1xk7canwk8a922vm3f node2 Ready Activecuor0rmdbock0ix3o32cqkf28 node1 Down Active从命令的返回信息来看,node1节点的状态为“Down”,node1节点上的容器被调度到其他节点上。#dockerservicepsmy-testID NAME IMAGE NODE DESIREDSTATE CURRENTSTATEnjxc57ckm5kl my-test.1 nginx:latest master Running …krn4cpq664z5 my-test.2 nginx:latest master Running …ylks2fmgx4w7 my-test.3 nginx:latest master Running …sh9b788ygn5u\_ my-test.3 nginx:latest node1 Shutdown …m8b2k6xk8uwj my-test.4 nginx:latest node2 Running …ezi8fqnb68sl my-test.5 nginx:latest node2 Running …当node1节点重新启动Docker服务后,node1节点原有的容器不会自动调度到node1节点上,只能
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新华书店图书编辑招聘面试技巧
- 如何轻松通过京东快递公司的面试技巧详解
- 医院护理部业务主管的工作计划及执行方案
- 网络科技公司数据部门经理的面试技巧
- 化工(危险化学品)企业安全隐患排查指导手册(油气储存企业专篇2025年版)-
- 安全治安专业就业趋势
- 游戏策划师招聘面试技巧详解
- 华为市场营销策略面试全攻略
- 建筑师事务所项目负责人面试指南
- 国际物流公司财务审计全攻略
- 哈尔滨工业大学概况
- 《婚姻家庭继承法(第八版)》课件 房绍坤 第1-8章 婚姻家庭法概述-收养制度
- 外墙瓷砖维修方案
- 8D报告安全事故报告
- 施工便道施工方案 ()
- 试验设计方法精选PPT
- (操作第5章)ups的运行和维护操作课件
- 严重创伤患者时间节点记录表
- MSA-GRR数据自动生成工具
- 配电线路故障指示器技术规范2013版
- 蒸汽管道压降温降计算EXCEL软件
评论
0/150
提交评论