谢谢您的订阅!
当新的内容发布后您将开始接收邮件。您也可以点击邮件内的链接随时取消订阅。关闭Close

  1. 博客
  2. 文章

liam zheng
14 April 2020

裸机云快速部署利器Ubuntu MAAS:单机安装及测试系列教程第二篇


在上一篇教程中,我们介绍了安装MAAS所需的基础环境。本篇教程将继续介绍MAAS初始化配置的内容。

登录后进入如下设置页面,将Ubuntu archive及Ubuntu extra architecture在线安装源更改为本地区源以加速包下载及部署过程,如果MAAS环境仅支持AMD64 OS部署,则无需更改Ubuntu extra architecture。

MAAS同时安装及启用Bind名字服务。如果需要MAAS解析公司内部域名,则在DNS forwarder输入相应名字服务器IP地址。如果为空则只能解析MAAS所管理的域下被管理机器及手工增加的记录。在internet直连环境下,可以不用设置但然仍解析Internet域名因为MAAS能访问根服务器,也可以设置为192.168.10.1这个由LXD启用的域名服务器,这样MAAS也能解析所有test1主机上所能解析的域名。 

“APT  HTTP/HTTPS Proxy server”项设置外部的proxy用于APT( Ubuntu/Debian包管理工具)或YUM(Centos/RHEL包),如果为空则MAAS会自动使用MAAS内置proxy服务器。Proxy设置及MAAS Proxy的上级(peer)可以从MAAS管理的设置菜单进一步重新修改或配置。

正确的Internet访问及配置是MAAS管理的一个关键,MAAS在新加被管理服务器(add machine), 系统探测(commissionning),部署(deploy)阶段都需要从在线安装源下载包及更新系统,如果下载或包安装出错都会引起失败。在这个测试环境中,MAAS server能够透过test1上由LXD服务自动使能的源地址目标转换(SNAT)直接访问Internet, proxy server也安装于MAAS server上,被管理机通过MAAS server上的proxy服务来进行包下载安装。但这个proxy设置及internet访问仅限于APT或YUM包管理服务。如果你直接登录到被管理机器上用wget访问internet的话,你可以进一步设置了http_proxy和htts_proxy环境变量或者有正确的默认路由(例子中为192.168.10.1)来访问Internet。如果后继应用是用Juju部署的话,Juju会有相应的机制来设置及自动使用proxy。

设置页面的下半部份(如下图)为MAAS映像下载。选择版本及构架amd64, arm64等,点击Update selection按钮后MAAS开始在后台同步及导入,下载通常比较久,有时需要几小时而且可能会失败。可以继续下面的步骤,但在增加被管理机器前进一步检查是否同步成功及重新同步,否则PXE不能正常启动,因为所需要的kernel,init-image等可能没有成功导入。

点击“Continue”,下一步导入ssh访问公钥,这个公钥会被cloud-init机制自动注入被管理机,实现被管理机的ssh访问。如下方法在test1测试主机上生成ssh密钥对,并通MAAS web管理介面导入公钥。

ubuntu@test1:~$ ssh-keygen -t rsa -N '' -f .ssh/id_rsa
Generating public/private rsa key pair.
Your identification has been saved in .ssh/id_rsa.
Your public key has been saved in .ssh/id_rsa.pub.
The key fingerprint is:
SHA256:L9dYaL3409bCul3ZrFktVdOhTwAXy...... ubuntu@test1
The key's randomart image is:
+---[RSA 2048]----+
|           ..+.. |
|            o + o|
|           ..= oo|
|           =o.+ o|
|        S + B....|
|         o O Eoo+|
|        . * +=.o*|
|         o ..o**.|
|          .+BB=. |
+----[SHA256]-----+
ubuntu@test1:~$ ls .ssh/
authorized_keys  id_rsa  id_rsa.pub
ubuntu@test1:~$ cat .ssh/id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCxPph9oyLwFwarcGAWqQ/+VhNTP6Q7FFxZo/neLhI......./ ubuntu@test1

MAAS初始设置完成,点击“Go to dashboard”铵钮进入管理介面。可能会显示如下2个告警,一为提示Bionic(Ubuntu 18.04)配置为commissioning,但由于下载及导入未完成而不可用。二是提示还未启用DHCP服务,从而不能PXE启动。可在检查这2项前确认完成后再点击Dismiss关闭。

2.2.8 DHCP服务启用及IP地址保留

如下图,点Subnet菜单项,会显示自动检测及创建的子网。

点击VLAN栏下的untagged链接,显示如下图:

从Reserve range下拉菜单中分别选择“Reserver range” 和”Reserver dynamic range”,并输入你预留的IP地址范围和MAAS动态地址分配(dhcp)范围。MAAS动态地址范围用于MAAS管理的dhcp服务,通常是临时使用的情况比如系统探测(commissionning)。

