Skip to content

criteo-cookbooks/resource-weight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2da4f05 · Feb 14, 2019

History

6 Commits
Nov 23, 2016
Nov 23, 2016
Nov 23, 2016
Nov 23, 2016
Feb 14, 2019
Nov 23, 2016
Nov 23, 2016
Feb 14, 2019
Nov 23, 2016
Nov 23, 2016
Feb 14, 2019
Nov 22, 2016
Nov 23, 2016
Nov 23, 2016
Nov 23, 2016
Nov 23, 2016

Repository files navigation

resource-weight

This cookbook introduces weight property on resources.

This notion emerged during a discussion of London chef summit in Oct 2016.

Our need was to qualify resources with a high impact (i.e that cause downtime on the node) such as reboots, reinstallation, some service restarts. Those resources would be protected automatically by a choregraphie.

This would solve the necessity to manually manage lists of these resources.

Someone suggested to generalize the high impact flag by a weight property to use it for other use cases.

Example use cases:

  • graph impact of chef-client run over time (weighting each resource)
  • adopt rules to avoid running chef-client during peak hours if its impact has a weigh above a threshold
  • simplify definitions of choregraphies

Note: The intent of this cookbook is to validate the interest of a feature that could be integrated in chef.

Usage

All resources now have a property weight.

In recipes:

service 'network' do
  weight 5
  action :start
end

execute 'something' do
  action :restart, 'service[network]'
end

It is possible to add a default weight to all instances of a given resource.

In attributes:

default['resource-weight']['reboot']['default-weight'] = 5