Självstudie: Använda Azure Container Instances som jenkins-byggagent

Viktigt!

Många Azure-tjänster har Jenkins-plugin-program. Vissa av dessa plugin-program kommer att vara utan stöd från och med den 29 februari 2024. Azure CLI är det för närvarande rekommenderade sättet att integrera Jenkins med Azure-tjänster. Mer information finns i artikeln Jenkins-plugin-program för Azure.

Azure Container Instances (ACI) tillhandahåller en miljö på begäran, burstbar och isolerad miljö för att köra containerbaserade arbetsbelastningar. På grund av dessa attribut är ACI en bra plattform för att köra Jenkins-byggjobb i stor skala. Den här artikeln visar hur du distribuerar en ACI och lägger till den som en permanent byggagent för en Jenkins-kontrollant.

Mer information om Azure Container Instances finns i Om Azure Container Instances.

Förutsättningar

Förbereda Jenkins-kontrollanten

  1. Bläddra till Jenkins-portalen.

  2. Välj Hantera Jenkins på menyn.

  3. Under Systemkonfiguration väljer du Konfigurera system.

  4. Kontrollera att Jenkins-URL:en är inställd på HTTP-adressen för Jenkins-installationen – http://<your_host>.<your_domain>:8080/.

  5. Välj Hantera Jenkins på menyn.

  6. Under Säkerhet väljer du Konfigurera global säkerhet.

  7. Under Agenter anger du Fast port och anger lämpligt portnummer för din miljö.

    Konfigurationsexempel: Configure TCP port

  8. Välj Spara.

Skapa Jenkins-arbetsagent

  1. Bläddra till Jenkins-portalen.

  2. Välj Hantera Jenkins på menyn.

  3. Under Systemkonfiguration väljer du Hantera noder och moln.

  4. Välj Ny nod på menyn.

  5. Ange ett värde för Nodnamn.

  6. Välj Permanent agent.

  7. Välj OK.

  8. Ange ett värde för fjärrrotkatalogen. Till exempel: /home/jenkins/work

  9. Lägg till en etikett (etiketter används för att gruppera flera agenter i en logisk grupp. Ett exempel på en etikett är linux att gruppera dina Linux-agenter.) med värdet linux.

  10. Ange Launch-metoden till Starta agenten genom att ansluta till huvudservern.

  11. Kontrollera att alla obligatoriska fält har angetts eller angetts:

    Example Jenkins agent configuration

  12. Välj Spara.

  13. På sidan agentstatus bör du se JENKINS_SECRET och AGENT_NAME. Följande skärmbild visar hur du identifierar värdena. Båda värdena behövs när du skapar Azure Container Instance.

    The build-agent secret is displays after its successful creation.

Skapa Azure Container Instance med CLI

  1. Använd az group create för att skapa en Azure-resursgrupp.

    az group create --name my-resourcegroup --location westus
    
  2. Använd az container create för att skapa en Azure Container Instance. Ersätt platshållarna med de värden som erhölls när du skapade arbetsagenten.

    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>"
    

    Ersätt http://jenkinsserver:port, <JENKINS_SECRET>och <AGENT_NAME> med jenkins-kontrollanten och agentinformationen. När containern har startat ansluts den automatiskt till Jenkins-styrenhetsservern.

  3. Gå tillbaka till Jenkins-instrumentpanelen och kontrollera agentstatusen.

    Agent has started successfully

    Kommentar

    Jenkins-agenter ansluter till styrenheten via port 5000, se till att porten tillåts inkommande till Jenkins-styrenheten.

Skapa ett byggjobb

Nu skapas ett Jenkins-byggjobb för att demonstrera Jenkins-versioner på en Azure-containerinstans.

  1. Välj Nytt objekt, ge byggprojektet ett namn, till exempel aci-demo, välj Freestyle-projekt och välj OK.

    Box for the name of the build job, and list of project types

  2. Under Allmänt kontrollerar du att Begränsa var projektet kan köras är valt. Ange linux för etikettuttrycket. Den här konfigurationen säkerställer att det här byggjobbet körs i ACI-molnet.

  3. Under Skapa väljer du Lägg till byggsteg och väljer Kör gränssnitt. Ange echo "aci-demo" som kommando.

  4. Välj Spara.

Kör byggjobbet

Om du vill testa byggjobbet och observera Azure Container Instances startar du en version manuellt.

  1. Välj Skapa nu för att starta ett byggjobb. När jobbet startar visas en status som liknar följande bild:

  2. Klicka på build #1 i build-historiken.

  3. Välj Konsolutdata för att visa byggens utdata.

Nästa steg