We Choose Razor For this purpose.
Cloud Provisioning tool
Automates Server Deployment
Physical and Virtual
Organised Information of all the nodes
Discovery
Policy
Tagging
Task
Brokers
if processorcount<=10 and memorysize>= 1024MB
then tag:demo_tag
{
"name": "demo_tag",
"rule": ["and",
["<=", ["num", ["fact", "processorcount"]], 10],
[">=", ["num", ["fact", "memorysize_mb"]], 1024]]
}
A Policy in Razor is a rule that takes a repo and applies it to a Node based on matching against Tags.
{"name": "ubuntu-server",
"repo": { "name": "ubuntu" },
"task": { "name": "ubuntu" },
"broker": { "name": "puppet" },
"hostname": "host${id}.pdlab.local",
"root_password": "pramati",
"max_count": "100",
"tags": [{ "name": "tag2"}]}
For razor set up you can follow below link:
https://docs.google.com/a/imaginea.com/document/d/16_KZiCulg23cOq2Ic0TnXx0wcSHhSICJbSIVjAN71BQ/edit?usp=sharing