NetApp HCI + Rancher Managed Kubernetes

Project Overview

For this project I was tasked with determining how best to integrate the deployment of Rancher Server, a managed Kubernetes offering from Rancher, on NetApp's private cloud appliance (HCI) to provide our customers with a NetApp supported managed Kubernetes offering.

Project Duration: 3 months

Target Persona

This project targeted our IT administrator user persona Morgan. What sets Morgan apart from our other personas is that Morgan is what we refer to as an 'IT-generalist'. Morgan routinely wears many hats and is responsible for the general care and maintenance of all IT infrastructure at his company. His knowledge is broad, but not particularly deep in any given area and as such prefers 'simple' solutions that do a lot of the heavy lifting for him so that he can focus on keeping the lights on and making sure that everything is working as it should.

Project Background

Originally NetApp planned to introduce a managed Kubernetes offering on NetApp HCI by integrating it with the newly created NetApp Kubernetes Service (NKS) as well as all of the other NetApp provided cloud service offerings. However, shortly after releasing the first stage of that integration, a business decision was made by the company to pivot away from creating an in-house managed Kubernetes offering and instead partner with an established player in that space Rancher.

Initial Concept Ideation

After pivoting, the team needed to figure out exactly what the change from integrating NetApp Kubernetes Service to integrating a 3rd-party tool like Rancher Server meant for the HCI product and how we might go about making the management experience coherent and easy to use. Working with product management and other stakeholders we began several rounds of requirements definition and refinement with early customers. As a part of that process, I created several storyboards of possible directions to aid conversations and allow for quicker decision making.
Initial Storyboard created to aid discussions with stakeholders and help decision making.

Concept Refinement

Working with some of our early NKS/HCI customers and other interested parties a direction was selected, and I began fleshing out the concept through a series of high-level designs to allow the dev team to start planning their initial release. This included allowing the user to deploy Rancher Server through the HCI management application as well as it’s vCenter plugin and providing some lifecycle management functionality in the form of upgrade handling of the Rancher server cluster.

Turning Concept into Design

As I moved from concept to actual designs, one of the main focuses of iteration and refinement was trying to make the deployment workflow simple, but not fall into the pitfall of being considered “too simplistic” that it causes extra work for the administrator or is considered unusable. IT admins are an opinionated bunch, who typically have very specific rules for the environments that they manage. To that end, much discussion was devoted to what inputs could be hidden, which could be prepopulated (but changeable), and which were required from the user.The overall end goal was to make the deployment workflow as simple as possible, but still allow the admin to feel in control and to be able to configure the deployment to match his environment’s specific needs.

Finalized Design

After several rounds of refinement, the finalized design was created that balanced simplicity with progressively disclosing advanced settings as needed. This allows customers with less complex requirements to deploy their Rancher server cluster with as little as three inputs, while still allowing for custom selection of vCenter resources and configuring advanced options like static IP addressing and the Rancher server’sproxy settings.