GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren Sie Jenkins Automation Server auf AlmaLinux 8

Jenkins ist ein kostenloser Open-Source-Automatisierungsserver, der in Java geschrieben wurde. Es kann auf einem einzelnen Server oder als verteilte Anwendung bereitgestellt werden. Es ist eine der beliebtesten Open-Source-Lösungen für kontinuierliche Integration und kontinuierliche Bereitstellung von Softwareanwendungen.

Kontinuierliche Integration (CI) ist eine Softwareentwicklungspraxis, bei der Entwickler ihren Code so früh und so oft wie möglich in das Haupt-Repository integrieren müssen (normalerweise täglich), um Integrationsfehler zu erkennen, neue Funktionen zu entwickeln und Feedback für alle bereitzustellen Phasen des Software-Lebenszyklus.

Eine Plattform wie Jenkins ist ein CI-Framework, das online verwendet oder lokal auf Ihrem Computer installiert werden kann. Es bietet Ihnen eine benutzerfreundliche Oberfläche für die Zusammenarbeit mit Ihren Teammitgliedern auf GitHub, Bitbucket oder anderen Repositories, die Git verwenden, um kontinuierliche Integrationspipelines zu erstellen.

Continuous Delivery (CD) ist eine Softwareentwicklungspraxis, die kleine, häufige Releases von Softwareanwendungen und Diensten ermöglicht. Es ist schneller als der herkömmliche Ansatz, der normalerweise alle sechs Monate eine einzelne große Version umfasst. Continuous Delivery kann die Bereitstellung von neuem Code jeden Tag, jede Stunde oder sogar mehrmals pro Stunde beinhalten. Die kürzeren Zeitintervalle ermöglichen eine flexible Reaktion auf Änderungen der Geschäftsanforderungen oder der zugrunde liegenden Technologie und senken gleichzeitig die Kosten und Risiken, die mit langen Zeiträumen zwischen den Versionen verbunden sind.

Eine Plattform wie Jenkins ist ein CD-Framework, das die verschiedenen Schritte koordiniert und verwaltet, die zur Erstellung eines CD-Systems erforderlich sind. Die Rolle von Jenkins besteht nicht nur darin, den Code zu erstellen, sondern auch zu testen und bereitzustellen.

Eine Plugin-basierte Architektur, die es ermöglicht, die Grundfunktionalität von Jenkins mit selbst geschriebenen Plugins zu erweitern, z. für die Quellcodeverwaltung oder andere Aufgaben. Die verfügbaren Plugins werden im Plugin Manager innerhalb von Jenkins aufgelistet und können durch einfaches Anklicken installiert werden.

Jenkins bietet mehr als 300 Plug-ins zur Unterstützung des Erstellens, Bereitstellens und Automatisierens jeder Art von Projekt von Grund auf bis zur Produktion, einschließlich Java, Javascript, PHP, Ruby, Android und anderen.

Es verfügt auch über eine eigene REST-API, sodass Sie Ihre eigenen benutzerdefinierten Tools erstellen können, die sich in Jenkins integrieren lassen, ohne dass Sie wissen müssen, wie man codiert oder etwas über die Interna der Jenkins-Architektur weiß.

Sie sind Systemadministrator und suchen nach einer Lösung, mit der Sie beim Bereitstellen kleiner Anwendungen auf Ihren Computern Zeit sparen können. Nachdem Sie sich einige Optionen angesehen haben, stoßen Sie auf Jenkins, das behauptet, alle Ihre Probleme lösen zu können. Sie tauchen ein, lesen die Dokumentation und installieren Jenkins. Die Dokumentation führt Sie durch den Installationsprozess, aber Sie können es nicht ganz richtig installieren.

Die Installation und Konfiguration der notwendigen Softwarekomponenten für ein vollständiges, funktionierendes Build-System ist nicht so einfach, wie es sich anhört. Aus diesem Grund haben wir dieses Schritt-für-Schritt-Tutorial zur Installation und Konfiguration von Jenkins unter AlmaLinux 8 erstellt.

Voraussetzungen

