Skip to content

Commit

Permalink
Merge pull request #3260 from rgaiacs/add-minikube
Browse files Browse the repository at this point in the history
Document k8s cluster setup using minikube (for learning and development)
  • Loading branch information
consideRatio authored Nov 23, 2023
2 parents 3cf91ca + a317c8a commit 2f74f28
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 0 deletions.
46 changes: 46 additions & 0 deletions docs/source/kubernetes/minikube/step-zero-minikube.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
(minikube-k8s)

# Kubernetes on minikube (for learning and development only)

[minikube] can setup a Kubernetes cluster on a single computer. minikube be suitable in order to learn about Kubernetes and to develop and test changes, but its not meant to be used for production purposes.

```{important}
The Zero to JupyterHub guide assumes you're using a managed Kubernetes service with one of the main cloud platforms and **[minikube] is not officially supported**. You may be able to get help on the [Jupyter community forum](https://discourse.jupyter.org/c/jupyterhub/10).
```

[minikube]: https://minikube.sigs.k8s.io/docs/

## Kubernetes cluster requirements

All the requirements are implemented in minikube >= v1.31.2:

- [Dynamic Volume Provisioning](https://kubernetes.io/docs/concepts/storage/dynamic-provisioning/) for persistent storage
- [LoadBalancer](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer) or [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) for managing external access to JupyterHub

## minikube installation

Follow the installation steps in the [minikube's "Get Started!" page](https://minikube.sigs.k8s.io/docs/start/).

## Kubernetes cluster creation

From a terminal, run

```bash
minikube start \
--kubernetes-version stable \
--nodes 2 \
--cpus 2 \
--memory 2000 \
--cni calico
```

To test if your cluster is initialized, run:

```bash
kubectl get node
```

The response should list two running nodes (or however many nodes you set with ``--nodes` above).

Congrats. Now that you have your Kubernetes cluster running, it's time to
begin {ref}`setup-helm`.
1 change: 1 addition & 0 deletions docs/source/kubernetes/setup-kubernetes.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ Choose one option and proceed.
```{toctree}
:titlesonly:
minikube/step-zero-minikube
google/step-zero-gcp
microsoft/step-zero-azure
amazon/step-zero-aws
Expand Down

0 comments on commit 2f74f28

Please sign in to comment.