Ubuntu集群-使用MAAS开始裸机安装

这里介绍在Ubuntu中使用MAAS(https://maas.io/)安装裸机的9个步骤。node

MAAS能够将操做系统镜像经过网络启动(PXE)的方式主动部署到多个空的物理机上,实现集群装机的第一步。ubuntu

  • 说明:
    • MAAS是用于物理机初始安装和管理的系统,由Canonical提供。
    • 若是只使用Ubuntu,MAAS是免费的。
    • 若是须要支持其余操做系统,则须要付费购买其扩展包支持服务。

一、设置硬件

你须要一个运行MAAS的服务器,以及至少一个支持 BMC管理的服务器节点。建议 MAAS server 位于提供 DHCP 和 DNS服务的网络上。服务器

  • 注:
    • 不管是MAAS服务器仍是节点机均可以经过虚拟机来模拟,我使用Virtualbox(须要安装扩展包)运行成功。
    • 在VirtualBox中建立虚拟机,类型选择Linux/Ubuntu 64bit,将网络设置为“网卡桥接”。
    • 全部节点应处于一个网段,MAAS的对应子网的DHCP应予启用。

二、安装 Ubuntu Server

Download Ubuntu Server 18.04 LTS,制做启动盘,安装系统。而后以下一步的方法安装MAAS server。网络

三、安装 MAAS

sudo apt update
sudo apt install maas

四、建立admin帐户

 命令以下:ssh

sudo maas init

帐户名输入admin(也能够是其余,请牢记)。ide

登陆MAAS UI,经过 http://localhost:5240/MAAS/。工具

五、完成第一次用户配置

按照屏幕指示,完成 MAAS的首次配置。我建议保持缺省值不变,除非确有必要进行修改。ui

结束后,将会配置以下的设置参数:spa

  • Region name (MAAS name)
  • Ubuntu archive, Ubuntu extra architectures
  • Ubuntu images
  • SSH keys (for currently logged in user)

六、启用 DHCP

到选项卡 “Subnets” ,选择VLAN中当前所用的,将开启DHCP。选中 “Take action” 按钮,选择 “Provide DHCP”。 操作系统

  • 设置 Rack controller,将管理 DHCP。
  • 选择subnet,将建立 DHCP 动态范围。
  • 填写dynamic range详细信息。

七、建立ssh key

MAAS在安装服务器节点时,会将存储的key注入到节点中,之后从MAAS controller上能够直接登陆到machine中(帐号Ubuntu,无密码)。

建立key:

ssh-keygen -t rsa -b 2048

而后 vi ~/.ssh/id_rsa.pub 拷贝进去。若是里面已经有内容,能够直接拷贝下来。

  • 重要
    • 点击帐户名(上面的方法为admin),将上面的key内容import到ssh key中。
    • 这个操做须要在deploy节点以前进行。

八、列出和部署servers

到Images选项卡里,选择须要部署的镜像,MAAS将会自动启动下载。将会须要较长的时间。

等MAAS下载完系统镜像,就准备好部署 machines了。

  1. 使用VirtualBox建立虚拟机,设为网络启动,把其它启动方式关闭,网络设为“网卡桥接”。
  2. 其它物理机设为网络启动(PXE boot),把其它启动方式关闭。
  3. 启动后在MAAS中machines选项卡能够看到,状态为New。
  4. 若是machines 没有 IPMI based BMC, proceed to edit them and enter their BMC details
  5. 选择 machines ,选择“Take action”为 “Commission”。
  6. 当machines 状态变为 “Ready”,而后再次执行 “deploy”,能够选择安装的操做系统版本。

九、登陆到节点服务器

上面的操做结束后,从maas controller机器使用 ssh node_IP_address 登陆到节点。

  • 用户名为 ubuntu,免密。

而后可使用Ansible能够集中地控制多个节点,批量地执行ssh命令。

参考

技术文档