Um Jenkins auf AlmaLinux 8 zu installieren, benötigen Sie:

  • Ein 64-Bit AlmaLinux 8-Rechner mit einer funktionierenden Internetverbindung.
  • Root-Zugriff auf Ihren Server. Sie können es erhalten, indem Sie dieser Anleitung folgen.
  • Systemanforderungen:Laut der offiziellen Website von Jenkins benötigt eine Basisinstallation von Jenkins mindestens 2 GB RAM. Jenkin benötigt 50 GB freien Speicherplatz für die Installation plus 1 GB freien Speicherplatz für jeden Build-Slave, den Sie hinzufügen möchten. Außerdem benötigen Sie einen CPU-Kern und ein GB RAM pro gleichzeitigem Build-Worker, den Sie unterstützen möchten.

Aktualisieren Ihres Systems

Bevor Sie mit der Installation und Konfiguration von Jenkins beginnen, sollten Sie Ihr System auf die neueste verfügbare Version der Softwarepakete aktualisieren.

Rufen Sie dazu per SSH Ihren Server auf und führen Sie den folgenden Befehl aus. Das Paket epel-release stellt aktualisierte Pakete aus dem Extras-Entwicklungsrepository bereit, die noch nicht Teil einer größeren RHEL-Version sind. Das Extras-Repo enthält Pakete, die nicht in den Standardpaketen von Red Hat enthalten sind, aber dennoch für RHEL-Versionen erstellt wurden. Dazu gehören Sprachpakete, Unterstützung für neuere Versionen adaptiver Symbole und andere Funktionsaktualisierungen.

  • sudo dnf check-update &&sudo dnf update -y
  • sudo dnf install epel-release

Java installieren

Java ist eine Programmiersprache, die auf C basiert. Sie gilt als eine der beliebtesten Programmiersprachen, da sie in vielen Softwareprogrammen wie Android und Google Chrome verwendet wurde. Java ist eine plattformübergreifende Programmiersprache, die autonome Anwendungen sowohl auf Windows- als auch auf Linux-Betriebssystemen sowie auf MacOS, Solaris, FreeBSD und anderen UNIX-Systemen ausführen kann.

Jenkins ist im Kern ein Java-Programm, für das Sie die Java Runtime Environment (JRE) und das Java Development Kit (JDK) auf Ihrem System installieren müssen, um ordnungsgemäß zu funktionieren.

Diese Demo installiert OpenJDK 11 auf dem System. Das OpenJDK ist eine kostenlose Open-Source-Implementierung der Java Platform, Standard Edition (Java SE). Es ist eine Entwicklungs- und Laufzeitumgebung zum Erstellen von Anwendungen, Microservices und anderen Serversystemen, die auf der Java Virtual Machine (JVM) ausgeführt werden.

Das OpenJDK basiert auf Oracles Java Development Kit Version 8 mit Project Jigsaw-Unterstützung. Das bedeutet, dass Sie Jenkins in OpenJDK 11 mit Project Jigsaw ohne Kompatibilitätsprobleme ausführen können.

Führen Sie den folgenden Befehl aus, um OpenJDK 11 auf Ihrem System zu installieren.

sudo dnf install java-11-openjdk -y

Sobald die Installation abgeschlossen ist, können Sie den Befehl ausführen, um zu überprüfen, ob sie ordnungsgemäß funktioniert.

java -version

Sie sehen die folgende Ausgabe.

Installieren von Jenkins

Nachdem Sie Java installiert haben, können Sie Jenkins installieren.

Das AlmaLinux-Basis-Repository enthält keines der Jenkins-Pakete, daher müssen Sie zuerst das offizielle Repository des Entwicklers hinzufügen. Es ist das einzige Repository, das Softwarepakete für eine bestimmte unterstützte Distribution verteilen darf. In diesem Fall ist es das eigene Repository des Jenkins-Entwicklers für Redhat und seine Derivate.

Führen Sie den folgenden Befehl aus, um den Jenkins-Schlüssel in das System zu importieren. Dieser Schlüssel ist ein Sicherheitsmechanismus, der verwendet wird, um die Authentizität eines Softwarepakets zu validieren.

sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

Führen Sie den folgenden Befehl aus, um das Jenkins-Repository zum System hinzuzufügen.

cd /etc/yum.repos.d/ && curl -O https://pkg.jenkins.io/redhat-stable/jenkins.repo

