Prerequisites ============= Before beginning, you should ensure that your hardware and network meet the following requirements: * Network - The MAAS server's internal network interface should be on its own VLAN or physically segregated network. Specific requirements of this internal network include: - It must have no other DHCP servers running on it. - It must have no other TFTP servers running on it. - It should have no traffic present except for that associated with certification testing. - The network should have the capabilities to match the fastest network device being tested. This will be covered in more detail later. - The external network interface requires access to several sites. Thus, if your network includes a strong firewall that blocks outgoing access, you will need to open access to certain sites. In some cases, local mirrors of these sites will work, as detailed shortly. As a general rule, though, you need access to the following sites: - A DNS server, UDP port 53 - ``ntp.ubuntu.com``, UDP port 123 - ``connectivity-check.ubuntu.com``, TCP port 80 - ``archive.ubuntu.com``, TCP port 80 - An official `mirror site `_ will work as well, and may be preferable to improve deployment speed. - ``ports.ubuntu.com``, TCP port 80 - ``ppa.launchpad.net``, TCP port 80 - ``keyserver.ubuntu.com``, port 443 - ``api.snapcraft.io``, TCP port 443 - ``images.maas.io``, TCP port 80 - ``cloud-images.ubuntu.com``, TCP port 80 - ``login.ubuntu.com`` - ``certification.canonical.com``, TCP port 443 - This site is used to submit results. If it's blocked, results can be copied to another computer and submitted from there. - Sites needed for GPGPU testing - ``www.ubuntu.com``, ICMP - ``developer.download.nvidia.com``, TCP port 443 - ``github.com``, TCP port 443 - Local mirrors or services can be substituted for some of these sites. In particular: - `local mirrors `_ of ``archive.ubuntu.com``, ``ports.ubuntu.com``, and ``ppa.launchpad.net`` can produce significant speed improvements when deploying servers; however, you *must* keep the local mirrors up-to-date on a daily basis, or immediately prior to any test run. - You may mirror ``images.maas.io``; however, there will be no speed improvement in day-to-day deployments. - You can specify another NTP server for ``ntp.ubuntu.com`` in the MAAS setup; however, one certification test will attempt to access ``ntp.ubuntu.com`` and will fail if that site cannot be reached. - Mirrors and other site substitutions will require changing the MAAS configuration, typically by locating the relevant fields in the web UI and changing them. - Note that hostnames may map to multiple IP addresses, and those IP addresses may change without notice. * MAAS server - Ensure that the MAAS server has two network interfaces. - At a minimum, the external port should be able to access the Internet while the internal port must be on its own VLAN or physically segregated LAN to avoid conflicts with other network servers providing DHCP, DNS or PXE. Note that external access should be protected as mentioned in :doc:`purpose`. - You can install on a virtual machine or container in a more general-purpose computer, but you'll have to pay careful attention to the network and disk settings. :doc:`appendix-d-install-maas-lxd` describes how to set up MAAS in a LXD container. * System Under Test (SUT) that provides one of the power control types MAAS supports: - American Power Conversion (APC) PDU - Christmann RECS|Box Power Driver - Cisco UCS Manager - Digital Loggers, Inc. PDU - Eaton PDU - Facebook's Wedge - HP Moonshot - iLO Chassis Manager - HP Moonshot - iLO (IPMI) - IBM Hardware Management Console (HMC) for PowerPC - IBM Hardware Management Console (HMC) for Z - IPMI - Intel AMT - LXD (virtual systems) - Microsoft OCS - Chassis Manager - OpenBMC Power Driver - OpenStack Nova - Proxmox - Raritan PDU - Redfish - SeaMicro 15000 - VMWare - Virsh (virtual systems) - Webhook * Switches capable of handling the highest-speed network devices under test. - Sufficient Ethernet cables to connect all network ports on the SUTs and the MAAS server, including their BMCs. - Be sure cables and switches are capable of handling the fastest network speeds being tested; for instance, if a SUT has a 100 Gbps NIC, you'll need 100 Gbps cables and switches, not 40 Gbps hardware. - When testing high-speed (25 Gbps and faster) devices, the switches may need to be configured to support jumbo frames (an MTU of 9000). - Please see the Self-Testing Guide for further information on network requirements for certification testing. * Monitor and keyboard for SUT (helpful, but not strictly required) * Monitor, keyboard, and optionally a mouse for the MAAS system * At least 1 TB of disk space with which to mirror the Ubuntu archives, if desired. (An external USB3 hard disk may be used for this, if necessary.) Note that these hardware requirements are geared toward a typical testing environment. You may need to expand this list in some cases. For instance, if you test network devices of varying speeds, you may need multiple switches and cable types to handle them all.