Deploy AGW (Bare Metal)
Install AGW
Install Access Gateway on Ubuntu (Bare Metal)
Prerequisites
To setup a Magma Access Gateway, you will need a machine that satisfies the following requirements:
- AGW_HOST: 64bit-X86 machine, baremetal strongly recommended (not virtualized). You will need two ethernet ports. We use
enp1s0andenp2s0in this guide. They might have different names on your hardware so just replaceenp1s0andenp2s0with your current interfaces name in this guideline. One port is for the SGi interface (default:enp1s0) and one for the S1 interface (default:enp2s0). Note that theagw_install_ubuntu.shscript will rename theenp1s0interface toeth0.
Deployment
1. Create boot USB stick and install Ubuntu on your AGW host
- Download the Ubuntu Server 20.04 LTS .iso image from the Ubuntu website
- Create bootable usb using etcher tutorial here
- Boot your AGW host from USB (Press F11 to select boot sequence, :warning: This might be different for your machine). If you see 2 options to boot from USB, select the non-UEFI option.
- Install and configure you access gateway according to your network defaults.
- Make sure to enable ssh server and utilities (untick every other)
- Connect your SGi interface to the internet and select this port during the installation process to get an IP using DHCP.
2. Deploy magma on the AGW_HOST
Run AGW installation
To install on server with DHCP configured SGi interface.
sudo su
wget https://raw.githubusercontent.com/magma/magma/v1.6/lte/gateway/deploy/agw_install_ubuntu.sh
bash agw_install_ubuntu.sh
To Install on server with statically allocated SGi interface. Fow example: SGi has 1.1.1.1/24 IP and upstream router IP is 1.1.1.200
sudo su
wget https://raw.githubusercontent.com/magma/magma/v1.6/lte/gateway/deploy/agw_install_ubuntu.sh
bash agw_install_ubuntu.sh 1.1.1.1/24 1.1.1.200
The script will run a pre-check script that will prompt you what will change on your machine. If you're okay with those changes reply yes and magma will be installed. If no is replied It will stop the installation.
- Check if Ubuntu is installed
Ubuntu is installed
- Check for magma user
magma user is not Installed
- Check if both interfaces are named eth0 and eth1
Interfaces will be renamed to eth0 and eth1
eth0 will be set to dhcp and eth1 10.0.2.1
Do you accept those modifications and want to proceed with magma installation?(y/n)
Please answer yes or no.
The machine will reboot but It's not finished yet, the script is still running in the background. You can follow the output there
sudo journalctl -fu agw_installation
When you see "AGW installation is done." It means that your AGW installation is done, you can make sure magma is running by executing:
sudo service magma@* status
Post Install Check
Make sure you have control_proxy.yml file in directory /var/opt/magma/configs/ before running post install script.
bash /root/agw_post_install_ubuntu.sh