下载吧 网络软件

分类分类

Nomad(工作负载协调器)

Nomad(工作负载协调器)

v0.12.3 官方版

大小:37.9 MB 更新:2024/12/24

类别:网络软件系统:WinAll

立即下载

  Nomad是一款功能强大的工作负载编排器,用户可以通过这款工具快速的部署动态任务调度系统,帮助企业提高与全球其它边缘城市的分布式服务相应速度;这款工具拥有统一的控制界面,用户可以使用供应商的驱动程序来进行硬件和驱动程序的部署,提高了企业生产效率;Nomad具有很高的可扩展性,它帮助企业完成了许多繁重的工作任务,为企业节省出更多的时间来进行其它项目的研发;通过在分布式基础架构和云之间为企业提供简单并且灵活的工作负载协调功能,解决了企业在大规模生产管理中出现的各种工作负载问题。

Nomad(工作负载协调器)

软件功能

  灵活的工作负载支持

  协调任何类型的应用程序-不仅仅是容器。对Docker,Windows,Java,VM等的一流支持。

  使旧版应用程序现代化,而无需重写

  为业务流程带来编排好处。在不使用容器化的情况下,实现零停机部署,提高的弹性,更高的资源利用率以及更多优势。

  轻松规模联盟

  用于多区域,多云联合的单个命令。使用Nomad作为单个统一控制平面,将应用程序全局部署到任何区域。

  轻松部署和扩展

  与在云环境中一样轻松地部署到裸机。无需复杂即可在全球范围内扩展、阅读200万个集装箱挑战赛。

  与Terraform,Consul和Vault的本机集成

  Nomad与Terraform,Consul和Vault无缝集成,以进行配置,服务网络和机密管理。

软件特色

  1、集成到现有基础架构中的单个二进制文件。

  2、易于在本地或云中操作,并且自愿占用最小。

  3、可以处理部署并自动从故障中恢复应用程序。

  4、非常轻松的就可以在计算机上进行部署安装。

  5、使用单个CLI命令跨区域联合Nomad群集以在全球范围内部署应用程序。

  6、使用简单的群集拓扑在混合基础架构上部署Nomad。

  7、为应用程序实现零停机时间部署。

  8、通过批处理调度程序以运行数千个部署来批处理任务。

  9、可以使用Nomad的设备插件运行GPU和其他专门的工作负载。

  10、可以使用来自第三方供应商的自定义网络配置来部署容器化的应用程序。

安装方法

  为了简化入门经验,您可以下载预编译的二进制文件,然后在本地计算机上运行它。

  下载Nomad之后,解压缩该软件包。在继续阅读其他指南之前,请确保nomad二进制文件在您的上可用PATH。

  您可以通过运行此命令来检查路径上可用的位置。

Nomad(工作负载协调器)

  输出是由冒号分隔的位置列表。您可以通过将二进制文件移动到列出的位置之一或将Nomad的位置添加到您的中来使Nomad可用PATH。

  提示(基于Linux或Mac的):通过编辑外壳程序的设置文件(通常称为~/.bashrc,其中文件名.之前和之后的部分rc是外壳程序的名称),将新位置永久添加到路径中。在该文件中,您会看到以开头的行export PATH=,然后是用冒号分隔的位置列表。将Consul二进制文件的位置添加到该列表中并保存文件。然后,使用命令重新加载您的Shell配置,并source ~/.bashrc替换bash为您的Shell名称。

  提示(Windows):通过Environment Variables在系统设置中导航到,并查找名为的变量,可以通过GUI在路径中添加位置 PATH。您将看到用分号分隔的位置列表。将Consul二进制文件的位置添加到该列表,然后启动新的控制台窗口。

  验证安装

  要验证Nomad是否已正确安装,请尝试使用该nomad命令。

Nomad(工作负载协调器)

  您应该看到帮助输出,类似于以下内容。

Nomad(工作负载协调器)

  流浪者设置(可选)

  或者,您可以使用Vagrant为Nomad设置开发环境。Vagrant是用于构建和管理虚拟机环境的工具。

  注意:要使用Vagrant环境,请先按照以下说明安装Vagrant 。您还将需要一个虚拟化工具,例如VirtualBox。

  您可以下载一个Vagrantfile,它将启动一个小的Nomad集群。首先为您的Vagrant环境创建一个新目录。

Nomad(工作负载协调器)

  转到使用上一个命令创建的目录。

Nomad(工作负载协调器)

  现在,您可以获取Nomad安装配置。

Nomad(工作负载协调器)

  现在您已经创建了一个新目录并下载了该目录,Vagrantfile 您必须使用该vagrant up命令创建虚拟机。

Nomad(工作负载协调器)

  这将需要几分钟的时间,因为必须下载基本的Ubuntu盒子并为Docker和Nomad进行配置。完成后,您将看到此输出。

Nomad(工作负载协调器)

  此时,Vagrant框正在运行并准备就绪。Vagrant框运行后,使用vagrant ssh命令在其上启动Shell会话。

