Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-43946

vSphere cloud plugin takes too long to notice needed capacity

    Details

    • Similar Issues:

      Description

      The vSphere plugin only seems to check whether capacity is being met once every ~5 minutes. Because of this, it often takes a very long time to notice that it needs a new VM.

        Attachments

          Activity

          Hide
          pjdarton pjdarton added a comment -

          Believed to be a core Jenkins issue; no response from original poster.

          Feel free to re-open if there's new evidence.

          Show
          pjdarton pjdarton added a comment - Believed to be a core Jenkins issue; no response from original poster. Feel free to re-open if there's new evidence.
          Hide
          pjdarton pjdarton added a comment -

          Responsibility for checking capacity lies with Jenkins itself.  It is the Jenkins core code that polls to check capacity.  Once Jenkins has identified a need for more VMs, then it becomes the vSphere plugin's responsibility, and the time it takes for a new slave VM to come online is mostly dependent on how quickly the VM boots up and connects to Jenkins.

          I've not measured the time it takes but I believe that more recent versions of Jenkins poll more frequently than older versions.

           

          I would suggest that you check the logs for "vsphere-cloud" and "org.jenkinsci.plugins.vSphereCloudSlaveTemplate" and you should then see (at log level INFO) logs telling you of when the vSphere plugin has been asked to create new VMs and its progress doing so.

          I would also recommend ensuring that you have the VMware tools installed on your VMs and tell the vSphere plugin to wait for the VMware tools to be detected on the VM before proceeding with connection BUT not to wait for long after that before connecting - this may improve the speed with which your VMs come "online".

           

          Show
          pjdarton pjdarton added a comment - Responsibility for checking capacity lies with Jenkins itself.  It is the Jenkins core code that polls to check capacity.  Once Jenkins has identified a need for more VMs, then it becomes the vSphere plugin's responsibility, and the time it takes for a new slave VM to come online is mostly dependent on how quickly the VM boots up and connects to Jenkins. I've not measured the time it takes but I believe that more recent versions of Jenkins poll more frequently than older versions.   I would suggest that you check the logs for "vsphere-cloud" and "org.jenkinsci.plugins.vSphereCloudSlaveTemplate" and you should then see (at log level INFO) logs telling you of when the vSphere plugin has been asked to create new VMs and its progress doing so. I would also recommend ensuring that you have the VMware tools installed on your VMs and tell the vSphere plugin to wait for the VMware tools to be detected on the VM before proceeding with connection BUT not to wait for long after that before connecting - this may improve the speed with which your VMs come "online".  
          Hide
          jzila John Zila added a comment -

          This also seems to happen when a VM has been spun up: the cloud plugin takes way too long to notice the new VM.

          Show
          jzila John Zila added a comment - This also seems to happen when a VM has been spun up: the cloud plugin takes way too long to notice the new VM.

            People

            • Assignee:
              Unassigned
              Reporter:
              jzila John Zila
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: