Code Monkey home page Code Monkey logo

Comments (10)

icep87 avatar icep87 commented on August 17, 2024 1

@cccCody Did you manage to find the cause of this?

from ec2-fleet-plugin.

cccCody avatar cccCody commented on August 17, 2024

I was able to get it to work for a single run by setting "Minimum Spare Size" to 1, but then when I started another build after that, it hit the issue when provisioning the first node that time. It seems like, more generally, this is an issue with scaling out shortly after scaling in.

from ec2-fleet-plugin.

icep87 avatar icep87 commented on August 17, 2024

We are also seeing this issue. When there are no agents available, meaning they are all scale down. The plugin won
t spin up agents at all.

In the logs it says:

Nov 22, 2023 7:02:32 PM FINE com.amazon.jenkins.ec2fleet.NoDelayProvisionStrategy
label [linux]: queueLength 1 availableCapacity 1 (availableExecutors 0 plannedCapacitySnapshot 1 additionalPlannedCapacity 0)
Nov 22, 2023 7:02:32 PM INFO com.amazon.jenkins.ec2fleet.NoDelayProvisionStrategy apply
label [linux]: No excess workload, provisioning not needed.
Nov 22, 2023 7:02:32 PM FINE com.amazon.jenkins.ec2fleet.NoDelayProvisionStrategy
label [powerful]: queueLength 1 availableCapacity 1 (availableExecutors 0 plannedCapacitySnapshot 1 additionalPlannedCapacity 0)
Nov 22, 2023 7:02:32 PM INFO com.amazon.jenkins.ec2fleet.NoDelayProvisionStrategy apply
label [powerful]: No excess workload, provisioning not needed.

I'm wondering why it actually says that there is availableCapacity when clearly there is none and no scale up is triggered.

from ec2-fleet-plugin.

taka-papa avatar taka-papa commented on August 17, 2024

I encountered a similar problem
I tried the jenkins script console

Jenkins jenkins = Jenkins.getInstance()

jenkins.getLabels().each { Label label ->
    def nodeProvisioner = label.nodeProvisioner
    def pendingLaunches = nodeProvisioner.getPendingLaunches()

     if (pendingLaunches.size() == 0) {
    	return
     }

    println("Label: ${label.name}")
    pendingLaunches.each {
        println("  Planned Node: ${it.displayName}, Executors: ${it.numExecutors}")
    }
}

Output

Label: xxx
  Planned Node: NodeName-xx, Executors: 1
  Planned Node: NodeName-xx, Executors: 1

There were no jobs running
Restarting jenkins solved it

from ec2-fleet-plugin.

opajonk avatar opajonk commented on August 17, 2024

I think we are running into the same issue here, with the NoDelayProvisioningStrategy. Digging around in the issues I found #149 - this one reads like a regression. Could that be?

Restarting Jenkins "fixed" the issue, but I suspect it will come back. Then I will run the script console snippet of @snowman-papa to see if we also have "stuck planned" machines.

from ec2-fleet-plugin.

pawel-t avatar pawel-t commented on August 17, 2024

I have faced the same issue on 3.2.0.

Once we have switched to ASG from SpotFleet. My SpotFleet was setup with Min = 0 and Spare = 0 and after it scaled down to 0 instance. For 1.5h it didn't scale up while jobs were waiting in queue.

I needed to increase min and spare in order it to work.

from ec2-fleet-plugin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.