-
Biznes i ekonomia
- Bitcoin
- Bizneswoman
- Coaching
- Controlling
- E-biznes
- Ekonomia
- Finanse
- Giełda i inwestycje
- Kompetencje osobiste
- Komputer w biurze
- Komunikacja i negocjacje
- Mała firma
- Marketing
- Motywacja
- Multimedialne szkolenia
- Nieruchomości
- Perswazja i NLP
- Podatki
- Polityka społeczna
- Poradniki
- Prezentacje
- Przywództwo
- Public Relation
- Raporty, analizy
- Sekret
- Social Media
- Sprzedaż
- Start-up
- Twoja kariera
- Zarządzanie
- Zarządzanie projektami
- Zasoby ludzkie (HR)
-
Dla dzieci
-
Dla młodzieży
-
Edukacja
-
Encyklopedie, słowniki
-
E-prasa
-
Historia
-
Informatyka
- Aplikacje biurowe
- Aplikacje biznesowe
- Bazy danych
- Bioinformatyka
- Biznes IT
- CAD/CAM
- Digital Lifestyle
- DTP
- Elektronika
- Fotografia cyfrowa
- Grafika komputerowa
- Gry
- Hacking
- Hardware
- IT w ekonomii
- Pakiety naukowe
- Podręczniki szkolne
- Podstawy komputera
- Programowanie
- Programowanie mobilne
- Serwery internetowe
- Sieci komputerowe
- Start-up
- Systemy operacyjne
- Sztuczna inteligencja
- Technologia dla dzieci
- Webmasterstwo
-
Inne
-
Języki obce
-
Kultura i sztuka
-
Lektury szkolne
-
Literatura
- Antologie
- Ballada
- Dla dorosłych
- Dramat
- Dzienniki, pamiętniki, listy
- Epos, epopeja
- Esej
- Fantastyka i science-fiction
- Felietony
- Fikcja
- Humor, satyra
- Inne
- Klasyczna
- Kryminał
- Literatura faktu
- Literatura piękna
- Mity i legendy
- Nobliści
- Nowele
- Obyczajowa
- Okultyzm i magia
- Opowiadania
- Pamiętniki
- Podróże
- Poemat
- Poezja
- Polityka
- Popularnonaukowa
- Powieść
- Powieść historyczna
- Proza
- Przygodowa
- Publicystyka
- Reportaż
- Romans i literatura obyczajowa
- Sensacja
- Thriller, Horror
- Wywiady i wspomnienia
-
Nauki przyrodnicze
-
Nauki społeczne
-
Podręczniki szkolne
-
Popularnonaukowe i akademickie
- Archeologia
- Bibliotekoznawstwo
- Filmoznawstwo
- Filologia
- Filologia polska
- Filozofia
- Finanse i bankowość
- Geografia
- Gospodarka
- Handel. Gospodarka światowa
- Historia i archeologia
- Historia sztuki i architektury
- Kulturoznawstwo
- Lingwistyka
- Literaturoznawstwo
- Logistyka
- Matematyka
- Medycyna
- Nauki humanistyczne
- Pedagogika
- Pomoce naukowe
- Popularnonaukowa
- Pozostałe
- Psychologia
- Socjologia
- Teatrologia
- Teologia
- Teorie i nauki ekonomiczne
- Transport i spedycja
- Wychowanie fizyczne
- Zarządzanie i marketing
-
Poradniki
-
Poradniki do gier
-
Poradniki zawodowe i specjalistyczne
-
Prawo
- BHP
- Historia
- Kodeks drogowy. Prawo jazdy
- Nauki prawne
- Ochrona zdrowia
- Ogólne, kompendium wiedzy
- Podręczniki akademickie
- Pozostałe
- Prawo budowlane i lokalowe
- Prawo cywilne
- Prawo finansowe
- Prawo gospodarcze
- Prawo gospodarcze i handlowe
- Prawo karne
- Prawo karne. Przestępstwa karne. Kryminologia
- Prawo międzynarodowe
- Prawo międzynarodowe i zagraniczne
- Prawo ochrony zdrowia
- Prawo oświatowe
- Prawo podatkowe
- Prawo pracy i ubezpieczeń społecznych
- Prawo publiczne, konstytucyjne i administracyjne
- Prawo rodzinne i opiekuńcze
- Prawo rolne
- Prawo socjalne, prawo pracy
- Prawo Unii Europejskiej
- Przemysł
- Rolne i ochrona środowiska
- Słowniki i encyklopedie
- Zamówienia publiczne
- Zarządzanie
-
Przewodniki i podróże
- Afryka
- Albumy
- Ameryka Południowa
- Ameryka Środkowa i Północna
- Australia, Nowa Zelandia, Oceania
- Austria
- Azja
- Bałkany
- Bliski Wschód
- Bułgaria
- Chiny
- Chorwacja
- Czechy
- Egipt
- Europa
- Francja
- Góry
- Grecja
- Hiszpania
- Holandia
- Islandia
- Litwa
- Mapy, Plany miast, Atlasy
- Miniprzewodniki
- Niemcy
- Podróże aktywne
- Polska
- Portugalia
- Pozostałe
- Rosja
- Rumunia
- Słowacja
- Słowenia
- Szwecja
- Świat
- Turcja
- Ukraina
- Węgry
- Wielka Brytania
- Włochy
-
Psychologia
- Filozofie życiowe
- Komunikacja międzyludzka
- Mindfulness
- Ogólne
- Perswazja i NLP
- Psychologia akademicka
- Psychologia duszy i umysłu
- Psychologia pracy
- Relacje i związki
- Rodzicielstwo i psychologia dziecka
- Rozwiązywanie problemów
- Rozwój intelektualny
- Sekret
- Seksualność
- Uwodzenie
- Wygląd i wizerunek
- Życiowe filozofie
-
Religia
-
Sport, fitness, diety
-
Technika i mechanika
-
Biznes i ekonomia
- Bitcoin
- Bizneswoman
- Coaching
- E-biznes
- Ekonomia
- Finanse
- Giełda i inwestycje
- Kompetencje osobiste
- Komunikacja i negocjacje
- Mała firma
- Marketing
- Motywacja
- Nieruchomości
- Perswazja i NLP
- Poradniki
- Prezentacje
- Przywództwo
- Public Relation
- Sekret
- Social Media
- Sprzedaż
- Start-up
- Twoja kariera
- Zarządzanie
- Zarządzanie projektami
- Zasoby ludzkie (HR)
-
Dla dzieci
-
Dla młodzieży
-
Edukacja
-
Encyklopedie, słowniki
-
Historia
-
Informatyka
-
Inne
-
Języki obce
-
Kultura i sztuka
-
Lektury szkolne
-
Literatura
- Antologie
- Ballada
- Dla dorosłych
- Dramat
- Dzienniki, pamiętniki, listy
- Epos, epopeja
- Esej
- Fantastyka i science-fiction
- Felietony
- Fikcja
- Humor, satyra
- Inne
- Klasyczna
- Kryminał
- Literatura faktu
- Literatura piękna
- Nobliści
- Nowele
- Obyczajowa
- Opowiadania
- Pamiętniki
- Podróże
- Poezja
- Polityka
- Popularnonaukowa
- Powieść
- Powieść historyczna
- Proza
- Przygodowa
- Publicystyka
- Reportaż
- Romans i literatura obyczajowa
- Sensacja
- Thriller, Horror
- Wywiady i wspomnienia
-
Nauki przyrodnicze
-
Nauki społeczne
-
Popularnonaukowe i akademickie
-
Poradniki
-
Prawo
-
Przewodniki i podróże
-
Psychologia
- Filozofie życiowe
- Komunikacja międzyludzka
- Mindfulness
- Ogólne
- Perswazja i NLP
- Psychologia akademicka
- Psychologia duszy i umysłu
- Psychologia pracy
- Relacje i związki
- Rodzicielstwo i psychologia dziecka
- Rozwiązywanie problemów
- Rozwój intelektualny
- Sekret
- Seksualność
- Uwodzenie
- Wygląd i wizerunek
- Życiowe filozofie
-
Religia
-
Sport, fitness, diety
-
Bazy danych
-
Big Data
-
Biznes i ekonomia
-
Cyberbezpieczeństwo
-
Data Science
-
DevOps
-
Dla dzieci
-
Elektronika
-
Grafika/Wideo/CAX
-
Gry
-
Microsoft Office
-
Narzędzia programistyczne
-
Programowanie
-
Rozwój osobisty
-
Sieci komputerowe
-
Systemy operacyjne
-
Testowanie oprogramowania
-
Urządzenia mobilne
-
UX/UI
-
Web development
Jenkins is a renowned name among build and release CI/CD DevOps engineers because of its usefulness in automating builds, releases, and even operations. Despite its capabilities and popularity, it's not easy to scale Jenkins in a production environment. Jenkins Administrator's Guide will not only teach you how to set up a production-grade Jenkins instance from scratch, but also cover management and scaling strategies.
This book will guide you through the steps for setting up a Jenkins instance on AWS and inside a corporate firewall, while discussing design choices and configuration options, such as TLS termination points and security policies. You'll create CI/CD pipelines that are triggered through GitHub pull request events, and also understand the various Jenkinsfile syntax types to help you develop a build and release process unique to your requirements. For readers who are new to Amazon Web Services, the book has a dedicated chapter on AWS with screenshots. You'll also get to grips with Jenkins Configuration as Code, disaster recovery, upgrading plans, removing bottlenecks, and more to help you manage and scale your Jenkins instance.
By the end of this book, you'll not only have a production-grade Jenkins instance with CI/CD pipelines in place, but also knowledge of best practices by industry experts.
- Install, manage, and scale a CI/CD build and release system to accelerate your product life cycle
- Foreword
- Contributors
- About the authors
- About the reviewers
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the example code files
- Download the color images
- Conventions used
- Get in touch
- Reviews
- 1 Jenkins Infrastructure with TLS/SSL and Reverse Proxy
- Technical requirements
- Why Jenkins?
- Searching for answers online with Jenkins keywords
- Understanding the Jenkins architecture
- Controller
- Domain name, TLS/HTTPS, load balancer, and reverse proxy
- Agents
- Bringing it all together
- AWS: FAQs, routing rules, EC2 instances, and EIPs
- EC2 instance types and sizes
- Regions and Availability Zones
- Routing rules
- EC2 instances and EIPs
- Installing Docker on our VMs
- Acquiring domain names and TLS/SSL certificates
- Domain names
- TLS/SSL certificates
- Storage concerns
- IOPS benchmarks using fio
- EC2 and EBS
- The IT VMs disk
- NFS/SAN
- Physical disks
- Review
- Summary
- 2 Jenkins with Docker on HTTPS on AWS and inside a Corporate Firewall
- Technical requirements
- Running a Jenkins controller with Docker on HTTPS
- Custom image to match the UID/GID for a bind mount
- Running Jenkins
- Reverse proxy and TLS/SSL termination options
- TLS termination at the reverse proxy
- Terminating the TLS certificate directly on the Jenkins controller
- Installing plugins and configuring Jenkins
- Installing more plugins
- Configure System
- Configure Global Security
- Configure Global Credentials
- Installing even more plugins
- Attaching SSH and inbound agents
- SSH agent
- Inbound agent
- Labels and Usage
- Creating a secure Docker Cloud
- Generating a CA, server certificates, and client certificates
- Storing the certificates
- Configuring the Docker service
- Configuring Jenkins
- Summary
- 3 GitOps-Driven CI Pipeline with GitHub
- Technical requirements
- Project overview
- Creating two sets of projects and users in Jenkins
- Creating a static pipeline for build and unit tests
- Displaying test results and a code coverage report
- Creating a premerge CI pipeline with GitHub PR hooks
- GitHub personal access token
- GitHub Pull Request Builder System Configuration
- Configuring the premerge trigger
- Testing the premerge trigger
- Building the PR branch
- Building an arbitrary branch
- Requiring a successful build for a merge
- Summary
- 4 GitOps-Driven CD Pipeline with Docker Hub and More Jenkinsfile Features
- Technical requirements
- Project overview
- Packaging the Docker image and running integration tests
- Versioning Git and Docker using Semantic Versioning
- Using more Jenkinsfile features with DooD and bare-metal agents
- agent none, buildDiscarder options, and credentials in environment variables
- Using a custom Dockerfile for a dockerfile agent and running Groovy code in a script block
- Docker-outside-of-Docker in Jenkins
- Variable handling, Docker Hub login, and docker push
- Bare-metal agents, Groovy language features, and alternate ways to run Docker and handle credentials
- post
- Saving the files, making a PR, and merging
- Creating a static pipeline for packaging, integration tests, and delivery
- Creating a postmerge CD pipeline with a GitHub webhook and polling
- Configuring the postmerge trigger
- Testing the postmerge trigger
- Summary
- 5 Headfirst AWS for Jenkins
- Technical requirements
- Logging in to AWS
- Navigating the AWS console
- Important notes
- EC2 instances and EIPs
- Step 1 Create an SSH key pair
- Step 2 Create a security group
- Step 3 Create an EC2 instance
- Step 4 Create and attach an EIP
- Let's Encrypt
- Manual verification
- Automated verification for AWS Route 53
- Setting up an application ELB for the AWS Jenkins controller
- Step 1 Create a TLS certificate in AWS Certificate Manager
- Step 2 Create a security group
- Step 3 Create an ALB
- Other DNS providers
- Summary
- 6 Jenkins Configuration as Code (JCasC)
- Technical requirements
- Downloading and understanding the current configuration
- User passwords aren't codified
- Secrets aren't portable
- Most entries are auto-generated defaults
- Converting controller configuration to JCasC
- Converting agent configuration to JCasC
- Converting Docker cloud configuration to JCasC
- Converting the pipeline configurations to JCasC
- Redeploying Jenkins using JCasC
- Reverting back to the original Jenkins
- Retrospective
- Advanced: CasC Plugin Groovy Scripting Extension
- Summary
- 7 Backup and Restore and Disaster Recovery
- Technical requirements
- A small change for testing backup and restore
- Backup strategies
- Snapshotting the entire disk as an image
- Saving the directory content as files
- Backing up a large Jenkins instance
- Deciding which files to back up and at what frequency
- Directories for live backup
- Backing up and restoring with the ThinBackup plugin
- Moving the backup archives out of the disk
- Experimenting with ThinBackup
- Restoring a backup using ThinBackup
- Configuring ThinBackup
- Disaster recovery from a user mistake
- Disaster
- Recovery
- Disaster recovery from an infrastructure failure
- Summary
- 8 Upgrading the Jenkins Controller, Agents, and Plugins
- Technical requirements
- Understanding the challenges of plugin version management
- Upgrading to the next immediate LTS version of Jenkins
- Upgrading while skipping many versions of LTS releases
- Pitfalls of preinstalling failed plugins
- Upgrade strategies
- Upgrade strategy for a small- to medium-scale Jenkins instance
- Upgrade strategy for a large-scale Jenkins instance
- Upgrading plugins using Plugin Manager
- Upgrading the controller
- Announcing the upgrade plans to the users
- Building a new controller image
- Pre-upgrade checklist
- Finally, the actual upgrade
- Summary
- 9 Reducing Bottlenecks
- Technical requirements
- Recommendations for hosting Jenkins to avoid bottlenecks
- General server recommendations
- How to keep Jenkins memory footprint light
- Memory and garbage collection tuning
- Periodic triggers versus webhook triggers
- Tracking operational costs in the cloud
- Quick performance improvements in an existing Jenkins instance
- GitHub Pull Request Builder plugin boot optimization
- Frontpage load delay due to the "weather" health display
- Pipeline speed/durability settings
- Improving Jenkins uptime and long-term health
- What is a periodic maintenance job and how do you create one?
- Terminating long-running pipelines
- Releasing stale locks in lockable resources from force killing builds
- Log cleanup for beginners
- Log cleanup for multibranch pipeline job types
- Avoiding and reducing the use of echo step
- CPU bottleneck: NonCPS versus CPS pipeline as code
- Pre-compiling all NonCPS code as an external jar
- Including a NonCPS library as a plugin
- Controller bottlenecks created by an agent
- Defining agent and controller interaction bottlenecks
- Agent booting start up bottleneck
- Stashing and archiving artifacts
- Storing controller and agent logs in CloudWatch
- Pipeline Logging over CloudWatch plugin
- Controller logging over CloudWatch
- AWS IAM roles for controller and agent CloudWatch logging
- Other ways to reduce agent log output
- Strategy Writing logs to the agent disk
- Drawbacks: Writing logs to the agent disk
- Summary
- 10 Shared Libraries
- Technical requirements
- Understanding the directory structure
- Creating a shared library
- Providing shared libraries
- Folder-level shared libraries
- Global shared libraries
- Using shared libraries
- Static loading
- Dynamic loading
- Use cases
- Code reuse via global variables Pre-formatted Slack messages
- Advanced Custom DSL
- Summary
- 11 Script Security
- Technical requirements
- Administrator versus non-administrator
- Outside the Groovy sandbox
- Direct pipeline
- Global shared library
- Inside the Groovy sandbox
- Approve assuming permission check
- Identity crisis everyone is a SYSTEM user
- Where the SYSTEM user can do things
- What the SYSTEM user can do everywhere
- Understanding why the Authorize Project plugin is needed
- Configuring the Authorize Project plugin
- Thoughts on disabling Script Security
- Summary
- Index
- Why subscribe?
- Other Books You May Enjoy
- Packt is searching for authors like you
- Share Your Thoughts
- Tytuły: Jenkins Administrator's Guide
- Autor: Calvin Sangbin Park, Lalit Adithya, Samuel Gleske
- Tytuł oryginału: Jenkins Administrator's Guide
- ISBN Ebooka: 9781838828295, 9781838828295
- Data wydania: 2021-12-24
- Identyfikator pozycji: e_2t5n
- Kategorie:
- Wydawca: Packt Publishing