Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Investigating the Possibility of an Active/Active Highly Available Jenkins
KTH, School of Information and Communication Technology (ICT).
2013 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
Abstract [en]

Jenkins is a continuous integration engine, which is a single point of failure since it is designed to run on one server only. If the server is brought down for maintenance, Jenkins will be unavailable. This report investigates the possibility of having multiple Jenkins masters running in parallel that can cooperate and share the load. If one Jenkins is not able to respond to requests, another Jenkins should be there and take over the load and the responsibilities. The restriction is that the source code of Jenkins must not be modified.

The results show that the core features of Jenkins related to jobs and builds can indeed be adapted to a work in an active/active solution, but that other external plugins for Jenkins cannot be guaranteed to work properly. The data replication between Jenkins masters must be done asynchronously and data collisions will therefore be an issue that needs to be considered. In conclusion, modifications are required on Jenkins but also the plugins, if every feature of Jenkins is to be adjusted to work in an active/active solution.

Abstract [sv]

Jenkins är en applikation som används för kontinuerlig integrering, och är idag en så kallad "single point of failure" då Jenkins bara kan köras på en server. Om servern behöver stängas av för underhåll betyder det att Jenkins blir otillgängligt. Den här rapporten undersöker möjligheten att ha flera parallella Jenkins som sammarbetar och delar arbetslasten. Om en Jenkins blir okontaktbar, ska det finnas en annan Jenkinsmästare som kan ta över ansvaret och lasten som den andra hade. Begränsningen för en lösning var att Jenkins källkod inte fick modifieras.

Resultatet visar att de mest grundläggande funktionerna i Jenkins som modifiering av jobb och exekvering av byggen kan anpassas för att fungera i en aktiv/aktiv -lösning. Flera insticksmoduler till Jenkins kommer dock inte att fungera korrekt. Vidare måste datareplikeringen mellan Jenkinsmästarna vara asynkron, vilket leder till att samtidiga modifieringar av samma data måste hanteras. Avslutningsvis kan man dra slutsatsen att modifiering är nödvändig för både Jenkins och de insticksmoduler som finns för att alla funktioner ska kunna anpassas till en aktiv/aktiv -lösning.

Place, publisher, year, edition, pages
2013. , 60 p.
Series
Trita-ICT-EX, 2013:118
National Category
Engineering and Technology
Identifiers
URN: urn:nbn:se:kth:diva-128408OAI: oai:DiVA.org:kth-128408DiVA: diva2:647472
Educational program
Master of Science - Software Engineering of Distributed Systems
Examiners
Available from: 2013-09-11 Created: 2013-09-11 Last updated: 2013-09-11Bibliographically approved

Open Access in DiVA

fulltext(1168 kB)743 downloads
File information
File name FULLTEXT01.pdfFile size 1168 kBChecksum SHA-512
53daf840c1a1b08ee43db126d4c3283f3d78e92500d83eb30027d84ce029475212f177a711853dd3a3550d4e83c43385d3fec91a57f14f6378b18a436a9271f1
Type fulltextMimetype application/pdf

By organisation
School of Information and Communication Technology (ICT)
Engineering and Technology

Search outside of DiVA

GoogleGoogle Scholar
Total: 743 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 93 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf