Revisiting priorities for Odum Release:

  • Gluster services under Kubernetes (in labeled data nodes)
    • Volume declarations, automation, and operational integration
    • Startup, provisioning in IAAS, initialization, and operations/mgmt
    • Related ticket:  NDS-223 - Getting issue details... STATUS
  • Ability to assign quotas to project directories
    • Option 1: Manual process with documentation
    • Option 2: Ability to call some Pod
    • Related tickets
      • NDS-210 - Getting issue details... STATUS
  • Container to mount Gluster volumes on nodes
    • NDS-227 - Getting issue details... STATUS
    • Yaml to create daemon set to mount volumes
    • Run on each compute node
    • Testing
  • Unified Ansible Deployment scripts
    • Openstack and kubernetes with NDSLabs reproducible deploy
      • Add OpenStack provisioning playbook/roles
        • currently lives in ndslabs-deploy-tools?
      • NDS-235 - Getting issue details... STATUS
    • GlusterFS
      • NDS-209 - Getting issue details... STATUS
      • NDS-237 - Getting issue details... STATUS
    • NDS-236 - Getting issue details... STATUS
    • System boot process:
      • Add systems-level services - monitoring, admin-tools, introspection tools ... cadvisor, 
      • NDS-238 - Getting issue details... STATUS
    • Related ticket:
      • NDS-191 - Getting issue details... STATUS
      • NDS-209 - Getting issue details... STATUS
  • Resource limits
    • Project spec, resource quotas, service spec
      • NDS-202 - Getting issue details... STATUS
      • NDS-205 - Getting issue details... STATUS
      • NDS-204 - Getting issue details... STATUS
    • Optional: UI 
      • NDS-207 - Getting issue details... STATUS
      • NDS-197 - Getting issue details... STATUS
  • Test multinode with realistic Dataverse deploy
    • OOM, High CPU process testing
    • Understand dataverse resource requirements, update specs
  • Cluster admin tools for monitoring
  • Console access
    • NDS-174 - Getting issue details... STATUS
    • NDS-175 - Getting issue details... STATUS
  • Load balancer
    • NDS-234 - Getting issue details... STATUS
    • TLS
  • New: TLS HTTPS/WSS support in UI and Apiserver
  • Feedback
    • NDS-183 - Getting issue details... STATUS

 

Cluster boot sequence:

    1. Decide on cluster size. How many of each type of node?
      • kubernetes etcd
      • kubernetes master
      • kubernetes compute
      • kubernetes ingress
      • gluster storage
    2. NDS-243 - Getting issue details... STATUS  - Allocate desired nodes with Ansible playbook. Nodes should now be online with Kubernetes running.
    3. NDS-251 - Getting issue details... STATUS  - Label all nodes with their associated role/type from above
      • kubectl label nodes <nodeName> ndslabs-role=<nodeType>
    4. NDS-223 - Getting issue details... STATUS  - Deploy GlusterFS server Kubernetes service on nodes with ndslabs-role=storage
    5. NDS-223 - Getting issue details... STATUS  - Deploy GlusterFS client Kubernetes service on nodes with ndslabs-role=compute
    6. NDS-214 - Getting issue details... STATUS  - Deploy "default" Kubernetes LoadBalancer / Ingress rules for UI / API / cluster-wide services (i.e. TERRA toolserver)
    7. NDS-244 - Getting issue details... STATUS  - Deploy kube-system Kubernetes services
      • Grafana, dashboard, ELK, etc
    8. NDS-238 - Getting issue details... STATUS  - Depoy NDS Labs Kubernetes services
      • UI / API
      • TERRA toolserver?
    9. NDS-252 - Getting issue details... STATUS  - Create any necessary NDS Labs projects using the API
      • Each project needs:
        • Public IP / CNAME
          • We need to get ours hands on these IPs soon if we want them in time for the Odum event
        • a storage volume (limited by the above quota)
          • Ansible task? Script? What is the process for this?
        • resource limits/quotas
          • NDS-202 - Getting issue details... STATUS
          • NDS-205 - Getting issue details... STATUS
        • Project in etcd under /ndslabs/projects
          • Existing script
        • Kubernetes Namespace / Secret / LoadBalancer / Ingress ruleset
          • API Server creates namespace
          • I don't think we use per-project secrets yet
          • each project may need its own LoadBalancer and ingress rules (they are namespace-specific)

2016-04-29

Completed?:

  • Console Access

Priorities:

  1. Load Balancer
    1. prototype done in sprint 1
    2. need to create follow on tickets for testing, TLS, ...
  2. Unified Ansible Deployment Scripts

 

  • No labels