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
Use cases:
- Add new containerized service to service library
- Test containerized services in NDS Labs test environment
- Use development tools container