点击“Configure DHCP”按钮,注意MAAS provider DHCP为选中状态,类型Type中选择第一项。最后可以检查MAAS server的所有服务及状态,如下选择Controller菜单显示如下:

然后点Name栏下的链接,显示如下图。注意9个服务都显示为绿色。映像同步也显示为已同步状态,如非同步状态,可进一步选择Images菜单查看及重新同步。

其它用户管理,更多的设置,DNS管理等你可以选择相应的菜单查看及进一步了解。

在MAAS管理机器的过程中,如果能实时查看及监控被管理服务器的启动过程及日志输出,对于查找问题及了解进展(如下载包)非常有用。比较方便的方法是通过ipmiconsole和virsh console终端命令来查看,这需要配置Linux的内核启动参数将终端重定向,MAAS提供这个配置选项,可以从如下管理介面设置。

预先检查一下你的子网的网关及DNS设置是否正确及验证否能正常访问Internet也非常重要。

ubuntu@test1:~$ lxc exec maas-server bash                                               
root@maas-server:~# ping -c2 www.bing.com   #检查maas-server能访问internet 
PING cn-0001.cn-msedge.net (202.89.233.101) 56(84) bytes of data.
64 bytes from 202.89.233.101 (202.89.233.101): icmp_seq=1 ttl=114 time=39.4 ms
64 bytes from 202.89.233.101 (202.89.233.101): icmp_seq=2 ttl=114 time=39.0 ms

--- cn-0001.cn-msedge.net ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 3417ms
rtt min/avg/max/mdev = 39.087/39.251/39.415/0.164 ms
root@maas-server:~# dig @192.168.10.10 www.bing.com +short #检查maas-server的dns服务正常工作
a-0001.a-afdentry.net.trafficmanager.net.
cn.cn-0001.cn-msedge.net.
cn-0001.cn-msedge.net.
202.89.233.101
202.89.233.100
root@maas-server:~# http_proxy=http://192.168.10.10:8000/ wget -nd http://cn.bing.com/ #检查maas-server proxy正常工作
URL transformed to HTTPS due to an HSTS policy
--2020-04-06 10:06:27--  https://cn.bing.com/
Connecting to 192.168.10.10:8000... connected.
Proxy request sent, awaiting response... 200 OK
Length: 113027 (110K) [text/html]
Saving to: ‘index.html’

index.html                                         100%[===========================================================================================>] 110.38K  --.-KB/s    in 0.1s    

2020-04-06 10:06:27 (918 KB/s) - ‘index.html’ saved [113027/113027]

root@maas-server:~# https_proxy=http://192.168.10.10:8000/ wget -nd https://cn.bing.com/ #检查proxy的https访问能工作
...
2020-04-06 10:06:38 (873 KB/s) - ‘index.html.1’ saved [113027/113027]
root@maas-server:~# rm index.html*
root@maas-server:~# exit
ubuntu@test1:~$ 

至此,MAAS安装及配置已完成。

下一篇:2.3 配署MAAS KVM POD及测试虚拟机自动供给


查看更多内容

使用 MAAS 部署 VMware 虚拟机管理程序

多数现代数据中心本身均为异构架构。VMware 环境常与容器平台、数据库及其他裸机业务负载共存,多年运行于同一套硬件之上。服务器一次性采购,但会随业务需求变化调整承载业务。 然而,ESXi(VMware 虚拟机管理程序)的配置通常由独立流程负责。主机通过 VMware 工具、自定义脚本或专为将部署 ESXi...

Canonical Managed Kubeflow AI 运维平台现已登陆 Microsoft Azure Marketplace

Ubuntu 发行商 Canonical 近日宣布,其 Managed Kubeflow 服务已在 Microsoft Azure Marketplace 正式上线,实现全面商用(GA)。该解决方案允许 AI 团队在自有云租户环境内获得一个完全托管、可直接投入生产的 MLOps 平台。 上游 Kubeflow...

全新工具 Workshop 上线:一条命令即可在 Ubuntu 中启动沙箱开发环境

开发者如今可在智能体 AI 等前沿工作流程中,获得环境统一、可复现的开发体验 Canonical 正式发布 Workshop,该解决方案可通过单条命令快速启动开发环境。只需配置一次,此开发环境即可在多台设备上复现使用。这意味着各类开发设备与部署流水线可保持统一工作流程,并可大幅减少管理依赖关系所花费的时间。...

Canonical 技术案例 – 彻底解决 12 年老旧代码中的 Linux 性能漏洞

部分支持案例处理起来十分简单。另一些案例则要深入老旧遗留代码,一处逻辑缺陷就能悄无声息让常规指令引发严重性能故障。本系列将介绍 Canonical 技术支持与持续工程团队如何协作,排查、修复并向上游提交仅靠常规故障排查无法解决的疑难问题。在第二篇帖子中,libnss-db 中一处存在 12 年之久的漏洞导致 getent...