[chef] Re: Re: Re: Re: Re: Re: Push Jobs Questions


Chronological Thread 
  • From: AJ Christensen < >
  • To: " " < >
  • Subject: [chef] Re: Re: Re: Re: Re: Re: Push Jobs Questions
  • Date: Tue, 25 Nov 2014 07:24:54 +1300

Yo,

The quorum functionality behaves like I think:
"The minimum number of nodes that match the search criteria, are
available, and acknowledge the job request."

What makes you think that specifying quorum of 50% causes the job to
be accepted by 100% of the nodes? I would assert that if 50% of the
nodes were unavailable and you specified 100%, the job would not
launch. If you specified 50%, the job would launch, but (likely)
potentially not run on 100% of machines.

Could you clarify? Are you suggesting that if a job is launched with
quorum of 50%, 100% of machines will run it <at some time>, despite
their temporal unavailability?

In your opinion where does that recipe that runs the push_jobs
execute? A workstation? Some authorized God node?

ta,

--aj

On Tue, Nov 25, 2014 at 4:48 AM, Cerny,Nathan 
< >
 wrote:
> I don’t think the quorum functionality behaves like you think.  The quorum
> essentially says “If at least X% is available, run on all”.
>
> In my opinion, a better pattern here would be to create an orchestration
> recipe that depends on the push_jobs cookbook (and thus gets access to the
> push_jobs resource).  Within that recipe, you would do a search to grab all
> of your potential nodes, then loop over that resource N nodes at time (being
> sure to set the parameter to wait for the job to finish before moving on).
>
>
>
> On Sat, Nov 22, 2014 at 1:40 AM, AJ Christensen
> < >
>  wrote:
>>
>> You may be able to use the Quorum functionality to half-bake this [0]:
>>
>> ```
>> knife job start --quorum 90% 'chef-client' --search 'role:webapp'
>> ```
>>
>> The minimum number of nodes that match the search criteria, are
>> available, and acknowledge the job request. This can be expressed as a
>> percentage (e.g. 50%) or as an absolute number of nodes (e.g. 145).
>> Default value: 100%
>>
>> I'd try values like 50% of your available foobars and see how it works
>> out for ya.
>>
>> Good Luck!
>>
>> cheers,
>>
>> --aj
>>
>> [0] https://github.com/opscode/knife-push#examples
>>
>> On Sat, Nov 22, 2014 at 8:56 AM, Bryan Baugher 
>> < >
>>  wrote:
>> > Great, thanks for the links. Somehow google wasn't being helpful.
>> >
>> > My use case is fairly simple. I want to run chef-client on my nodes in a
>> > particular environment but I want to ensure that,
>> >
>> >  * I don't end up restarting all the services at once
>> >  * A bad config doesn't take out the whole service
>> >
>> > The simplest version of this would just be to group the nodes into X
>> > number
>> > of groups and run chef-client one group at a time. Knife ssh has a
>> > concurrency option which limits the number of ssh connections which
>> > would
>> > also achieve the same goal.
>> >
>> > On Fri Nov 21 2014 at 1:45:45 PM AJ Christensen
>> > < >
>> >  wrote:
>> >>
>> >> https://github.com/opscode/omnibus-pushy
>> >> https://github.com/opscode/oc-pushy-pedant
>> >> https://github.com/opscode/omnibus-push-jobs-client
>> >> https://github.com/opscode/opscode-pushy-server
>> >> https://github.com/opscode/opscode-pushy-simulator
>> >> https://github.com/opscode/pushy_common
>> >> https://github.com/opscode/knife-push
>> >> https://github.com/opscode/opscode-pushy-client
>> >>
>> >> Try searching through the issues, or logging an issue or feature
>> >> request or RFC. "don't run command X on all nodes at the same time"
>> >> sounds a little hard to implement. Do you mean mutually exclusive,
>> >> configurable contention, locking of commands?
>> >>
>> >> Can you describe your use-case? An independent team of Chef operators
>> >> has been evaluating use cases and building tests/example cases for
>> >> Pushy and tools in the same field (our cases thus far have been around
>> >> Cassandra ring bootstrap, expansion and contraction)
>> >>
>> >> cheers,
>> >>
>> >> --aj
>> >>
>> >> On Sat, Nov 22, 2014 at 8:39 AM, Bryan Baugher 
>> >> < >
>> >> wrote:
>> >> > Hello everyone,
>> >> >
>> >> > Is the push jobs code available on github anywhere? Also are there
>> >> > any
>> >> > plans
>> >> > to add a kind of concurrency option (i.e. don't run command X on all
>> >> > nodes
>> >> > at the same time)?
>> >> >
>> >> > Bryan
>
>
> CONFIDENTIALITY NOTICE This message and any included attachments are from
> Cerner Corporation and are intended only for the addressee. The information
> contained in this message is confidential and may constitute inside or
> non-public information under international, federal, or state securities
> laws. Unauthorized forwarding, printing, copying, distribution, or use of
> such information is strictly prohibited and may be unlawful. If you are not
> the addressee, please promptly delete this message and notify the sender of
> the delivery error by e-mail or you may call Cerner's corporate offices in
> Kansas City, Missouri, U.S.A at (+1) (816)221-1024.



Archive powered by MHonArc 2.6.16.

§