【问题标题】:Workers Unable to Join Cluster, Allowed Role Set?工人无法加入集群,允许角色集?
【发布时间】:2016-12-08 23:04:46
【问题描述】:

我已经为 3 个 master 和 5 个 worker 获取了 the latest DC/OS 1.8.7 CloudFormation templatedescribed on their AWS installation page,并将其部署到我组织的 AWS 账户。

我的实际实现 cloud-init 文件可以在这里找到:

这个设置工作得很好,工作人员发现主人并添加自己,我可以将任务安排给工作人员,事情似乎正常工作。 ZooKeeper 是集群的,等等。一切看起来都很健康,一切正常,等等。

值得注意的是,这三种类型的实例之间唯一有效的区别是文件底部的角色:

大师

  - path: /etc/mesosphere/roles/master
    content: ""

  - path: /etc/mesosphere/roles/aws_master
    content: ""

  - path: /etc/mesosphere/roles/aws
    content: ""

公职人员

  - path: /etc/mesosphere/roles/slave_public
    content: ""

  - path: /etc/mesosphere/roles/aws
    content: ""

服务工作者

  - path: /etc/mesosphere/roles/slave
    content: ""

  - path: /etc/mesosphere/roles/aws
    content: ""

如果我将这些角色中的任何一个更改为 slaveslave_public 以外的任何角色,这些实例将永远无法加入 DC/OS 集群。由于我在这里的要求要求我至少需要四种类型的角色,所以这在某种程度上是一个障碍。

我需要以下角色:

  • ☑主人
  • ☑公职人员
  • ☐ 服务人员
  • ☐数据工作者

由于我的网络布局和组织需要,这些额外的类型是不可协商的。

是否需要一些额外的步骤才能让 DC/OS 允许额外的辅助角色?

【问题讨论】:

    标签: amazon-web-services mesos dcos


    【解决方案1】:

    masterslaveslave_public 参数是 DC/OS 安装程序唯一知道的参数。

    虽然slave_public 参数确实将所有节点资源静态分配给slave_public 角色,但slave 参数实际上将所有节点资源分配给* 角色,该角色用于未指定角色的任务。

    为了将资源分配给其他角色,有两种方法:

    1. 通过修改每个代理节点上/var/lib/dcos/mesos-resources文件中MESOS_RESOURCES的json内容,将资源静态分配给自定义角色。
    2. 使用动态预留 Mesos API 将资源动态分配给自定义角色:http://mesos.apache.org/documentation/latest/reservation/

    【讨论】:

      猜你喜欢
      • 2020-04-07
      • 2019-05-20
      • 1970-01-01
      • 1970-01-01
      • 2018-09-21
      • 1970-01-01
      • 2019-04-03
      • 2022-01-27
      • 1970-01-01
      相关资源
      最近更新 更多