Some nice Hacks

Linux only DISCLAIMER: THE FOLLOWING CAN LEAD TO CREATING SECURITY HOLES IN THE VPN-PROTECTED NETWORK… BE VERY CAREFUL. MAKE SURE YOU KNOW WHAT YOU’RE DOING. IF YOU DON’T UNDERSTAND WHAT YOU’RE DOING, DO NOT PROCEED VPNs are a pain in the neck. I managed to find a way to have VPN traffic limited to some sites instead of routing everything through your corporate network. Routing everything through corporate network is also a cause of load on the company’s servers. Imagine a ton of people watching Youtube over VPN. Now, I’m talking about traditional VPN here, not p2p stuff. ...

February 24, 2021 · 2 min · 230 words

Benchmarking DPDK

My reference: https://software.intel.com/en-us/articles/set-up-open-vswitch-with-dpdk-on-ubuntu-server So I got to play with the Data Plane Development Kit (DPDK) from Intel recently. I planned on replicating the PVP benchmark for my use-case. I set up the following environment: Ubuntu 18.04 (bionic) host with: KVM QEMU Debian 10 guest images downloaded from: https://cdimage.debian.org/cdimage/openstack/current/ A useful tool is numactl (use apt to install it). On my non-server system, I don’t have multiple socks and multiple cores per sock etc. ...

July 8, 2019 · 4 min · 674 words

Kata annotations

Annotations are a great feature in Kubernetes and a means for communicating to kata some options. They are being documented as of the time of this writing Using annotations, you can: Customize the Kernel that is used (see KernelPath example below) Change the guest image (ImagePath) Hypervisor (HypervisorPath) Firmware (FirmwarePath) etc. etc. (All of the annotations are listed in annotations.go) Using a Custom Kernel Here is the yaml file I used to apply a custom kernel: ...

June 11, 2019 · 1 min · 114 words

Kata and Kubernetes

Setting up Kata using Docker This is documented here: https://github.com/kata-containers/packaging/blob/master/kata-deploy/README.md#docker-quick-start Using Minikube and Kata This PR is adding the documentation to get started with minikube: https://github.com/kata-containers/documentation/pull/445# Using kubeadm First, set up a Kubernetes cluster using kubeadm: https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/ then, https://github.com/kata-containers/packaging/blob/master/kata-deploy/README.md#kubernetes-quick-start Conclusion Using the new kata-deploy method, it is very easy to set up a Kubernetes cluster that uses Kata Containers.

May 19, 2019 · 1 min · 59 words

Taking Kata Steps

So I thought that it might be a great idea to run an RT kernel inside Kata containers. This is a usecase because I soon hope to see Kata containers running on real-time capable hypervisors and also being used in scenarios where real-time is a thing. Soon! For now, let’s look at how I went about doing what I did.. You need to go get github.com/kata-containers/packaging repository. (or, git clone if you so prefer.) Be sure to have your $GOPATH properly set!! cd into packaging/kernel directory. I chose the 4.19.31 version of the kernel. Primarily because it was a newer kernel (not too different from the kernel version that comes with the current kata release.) and because it had the RT patches available I changed the kernel_version="" line to kernel_version="4.19.31" That’s it. We are ready to (1) apply the necessary patches from Kata maintainers to our Kernel of choosing and (2) apply the RT patches: ...

April 28, 2019 · 2 min · 330 words