Started from https://zero-to-jupyterhub.readthedocs.io/en/latest/amazon/step-zero-aws-eks.html
Notes from each step:
Step 1: EKS Service Role
- did not see a way to add
AmazonEC2ContainerRegistryReadOnly
, assuming it is unnecessary or a part of the other 2 policies - Note the https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html instructions are a little bit differnt, but it seems like the outcome is the same.
Step 2: EKS Cluster
- Originally, did this manually through the console, but assume something went wrong because I couldn't get note status (or was I impatient?)
- Then used https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html instructions, which use an Amazon S3 template URL for cloudformation.
Steps 3-5 nothing to add
Step 6 This was a bit confusing because the zero-to-jupyterhub guide makes me think I need to update ~/.kube/config but it looks like that file is generated completely by the aws cli correctly when you run:
aws eks --region {region} update-kubeconfig --name {cluster_name}
per AWS instructions
Steps 7-10 Nothing to add
Now using https://docs.dask.org/en/latest/setup/kubernetes.html
helm repo update
helm install stable/dask
helm upgrade --force --recreate-pods --devel singed-sabertooth stable/dask -f dask_config.yml
See dask_config.yml in this gist.
- 3 m4.2xlarge ec2 instances
- MUR SST to Zarr Gist
- MUR SST OpenDAP
- MUR SST HTTPS
- On using opendap for MUR SST: https://climate-cms.org/2019/01/18/using-opendap.html
- dask_kubernetes
- Spin up AWS Kubernetes cluster for workshop
- Setting up ACCESS Pangeo on AWS #26
- AWS Deployment
-
When runninng
./3_deploy_helm.sh
got the error:Error: priorityclasses.scheduling.k8s.io "pangeohub-default-priority" is forbidden: User "system:serviceaccount:kube-system:default" cannot delete priorityclasses.scheduling.k8s.io at the cluster scope
This might be because of the instruction https://zero-to-jupyterhub.readthedocs.io/en/latest/amazon/step-zero-aws-eks.html to use
kubectl create clusterrolebinding cluster-system-anonymous --clusterrole=cluster-admin --user=system:anonymous
I googled the error and ran these commands and it seems to have resolved itself. I can now run
./3_deploy_helm.sh
without error. -
When running kubectl commands, always need to add --namespace pangeo
-
Using kubectl logs is critical, worker logs will not show up in jupyter