Hi,

Thanks for the reply Richard,

I will try this and share the details!

-Kaustubh

On Wednesday, January 29, 2014 2:13:13 PM UTC-5, Richard Berwald wrote:
>
> I recently faced the same challenge. I did not want to group by osfamily 
> but by another fact.
> I came up with this solution:
> 1) retrieve a list from PuppetDB in format 'nodename:factvalue' for all 
> nodes using puppetdbquery on a puppetmaster (sudo puppet query facts 
> --facts=<factname> "<some query that resolved to true>")
> 2) retrieve the group list from the console with 'rake nodegroup:list'
> 3) Compare the existing groups with the groups based upon the values from 
> the fact and create missing groups with 'nodegroup:add[groupname]
> 4) For each (already) existing group, get all members of the group with 
> 'nodegroup:group_list[groupname]'
> 5) Compare the nodenames that are already in the group with the list of 
> nodenames from PuppetDB, and add missing nodes of a group with 
> node:group[nodename,<standardgroup>:<groupname>]
>
> I came to this solution because rake calls felt relatively slow (about 7 
> seconds per call) on our platform and I wanted it to be able to potentially 
> scale to thousands of nodes.
> This runs once a night from an old fashioned cron.
>
> Richard
>
>
> On Monday, January 27, 2014 3:16:09 PM UTC+1, kaustubh chaudhari wrote:
>>
>> Hi,
>>
>> I was looking for a way to group the servers dynamically. Eg: create a 
>> "Windows" Group and all the existing nodes and new nodes should be part of 
>> "Windows" group.
>> I edit a group and then add each server, but practically its not possible 
>> with 2k servers in all!!
>>
>> Is there a way to do that?
>>
>> -Kaustubh
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/e584314b-c88c-4dea-a55a-9c2f9eedbde0%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to