github.com/rkt/rkt@v1.30.1-0.20200224141603-171c416fac02/Documentation/using-rkt-with-kubernetes.md (about) 1 # Using rkt with Kubernetes (aka "rktnetes") 2 3 [Kubernetes][k8s] is a system for managing containerized applications across a cluster of machines. 4 Kubernetes runs all applications in containers. 5 In the default setup, this is performed using the Docker engine, but Kubernetes also features support for using rkt as its container runtime backend. 6 This allows a Kubernetes cluster to leverage some of rkt's security features and native pod support. 7 8 ## Configuring rkt as the Kubernetes container runtime 9 10 The container runtime is configured at the _kubelet_ level. 11 The kubelet is the agent that runs on each machine to manage containers. 12 The kubelet provides several flags to use rkt as the container runtime: 13 14 - `--container-runtime=rkt` Sets the node's container runtime to rkt. 15 - `--rkt-api-endpoint=HOST:PORT` Sets the endpoint of the rkt API service. Default to `localhost:15441`. 16 - `--rkt-path=PATH_TO_RKT_BINARY` Sets the path of the rkt binary. If empty, it will search for rkt in `$PATH`. 17 - `--rkt-stage1-image=STAGE1_NAME` Sets the name of the stage1 image, e.g. `coreos.com/rkt/stage1-coreos`. If not set, the default stage1 image (`coreos.com/rkt/stage1-coreos`) is used. 18 19 Check the [rktnetes getting started guide][rktnetes] for information about setting up and using a rktnetes cluster. 20 21 ## Configuring rkt using supported setup tools 22 The [coreos-kubernetes][coreos-kubernetes] and [coreos-baremetal][coreos-baremetal] repos both support configuring rkt as the Kubernetes runtime out of the box. 23 24 Check out the coreos-kubernetes repo if you want to spin up a cluster on [AWS][k8s-on-aws] or [locally with Vagrant][k8s-on-vagrant]. The common configuration option here is setting `CONTAINER_RUNTIME` environment variable to rkt. 25 26 For baremetal, check out the Kubernetes guides [here][k8s-baremetal]. 27 28 ## Using [Minikube][minikube] 29 30 Minikube is a tool that makes it easy to run Kubernetes locally. It launches a single-node cluster inside a VM aimed at users looking to try out Kubernetes. Follow the instructions in the Minikube [Quickstart][minikube-quickstart] section on how to get started with rktnetes. 31 32 ### Current Status 33 34 Integration of rkt as a container runtime was officially [announced in the Kubernetes 1.3 release][k8s-1.3-release]. 35 Known issues and tips for using rkt with Kubernetes can be found in the [rktnetes notes][rktnetes-notes]. 36 37 38 [coreos-baremetal]: https://github.com/coreos/coreos-baremetal 39 [coreos-kubernetes]: https://github.com/coreos/coreos-kubernetes 40 [k8s]: https://kubernetes.io 41 [k8s-1.3-release]: https://kubernetes.io/blog/2016/07/rktnetes-brings-rkt-container-engine-to-kubernetes/ 42 [k8s-on-aws]: https://coreos.com/kubernetes/docs/latest/kubernetes-on-aws.html 43 [k8s-baremetal]: https://github.com/coreos/coreos-baremetal/blob/master/Documentation/kubernetes.md 44 [k8s-on-vagrant]: https://coreos.com/kubernetes/docs/latest/kubernetes-on-vagrant-single.html 45 [minikube]: https://github.com/kubernetes/minikube 46 [minikube-quickstart]: https://github.com/kubernetes/minikube/blob/master/README.md#quickstart 47 [rktnetes]: https://v1-8.docs.kubernetes.io/docs/getting-started-guides/rkt/ 48 [rktnetes-notes]: http://kubernetes.io/docs/getting-started-guides/rkt/notes/