配置文件设置

以下配置文件设置可用于定义基于云或裸机集群的集群配置。每个命名的配置文件都应包含单个集群定义的信息。

配置文件设置

anaconda_url (可选)

设置自定义位置以从中下载 Anaconda/Miniconda(默认:Miniconda with Python 2)。

anaconda_url: http://localhost/miniconda/Miniconda-latest-Linux-x86_64.sh

aws(可选)

为所有实例设置 AWS 选项:

  • tags 是分配给每个实例的可选键/值元数据。
  • termination_protection 防止您的实例被意外终止(默认值:true)。
  • use_private_ip使用 AWS 节点的私有 IP 地址而不是公共 IP 地址。如果您使用自定义安全组(默认值:false),这很有用。
aws:
  tags:
    - billingProject: anaconda-cluster
    - cluster_version: production
    - ...
  termination_protection: true
  use_private_ip: true

conda_channels (可选)

设置自定义通道以从集群节点上下载 conda 包。此设置将覆盖所有配置的 conda 通道,包括默认通道。如果您使用此设置,则需要明确包含两个默认频道defaultsanaconda-cluster,然后是您的自定义频道。

conda_channels:
  - defaults
  - anaconda-cluster
  - blaze
  - pypi
  - username
  - https://conda.anaconda.org/username/

default_channels (可选)

设置default_channels以从定义的 URL 下载默认 conda 包。此设置将覆盖默认的 conda 频道:http ://repo.anaconda.com 。

default_channels: http://localhost/conda/anaconda

channel_alias (可选)

设置channel_alias以指示 conda 在本地存储库中查找通道 此设置将覆盖默认值:http://conda.anaconda.org

channel_alias: http://localhost/conda/

名称

配置文件的名称。

name: profile_name

节点 ID

要在每个节点上配置的图像。对于裸机集群,bare-metal可以使用诸如此类的虚拟值 。

node_id: ami-d05e75b8  # Ubuntu 14.04, us-east-1 region

节点类型

要启动的节点类型。对于裸机集群,bare-metal可以使用诸如此类的虚拟值 。

node_type: m3.large

num_nodes

要启动(基于云)或管理(裸机)的节点数。

num_nodes: 4

机器(可选)

集群中头节点和计算节点的 IP 地址。请注意,此设置仅应使用 IP 地址,而不应使用主机名或 FQDN。

这与裸机集群设置一起使用,可以指裸机节点、在 Anaconda 之外手动启动以进行集群管理的基于云的节点,或一组虚拟机。如果 SSH 在 22 以外的端口上运行,您可以选择包含 SSH 端口号(例如,192.168.1.1:2222)。

machines:
  head:
    - 192.168.1.1
  compute:
    - 192.168.1.2
    - 192.168.1.3
    - 192.168.1.4

插件(可选)

在创建或配置集群时安装插件。一些插件也有可配置的设置。有关更多信息,请参阅插件设置文档。

plugins:
  - notebook
  - dask

提供者

用于启动基于云或裸机集群的实例的提供程序的名称。有关更多信息,请参阅提供程序设置 文档。

provider: aws_east

root_size (可选)

根卷的大小 (GB)。目前仅用于 Amazon EBS 卷。

root_size: 200

安全(可选)

启用/禁用 SELinux 或刷新 iptables 规则的安全设置(默认值:true)。

security:
  disable_selinux: true
  flush_iptables: true

用户

用户以 SSH 身份连接到集群节点。此用户必须具有无密码 sudo 访问权限。

user: ubuntu

基于云的配置文件示例

下面是一个基于云的配置文件示例profile_name,该~/.acluster/profiles/profile_name.yaml配置文件位于 配置了所有必需和可选设置的文件中。

name: profile_name
node_id: ami-d05e75b8  # Ubuntu 14.04, us-east-1 region
node_type: m3.large
num_nodes: 4
provider: aws_east
root_size: 50
user: ubuntu
anaconda_url: http://localhost/miniconda/Miniconda-latest-Linux-x86_64.sh

aws:
  tags:
    - billingProject: anaconda-cluster

plugins:
  - notebook
  - dask

default_channels: http://localhost/conda/anaconda

channel_alias: http://localhost/conda/

conda_channels:
  - defaults
  - anaconda-cluster
  - blaze
  - pypi
  - username
  - https://conda.anaconda.org/username/

security:
  disable_selinux: true
  flush_iptables: true

示例裸机配置文件

下面是profile_name位于~/.acluster/profiles/profile_name.yaml文件中的示例裸机配置文件,该 文件配置了所有必需和可选设置。

name: profile_name
node_id: bare_metal
node_type: bare_metal
num_nodes: 4
provider: bare_metal
user: ubuntu
anaconda_url: http://localhost/miniconda/Miniconda-latest-Linux-x86_64.sh

machines:
  head:
    - 192.168.1.1
  compute:
    - 192.168.1.2
    - 192.168.1.3
    - 192.168.1.4

plugins:
  - notebook
  - dask

default_channels: http://localhost/conda/anaconda

channel_alias: http://localhost/conda/

conda_channels:
  - defaults
  - anaconda-cluster
  - blaze
  - pypi
  - username
  - https://conda.anaconda.org/username/

security:
  disable_selinux: false
  flush_iptables: false