Oktatóanyag: Jenkins-környezetek méretezése az Azure-ban futó virtuális géppel

Fontos

Számos Azure-szolgáltatás rendelkezik Jenkins beépülő modulokkal. Ezen beépülő modulok némelyike 2024. február 29-étől nem támogatott. A Jenkins azure-szolgáltatásokkal való integrálásának jelenleg az Azure CLI az ajánlott módja. További információ: Jenkins beépülő modulok az Azure-hoz.

Ez az oktatóanyag bemutatja, hogyan hozhat létre Linux rendszerű virtuális gépeket az Azure-ban, és hogyan adhat hozzá virtuális gépet munkacsomópontként a Jenkinshez.

Az oktatóanyag során az alábbi lépéseket fogja végrehajtani:

  • Ügynökgép létrehozása
  • Ügynök hozzáadása a Jenkinshez
  • Új szabad stílusú Jenkins-feladat létrehozása
  • A feladat futtatása egy azure-os virtuálisgép-ügynökön

Előfeltételek

Ügynök virtuális gépének konfigurálása

  1. Azure-erőforráscsoport létrehozása az az group create használatával .

    az group create --name <resource_group> --location <location>
    
  2. Virtuális gép létrehozása az az vm create használatával.

    az vm create --resource-group <resource-group> --name <vm_name> --image UbuntuLTS --admin-username azureuser --admin-password "<password>"
    

    Főbb pontok:

    • Az ssh-kulcsot az alábbi paranccsal --ssh-key-value <ssh_path>is feltöltheti.
  3. Telepítse a JDK-t.

    1. Jelentkezzen be a virtuális gépre egy SSH-eszközzel.

      ssh username@123.123.123.123
      
    2. Telepítse a JDK-t az apt használatával. Más csomagkezelő eszközökkel is telepíthető, például a yum vagy a pacman.

      sudo apt-get install -y default-jdk
      
    3. A telepítés befejezése után futtassa java -version a Java-környezet ellenőrzését. A kimenet tartalmazza a JDK különböző részeihez társított verziószámokat.

A Jenkins URL-címének konfigurálása

Ha JNLP-t használ, konfigurálnia kell a Jenkins URL-címét.

  1. A menüben válassza a Jenkins kezelése lehetőséget.

  2. A Rendszerkonfiguráció területen válassza a Rendszer konfigurálása lehetőséget.

  3. Ellenőrizze, hogy a Jenkins URL-címe a Jenkins-telepítés HTTP-címére van-e állítva – http://<your_host>.<your_domain>:8080/.

  4. Válassza a Mentés parancsot.

