Prerequisites
- Ubuntu 16 running in VirtualBox
VirtualBox Preferences
In VirtualBox Preferences define Host-only adaptor (should already exist and default to the following)
- Ip: 192.168.56.1
- Netmask: 255.255.255.0
- DHCP: Enabled
Create K8Master Node
Create VM
Create a VM with the following:
- 2 GB MEM
- 10 GB disk
- user: test
For Networking assign the following:
Adaptor 1: NATNet
Adaptor 2: Host-only adapter (vboxnet0)
For Audio: Disable
Start VM and install Ubuntu Server 16
Networking Setup
Log into the VM and issue the following commands.
Determine your network interfaces
> ifconfig -a
Code Block |
---|
enp0s3 Link encap:Ethernet HWaddr 08:00:27:ff:1a:7b
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
...
enp0s8 Link encap:Ethernet HWaddr 08:00:27:eb:d0:60
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:19723 (19.7 KB) TX bytes:0 (0.0 B)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
... |
From the above we can see that our vm has 2 network interfaces but only one is configured. The first interface is using NAT and has been assigned an IP address. We will need to add the second interface which is using the host-only network.
We are going to set this second interface (host-only) to a specific IP address: (192.168.56.100)
We might as well change the first interface to a static one too.
> sudo vi /etc/network/interfaces
Code Block |
---|
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto enp0s3
#iface enp0s3 inet dhcp
iface enp0s3 inet static
address 10.0.2.100
netmask 255.255.255.0
network 10.0.2.0
broadcast 10.0.2.255
gateway 10.0.2.1
dns-nameservers 10.0.2.1 8.8.8.8
auto enp0s8
iface enp0s8 inet static
address 192.168.56.100
netmask 255.255.255.0
network 192.168.56.0
broadcast 192.168.56.255 |
> reboot
After reboot, we should be able to confirm that the ip address is static by issuing the ifconfig command once more.
SSH into your VM from your host:
> ssh test@192.168.56.100
From the VM, confirm that you can resolve DNS by issuing the following command:
> nslookup google.com
We can also setup port forwarding via our NAT network to access our VM using
> ssh -p PORT test@localhost
Appendix - Virtual Box
Network Configurations
+-----------+-------------+-------------+----------------+----------------+
| | VM <-> Host | VM1 <-> VM2 | VM -> Internet | VM <- Internet |
+-----------+-------------+-------------+----------------+----------------+
| HostOnly | Yes | Yes | No | No |
| Internal | No | Yes | No | No |
| Bridged | Yes | Yes | Yes | Yes |
| NAT | No | No | Yes | Port forward |
| NATNet | No | Yes | Yes | Port forward |
+-----------+-------------+-------------+----------------+----------------+
Using Ubuntu
> sudo su
Update repository
> apt-get update
Disable swap
> swapoff -a
> vi /etc/fstab
<disable swap>
Update Hostname
> vi /etc/hostname
<reboot>
Get the IP Address
> ifconfig
Update the host file
> vi /etc/hosts
Set a Static IP Address
> vi /etc/network/interfaces
Add the following at the end of the file
...
Reference
Reference | URL |
---|---|
Kubernetes on Ubuntu | https://kubernetes.io/docs/getting-started-guides/ubuntu/ |
Install Kubernetes On Ubuntu | https://www.youtube.com/watch?v=UWg3ORRRF60 |
Building a Kubernetes Cluster in VirtualBox with Ubuntu | https://medium.com/@KevinHoffman/building-a-kubernetes-cluster-in-virtualbox-with-ubuntu-22cd338846dd |
Kubernetes cluster setup using virtual machines | https://www.profiq.com/kubernetes-cluster-setup-using-virtual-machines/ |