官方教程

  运行工作

  首先,使用生成骨架作业文件的job init命令:

Nomad(工作负载协调器)

  您可以通过运行查看此文件的内容cat example.nomad。此示例作业文件声明了一个名为redis的任务,该任务使用Docker驱动程序运行Redis容器。

  与Nomad交互的主要方式是使用job runcommand。该 run命令获取一个作业文件并将其注册到Nomad。这用于注册新作业和更新现有作业。

  您可以立即注册示例作业:

Nomad(工作负载协调器)

  如果nomad job run example.nomad命令的输出包含以下消息,请确认Docker已安装在Nomad客户端节点或 -dev代理节点上。

Nomad(工作负载协调器)

  该消息表明没有运行Nomad客户端的Docker任务驱动程序。这通常是因为Docker已停止或未安装。

  每当更新工作时,Nomad都会创建评估以确定需要采取哪些措施。在这种情况下,由于这是一项新工作,因此Nomad确定应创建分配并将其安排在您的本地代理上。

  要检查作业的状态,请使用以下status命令:

Nomad(工作负载协调器)

  在这里,输出表明您的评估结果是创建了一个分配,该分配现在正在本地节点上运行。

  分配表示放置在节点上的任务组的实例。要检查分配,请使用alloc status命令:

Nomad(工作负载协调器)

  您可以看到Nomad报告分配状态及其当前资源使用情况。通过提供-stats标志,将报告更详细的资源使用统计信息。

  要查看任务的日志,请使用以下alloc logs命令:

Nomad(工作负载协调器)

  修改作业

  作业的定义不是静态的,并且会随时间更新。您可以更新作业以更改docker容器,更新应用程序版本或更改任务组的数量以随负载扩展。

  现在,编辑example.nomad文件以更新计数并将其设置为3。该行在cache周围145。

Nomad(工作负载协调器)

  修改作业规范后,使用以下job plan命令调用调度程序的试运行,以查看运行更新后的作业会发生什么情况:

Nomad(工作负载协调器)

  您可以看到调度程序检测到计数变化,并通知我们它将导致创建2个新实例。将发生的就地更新是将更新的作业规范推送到现有分配,并且不会引起任何服务中断。然后,您可以使用nomad run计划输出中提供的命令来运行带有版本验证的作业。

  通过使用该-check-index标志运行,Nomad检查自计划运行以来尚未修改作业。如果有多个人同时与作业进行交互以确保在应用您的修改之前作业没有更改,则此功能很有用。

Nomad(工作负载协调器)

  因为您将任务组的数量设置为3,所以Nomad创建了两个附加分配以达到所需状态。再次运行相同的作业规范是幂等的,并且不会创建新的分配。

  现在,更改作业以进行应用程序更新。在这种情况下,您将更改要运行的Redis版本。编辑example.nomad文件,并将Docker映像从“ redis:3.2”更改为“ redis:4.0”。这是位于 261。

Nomad(工作负载协调器)

  在没有领事的情况下运行Nomad

  由于示例作业包含Consul健康检查,因此Nomad的部署监视程序将默认等待检查通过。这将导致您的部署在第一次分配更新后停止。通过在update节中添加以下属性来解决此问题。

Nomad(工作负载协调器)

  您可以plan再次运行以查看如果提交此更改将发生什么:

Nomad(工作负载协调器)

  计划输出显示我们将更新一个分配,而其他两个将被忽略。这是由于max_parallel在设置update 节,其被设置为1以指示游牧到一次仅执行一个单一的变化。

  准备就绪后,使用run来推送更新的规范:

Nomad(工作负载协调器)

  运行后,滚动更新之后可以运行nomad status example并查看底部的“分配”部分。成功部署将显示Version的更新版本号,Desired值run和Status为running。

Nomad(工作负载协调器)

  您可以看到Nomad分三个阶段处理了更新,仅在每个阶段中更新了一个分配,并等待min_healthy_time10秒钟运行正常, 然后再进行下一个更新。可以配置更新策略,但是滚动更新使大规模更新应用程序的复杂性降低。

  停止工作

  到目前为止,您已经创建,运行和修改了作业。工作生命周期的最后一步是停止工作。这是通过job stop命令完成的:

Nomad(工作负载协调器)

  当您停止工作时,它将创建一个评估,该评估将用于停止所有现有分配。如果现在查询作业状态,则可以看到它现在标记为dead (stopped),表示该作业已停止并且Nomad不再运行它:

Nomad(工作负载协调器)

  如果您想重新开始工作,则可以run再次进行。

  Nomad的用户主要与工作互动,现在您已经了解了如何创建和扩展我们的工作,执行应用程序更新以及完成工作。接下来,您将添加另一个Nomad客户来创建我们的第一个集群。

  Ctrl-C继续下一部分之前,先停止Nomad代理。

相关文章
  • 最新排行
  • 最热排行
  • 评分最高
网络软件排行榜

点击查看更多

点击查看更多

点击查看更多