云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

企业邮箱_文件型数据库_代金券

小七 141 0

HashiCorp Nomad 0.9版

我们很高兴地宣布,HashiCorp nomad0.9已经上市。Nomad是一个灵活的工作负载协调器,可以用来轻松地跨多个区域或云提供商部署容器化和遗留应用程序。Nomad易于操作和扩展,并与用于服务发现的HashiCorp consur和用于机密管理的HashiCorp Vault无缝集成。nomad0.9添加了新的调度特性,可以更好地控制Nomad如何在可用的基础设施上放置应用程序。它还为基于插件的特性策略奠定了基础,使用户能够更容易地将Nomad与各种生态系统工具和技术集成。Nomad0.9的主要新功能包括:扩展:使作业作者能够基于特定属性或客户端元数据分发工作负载。亲和力:使作业作者能够表达工作负载的首选位置。系统作业抢占:使系统作业取代低优先级工作负载。任务驱动程序插件:使社区成员能够轻松地贡献和维护新的任务驱动程序,以支持特定的运行时。设备插件:使Nomad支持配置需要专用硬件(如gpu)的工作负载。webui:支持作业提交和改进资源可视化。此版本还包括对webui、CLI、Docker驱动程序和其他Nomad组件的一些额外改进。CHANGELOG提供了nomad0.9特性、增强和错误修复的完整列表。»分散Nomad在做工作安排决策时默认使用装箱。Bin-packing寻求在继续使用其他节点之前充分利用可用客户机节点子集上的资源。虽然这种行为通常会导致更小的车队规模和成本节约,但通常情况下,将给定工作负载的实例分散到可用的基础架构中,以优化高可用性或高性能。nomad0.9中添加了一个新的spread节,允许作业作者根据特定属性(通常是数据中心或机架等故障域)为其作业指定分配分配:分散{属性="${节点.dc}"重量=20目标"美国东部1号"{百分比=50}目标"us-east2"{百分比=30}目标"us-west1"{百分比=20}}spread节包含一个target参数,该参数允许用户为指定的属性指定一组目标值的分布比率。权重参数还可用于在一系列排列节和关联节之间分配相对优先级。有关更多详细信息,请参阅《使用扩展增加故障容限》指南。»仿射与反仿射nomad0.9增加了调度器对亲和性和反亲和性的支持。关联性是指用户基于运行时环境的当前状态来表示给定工作负载的首选位置的能力。这与Nomad中的一个约束条件所强加的硬性要求形成了鲜明对比。添加了一个新的关联节,使作业作者能够根据Nomad客户端知道的任何节点属性来表达对放置的首选项:亲和力{属性="${meta.node_类}"操作员=""value="m5"重量=10}与spread一样,如果为单个任务组定义了多个节,则可以使用weight参数分配相对优先级。负权重可用于优先避免相对于给定节点属性的放置(反亲和力):亲和力{属性="${meta.node_类}"操作员=""value="m5"重量=-10}有关更多详细信息,请参阅Expressing Job Placement Preferences with Affinity指南或Spread and Affinities博客文章。»系统作业抢占抢占指的是,当目标节点缺乏足够的放置容量时,调度器能够将低优先级的工作逐出,转而进行高优先级的工作。虽然Nomad目前允许作业作者为给定作业指定优先级,但影响仅限于评估和计划阶段的调度顺序,这是通过相应地对相应队列进行排序来实现的(从最高优先级到最低优先级):工作"我的工作"{region="北美"数据中心=us-east-1"]优先级=80组"mygroup"{任务"我的任务"{# ...}}}当一组目标节点被充分利用时,由新调度的作业产生的任何分配都将保持在挂起状态,直到有足够的资源可用为止,而不管定义的优先级是什么。这可能导致优先级反转,即当前正在运行的低优先级工作负载会阻止高优先级工作负载被调度。nomad0.9中的抢占支持将使Nomad在必要时收回较低优先级的分配,以确保系统作业可以在集群中的每个节点上运行。在随后的0.9.x版本中,Nomad的企业版将包含对服务和批处理作业的抢占。»插件Nomad客户端在nomad0.9中进行了重构,以支持基于插件的一系列功能。插件使社区成员能够在Nomad core要求的标准代码审查和发布过程之外开发和维护第三方集成,从而降低了生态系统技术集成的障碍。0.9版本增加了对任务驱动插件和设备插件的支持(见下文)。即将发布的版本将分别添加与CNI和CSI规范兼容的基于插件的网络和存储功能。»任务驱动程序插件Nomad的任务驱动子系统允许它支持广泛的工作负载类型。除了基于Docker的工作负载外,运营商可以利用Nomad的本地任务驱动程序为非容器化、遗留或Windows工作负载带来部署自动化、自助服务、高资源利用率和自动秘密注入等好处。任务驱动子系统已经在nomad0.9中进行了重构,以支持外部插件。这将使社区能够轻松地提供新的任务驱动程序或创建现有任务驱动程序的修改版本。LXC任务驱动程序已经在nomad0.9中外部化,并很好地说明了新的任务驱动程序插件系统是如何工作的。插件"nomad driver lxc"{配置{卷启用=真lxc_path="/var/lib/lxc"}}»设备插件nomad0.9除了新的任务驱动插件系统外,还引入了一个设备插件系统。设备插件将使Nomad能够支持gpu、tpu和fpga等专用硬件设备。gpu(graphicalprocessingunits,图形处理单元)已经成为一种标准的方法来加速计算工作量,包括机器学习、图像处理和金融建模。为了支持这些和其他现成的用例,nomad0.9包含了一个本机的Nvidia GPU设备插件。设备插件系统将使Nomad客户机能够检测设备,对其功能进行指纹识别,并将其提供给调度程序供作业作者预订:资源{设备"nvidia/gpu"{计数=2#需要至少有4 GiB内存的GPU约束{属性="${设备属性内存}"操作员=">="value="4吉布"}#更喜欢特斯拉车型家族的GPU亲和力{属性="${设备.型号}"operator="regexp"value="特斯拉"}}}»Web用户界面nomad0.9增强了webui以支持作业提交和修改。尽管仍然建议使用基于CI/CD和版本控制的部署方法,但对作业提交的Web UI支持将使新用户能够轻松地进行实验,在开发/测试周期中轻松地进行迭代,并为操作员提供一种机制,使其能够快速地进行细微更改以解决生产级服务中断问题。通过webui提交作业需要通过nomadacl子系统(通过粗粒度写入策略或提交作业功能)进行授权。0.9版本还向webui添加了改进的CPU和内存使用图表。现在,CPU和内存指标在会话期间以折线图的形式绘制在"节点详细信息"、"分配详细信息"和"任务详细信息"页面上:»Nomad0.9中的附加功能Web用户界面支持区域切换支持金丝雀推广支持重新启动停止的作业ACL支持在命名空间定义中使用globs日志支持JSON日志输出使用Docker for Mac时支持日志Docker任务驱动程序支持存储规范bind和tmpfs安装支持规范在Windows上支持统计信息收集»结论我们很高兴与我们的用户分享这个版本。访问nomad网站了解更多。