Skip to content
Real time container utilization performance comparison
Shell Python R
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
controller
images
measurements
.gitignore
LICENSE
README.md
custom-lxc-start.sh
install_server.sh
lxc.md
openvz.md
setup-xen-xenial.sh
setup_container.sh

README.md

container-performance

Real time container utilization performance comparison

Purpose

This is a research project for the course Large Systems at os3.nl (MSc SNE).

The documentation will follow afterward.

Request definition

A request could mean several things. We could describe a request as the loading of a website, which could include multiple sources (e.g. html, css, js). This would mean we keep our container 'alive' for a pre-defined time, to facilite multiple HTTP requests, which serve a single web page request.

Installation

We used Ubuntu Xenial VPS with 4GB of ram.

Use docker,rkt or lxc as CONTAINERTYPE.

sudo su
export CONTAINERTYPE=insert_here
curl -sSL https://raw.githubusercontent.com/svlentink/container-performance/master/install_server.sh | bash

And after the reboot you can run:

sudo su
systemctl start memcached
export CONTAINERTYPE=insert_here
/root/container-performance/controller/main.py & \
  sleep 3 && /root/container-performance/controller/gather-metrics.py

But you should first manually check if memcached is working (netstat -tulpn) and perform all the request manually for its output curl main-controller:8081/GET/<server,cli>/<lamp,bash,node,python>/<lxc,docker>/123

Rkt

We only used the default rkt way, future research could include rkt fly, which still is in development.

You can’t perform that action at this time.