Führen Sie den Befehl sudo dnf makecache aus, um den Metadaten-Cache aller aktivierten Repositorys zu aktualisieren und sicherzustellen, dass die Daten des lokalen Datenträger-Repositorys auf dem neuesten Stand sind. Dies kann verwendet werden, wenn Pakete aktualisiert/installiert werden oder wenn die Metadaten beschädigt wurden.

sudo dnf makecache

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob das Jenkins-Repository zu Ihrem System hinzugefügt wurde. Es ist eine Möglichkeit, die aktuelle Liste der Repositories zu überprüfen, die dem Paketmanager anzeigt, welche Repositories aktiviert wurden. Mit anderen Worten, es ist eine Möglichkeit zu sehen, welche Repositories derzeit von dnf verfolgt werden.

sudo dnf repolist

Führen Sie den folgenden Befehl aus, um Jenkins auf Ihrem System zu installieren.

dnf install -y jenkins

Führen Sie nach Abschluss der Installation des Befehls den folgenden Befehl aus, um den Jenkins-Dienst zu starten.

sudo systemctl start jenkins

Führen Sie den folgenden Befehl aus, um den Status des Jenkins-Dienstes zu überprüfen.

sudo systemctl status jenkins

Jenkins ist ein kontinuierlicher Integrationsdienst, der die Ausführung wiederholter Jobs überwachen kann, z. B. das Erstellen eines Softwareprojekts oder von Cron ausgeführte Jobs. Die Überwachung des Status von Jenkins kann uns helfen zu wissen, ob sie wie erwartet ausgeführt werden. Dieses Wissen kann bei der Behebung von Problemen mit ausgeführten Jobs hilfreich sein, die nicht erfolgreich sind.

Sie sehen die folgende Ausgabe.

Ihre Firewall konfigurieren

Jenkins ist Ihr automatisierter Build-Server, er hilft bei der kontinuierlichen Integration und Bereitstellung für Ihre Projekte. Jenkins kann SSH-Verbindungen erlauben, Builds und Aufgaben auf entfernten Slave-Knoten auszuführen. Allerdings müssen Sie Ihre Firewall so konfigurieren, dass Jenkins auf diese Server zugreifen kann.

Sie müssen Port 22 (SSH) und optional Port 8080 (Webclient) öffnen, damit Jenkins eine Verbindung zu den Remoteservern herstellen kann, auf denen sich Ihre Anwendungen befinden. Diese Ports sind normalerweise standardmäßig geschlossen, wenn Sie Cloud-basierte virtuelle Maschinen verwenden. Wenn Sie Jenkins auf Ihrer eigenen Hardware einrichten, müssen Sie diese Ports durch Ihre Firewall oder Ihren Router zulassen.

Führen Sie den folgenden Befehl aus, um diese Ports in Ihrer Firewall zu öffnen.

sudo firewall-cmd --permanent --zone=public --add-port=22/tcp
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp

Führen Sie den folgenden Befehl aus, um Ihre Änderungen zu übernehmen. Der Befehl sudo firewalld –reload sorgt dafür, dass die aktuell gültigen Regeln und Konfigurationen neu geladen werden, falls vorhanden. Dies kann nützlich sein, um Änderungen, die über die Firewall-Cmd-Tools vorgenommen wurden, auf das laufende System anzuwenden.

sudo firewall-cmd --reload

Führen Sie abschließend den folgenden Befehl aus, um zu überprüfen, ob die Regeln erfolgreich hinzugefügt wurden.

sudo firewall-cmd --list-all

Zugriff auf die Web-Benutzeroberfläche von Jenkins

Jetzt haben Sie Ihren Jenkins-Server in Betrieb, möchten aber im Webbrowser darauf zugreifen. Sie können auf Jenkins zugreifen, indem Sie seine IP-Adresse auf Port 8080 aufrufen.

Wenn Ihre IP beispielsweise 192.168.1.100 und der Standardport 8080 ist, navigieren Sie zur folgenden Adresse, um zu Jenkins zu gelangen:192.168.1.100:8080

