git clone https://github.com/medicharlachiranjeevi/jupyterhub_to_eks.git
eksctl create cluster -f ./cluster.yml
openssl rand -hex 32
kubectl apply -k "github.com/kubernetes-sigs/aws-ebs-csi-driver/deploy/kubernetes/overlays/stable/?ref=master"
kubectl apply -f https://raw.githubusercontent.com/kubernetes/autoscaler/master/cluster-autoscaler/cloudprovider/aws/examples/cluster-autoscaler-autodiscover.yaml
KUBE_EDITOR="nano" kubectl -n kube-system edit deployment.apps/cluster-autoscaler
Edit the cluster-autoscaler
container command to replace <YOUR CLUSTER NAME>
(including <>
) with your cluster's name, and add the following options.
-
--balance-similar-node-groups
-
--skip-nodes-with-system-pods=false
spec:
containers:
- command:
- ./cluster-autoscaler
- --v=4
- --stderrthreshold=info
- --cloud-provider=aws
- --skip-nodes-with-local-storage=false
- --expander=least-waste
- --node-group-auto-discovery=asg:tag=k8s.io/cluster-autoscaler/enabled,k8s.io/cluster-autoscaler/<YOUR CLUSTER NAME>
- --balance-similar-node-groups
- --skip-nodes-with-system-pods=false
helm repo add jupyterhub https://jupyterhub.github.io/helm-chart/
helm repo update
helm install jupyterhub jupyterhub/jupyterhub --values values.yml --namespace=jupiterhub --create-namespace
For more about authenticators got to documentation of jupyterhub
kubectl --namespace=jupiterhub get svc proxy-public