Cloud Native

Overview

The Cloud Native group of contributors and collaborators focuses on improving Jenkins to run on Cloud environments as a "Cloud Native" application. The improvements are targeted at both existing and new Jenkins users that use, or would prefer to use, Jenkins deployed in one of the cloud providers, or using cloud services for their operation.

(Back to List of Jenkins Special Interest Groups )

Description

This group of contributors and collaborators focuses on improving Jenkins to run on Cloud environments as a "Cloud Native" application.

Target Audience

The improvements are targeted at both existing and new Jenkins users that use, or would prefer to use, Jenkins deployed in one of the cloud providers, or using cloud services for their operation.

Areas for Improvement

There are the following main areas for the SIG:

  • Pluggable storage - Externalizing data being stored inJENKINS_HOME

  • Cloud Native Jenkins - Architecture changes and optimizations towards stateless Jenkins

  • Configuration as Code - Simplify creation of static Jenkins configurations

  • Jenkins Kubernetes Operator - Manage Jenkins On Kubernetes

Pluggable Storage

The current default approach of storing everything into the filesystem is the main reason why Jenkins does not fit the "Cloud Native" model, with features like HA, zero downtime, or pay per use. While there are plenty of plugins that implement parts of this vision, this becomes cumbersome to configure and a usability nightmare for users, asJEP-300has pointed out. Going towards a model where cloud services are consumed where it makes sense, the overall complexity on operating Jenkins in a cloud or containerized environment is greatly reduced. Other related projects includeJenkins XandJenkins Evergreenwhich would greatly benefit from a Cloud Native storage for Jenkins.

There are several clear areas open for improvement, which are summarized here and will be detailed in future documents. A mayor pain point is the usage of local disk as all-purpose storage, which causes issues running on containerized or distributed environments, requiring highly performant filesystems, and all the configuration pain like initial sizing and resizing with downtime. We believe that by using cloud provided services the overall usability, performance and scalability can be improved while enabling new demanded functionality.

See thePluggable Storage pagefor more information about the projects. You can also find more information about Pluggable Storage and priorities inthis blogpost.

Cloud Native Jenkins

如果目前的所有数据存储在文件系统中is moved to external storage a replicated Jenkins service becomes possible, and the next steps are true High Availability, rolling or canary upgrades and zero downtime.

It also opens a way towards stateless Jenkins. By converting Jenkins to a "stateless" application long awaited features such as high availability and replication would help to operate Jenkins more efficiently, with zero downtime and reducing risk in upgrade operations by using canary or rolling deployments.

Currently there is no JEPs associated with this topic.

Configuration as Code

Configuration as Code related topics belong to the Cloud Native SIG. The Configuration as Code (casc) group consists of contributors and collaborators focuses on improving Jenkins configuration as code related tools and practices.

The target audience are both existing and new Jenkins users that use, or would prefer to use, different ways to configure Jenkins as code.

There is a separateOffice Hours meetingconducted every second week on Wednesdays, 9am CEST. Click on alinkfor an invitation. Anyone can join a meeting, meetings will be recorded via Jenkins Hangouts-on-Air.

Participant links will be posted in theConfiguration as Code Gitter Chatwithin 10 minutes before the meeting starts.

When needed the topics discussed at Office Hours meeting will be reported back at Cloud Native SIG meeting.

Jenkins Kubernetes Operator

Jenkins Kubernetes Operator can realize the automatic operation and maintenance of Jenkins in the kubernetes cluster.

The Jenkins Operator will integrate with the CasC plugin, Groovy init scripts and more to enable configuration control、 stateful control and other possible improvements of Jenkins in the kubernetes cluster.

The operator will receive a yaml file likecustom-war-packager yaml config并完成配置。

Meetings

We keep notes on HackMD, where everyone can add new topics to the agenda for upcoming meetings or take notes during the meetings. Please edit the meeting notes on HackMD.

Regular SIG meetings are currently suspended. Meetings will resume when a new leader is identified for the SIG. If you’re interested in leading the Jenkins cloud native SIG, please send a message to the必威国际有限公司詹金斯developers mailing list.

Meetings will be conducted, recorded and uploaded to theJenkins Cloud-Native Youtube playlist

Meeting minutes prior to 2021 arekept in this Google doc

(Back to List of Jenkins Special Interest Groups)
Baidu