裸机集群设置

用于集群管理的 Anaconda 可用于管理预先存在的集群,例如裸机、虚拟机集合(Vagrant、Docker 等)或之前实例化的云实例。这些类型的安装统称为裸机安装。

额外的裸机集群要求:

  • 客户端机器:
    • 无密码 SSH 访问所有集群节点
  • 集群节点:
    • 在启用无密码 sudo 的所有节点上匹配用户帐户/凭据

配置说明

1. 提供者设置

一个示例提供程序文件包含在用于集群管理的 Anaconda 的新安装中,位于~/.acluster/providers.yaml 客户端计算机上的文件中。您可以编辑此文件的内容以反映您的裸机提供程序的设置。

下面显示~/.acluster/providers.yaml了一个名为 provider的示例文件 bare_metal

bare_metal:
  cloud_provider: none
  private_key: ~/.ssh/my-private-key

有关提供程序设置的更多详细信息,请参阅提供程序设置页面。

2. 配置文件设置

在位于 的客户端计算机上创建一个文件,该文件 ~/.acluster/profiles.d/profile_name.yaml定义以下信息:

name: profile_name
provider: bare_metal
node_id: bare_metal
node_type: bare_metal
user: ubuntu
num_nodes: 4
machines:
  head:
    - 192.168.1.1
  compute:
    - 192.168.1.2
    - 192.168.1.3
    - 192.168.1.4

# Optional for Anaconda Server
# (note that the ports might be different in your configuration)
anaconda_url: http://[your-anaconda-server-ip]:9000/Miniconda-latest-Linux-x86_64.sh
conda_channels:
  - http://[your-anaconda-server-ip]:8080/conda/anaconda-cluster
  - http://[your-anaconda-server-ip]:8080/conda/anaconda
  - defaults

上面显示的示例配置文件是为profile_name4 节点裸机集群命名和配置的。

有关配置文件设置的更多详细信息,请参阅配置文件设置页面。

3. 配置集群

使用以下命令配置具有指定配置文件的裸机集群:

$ acluster create demo_cluster --profile profile_name

注意:替换demo_cluster为您的集群 profile_name名称和您的配置文件的名称。

执行此命令后,将配置裸机集群,您将在任务和初始化步骤完成时看到更新。

典型的裸机集群配置需要几分钟时间,输出类似于以下内容:

$ acluster create demo_cluster --profile profile_name
Creating cluster
Number of existing nodes: 0
Number of requested nodes: 4
Licensed nodes: 16
License is valid for the current number of nodes.
INFO: Creating new cluster "demo_cluster" with profile "profile_name"
INFO: Creating 4 instances
INFO: Successfully created instances
INFO: Cluster info: {'ips': ['54.84.227.194', '52.23.192.232',
      '54.84.184.193', '54.88.116.203'], 'user': 'ubuntu',
      'name': u'demo_cluster'}
Saving cluster file
Cluster "demo_cluster": 4 nodes
Number of existing nodes: 4
Number of requested nodes: 0
Licensed nodes: 16
License is valid for the current number of nodes.
Checking ssh connection
INFO: Checking SSH connection
Checking sudo
Bootstraping conda
INFO: Installing miniconda
INFO: Anaconda URL: https://repo.anaconda.com/miniconda/Miniconda-latest-Linux-x86_64.sh
INFO: Checking conda installation
INFO: Checking conda installation
Bootstraping salt
INFO: Setting up Salt master and Minions
INFO: Creating conda env for salt
INFO: Installing salt
Starting salt
INFO: Flushing iptables rules
INFO: Setting SELinux to permissive
INFO: Starting salt-master daemon
INFO: Starting salt-minion daemon
Checking salt connection
Uploading formulas
INFO: Uploading formulas to head
INFO: Uploading profile
Setting Roles
INFO: Settings grains/roles
Syncing formulas
Done

集群现在可以使用了。

如果您在创建集群时遇到错误,请查看故障排除常见问题