swarm 容器固定ip地址_DevOpsDocker - 在Swarm里管理服务和程序

在Swarm里管理服务和程序

我们的集群已经OK,是时候计划部署几个服务了。之前提到,管理者节点的角色是接受Docker命令,并且将他们应用到集群里面。因此,我们会在管理者节点创建服务。

注意

在这点上,确实没有什么工作需要在工作节点完成,因为他们受到管理者节点全面控制。

创建一个服务

命令如下:

docker service create --replicas  -p : --name 

我们在管理者节点运行上面的命令。下面,我们使用WordPress例子来向大家介绍。由于我们已经在本地拥有了这个镜像,所以省去了从hub上面下载的过程。

我们使用副本数量为3,因为我们现在有三个工作节点;使用docker node ls命令可以查到我们有几个节点。

注意

We do not create a replica count; this introduces the following topics. -p参数 :将容器内部的端口映射到主机端口。我们没有必要创建和节点数量相同的副本数量。其他节点可以处理不同的应用,比如数据库:

3dffc4bab6e79b55bee7b1efd19c07d6.png

我们创建了一个web,基于WordPress镜像,并且将主机的80端口映射给容器的80端口。

服务列表

命令如下:

docker service ls

该命令查看当前运行的服务以及其他信息,比如副本数量,镜像文件,端口等等。

从输出可以看出,我们刚刚启动的服务以及相关信息:

8e47959019611e0ca69a2327e8d4392e.png

服务状态

通过如下命令,我们可以知道我们的服务是否正常运行:

docker service ps 

从服务列表中,我们看不到所有我们需要的信息,比如,该服务部署到了哪个节点。但是我们可以知道服务是否正常运行,以及遇到的问题,如果有的话。当我们在管理者节点上运行的时候,我们有如下输出:

47b3b56308355203e196b0fa0aee51cb.png

注意

查看状态很重要。有一种情况,当我们在节点升级或者更新节点的时候,docker ps会告诉我们节点的状态。在理想的DockerSwarm设置中,当一个节点异常,管理者节点可以将业务流量定向到其他可用节点,因此会有一点点宕机时间,除非监控可行。在节点上运行的之前,首先使用该命令看看节点的状态。

我们如何知道我们的站点运行了?

我们可以通过在浏览器里面输入工作节点的IP地址,来验证我们的WordPress是否正常运行。

8c0151fe77d89f971ca816220bbc2955.png

下面是验证截图:

2400261e5216e43345eadd1c5a9145cc.png

注意

打开任何运行WordPress web服务的ip地址,包括管理者节点,会打开相同的地址。

行动2-在Swarm里面运行服务

首先,确保我们的管理者节点在运行。

下面就让我们来熟悉Swarm里的服务管理。

下面我们被要求在swarm里面部署一个新的postgre服务。

  • 创建一个节点,命名为dbworker:
docker-machine create --driver virtualbox dbworker
efddfb9b230acd866b0a47536fbf7804.png
  • 将新worker节点加入到swarm里面:
be6bdd608f55712085c849cc33b6c4e0.png
  • 创建一个新的数据库服务,命名为db,使用postgre镜像:
docker service create --replicas 1 --name db postgres
  • 输出如下:
a5866c29a5b8d7c39aefe8e4982138b4.png
  • 使用如下的步骤验证postgre的运行情况:
  • 端口映射,将主机的5432端口映射给db容器的5432端口:
docker run --name db -e POSTGRES_PASSWORD=postgres -d -p 5432:5432 postgres
4293432c6c4b525a50d65d20a7d44b38.png
  • 运行docker ps查看正在运行的容器列表;我们能看到postgre容器是在UP状态:
c43780f49d0094136f60bf4bc2d483be.png
  • 停止容器的命令如下:
3ec86df2dda79143847a4188b48d8661.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值