Skip to content

[Decommission Hub][MAYBE] dubois.2i2c.cloud #7960

@jmunroe

Description

@jmunroe

Summary

This is a place holder task to represent the decommissioning of dubois.2i2c.cloud if it is decided a JupyterLite solution is sufficient.

Do not action until we have made a decision around the future of dubois.2i2c.cloud as part of https://github.com/2i2c-org/meta/issues/3031

Info

  • Community Representative:
  • Link to New Hub issue:
  • Proposed end date:
  • Cluster the hub is on:
  • AirTable resource:

Task List

Phase I - Data Migration Strategy

  • Confirm with Community Representative that the hub is no longer in use and it's safe to decommission
  • Confirm if there is any data to migrate from the hub before decommissioning
    • If yes, confirm where the data should be migrated to
      • Confirm a 2i2c Engineer has access to the destination in order to complete the data migration
    • If no, confirm it is ok to delete all the data stored in the user home directories

Phase II - Hub Removal

(These steps are described in more detail in the docs at https://infrastructure.2i2c.org/hub-deployment-guide/hubs/delete-hub/)

  • Manage existing home directory data (migrate data from the hub or delete it)
  • Manage existing cloud bucket data (migrate data, or delete it)
  • Delete the hub's DNS entries from Namecheap (the entries set for the hub can be found here)
  • Delete the hub's authentication application on GitHub or CILogon (note CILogon removal requires the hub config in place)
  • Remove the appropriate config/clusters/<cluster_name>/<hub_name>.values.yaml files. A complete list of relevant files can be found under the appropriate entry in the associated cluster.yaml file.
  • Remove the associated hub entry from the config/clusters/<cluster_name>/cluster.yaml file.
  • Remove the hub deployment
    • TIP: Run deployer use-cluster-credentials <cluster_name> before running the commands below
    • helm --namespace HUB_NAME delete HUB_NAME
    • kubectl delete namespace HUB_NAME
  • If the hub has one or more dedicated nodegroups, e.g. because it is on AWS with cost allocation enabled, delete them via eksctl
  • Record decommision date in the 2i2c Airtable

Phase III - Cluster Removal

This phase is only necessary for single hub clusters.

  • Remove the cluster's datasource from the central Grafana with:
    • deployer grafana central-ds remove <cluster_name>
  • Run terraform plan -destroy and terraform apply from the appropriate workspace, to destroy the cluster
  • Delete the terraform workspace: terraform workspace delete <NAME>
  • Delete the terraform values file under the projects folder associated with the relevant cloud provider (e.g. terraform/gcp/projects/ for GCP)
  • If the cluster is on AWS:
    • Run eksctl delete cluster --config-file=$CLUSTER_NAME.eksctl.yaml --disable-nodegroup-eviction
    • Delete the eksctl-related files:
      • The jsonnet file under the eksctl folder
  • Remove the associated config/clusters/<cluster_name> directory and all its contents
  • Remove the cluster from deploy-hubs.yaml
  • Remove A record from Namecheap account
  • Ensure home directory backups are deleted (EFS)
  • Delete the cloud account (where permissions allow it)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    To be refined

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions