This repository has been archived by the owner on Sep 24, 2021. It is now read-only.
Frakti v0.1
Frakti lets Kubernetes run pods and containers directly inside hypervisors via HyperContainer. And with hybrid runtimes, privileged pods are still running by docker.
Features
- full pod/container/image lifecycle management
- streaming interfaces (exec/attach/port-forward)
- CNI network plugin integration
- hybrid docker and hypercontainer runtimes to fully support both regular and privileged pods
- pods are running by hypercontainer by default
- pods will be running by docker if they are
- privileged
- with annotation
runtime.frakti.alpha.kubernetes.io/OSContainer=true
- configured to use host namespaces (net, pid, ipc)
HyperContainer specific notes
- for pods are running inside hypervisors, resource limits (cpu/memory) should be set. If not, they will be running with 1 vcpu and 64MB memory by default
- Security context is not supported by hypercontainer runtime (but it works properly with docker)
External Dependency Version Information
Frakti v0.1 has been tested against:
- Kubernetes v1.6.0
- Hyperd v0.8.0
- Docker v1.12.6 (and any other Docker version work with Kubernetes v1.6.0)
- CNI v0.5.1
Kubelet Node e2e tests
Frakti has passed 112 of 121 node e2e tests with kubernetes v1.6.0-beta.4. In the failed 9 test cases:
- 6 of them are related with volume mounting, which seems buggy in hyperd
- 1 of them is a known issue of hyperd (#564)
- 2 of them still have no clear root causes found
See #109 for more details.