Giter Site home page Giter Site logo

alexellis / minikube-operator Goto Github PK

View Code? Open in Web Editor NEW
25.0 3.0 1.0 14.88 MB

An operator for Minikube - Kubernetes on Kubernetes

License: MIT License

Dockerfile 7.24% Shell 5.28% Go 87.48%
minikube operator operator-framework kubernetes kube-on-kube k8s-on-k8s crd

minikube-operator's Introduction

minikube-operator

Status

This is the port of my 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

  • Port over CRD / operator
  • Update to Kubernetes v1.13
  • Port over Nginx DaemonSet for accessing the clusters remotely

Preview

See my Tweet with a Kubernetes cluster booting up on one of my Kubernetes nodes.

Example

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.

git clone [email protected]:alexellis/minikube-operator.git
cd minikube-operator

kubectl 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:

operator-sdk build alexellis2/minikube-operator:0.2.0
docker push alexellis2/minikube-operator:0.2.0

License

MIT

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.