A cloud-native implementation of CloudBees' Jenkins CI/CD technology headlines several key projects designed to...
lead the company and its customers to the DevOps Promised Land.
Cloud Native Jenkins is an effort to enable Jenkins to run in the cloud, and make use of cloud services such as storage, logging or disaster recovery, said Jesse Glick, a CloudBees engineer, in a session at the DevOps World | Jenkins World 2018 conference last week. Run as a stateless application, Jenkins will provide benefits such as increased scalability, safe upgrades and improved operations, he said.
The cloud offers infinite scalability, multi-tenancy and pay-per-use capabilities, said Carlos Sanchez, a CloudBees engineer who specializes in software automation. By contrast, Jenkins deployments installed and managed in-house require dedicated resources and server maintenance, and are prey to downtime without sufficient redundancy.
Get more out of Jenkins
Want to take your Jenkins skills to the next level? Just follow these Jenkins tutorials.
- A step by step introduction to Jenkins tutorial
- How to create your first Jenkins build job
- Add Jenkins environment variables to your scripts
- Enhance your CI with parameterized Jenkins build jobs
- Integrate Git with Jenkins
- Automate deployment to Artifactory or Nexus
- Master the art of Maven builds
- Test your knowledge with this Jenkins quiz
- How well would you do on a Jenkins or DevOps interview?
Currently DevOps pros can only run Jenkins in-house. With the shift to more cloud-native development, both the type of app development and where the tasks take place, there is a risk that users will associate Jenkins with the more traditional side of development, said Edwin Yuen, an analyst at Enterprise Strategy Group, in Milford, Mass.
"I think the shift to Cloud Native Jenkins, running as a container in Kubernetes, paves the way for Jenkins to be used for both traditional and cloud-native applications, in both on- and off-premises format," he said.
Edwin Yuenanalyst, ESG
From developers' perspective, this is critical to keep Jenkins at the forefront of tools [and] integrated with Jenkins X in the future, he said. For IT teams that run Jenkins, the cloud-native deployment option addresses the maintainability of Jenkins itself, which Yuen said is increasingly an issue. Container-based operation should make Jenkins easier to set up and run, he said. "[Cloud Native Jenkins makes] clear the lines between the parts of Jenkins that run easily out of the box and those that need/want greater configurations."
American Airlines runs Jenkins on premises, in a VMware environment where it's basically in a private cloud, said Ramardy Smith, a senior infrastructure engineer in the company's operations environment in Fort Worth, Texas. "We would be very interested in a cloud-native Jenkins," he said.
GroupM, a large media advertising company based in New York, also runs Jenkins on prem to support its digital media system known as the M platform, said Moshiur Khondokar, global head of QA at GroupM. "We want to go with cloud and we're ready to take the next step," he said.
Security appeal central to Cloud Native Jenkins
A cloud-native Jenkins deployment could enhance security, said Matthew Barker, senior solutions architect at Twistlock, a provider of container security and cloud-native security products based in Portland, Ore. "For example, using Alpine [Linux OS-based] containers, with their small footprint and their propensity for fixing security violations very quickly, is a plus," he said.
Containers are "purposely driven" entities, where developers only put into the container exactly what it needs, versus a general-purpose server, Barker said. Combine a container-based Jenkins with cloud hosting properly, and the result is better security and a smoother process. "There are lots of qualities about containers that make the security problem easier and more efficient to solve," he said. "On the cloud side, the major cloud providers, like Google, AWS and [Microsoft] Azure all add security controls into their cloud deployments -- things like automatic encryption, scanning of registries, et cetera."
Autodesk is evaluating a move from Jenkins on premises to Cloud Native Jenkins, said Evgeny Shulyatyev, software engineering manager at Autodesk. "The deciding factor would be if the product security team would approve it, because Jenkins is central to our infrastructure," he said.
Google, Microsoft lead community support
CloudBees' efforts emulate those of Salesforce.com, which records all customer relationship management transactions and data and embeds the process to help drive the sales force, said Sacha Labourey, CloudBees CEO, in an interview at last week's event. "We're building the same thing for software delivery," based on the company's CI/CD foundation: the Jenkins-based engine, Codeship software as a service, and CloudBees Core, which will add more governance features in the future, he said.
Cloud Native Jenkins is one of "five superpowers" that will drive the future not only for CloudBees, but for Jenkins and DevOps overall, said Kohsuke Kawaguchi, CTO of CloudBees and creator of Jenkins, in a blog post. Kawaguchi helped launch a Cloud Native Jenkins special interest group (SIG) in the Jenkins community, with members that include Google and Microsoft. Google created the Google Compute Engine Plugin to help users provision, configure and scale Jenkins build environments on the Google Cloud Platform, said Vic Iglesias, a cloud solutions architect at Google, and member of the SIG. Microsoft also is working on integrations for Cloud Native Jenkins.