Johannes Kastl's avatar

Johannes Kastl

ojkastl_buildservice

Involved Projects and Packages

youki is an implementation of the OCI runtime-spec in Rust, similar to runc.

Here is why we are writing a new container runtime in Rust.

* Rust is one of the best languages to implement the oci-runtime spec. Many very nice container tools are currently written in Go. However, the container runtime requires the use of system calls, which requires a bit of special handling when implemented in Go. This is too tricky (e.g. namespaces(7), fork(2)); with Rust, it's not that tricky. And, unlike in C, Rust provides the benefit of memory safety. While Rust is not yet a major player in the container field, it has the potential to contribute a lot: something this project attempts to exemplify.

* youki has the potential to be faster and use less memory than runc, and therefore work in environments with tight memory usage requirements. Here is a simple benchmark of a container from creation to deletion.

Runtime Time (mean ± σ) Range (min … max)
youki 198.4 ms ± 52.1 ms 97.2 ms … 296.1 ms
runc 352.3 ms ± 53.3 ms 248.3 ms … 772.2 ms
crun 153.5 ms ± 21.6 ms 80.9 ms … 196.6 ms

* I have fun implementing this. In fact, this may be the most important.

This is the factory development project for Vagrant

This plugin allows obtaining a public IP address of a guest machine.

This uses a fork with small adjustments to make this work with up-to-date ruby and bundler versions.
https://github.com/johanneskastl/vagrant-address

This is a Vagrant plugin that adds a Libvirt provider to Vagrant, allowing
Vagrant to control and provision machines via the Libvirt toolkit.

Tools for VMware

The CLI is designed to be a user friendly CLI alternative to the GUI and well suited for automation tasks. It also acts as a test harness for the govmomi APIs and provides working examples of how to use the APIs.

open Virtual Machine Tools (open-vm-tools) are the open source implementation of VMware Tools. They are a set of guest operating system virtualization components that enhance performance and user experience of virtual machines. As virtualization technology rapidly becomes mainstream, each virtualization solution provider implements their own set of tools and utilities to supplement the guest virtual machine. However, most of the implementations are proprietary and are tied to a specific virtualization platform.

With the Open Virtual Machine Tools project, we are hoping to solve this and other related problems. The tools are currently composed of kernel modules for Linux and user-space programs for all VMware supported Unix-like guest operating systems. They provide several useful functions like:

* File transfer between a host and guest
* Improved memory management and network performance under virtualization
* General mechanisms and protocols for communication between host and guests and from guest to guest

Maintainer

A cross-platform Text Expander written in Rust.

openSUSE Build Service is sponsored by