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

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

by liam zheng on 14 April 2020

上一篇教程中,我们介绍了安装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及测试虚拟机自动供给

订阅博客文章

订阅您感兴趣的主题

在提交此表格的同时,我确认已阅读和同意的隐私声明隐私政策。

查看更多内容

工业网络安全:迈向 IEC 62443 合规之路

随着制造商们努力进行 IT 与 OT 融合以提升自身效率和生产力,工业网络安全已成为每一位首席信息安全官(CISO)的关注焦点。然而,随着连接性的增强,风险也随之增加。保障设备、网络及系统的安全便成为了一项关键的挑战。作为 Ubuntu 发行商的 Canonical 深知这一需求,并致力于依照工业自动化与控制系统网络安全综合框架 IEC 62443 标准提升自身的能力。 本篇文章中将简要概述 IEC 62443 标准的适用范围,并阐述它与 Canonical 同样积极响应的其他标准之间的联系。文中将重点介绍,Canonical 在汽车标准方面投入的大量工作以及其对行业倡议所做出的贡献,由于在功能安全、设备稳固和安全生命周期管理等方面遵循相同的原则,如何与 IEC 6244 […]

什么是「应用安全」 — Application Security “AppSec” ?

网络安全领域已然迎来重大变革。如今,网络攻击、恶意软件和勒索软件等风险日益蔓延,加之新出台的网络安全法规以及针对数据泄露和数据外泄的高额罚款所带来的压力与日俱增,强化应用安全(AppSec)已毫无妥协可言。 在本文中,我们将探讨如何直面这些挑战,通过聚焦安全态势中最基本的要素,确保业务和系统安全。笔者将介绍应用安全(AppSec)的概念及其益处,探讨企业应如何设计和实现应用安全,并分享我们团队的一些实用建议和最佳实践,帮助您筑牢安全防线。 什么是 AppSec ? 应用安全(简称 AppSec)是一个广义概念,涵盖了企业组织为保护其应用程序在整个生命周期内免遭各种安全漏洞而采用的所有工具、举措与流程。应用安全的目标只有一个,就是找出应用程序和系统中可能会被恶意攻击者利用, […]

互联汽车软件开发:Anbox Cloud 为安全护航

当下,Android Automotive 操作系统(AAOS)是各大汽车制造商打造车载信息娱乐系统的首选。AAOS 是一个功能完备的信息娱乐平台,支持各类应用程序、功能和服务,其使用体验与人们熟悉的 Android 手机大同小异。 AAOS 可助力开发者构建出提升驾驶体验的新应用和新功能,促使兼容应用与服务生态系统迅速壮大。 然而遗憾的是,开发强大稳健的信息娱乐系统并非易事,前方的道路漫长且充满挑战。硬件可用性、物流配送以及系统配置等方面都存在挑战。例如,对硬件的依赖常常会导致测试中出现问题和延误。不仅如此,许多硬件变体也与开发者的测试环境存在差异,这使得搭建具有代表性的测试台变得十分困难。 云原生方案就是解决物理硬件问题的有力办法:其无需进行实物运输、搬运或安装,就能 […]