Ügynök hozzáadása a Jenkinshez

  1. A menüben válassza a Jenkins kezelése lehetőséget.

  2. A Rendszerkonfiguráció területen válassza a Csomópontok és felhők kezelése lehetőséget.

  3. A menüben válassza az Új csomópont lehetőséget.

  4. Adjon meg egy értéket a csomópontnévhez.

  5. Válassza az Állandó ügynök lehetőséget.

  6. Kattintson az OK gombra.

  7. Adjon meg értékeket a következő mezőkben:

    • Név: Adjon meg egy egyedi nevet, amely azonosít egy ügynököt az új Jenkins-telepítésen belül. Ez az érték eltérhet az ügynök gazdagépének nevétől. Azonban kényelmes, ha a két érték megegyezik. A névérték bármely speciális karaktert engedélyez a következő listából: ?*/\%!@#$^&|<>[]:;.

    • Távoli gyökérkönyvtár: Az ügynöknek rendelkeznie kell egy, a Jenkins számára dedikált címtárral. Adja meg a könyvtár elérési útját az ügynökön. A legjobb, ha abszolút elérési utat használ, például /home/azureuser/work vagy c:\jenkins. Ennek az ügynökgéphez helyi elérési útnak kell lennie. Nincs szükség arra, hogy ez az elérési út látható legyen a főkiszolgálón. Ha relatív elérési utat (például ./jenkins-agent) használ, az elérési út a Launch metódus által biztosított munkakönyvtárhoz lesz viszonyítva.

    • Címkék: A címkék a szemantikailag kapcsolódó ügynökök egyetlen logikai csoportba való csoportosítására szolgálnak. Megadhatja például a Linux Ubuntu-disztribúcióját futtató összes ügynök címkéjét UBUNTU .

    • Indítási módszer: A távoli Jenkins-csomópont elindításának két lehetősége van: Ügynökök indítása SSH-n keresztül és Ügynök indítása a főkiszolgáló parancsának végrehajtásával:

      • Ügynökök indítása SSH-val: Adja meg az alábbi mezők értékeit:

        • Gazdagép: Virtuális gép nyilvános IP-címe vagy tartományneve. Például: 123.123.123.123 vagy example.com

        • Hitelesítő adatok: Válassza ki a távoli gazdagépre való bejelentkezéshez használandó hitelesítő adatokat. A Hozzáadás gombra kattintva definiálhat egy új hitelesítő adatot, majd a létrehozás után kiválaszthatja az új hitelesítő adatot.

        • Gazdagépkulcs-ellenőrzési stratégia: Azt szabályozza, hogy a Jenkins hogyan ellenőrzi a távoli gazdagép által a csatlakozás során bemutatott SSH-kulcsot.

        Node configuration example specifying a launch method of Launch agents via SSH.

      • Ügynök indítása parancs végrehajtásával a főkiszolgálón:

        • Töltse le a agent.jar forrást https://<your_jenkins_host_name>/jnlpJars/agent.jar. For example, https://localhost:8443/jnlpJars/agent.jar.

        • Feltöltés agent.jar a virtuális gépre

        • Indítsa el a Jenkinst a paranccsal ssh <node_host> java -jar <remote_agentjar_path>. For example, ssh azureuser@99.99.999.9 java -jar /home/azureuser/agent.jar.

        Node configuration example specifying a launch method of Launch agent via execution of command on the master.

  8. Válassza a Mentés parancsot.

A konfigurációk definiálása után a Jenkins új munkacsomópontként adja hozzá a virtuális gépet.

Example of virtual machine as new work node

Feladat létrehozása a Jenkinsben

  1. A menüben válassza az Új elem lehetőséget.

  2. Adja meg demoproject1 a nevet.

  3. Válassza a Freestyle project lehetőséget.

  4. Kattintson az OK gombra.

  5. A General (Általános) lapon válassza a Restrict where project can be run (Projekt futtatási helyének korlátozása) lehetőséget, és írja be az ubuntu kifejezést a Label Expression (Feliratkifejezés) mezőbe. Egy üzenet jelenik meg, amely megerősíti, hogy a feliratot az előző lépésben létrehozott felhőkonfiguráció szolgálja ki.

    Setting up a new Jenkins job

  6. A Source Code Management (Forráskódkezelés) lapon válassza a Git elemet, és írja be a következő URL-címet a Repository URL (Adattár URL-címe) mezőbe: https://github.com/spring-projects/spring-petclinic.git

  7. A Build lapon válassza az Add build step (Buildelési lépés hozzáadása), majd az Invoke top-level Maven targets (Felső szintű Maven-célok meghívása) lehetőséget. Írja be a package szöveget a Goals (Célok) mezőbe.

  8. Válassza a Mentés parancsot.

Az új feladat felépítése egy azure-os virtuálisgép-ügynökön

  1. Válassza ki az előző lépésben létrehozott feladatot.

  2. Válassza a Build most lehetőséget. Egy új build várólistára kerül, de nem indul el, amíg létre nem jön egy ügynök virtuális gép az Azure-előfizetésben.

  3. A fordítás befejeződése után nyissa meg a Konzolkimenetet. Látható, hogy a buildelés távolról lett végrehajtva egy Azure-ügynökön.

    Console output

További lépések