Skip to content

Minifridge

Robert Quitt edited this page Dec 2, 2021 · 1 revision

minifridge is the physical machine that runs the two VMs, soda and tap. It lives on the CSUA rack in Soda 341.

Logging into minifridge

To log in, first retrieve the root password from the password file. You can also copy your ssh public key over.

ssh root@minifridge.csua.berkeley.edu

IPs

IP hostname
10.1.1.70 services
128.32.112.230 services.CSUA.Berkeley.EDU
10.1.1.14 soda
128.32.112.233 soda.CSUA.Berkeley.EDU
10.1.1.69 minifridge
128.32.112.234 minifridge.CSUA.Berkeley.EDU

virsh

We manage the VMs using virsh. tap is still known as services in virsh.

VM Network config

minifridge has two bridges, br0 and br1, to connect to the 10.1.1.0/24 network (CSUA internal) and the the 128.32.112.0/24 network (EECS). The CSUA internal network used to be relevant because we had many VMs for all the services (dns, gateway, ldap, mail, nfs, www) but they were all merged together into tap (formerly services).

https://wiki.debian.org/BridgeNetworkConnections

https://wiki.libvirt.org/page/Networking#Bridged_networking_.28aka_.22shared_physical_device.22.29

Virtio network device fix

From its start in 2017 to 2021 the nfs performance on soda was really poor (2600ms RTT average according to nfsiostat). This was caused by a configuration of the network devices to do emulation of a physical device. It had slow performance dealing with a lot of small packets (like those used by nfs). By changing soda and tap to both use virtio, the nfs problems were resolved. The average RTT dropped down to about 5ms (a 500x improvement)

So-called "full virtualization" is a nice feature because it allows you to run any operating system virtualized. However, it's slow because the hypervisor has to emulate actual physical devices such as RTL8139 network cards . This emulation is both complicated and inefficient.

Virtio is a virtualization standard for network and disk device drivers where just the guest's device driver "knows" it is running in a virtual environment, and cooperates with the hypervisor. This enables guests to get high performance network and disk operations, and gives most of the performance benefits of paravirtualization.

https://wiki.libvirt.org/page/Virtio

Clone this wiki locally