Zelfstudie: Een Azure Container Instances jenkins-buildagent gebruiken

Belangrijk

Veel Azure-services hebben Jenkins-in plug-ins. Sommige van deze in plug-ins worden vanaf 29 februari 2024 niet meer ondersteund. Azure CLI is de momenteel aanbevolen manier om Jenkins te integreren met Azure-services. Raadpleeg het artikel Jenkins-in plug-ins voor Azure voor meer informatie.

Azure Container Instances (ACI) biedt een omgeving op aanvraag, burstable en geïsoleerde omgeving voor het uitvoeren van workloads in containers. Vanwege deze kenmerken is ACI een geweldig platform voor het uitvoeren van Jenkins-buildtaken op grote schaal. In dit artikel wordt beschreven hoe u een ACI implementeert en toevoegt als een permanente buildagent voor een Jenkins-controller.

Zie Over Azure Container Instances voor meer informatie over Azure Container Instances.

Vereisten

De Jenkins-controller voorbereiden

  1. Blader naar uw Jenkins-portal.

  2. Selecteer Jenkins beheren in het menu.

  3. Selecteer onder Systeemconfiguratiede optie Systeem configureren.

  4. Controleer of de Jenkins-URL is ingesteld op het HTTP-adres van uw Jenkins-installatie - .

  5. Selecteer Jenkins beheren in het menu.

  6. Selecteer onder Beveiligingde optie Globale beveiliging configureren.

  7. Geef onder Agentsde waarde Vaste poort op en voer het juiste poortnummer voor uw omgeving in.

    Configuratievoorbeeld: TCP-poort configureren

  8. Selecteer Opslaan.

Jenkins-werkagent maken

  1. Blader naar uw Jenkins-portal.

  2. Selecteer Jenkins beheren in het menu.

  3. Selecteer onder Systeemconfiguratiede optie Knooppunten en clouds beheren.

  4. Selecteer nieuw knooppunt in het menu.

  5. Voer een waarde in voor Knooppuntnaam.

  6. Selecteer Permanente agent.

  7. Selecteer OK.

  8. Voer een waarde in voor Externe hoofdmap. Bijvoorbeeld: /home/jenkins/work

  9. Voeg een Label toe met de waarde .

  10. Stel Launch method in op Launch agent door verbinding te maken met de master.

  11. Controleer of alle vereiste velden zijn opgegeven of ingevoerd:

    Voorbeeld van de configuratie van de Jenkins-agent

  12. Selecteer Opslaan.

  13. Op de pagina Agentstatus ziet u de JENKINS_SECRET en AGENT_NAME . In de volgende schermafbeelding ziet u hoe u de waarden identificeert. Beide waarden zijn nodig wanneer u de Azure Container Instance maakt.

    Het geheim van de build-agent wordt weergegeven nadat het is gemaakt.

Een Azure Container Instance maken met CLI

  1. Gebruik az group create om een Azure-resourcegroep te maken.

    az group create --name my-resourcegroup --location westus
    
  2. Gebruik az container create om en Azure Container Instance te maken. Vervang de tijdelijke aanduidingen door de waarden die zijn verkregen bij het maken van de werkagent.

    az container create \
      --name my-dock \
      --resource-group my-resourcegroup \
      --ip-address Public --image jenkins/inbound-agent:latest \
      --os-type linux \
      --ports 80 \
      --command-line "jenkins-agent -url http://jenkinsserver:port <JENKINS_SECRET> <AGENT_NAME>"
    

    Vervang http://jenkinsserver:port , en door de gegevens van uw <JENKINS_SECRET><AGENT_NAME> Jenkins-controller en agent. Nadat de container is gestart, maakt deze automatisch verbinding met de Jenkins-controllerserver.

  3. Ga terug naar het Jenkins-dashboard en controleer de status van de agent.

    Agent is gestart

    Notitie

    Jenkins-agents maken verbinding met de controller via poort 5000 , zorgen ervoor dat de poort is toegestaan voor binnenkomende toegang tot de Jenkins-controller.

Een build-taak maken

Er wordt nu een Jenkins-build-taak gemaakt om Jenkins-builds op een Azure-container-instantie te demonstreren.

  1. Selecteer Nieuw item,geef het buildproject een naam, zoals aci-demo,selecteer Freestyle-projecten selecteer OK.

    Vak voor de naam van de build-taak en een lijst met projecttypen

  2. Controleer onder Algemeenof Beperken waar dit project kan worden uitgevoerd is geselecteerd. Voer linux in voor de labelexpressie. Deze configuratie zorgt ervoor dat deze build-taak wordt uitgevoerd in de ACI-cloud.

    Tabblad Algemeen met configuratiedetails

  3. Selecteer onder Bouwende optie Buildstap toevoegen en selecteer Shell uitvoeren. Voer echo "aci-demo" in als de opdracht .

    Tabblad 'Bouwen' met selecties voor de build-stap

  4. Selecteer Opslaan.

De build-taak uitvoeren

Als u de build-taak wilt testen en Azure Container Instances u handmatig een build starten.

  1. Selecteer Nu bouwen om een build-taak te starten. Zodra de taak is gestart, ziet u een status die vergelijkbaar is met de volgende afbeelding:

    Informatie over buildgeschiedenis met taakstatus

  2. Klik op build 1 in de Build History.

    'Console-uitvoer' bekijkt de builduitvoer van de console in de buildgeschiedenis

  3. Selecteer Console-uitvoer om de uitvoer van de builds weer te geven.

    'Console-uitvoer' bekijkt de builduitvoer van de console in de uitvoer van de builds

Volgende stappen