When introducing our CloudOne platform inside NetApp, we wanted to meet certain minimum viable product (MVP) features including the capability to allow rapid, frequent production change through Continuous Integration, Continuous Deployment (CI/CD). We wanted our developers focused on writing code and rapidly releasing application changes, and not be concerned about other IT services like servers, storage, networks, and more.
With our CloudOne platform, we provide automation for frequent small production application changes. Automation helps to reduce the risk associated with large-scale production deployments while adhering to DevOps principles like moving fast and making small changes quickly. With traditional IT there are change control processes that often involve large changes, with some requiring the application to be taken offline. All of this takes time and introduces potential problems for something going wrong. It is not fast.
My favorite feature of the CloudOne platform is how the development (DEV), stage (STG), and production (PRD) environments are handled at the application layer. In our traditional data center model, the DEV-STG-PRD environments are dedicated and sit idle until used. With the CloudOne platform, these environments dynamically spin up and down as needed at the application layer; the infrastructure and platform reside in the operational production (PRD) environment.
Our CloudOne MVP introduction occurred about one year ago. The MVP goal was to onboard simple apps onto the CloudOne platform to prove out the technology, test the process, and confirm support roles. During application onboarding, we create what we call a DevOps Workspace and DevOps Host Space.
Workspace: Where developers do their work before an application goes live. For example, developers can create code branches, develop the code, create pull requests and trigger continuous integration builds. It’s where they can test out new features, fix bugs, or try out new capabilities using our standards-based technology product catalog.
Host Space: Where the stage and production application run. Its where continuous delivery releases are ultimately transitioned to. Our goal is to take the work that the developers do in the workspace, and via our CI/CD process, transition the changes to production in the host space.
Applications are onboarded once. During this onboarding, both the workspace and host space are created so that the CI/CD process can automatically work. Once it’s done, then the development team can use the CloudOne platform to rapidly move application changes to production. This is the continuous integration, continuous deployment (CI/CD) process of our CloudOne platform.There are three levels of our CloudOne platform for application CI/CD. Our developers do most of their work in the first level (within the workspace) using primarily Azure DevOps. This service provides a full application lifecycle management ecosystem including dashboards, analytics, wiki's, project and Kanban boards. It is where the developer’s code repository resides for the applications and where they work on source code.
Mohan Raj is the IT Senior Manager of the CloudOne Developer Experience at NetApp. Mohan and his team plan, engineer and deploy platforms and virtualized environment solutions. They provide the expertise for migrating legacy systems to cloud, along with the right options for tools and platforms. Mohan has over 25 years of IT experience.