det-lab / jupyterhub-deploy-kubernetes-jetstream

CDMS JupyterHub deployment on XSEDE Jetstream
0 stars 1 forks source link

Test master-only configuration #6

Closed zonca closed 4 years ago

zonca commented 4 years ago

Make sure that we can have only with the master node running and still have 1 single-user session working.

Images pulled to the nodes

Worker node

[fedora@k8s-4qtmvqk6gv47-minion-0 ~]$ sudo docker images
REPOSITORY                                            TAG                 IMAGE ID            CREATED             SIZE
docker.io/supercdms/cdms-jupyterlab                   1.8b                764e36e089da        5 weeks ago         20 GB
docker.io/jupyterhub/k8s-image-awaiter                0.8.2               938cb370f906        10 months ago       4.15 MB
docker.io/jupyterhub/k8s-network-tools                0.8.2               02576979bd59        13 months ago       5.62 MB
gcr.io/kubernetes-helm/tiller                         v2.11.0             ac5f7ee9ae7e        16 months ago       71.8 MB
gcr.io/google_containers/kubernetes-dashboard-amd64   v1.8.3              0c60bcf89900        23 months ago       102 MB
docker.io/coredns/coredns                             1.0.1               58d63427cdea        2 years ago         45.1 MB
gcr.io/google_containers/pause                        3.0                 99e59f495ffa        3 years ago         747 kB

Master node

REPOSITORY                                                       TAG                 IMAGE ID            CREATED             SIZE
quay.io/kubernetes-ingress-controller/nginx-ingress-controller   0.24.1              98675eb54d0e        9 months ago        631 MB
k8s.gcr.io/defaultbackend-amd64                                  1.5                 b5af743e5984        16 months ago       5.13 MB
docker.io/k8scloudprovider/openstack-cloud-controller-manager    v0.2.0              5b5ea0c144e8        18 months ago       39.4 MB
gcr.io/google_containers/heapster-amd64                          v1.4.2              d4e02f5922ca        2 years ago         73.4 MB
gcr.io/google_containers/pause                                   3.0                 99e59f495ffa        3 years ago         747 kB

we don't have the single-user image on the master node, but we have the node schedulable (just for 1 user), need to configure this.

Originally posted by @zonca in https://github.com/det-lab/jupyterhub-deploy-kubernetes-jetstream/issues/3#issuecomment-577770996

zonca commented 4 years ago

I think the reason the prepuller is not working on master is taints:

kubectl get nodes -o json | jq '.items[].spec'
{
  "providerID": "openstack:///ed782dad-13d5-404d-8067-0a2f9cdb39ef",
  "taints": [
    {
      "effect": "NoSchedule",
      "key": "CriticalAddonsOnly",
      "value": "True"
    },
    {
      "effect": "NoSchedule",
      "key": "dedicated",
      "value": "master"
    }
  ]
}
{
  "providerID": "openstack:///0f02bc24-58a7-4cd2-aaac-8061b0cbcf6c"
}

anyway, it is fine if the startup is a bit slow the first time. just make a dedicated test.

zonca commented 4 years ago

Tested now, it works fine also in master-only,

it looks like openstack COE does not allow to set 0 nodes, so the way to delete the last node is just to kill it with openstack:

openstack server delete MINION_SERVER_HASH