You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Notes from 2/8/16 discussion (Craig, David, Mike)

 

This is a preliminary set of use cases for the NDS Labs systems 

 

Users/Actors:

  • NDS operations: Infrastructure and cluster administration at NCSA, TACC, SDSC.
  • NDS project user: User of the NDS Labs GUI/CLI for managing services
  • NDS developers: Local development staff and community members

NDS Operations

Prerequisites:

    • Openstack

Use cases:

    • NDS Operations creates tenant with sufficient resources (compute/storage) for NDS Labs cluster.
    • NDS Operations runs "deployer" (NDS-98). They are prompted to specify the cluster size. The deployer provisions VMs, deploys CoreOS images, starts docker/Kubernetes services. 
    • NDS Operations starts admin services (NDS-92). These are centralized logging/monitoring services used by NDS Operations across all sites.
    • NDS Operations adds services to services library (TBD).  Tentatively, NDS Operations must be able to specify NDS Labs services available to site users.
    • NDS Operations provisions NDS Labs projects (TBD).  Tentatively, approved project users will be allocated a Kubernetes namespace, assigned credentials and storage/compute quotas. They will be given an endpoint URL for GUI/CLI access (see below).


NDS Project User 

Prerequisites:

    • NDS Labs Provisioned project space and credentials

Use cases:

    • List available services for deployment
    • List available compute/storage quotas
    • Add service (e.g., cli add clowder name=myclowder)
    • Allocate storage (e.g., cli add vol name=myvol size=1TB)
    • Attach storage (e.g., cli attach myvol myclowder)
    • Launch services (e.g., cli start myclowder)
    • Get endpoint URL
    • View logs
    • Login to container (e.g., cli exec myclowder bash)


NDS Developer

Prerequisites:

    • Docker

Use cases:

    • NDS developer can containerize/Dockerize a new service or set of services (i.e., add Dockerfile and associated files to common source/build environment)
    • NDS developer can push new versions of Docker images to NDS repository
    • NDS developer can test containerized services in NDS Labs test environment
    • NDS developer can define Kubernetes configuration for a new service or set of services (i.e., add Pod/RC/Service definitions)
    • NDS developer can launch local Kubernetes environment (laptop, single VM)
    • NDS developer can add new service definitions to service library
    • NDS developer can launch a docker container with all required tools for development (ndsdev container)
  • No labels