Wenn Sie versuchen, auf die Webbenutzeroberfläche von Jenkins zuzugreifen, erhalten Sie die Meldung Jenkins entsperren Bildschirm, der Sie auffordert, zu /var/lib/jenkins/secrets/initialAdminPassword zu gehen , Wie nachfolgend dargestellt. Dies sind verschlüsselte Daten, die das Passwort enthalten, mit dem Sie sich beim Dashboard angemeldet haben. Es speichert das initialAdminPassword in verschlüsselter Form. Dadurch wird sichergestellt, dass ein böswilliger Benutzer, der sich Zugriff auf Ihren Jenkins-Server verschafft hat, nicht über das Passwort verfügt, das Sie bei der ersten Anmeldung verwendet haben.

Kehren Sie zu Ihrem Terminal zurück, wo Sie immer noch als Root-Benutzer angemeldet sein sollten. Geben Sie den folgenden Befehl ein, um ihn zu entschlüsseln:

cat /var/lib/jenkins/secrets/initialAdminPassword

Sie sehen die Ausgabe, die das Passwort für die Web-UI von Jenkins enthält.

Kopieren Sie dies und fügen Sie es in Ihren bevorzugten Editor ein und speichern Sie es irgendwo auf Ihrem Computer. Mit diesem Passwort können Sie jetzt auf Ihre Jenkins-Weboberfläche zugreifen.

Wählen Sie auf dem nächsten Bildschirm Vorgeschlagene Plug-ins installieren aus . Ein Plugin ist nichts anderes als ein Verzeichnis mit einigen Dateien darin. Wenn Sie das Plugin installieren, erkennt Jenkins das Verzeichnis und aktiviert die Funktionen, die in den Dateien angegeben sind.

Wenn Sie Jenkins zum ersten Mal installieren, sollten Sie die Option zum Installieren vorgeschlagener Plugins auswählen. Diese Option installiert alle Plugins, die für ein grundlegendes Jenkins-Setup benötigt werden. Keine Sorge, Sie können später im Abschnitt "Plugins" der Weboberfläche jederzeit weitere Plugins ändern oder hinzufügen.

Auf Ersten Admin-Benutzer erstellen geben Sie Ihren Benutzernamen, Ihre E-Mail-Adresse, Ihren vollständigen Namen und Ihr Passwort ein. Klicken Sie auf Speichern und fortfahren um zum nächsten Bildschirm zu gehen.

Behalten Sie auf dem nächsten Bildschirm die Standardeinstellung bei und klicken Sie auf Jenkins verwenden

Sie werden zum Jenkins-Dashboard weitergeleitet, wie unten gezeigt. Als Sie Jenkins zum ersten Mal installiert haben, wurde es wahrscheinlich mit einer leeren Seite als Standardseite geliefert. Sie können dies sehen, wenn Sie sich die Quelle der Seite ansehen – da ist nichts.

Wenn Sie jedoch mit der Zeit Jobs und Plugins hinzufügen, verwandelt sich die Seite in ein Dashboard, das visuelle Informationen zu Ihren Projekten anzeigt.

Schlussfolgerung

In diesem Beitrag haben Sie gelernt, wie Sie einen Jenkins-Server installieren und konfigurieren. Dies ist jedoch nur der Anfang; Es ist eine sehr wertvolle automatisierte Build-Umgebung, die in Ihrer täglichen Praxis genutzt werden kann. Hinterlassen Sie Ihre Kommentare und Vorschläge im Abschnitt unten, wenn Sie Feedback oder Fragen haben.


Linux
  1. So installieren Sie Jenkins unter CentOS 8

  2. So installieren Sie Jenkins unter Debian 10 (Buster)

  3. So installieren Sie Jenkins Automation Server mit Apache unter Ubuntu 16.04

  4. So installieren Sie Jenkins Automation Server mit Nginx unter CentOS 7

  5. So installieren Sie XAMPP auf AlmaLinux 8

So installieren oder aktivieren Sie Cockpit auf AlmaLinux 8

So installieren Sie Jenkins unter AlmaLinux 8

So installieren Sie Java unter AlmaLinux 8

So installieren Sie Tomcat und Java unter CentOS 8

So installieren Sie Chef Automation Server unter Ubuntu 20.04

So installieren Sie Jenkins unter Rocky Linux 8