Uploaded image for project: 'Puppet'
  1. Puppet
  2. PUP-2526

puppet agent retry failed http requests

    Details

    • Type: New Feature
    • Status: Needs Information
    • Priority: Normal
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Community
    • Labels:
    • Template:

      Description

      It would be nice if puppet agent had the ability had the ability to retry failed http requests to the puppet master.

      I have multiple puppet masters sitting behind a load balancer in AWS (ELB). Whenever we update a puppet master, the node is removed from the load balancer while the update occurs. Unfortunately the AWS ELB does not allow quiescent removal of nodes (such that existing connections are allowed to close gracefully). Instead it just severs the connections immediately. This causes errors for agents which are in the middle of making requests to that master.
      Another related scenario is when you're updating multiple puppet masters. The masters might be in the middle of updating, and so some masters have newer code than the others. A puppet agent gets a catalog from one master, which says a certain file should exist, but then when the agent goes to fetch that file, it fails because the master it tried to fetch from hasn't updated. Retrying wouldn't be an ideal solution for this scenario as a retry could just hit that same out-of-date master again, but it could possibly work. Yes the ideal solution here is session persistence, but the AWS ELB does not support it.

      It might be useful to even allow a configurable backoff (failure; sleep 2; failure; sleep 5; failure; abort...), though a single retry would be sufficient for the first scenario indicated above.
      If a backoff is implemented, I think it should only be done once in the whole puppet run. So that if you have a 100 different http requests that have to be made to the puppet master, you don't do the backoff wait thing 100+ times.

        Issue Links

          Activity

          redmine.exporter redmine.exporter created issue -
          redmine.exporter redmine.exporter made changes -
          Field Original Value New Value
          Remote Link This issue links to "(#19708) puppet agent retry failed http requests (Puppet Labs Redmine)" [ 18673 ]
          andy Andrew Parker made changes -
          Component/s Community [ 10802 ]
          andy Andrew Parker made changes -
          Status Open [ 1 ] Needs Information [ 10000 ]
          andy Andrew Parker made changes -
          Assignee Peter Drake [ pdrake ]
          andy Andrew Parker made changes -
          Remote Link This issue links to "PR 2870 (Web Link)" [ 20381 ]
          chun Chun Du made changes -
          QA Contact Eric Thompson [ eric.thompson ]
          kenn Kenn Hussey made changes -
          Workflow Platform Workflow [ 94415 ] Old Platform Workflow [ 111273 ]
          kenn Kenn Hussey made changes -
          Workflow Old Platform Workflow [ 111273 ] Platform Workflow [ 114686 ]
          kenn Kenn Hussey made changes -
          Workflow Platform Workflow [ 114686 ] Old Platform Workflow [ 187377 ]
          kenn Kenn Hussey made changes -
          Workflow Old Platform Workflow [ 187377 ] Platform Workflow [ 215978 ]
          kenn Kenn Hussey made changes -
          Workflow Platform Workflow [ 215978 ] Old Platform Workflow [ 247240 ]
          kenn Kenn Hussey made changes -
          Workflow Old Platform Workflow [ 247240 ] Platform Workflow [ 258902 ]
          kenn Kenn Hussey made changes -
          Workflow Platform Workflow [ 258902 ] Old Platform Workflow [ 305056 ]
          kenn Kenn Hussey made changes -
          Workflow Old Platform Workflow [ 305056 ] Platform Workflow [ 325444 ]
          kenn Kenn Hussey made changes -
          Workflow Platform Workflow [ 325444 ] Scrum Team Workflow [ 343846 ]
          derek.austin Dee Austin made changes -
          Workflow Scrum Team Workflow [ 343846 ] Scrum Teams Workflow [ 470707 ]
          kenn Kenn Hussey made changes -
          Workflow Scrum Teams Workflow [ 470707 ] Scrum Team Workflow [ 563188 ]

            People

            • Assignee:
              pdrake Peter Drake
              Reporter:
              redmine.exporter redmine.exporter
              QA Contact:
              Eric Thompson
            • Votes:
              1 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

              • Created:
                Updated: