Bird
Raised Fist0
Jenkinsdevops~5 mins

Master-agent architecture in Jenkins - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the role of the Jenkins master in the master-agent architecture?
The Jenkins master controls the system, manages jobs, schedules builds, and distributes tasks to agents. It also provides the user interface and stores build results.
Click to reveal answer
beginner
What is a Jenkins agent and why is it used?
A Jenkins agent is a machine that runs build jobs delegated by the master. It helps distribute workload and allows builds to run on different environments or platforms.
Click to reveal answer
intermediate
How do Jenkins master and agents communicate?
They communicate over a network using protocols like JNLP or SSH. The master sends build tasks to agents, and agents report back the results.
Click to reveal answer
beginner
Why is using agents beneficial in Jenkins?
Agents allow parallel execution of builds, reduce load on the master, and enable running jobs on different operating systems or hardware setups.
Click to reveal answer
intermediate
What happens if the Jenkins master goes down in a master-agent setup?
If the master goes down, agents cannot receive new tasks or report results. The whole system becomes inactive until the master is restored.
Click to reveal answer
What component schedules and manages build jobs in Jenkins master-agent architecture?
AJenkins master
BJenkins agent
CBuild executor
DSource code repository
Which protocol is commonly used for communication between Jenkins master and agents?
AJNLP
BFTP
CHTTP
DSMTP
What is a key advantage of using Jenkins agents?
AThey replace the master
BThey allow parallel builds
CThey store build results
DThey manage user access
If the Jenkins master is down, what happens to the agents?
AThey become new masters
BThey continue running builds independently
CThey cannot receive new tasks
DThey shut down automatically
Which of these is NOT a function of the Jenkins master?
AScheduling builds
BProviding the user interface
CDistributing tasks to agents
DRunning build jobs directly
Explain the roles of Jenkins master and agents in the master-agent architecture.
Think about who controls and who executes.
You got /4 concepts.
    Describe the benefits of using agents in Jenkins.
    Why not run all builds on the master?
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the main role of the Jenkins master in the master-agent architecture?
      easy
      A. To run jobs on different machines
      B. To control and schedule jobs
      C. To store job logs only
      D. To act as a backup server

      Solution

      1. Step 1: Understand the master role

        The Jenkins master is responsible for controlling and scheduling jobs, meaning it decides when and where jobs run.
      2. Step 2: Differentiate from agent role

        Agents actually run the jobs on separate machines, not the master.
      3. Final Answer:

        To control and schedule jobs -> Option B
      4. Quick Check:

        Master controls jobs = B [OK]
      Hint: Master schedules jobs; agents run them [OK]
      Common Mistakes:
      • Confusing master with agent role
      • Thinking master runs jobs directly
      • Assuming master only stores logs
      2. Which of the following is the correct way to define an agent in a Jenkins pipeline script?
      easy
      A. run agent
      B. master agent
      C. agent any
      D. node master

      Solution

      1. Step 1: Recall Jenkins pipeline syntax

        In Jenkins declarative pipeline, agent any means the job can run on any available agent.
      2. Step 2: Check other options

        Options like master agent, run agent, and node master are not valid syntax for defining agents.
      3. Final Answer:

        agent any -> Option C
      4. Quick Check:

        Correct agent syntax = A [OK]
      Hint: Use 'agent any' to run on any available agent [OK]
      Common Mistakes:
      • Using invalid keywords like 'master agent'
      • Confusing 'node' with 'agent'
      • Writing 'run agent' which is not valid
      3. Given this Jenkins pipeline snippet, what will happen?
      pipeline {
        agent { label 'linux' }
        stages {
          stage('Build') {
            steps {
              echo 'Building on Linux agent'
            }
          }
        }
      }
      medium
      A. The job runs on any available agent
      B. The job runs on the master node
      C. The job fails due to syntax error
      D. The job runs on an agent labeled 'linux'

      Solution

      1. Step 1: Analyze the agent label

        The pipeline specifies agent { label 'linux' }, so it will run on an agent with the label 'linux'.
      2. Step 2: Understand job execution

        Since the label is specific, the job will not run on any agent or the master unless they have that label.
      3. Final Answer:

        The job runs on an agent labeled 'linux' -> Option D
      4. Quick Check:

        Agent label 'linux' = C [OK]
      Hint: Agent label selects specific machine for job [OK]
      Common Mistakes:
      • Assuming 'agent any' runs here
      • Thinking job runs on master by default
      • Believing syntax causes failure
      4. You configured an agent but Jenkins shows it as offline. What is the most likely cause?
      medium
      A. Agent machine is turned off or unreachable
      B. Master node is overloaded
      C. Pipeline syntax error in Jenkinsfile
      D. Agent label does not match any job

      Solution

      1. Step 1: Understand agent offline status

        An agent shows offline if Jenkins cannot connect to it, often because the machine is off or network unreachable.
      2. Step 2: Eliminate other causes

        Master overload or pipeline syntax errors do not cause agent offline status. Label mismatch prevents job assignment but does not make agent offline.
      3. Final Answer:

        Agent machine is turned off or unreachable -> Option A
      4. Quick Check:

        Offline agent = unreachable machine [OK]
      Hint: Offline agent means machine unreachable or off [OK]
      Common Mistakes:
      • Blaming master overload for offline agent
      • Confusing syntax errors with connectivity
      • Thinking label mismatch causes offline
      5. How can you improve Jenkins performance when running many jobs simultaneously using master-agent architecture?
      hard
      A. Add more agents to distribute the workload
      B. Run all jobs on the master node to avoid delays
      C. Disable agents to reduce network traffic
      D. Use only one agent with high CPU

      Solution

      1. Step 1: Understand workload distribution

        Adding more agents allows Jenkins to run jobs in parallel on different machines, improving performance.
      2. Step 2: Evaluate other options

        Running all jobs on master overloads it, disabling agents reduces capacity, and one agent limits parallelism.
      3. Final Answer:

        Add more agents to distribute the workload -> Option A
      4. Quick Check:

        More agents = better parallel job handling [OK]
      Hint: More agents mean faster job execution [OK]
      Common Mistakes:
      • Overloading master with all jobs
      • Disabling agents thinking it helps
      • Relying on single powerful agent only
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard