11 software delivery problems solved by intelligence software delivery platform  Download
Select Page

Jenkins and Spinnaker – A Comparison

Gopinath Rebala February 10, 2020
Share

Avoid a scripting nightmare

by scaling your existing Jenkins ecosystem with Spinnaker

Many organizations are using a combination of Jenkins and a tool like Ansible, Puppet, Chef, or Salt to automate their CI/CD pipelines but find themselves having to do many steps manually or using a series of scripts that can be hard to maintain. Many organizations manually move software from Development to Staging to Production with time-consuming manual processes. Spinnaker can fully automate these processes. Spinnaker can fully integrate with standard CI/CD tools such as Jenkins, SonarQube, and Artifactory but add a layer of automation to automate software deployments to Development, Staging, and Production, eliminating many manual steps. Spinnaker also automates the creation of Canary Analysis and Blue/Green environments. Many large organizations, including Netflix and Google, use Spinnaker. Spinnaker was developed at Netflix and Google to automate their massive volume of CI/CD pipelines, but both large and smaller organizations can benefit from Spinnaker’s automation.

Jenkins is for Continuous Integration. Spinnaker is for Continuous Deployment

Jenkins is currently the most popular Continuous Integration Tool. It has an extensive community with a large catalog of plugins available. However, it is not ideal for continuous delivery because of the following reasons:

  • Script-based deployments: To create deployment workflow, stages, and deployment strategies developer needs to write scripts and also maintain those scripts. And this model is not scalable.
  • Taxing plugin Management: There are many plugins available in the Jenkin market place; however, handling all dependencies to make the plugin work, keeping track of plugin versions often make the overall pipeline brittle.
  • Manual Verification and Slower Approvals: With Jenkins, the process of identifying the risk of release at various stages of software delivery and approving pipeline progression is time-consuming and erroneous. Moreover, it does not provide the health status of new deployments, which further increases the risk of production downtime,
  • Limited Visibility: Jenkins provides limited visibility to the build stage only. It does not give insights into various pipeline execution in an organization, making collaboration and improvements of the CI/CD process very difficult.

Compare Jenkins vs Spinnaker for Continuous Delivery

Spinnaker is a Continuous Deployment Tool. It provides the ability to manage continuous deployment pipelines with multiple deployment strategies and roll back easily to previous versions.

Drill Deep on Why you need a Continuous Delivery System

1. Spinnaker is not a build tool

Spinnaker was never intended to be a build tool. Spinnaker takes advantage of existing build tools like Jenkins to start jobs and monitor their progress and results. Spinnaker can make the deployment phase much more flexible. The Jenkins pipeline can extend beyond CI to CD, but this functionality was more of an afterthought. Jenkins was never designed for cloud deployment, so there is a need for external scripts to move the process forward.

2. Spinnaker offers built-in support for creating load balancers, resizing clusters, and rollbacks

Spinnaker was built to combine CI and CD for streamlined, multi-cloud deployments. Spinnaker offers built-in support for doing things like creating load balancers, resizing clusters, and executing rollbacks. Spinnaker provides native support for basic and advanced deployments without the need for custom code and scripts.

3. Spinnaker provides visibility into your entire deployment pipeline 

Spinnaker has an all-in-one dashboard that allows you to monitor compilation, baking, deployment, and resource management for multiple cloud environments. Spinnaker combines all the capabilities of existing deployment and management tools into a cohesive, cloud-agnostic package. Jenkins needs extra help to take an application from package to production.

4. Spinnaker Supports Comprehensive Set of Cloud Providers

Jenkins lacks capabilities as a complete deployment tool, especially for the cloud. Spinnaker has a richer deployment model with a master dashboard and native support for major cloud providers. Spinnaker still relies on a build server and must integrate with tools like Jenkins. Spinnaker cannot replace Jenkins as a CI tool, but Spinnaker can make the deployment to the cloud process much more straightforward.

5. Spinnaker Supports built-in deployment strategies

Spinnaker offers built-in deployment strategies like blue-green, canary, rolling updates, and Highlander. Also, Spinnaker’s automated Canary Analysis capabilities far surpass any features provided by Jenkins.

6. What about the new Jenkins capabilities?

Blue Ocean plugin has been added to Jenkins for more modern visual pipeline composition and continuous delivery tool, but it lacks the Spinnaker’s richness. Jenkins X has also been developed to support Kubernetes. Jenkins X provides developers a better way to automate their CI/CD process for Kubernetes than Jenkins alone but still lacks the Spinnaker deployment model’s capabilities. Spinnaker is also a proper multi-cloud deployment tool with the broadest support for deployment environments and continues to expand.

Scale your Jenkins Ecosystem

It has never been easier!

Get infinite flexibility and scalability. Eliminate Cd Scripting. Our Machine Learning module will automate Risk, Policy and Compliance Assessments.

If you want to learn about Jenkins vs Spinnaker in detail then please visit our webinar- Jenkins to Spinnaker: Shift your Continuous Delivery, by Srinivas, the leader of our Customer Success team.

[post_blog]

You May Like

My experience at DevOps World 2020

October 16, 2020
Share