post-img

Netflix like approach to DevOps Environment Delivery

Posted by german lopez November 18, 2018
Netflix like approach to DevOps Environment Delivery

Netflix has long been considered a leader in providing content that can be delivered in both physical formats or streamed online as a service.  One of their key differentiators in providing the online streaming service is their dynamic infrastructure.  This infrastructure allows them to maintain streaming services regardless of software updates, maintenance activities or unexpected system challenges.

The challenges they had to address in order to create a dynamic infrastructure required them to develop a pluggable architecture.  This architecture had to support innovations from the developer community and scale to reach new markets.  Multi-region environments had to be supported with sophisticated deployment strategies.  These strategies had to allow for blue/green deployments, release canaries and CI/CD workflows.  The DevOps tools and model that emerged also extended and impacted their core business of content creation, validation, and deployment.

I've described this extended impact as a "Netflix like" approach that can be utilized in enterprise application deployments.  This blog will illustrate how DevOps teams can model the enterprise application environment workflows using a similar approach used by Netflix for content deployment and consumption, i.e. point, select, and view.

 

Step 1:  Workflow Overview

The initial step is to understand the workflow process and dependencies.  In the example below, we have a Netflix workflow whereby a producer develops the scene with a cast of characters.  The scene is incorporated into a completed movie asset within a studio.  Finally, the movie is consumed by the customer on a selected interface.

Similarly, the enterprise workflow consists of a developer creating software with a set of tools.  The developed software is packaged with other dependent code and made available for publication.  Customers consume the software package on their desired interface of choice.

 

 

 Step 2:  Workflow Components

The next step is to align the workflow components.  For the Netflix workflow components, new content is created and tested in environments to validate playback.  Upon successful playback, the content is ready to deploy into the production environment for release.

The enterprise components follow a similar workflow.  The new code is developed and additional tools are utilized to validate functionality within controlled test environments.  Once functionality is validated, the code can be deployed as a new or part of an existing application.

The Netflix workflow toolset referenced in this example is their Spinnaker platform.  The comparison for the enterprise is Quali’s CloudShell Management platform.

 

Step 3:  Workflow Roles

Each management tool requires setting up privileges, privacy and separation of duties for the respective personas and access profiles.  Netflix makes it straightforward with managing profiles and personalizing the permissions based upon the type of experience the customer wishes to engage in.  Similarly, within Quali CloudShell, roles and associated permissions can be established to support DevOps, SecOps and other operational teams.

 

Step 4:  Workflow Assets

The details for the media asset, whether categorization, description or other specific details assist in defining when, where and who can view the content.  The ease of use for the point/click interface makes it easy for a customer to determine what type of experience they want to enjoy.

On the enterprise front, categorization of packaged software as applications can assist in determining the desired functionality.  Resource descriptions, metadata, and resource properties further identify how and which environments can support the selected application.

 

Step 5:  Workflow Environments

Organizations may employ multiple deployment models whereby pre-release tests are required in separated test environments.  Each environment can be streamlined for accessibility, setup, teardown and extending to the eco-system integration partners.  The DevOps CI/CD pipeline approach for software release can become an automated part of the delivery value chain.  The "Netflix like" approach to self-service selection, service start/stop and additional automated features help to make cloud application adoption seamless.  All that's required is an orchestration, modeling and deployment capability to handle the multiple tools, cloud providers and complex workflows.

 

Step 6:  Workflow Management

Bringing it all together requires workflow management to ensure that the edge functionality is seamlessly incorporated into the centralized architecture.  Critical to Netflix success is their ability to manage clusters and deployment scenarios.  Similarly, Quali enables Environments as a Service to support blueprint models and eco-system integrations.  These integrations often take the form of pluggable community shells.

 

Summary

Enterprises that are creating, validating and deploying new cloud applications are looking to simplify and automate their deployment workflows.  The "Netflix like” approach to discover, sort, select, view and consume content can be modeled and utilized by DevOps teams to deliver software in a CI/CD model.  The Quali CloudShell example for Environments as a Service follows that model by making it easy to set up workflows to accomplish application deployments.   For more information, please visit Quali.

CTA Banner

Learn more about Quali

Watch our solutions overview video
post-img

Increase Infrastructure Efficiency and Accelerate Cloud Transformation with CloudShell 9.0

Posted by Pascal Joly July 25, 2018
Increase Infrastructure Efficiency and Accelerate Cloud Transformation with CloudShell 9.0

Barely a couple of weeks after the final of the soccer World Cup, we have another exciting piece of news: Quali is announcing a sneak preview (EA) of the latest release of CloudShell: v. 9.0.

As part of this story, I will cover  2 major features of CloudShell 9.0 that will help current and future customers further their infrastructure utilization efficiency and significantly accelerate Cloud transformation initiatives.

Sandbox Life Cycle Orchestration

The Cloudshell built-in orchestration has already included since the very beginning the setup and teardown of a sandbox. As an option, CloudShell users will now have a simple way to save and restore their sandboxes.

