https://github.com/alexellis/minikube-operator
An operator for Minikube - Kubernetes on Kubernetes
https://github.com/alexellis/minikube-operator
crd k8s-on-k8s kube-on-kube kubernetes minikube operator operator-framework
Last synced: 4 months ago
JSON representation
An operator for Minikube - Kubernetes on Kubernetes
- Host: GitHub
- URL: https://github.com/alexellis/minikube-operator
- Owner: alexellis
- License: mit
- Created: 2019-02-28T14:45:40.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-03-06T13:56:49.000Z (over 6 years ago)
- Last Synced: 2025-05-02T14:07:04.304Z (5 months ago)
- Topics: crd, k8s-on-k8s, kube-on-kube, kubernetes, minikube, operator, operator-framework
- Language: Go
- Size: 14.5 MB
- Stars: 25
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# minikube-operator
## Status
This is the port of my [mkaas](https://github.com/alexellis/mkaas) project, which used an early version of the operator-framework. CoreOS made so many changes that the code stopped working all-together, so this repo contains the updated versions.
Goals
- [x] Port over CRD / operator
- [x] Update to Kubernetes v1.13
- [ ] Port over Nginx DaemonSet for accessing the clusters remotely## Preview
See [my Tweet](https://twitter.com/alexellisuk/status/1101185378277564417) with a Kubernetes cluster booting up on one of my Kubernetes nodes.

## Example
```yaml
apiVersion: alexellis.io/v2alpha1
kind: Minikube
metadata:
name: "inlets"
namespace: clusters
spec:
clusterName: "inlets"
cpuCount: 2
memoryMB: 2048
```## Try it out
Install the pre-reqs from [mkaas](https://github.com/alexellis/mkaas).
```
git clone git@github.com:alexellis/minikube-operator.git
cd minikube-operatorkubectl create ns clusters
kubectl apply -f ./deploy
kubectl apply -f ./deploy/crds/
```View logs:
```
# See CR get picked up and created
kubectl logs deploy/minikube-operator -n clusters -f# See logs of CR's boot-up script where it creates the minikube cluster with KVM
# Wait until you see text about creating the bundle.
kubectl logs pod/inlets-minikube -n clusters -f
```Minikube data will be available as a bundle in `/var/mkaas` on the host.
You can un-tar it to /root/ and run `kubectl get node`
## Hacking
Build:
```bash
operator-sdk build alexellis2/minikube-operator:0.2.0
docker push alexellis2/minikube-operator:0.2.0
```
## LicenseMIT