Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

Select Status

RSS

baragon (10) Versions 2.0.0

Installs/Configures baragon

Policyfile
Berkshelf
Knife
cookbook 'baragon', '= 2.0.0', :supermarket
cookbook 'baragon', '= 2.0.0'
knife supermarket install baragon
knife supermarket download baragon
README
Dependencies
Changelog
Quality 0%

baragon-cookbook

Installs Baragon (service or agent) on a node. Baragon is the loadbalancer management service for HubSpot's Singularity cluster management system.

Supported Platforms

Tested on an extensive range of platforms including Ubuntu 14.04 and nothing else.

Requirements

Zookeeper

Baragon depends on ZooKeeper to store internal state, and perform coordination between multiple BaragonService instances if high availability is desired. Using an existing Zookeeper cluster is totally fine if you happen to have one. Separate Baragon installations can also share the same Zookeeper cluster, provided they use different zkNamespace values.

Nginx

Baragon writes nginx-style config files by default. In theory other load balancers could be used, but the tool is designed around the style of config files used by nginx.

The main requirement is that each application and upstream has its own file containing all necessary configuration directives (as opposed to, say, haproxy, where all configuration is parsed in order from top to bottom from a single, monolithic file).

Attributes

<table>
<tr>
<th>Key</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr>
<tr>
<td><tt>[:baragon][:group_name]</tt></td>
<td>String</td>
<td>Load Balancer Group Name</td>
<td><tt>default</tt></td>
</tr>
<tr>
<td><tt>[:baragon][:proxy_conf_dir]</tt></td>
<td>String</td>
<td>Directory where the proxy config files are placed</td>
<td><tt>/tmp</tt></td>
</tr>
<tr>
<td><tt>[:baragon][:upstream_conf_dir]</tt></td>
<td>String</td>
<td>Directory where the upstream config files are placed</td>
<td>Value of <tt>node[:baragon][:proxy_conf_dir]</tt></td>
</tr>
<tr>
<td><tt>[:baragon][:server_port]</tt></td>
<td>Integer</td>
<td>Baragon service listener port</td>
<td><tt>8080</tt></td>
</tr>
</table>

Usage

baragon::server

Include baragon::server in your node's run_list:

{
  "run_list": [
    "recipe[baragon::server]"
  ]
}

…or in a wrapper cookbook:

include_recipe 'baragon::server'

baragon::agent

Include baragon::agent in your node's run_list:

{
  "run_list": [
    "recipe[baragon::agent]"
  ]
}

…or in a wrapper cookbook:

include_recipe 'baragon::agent'

License and Authors

Author:: EverTrue, Inc. (devops@evertrue.com)

Dependent cookbooks

java >= 0.0.0
git >= 0.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Baragon cookbook CHANGELOG

v2.0.0 (2015-04-15)

  • Convert configuration of Baragon agents to a LWRP
    • Breaking: Agent services are named baragon-agent-<loadBalancerGroup>
    • Breaking: Proxy and Upstream conf files live in <rootPath>/<loadBalancerGroup>/upstream|proxy/
    • Breaking: Config files are now named /etc/baragon/agent-<loadBalancerGroup>.yml
  • Remove excessive whitespace in proxy and upstream templates
  • Replace the agent recipe with a single declaration of the default agent LWRP

v1.0.1 (2015-01-21)

  • Clean up Berksfile
    • Use proper release of zookeeper cookbook instead of GitHub release/tag
  • Add supports statement to metadata for Supermarket

v1.0.0 (2015-01-18)

  • Initial release of baragon

Foodcritic Metric
            

2.0.0 failed this metric

FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/agent.rb:1
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/agent.rb:3
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/agent.rb:25
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/agent.rb:26
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/agent.rb:77
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/agent.rb:78
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/default.rb:1
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/default.rb:2
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/default.rb:3
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/default.rb:4
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/default.rb:5
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/service.rb:1
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/attributes/service.rb:3
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:2
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:6
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:17
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:29
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:30
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:31
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:32
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:34
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:35
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:36
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:39
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:41
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:49
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:52
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:53
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/build.rb:1
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/build.rb:3
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/build.rb:7
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/build.rb:14
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/build.rb:26
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/build.rb:27
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/common.rb:1
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/common.rb:10
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/common.rb:11
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/common.rb:15
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/common.rb:18
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/server.rb:3
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/server.rb:15
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/server.rb:16
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/server.rb:17
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/server.rb:18
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/server.rb:25
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/templates/default/baragon-agent.init.erb:10
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/ef401576ce8480346f539669/baragon/templates/default/baragon-server.init.erb:10
FC003: Check whether you are running with chef server before using server-specific features: /tmp/cook/ef401576ce8480346f539669/baragon/recipes/common.rb:12
FC017: LWRP does not notify when updated: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:1
FC017: LWRP does not notify when updated: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:83
FC019: Access node attributes in a consistent manner: /tmp/cook/ef401576ce8480346f539669/baragon/providers/agent.rb:4
FC031: Cookbook without metadata file: /tmp/cook/ef401576ce8480346f539669/baragon/metadata.rb:1
FC045: Consider setting cookbook name in metadata: /tmp/cook/ef401576ce8480346f539669/baragon/metadata.rb:1