The "Save and Restore" add-on allows saving an active sandbox, preserving the original sandbox content, configuration, and network state. The “Saved Sandbox” can then be restored by the user at a later time. The capability can be enabled per blueprint as well as defining the maximum number of saved sandbox per user.

What does it really mean? Simply put, let's assume a user needs to stop their work on a project, for instance, the test and certification of a new virtual application, or the support of a complex IT issue. They can now use simple interactive commands from the CloudShell UI  to save their sandbox with a specific name. The action will trigger in the backend a clone of all the VMs and their connectivity and create a new snapshot artifact based on these settings. Once the user is ready to resume, he/she will be able to deploy this artifact and create a new sandbox that will have the exact same settings as the original one.

This feature prevents overconsumption of limited infrastructure (physical or virtual) resources while allowing individual users to create a back up of their work environment.

Cloud Provider Template

CloudShell already supports out of the box the leading private and public clouds (Vcenter, Openstack, AWS, Azure). This allows users to model and deploy complex applications in the cloud of their choice using out of the box sandbox orchestration to automatically set up and tear down the environment.

It's a fact: there are many other Cloud technologies that we do not support yet, including some that we don't even know about. Patience, as in "maybe it will show up in the roadmap someday", is not a virtue of the fast-paced technology-driven world we live in. Thankfully, wait no longer. Cloud Provider Templates are here to help organizations to quickly collect the benefits of cloud-driven, environments as a service automation.

CloudShell is an open content platform and we provide in the Quali community  standard templates to build your own infrastructure "Shell" (the building blocks of sandbox automation). Cloud Provider templates are just an extension of this concept. Just like Shells, these templates are python based (anyone who doesn't code in python yet please raise your hand!). They provide a standard for any developer to quickly add support to a new cloud provider (public or private) in CloudShell and deploy complex application environments to these clouds. These new cloud provider will inherit of all the existing Cloud provider orchestration capabilities (create/delete/network connectivity) as well as the ability to create custom commands (extensibility).

Note that container based orchestration platforms such as Kubernetes may also be modeled in CloudShell as "Cloud Providers", so the range of technology supported is quite broad.

This feature is a major step for organizations looking for rapid time to value to support their cloud transformation initiative.

Want to learn more? Take a break from the Tour de France and contact us to try out CloudShell 9.0.

CTA Banner

Learn more about Quali

Watch our solutions overview video
post-img

CloudShell 8.1 GA Release

Posted by admin August 20, 2017
CloudShell 8.1 GA Release

Quali is pleased to announce that we just released CloudShell version 8.1 in General availability.

This version provides several features that provide a better experience and performance for both the administrator , blueprint designers and end users many of them were contributed by our great community feedback and suggestions

Let's go over the main features delivered in CloudShell 8.1 and their benefits:

Orchestration Simplification

Orchestration is a first class citizen in CloudShell, so we've simplified and enhanced the orchestration capabilities for your blueprints.

We have created a standard approach for users to extend the setup and tear-down flows. By separating the orchestration into built in stages and events, the CloudShell user now has better control and visibility to the orchestration process.\

We've also separated the different functionality into packages to allow more simplified and better structured flows for the developer.

App and Configuration Management enhancements

We have made various enhancements to Apps and CloudShell’s virtualization capabilities, such as allowing tracking the application setup process , passing dynamic attributes to the configuration management.

CloudShell 8.1 now supports vCenter 6.5 and Azure Managed disks and premium storage features

Troubleshooting Enhancement

To enhance the visibility of what's going on during the lifespan of a Sandbox for all the users , CloudShell now allows a regular user to focus on a specific activity of any component in their sandbox and view detailed error information directly from the activity pane.

Manage Resources from CloudShell Inventory

Administrator can now edit any resources from the inventory of the CloudShell web portal including Address, Attributes, Location, as well as the capability to exclude/include resources.

"Read Only" View for Sandbox  while setup is in progress

To allow uninterrupted automation process and prevent any error during the setup stage, the sandbox will be in a “read only” mode.

Improved Abstract resources creation

Blueprint editors using abstract resource can now select attribute values from a drop down list with existing values, this shortens and eases the creation process and reduces problems during abstract creation

Additional feature requests and ideas from our community

A new view allows administrators to track the commands queued for execution.

The Sandbox list view now displays live status icons for sandbox components and allows remote connections to devices and virtual machines using QualiX.

Additional REST API functions have been added to allow better control over Sandbox consumption.

In addition, version 8.1 rolls out support for Ranorex 7.0 and HP ALM 12.x integration.

More supported shells

Providing more out-of-the-box Shells speeds up time to value with CloudShell. The 8.1 list includes Ixia Traffic Generators, OpenDayLight Lithium , Polatis L1, Breaking Point, Junos Firewall, and many more shells that were migrated to 2nd generation.

Feel free to visit our community page and Knowledge base for additional information, or schedule a demo.

See you all in CloudShell 8.2 :)

 

CTA Banner

Learn more about Quali

Watch our solutions overview video