问题标签 [nomad]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
206 浏览

connect - 如何通过 Consul Connect 将 Wordpress 服务连接到 MariaDB 服务?

我在通过 Consul Connect 连接到 MariaDB 时遇到了严重问题。

我正在使用 Nomad 使用代理创建服务,具有以下作业定义:

但是,似乎服务器无法访问数据库。

服务器和数据库代理的日志显示某种 TLS 问题正在发生,但我不知道如何解决这个问题。

服务器代理日志

数据库代理日志

0 投票
1 回答
5314 浏览

networking - Nomad 和端口映射

Nomad 有三种不同的方式来映射端口:

  1. 组级别下的网络节
  2. 配置 -> 资源级别下的网络节
  3. 配置级别下的 port_map 节

有什么区别,什么时候应该使用哪个?

0 投票
0 回答
128 浏览

devops - 如何从 Consul 转发 Nomad 任务?

我想在我的主机上调试一个容器,而不是从容器内调试(所以我有 curl 和其他软件之类的东西)。K8S 具有端口转发容器的功能,如何通过 consul 实现?

0 投票
1 回答
134 浏览

consul - 我可以运行带有 windows 服务器和 linux 客户端的集成 nomad/consul 集群吗?

我正在迁移一个标准的全 linux nomad/consul 集群,其中 nomad/consul 服务器几乎不使用我们的工作负载资源,并且在我们的新环境中为它们启动专用的 linux VM 似乎有点浪费,当我移动环境时拥有多个具有备用容量的 windows 虚拟机,我可以将其用于 nomad 服务器和 consul 服务器进程,以提供必要的冗余。

所以我的问题归结为:如果我的 consul 服务器和 nomad 服务器进程只在 windows 上,而 nomad 代理和 consul 代理进程只在 linux 上 - 他们都会相处吗?除了原生系统 prometheus 导出器之外,nomad 作业都是 docker 化的。

0 投票
1 回答
95 浏览

high-availability - 客户康复后Nomad传播

我试图了解 Nomad 如何spread处理客户端故障。

在 Nomad 作业中,您可以定义一个spread节,以便作业的实例传播到所有客户端。

以下是文档: https ://www.nomadproject.io/docs/job-specification/spread

由于这spread是一个软偏好,如果某个客户端出于任何原因出现故障,Nomad 会将在丢失的客户端上运行的所有作业迁移到另一个可用的客户端。(即使使用 bin-packing 也会生效)。

如果有 2 个客户端网格和具有两个分配的作业,如果一个客户端失败,则两个分配将在同一个客户端上运行。

当网格恢复并启动新客户端时会发生什么?作业是否会在该节之后重新传播spread到两个节点,或者两个分配是否会继续在同一个客户端上运行,直到作业重新运行?

0 投票
0 回答
708 浏览

docker - Nomad Runtime 环境和值插值未能加载环境值

我正在使用 docker 驱动程序为气流工作节点创建一个 Nomad 作业,并尝试从 env 中读取当前 nomad 客户端的 IP 地址或主机名。

我首先在任务模板中尝试过,HOST_NAME="{{ env "attr.unique.hostname" }}"工作正常,我可以在日志中打印出正确的主机名。

但是,当我尝试使用变量插值hostnamehttps://www.nomadproject.io/docs/ runtime/interpolation),例如hostname = ${attr.unique.hostname}我在 terraform 部署期间收到此类投诉

Invalid value for "vars" parameter: vars map does not contain key "attr",

我还尝试了运行时环境(https://www.nomadproject.io/docs/runtime/environment)并填写配置参数,例如ipv4_address = "$NOMAD_IP_<label>:$NOMAD_HOST_PORT_<label>"https://www.nomadproject.io/docs/drivers/docker.html#ipv4_address)。它也未能传递正确的值。

0 投票
1 回答
202 浏览

selenium - 如何为 Selenium Grid 配置 Nomad 作业

我正在尝试在 Hashicorp Nomad 中设置 Selenium Grid,但我不知道如何使网络正常工作。我想要的是拥有一个硒集线器和 8 个铬节点。我发现如果我将节点任务放入自己的组中,我只能对节点任务进行多次分配。

在本地运行它,我会像这样启动网格:

我需要如何配置网络才能使其正常工作?

我现在的工作是这样的:

0 投票
1 回答
309 浏览

nomad - 将可读的 JSON 作为字符串传递给 Nomad 模板

我们正在使用 nomad 模板为我们的 nomad 部署添加环境变量。

我注意到 nomad 要求我转义我的 JSON 字符串才能正确传递它。即:说我想传入{"a":3,"b":4}Key3 我不能按原样写它,相反,我必须写"{\"a\":3,\"b\":4}"少得多可读。

有没有办法让我可以将纯字符串传入并使其按原样解释?

0 投票
1 回答
469 浏览

driver - 如何以非 root 用户身份运行 nomad raw_exec 任务

可以在任务中以非 root 用户身份运行Nomad raw_exec 驱动程序的进程吗?理想情况下,希望以 root 身份运行 nomad,然后删除权限以以目标用户身份运行命令:

但是当我运行这项工作时它失败了:

我在文档中找不到任何可以让我做同样事情的参数

有没有人遇到过这个问题?

谢谢!

0 投票
1 回答
445 浏览

api - Hashicorp Nomad 和 Consul API - 获取所有服务地址

我正在为我的 Nomad 集群构建一个自我配置的代理。为此,我需要检索集群中运行的所有作业,以及它们为每个运行的容器分配的 IP 和端口。这样我可以自动生成反向代理配置和负载均衡器。我必须通过 Nomad 或 Consul 的 API 来获取它,但我需要通过一个 API 调用来获取它。我知道我可以通过调用 Consul 的端点获得给定节点中的所有服务/v1/catalog/node/nomad-node-3,但我必须指定节点。有没有我可以使用的端点?