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

pound (1) Versions 0.1.3

Installs/Configures pound

Policyfile
Berkshelf
Knife
cookbook 'pound', '~> 0.1.3', :supermarket
cookbook 'pound', '~> 0.1.3'
knife supermarket install pound
knife supermarket download pound
README
Dependencies
Changelog
Quality 33%

pound Cookbook

http://www.apsis.ch/pound
POUND - REVERSE-PROXY AND LOAD-BALANCER

The Pound program is a reverse proxy, load balancer and HTTPS front-end for Web server(s).
Pound was developed to enable distributing the load among several Web-servers and to allow
for a convenient SSL wrapper for those Web servers that do not offer it natively.

WHAT POUND IS:

1.a reverse-proxy: it passes requests from client browsers to one or more back-end servers.
2.a load balancer: it will distribute the requests from the client browsers among several back-end servers, while keeping session information.
3.an SSL wrapper: Pound will decrypt HTTPS requests from client browsers and pass them as plain HTTP to the back-end servers.
4.an HTTP/HTTPS sanitizer: Pound will verify requests for correctness and accept only well-formed ones.
5.a fail over-server: should a back-end server fail, Pound will take note of the fact and stop passing requests to it until it recovers.
6.a request redirector: requests may be distributed among servers according to the requested URL.

Pound is a very small program, easily audited for security problems. It can run as setuid/setgid and/or in a chroot jail.
Pound does not access the hard-disk at all (except for reading the certificate file on start, if required)
and should thus pose no security threat to any machine.

WHAT POUND IS NOT:

1.Pound is not a Web server: by itself, Pound serves no content - it contacts the back-end server(s) for that purpose.
2.Pound is not a Web accelerator: no caching is done - every request is passed "as is" to a back-end server.

Requirements

TODO: List your cookbook requirements. Be sure to include any requirements this cookbook has on platforms, libraries, other cookbooks, packages, operating systems, etc.

The following code block needs to be added to the Varnish VCL:

Getting Varnish and Pound to play nicely required the vcl_hash block below

https://www.adammalone.net/post/why-pound-awesome-front-varnish#.VaZwh6bDTef

sub vcl_hash
{
hash_data(req.url);
if (req.http.host) {
hash_data(req.http.host);
}
else {
hash_data(server.ip);
}
# Use special internal SSL hash for https content
# X-Forwarded-Proto is set to https by Pound
if (req.http.X-Forwarded-Proto ~ "https") {
hash_data(req.http.X-Forwarded-Proto);
}
return (hash);
}

Attributes

TODO: List you cookbook attributes here.

default[:pound][:xhttp]="1"

default[:pound][:backend][:host]="127.0.0.1"

default[:pound][:backend][:port]="8000"
Backend application running on port 8000

default[:pound][:inc_files]=["/etc/pound.d/backend.cfg"]

default[:pound][:ssl][:key]=""
The SSL Key

default[:pound][:ssl][:cert]=""
The SSL Cert

default[:pound][:ssl][:chain]=""
The SSL chain

Recipes

pound::default

pound::setup_http

pound::setup_https

Usage

TODO: Write usage instructions for each cookbook.
For SSL enablement with Varnish you will need the following:

pound::default

pound::setup_https

The following inputs will have to be updated with their values:
SSL KEY
SSL Cert
SSL Chain

Contributing

TODO: (optional) If this is a public cookbook, detail the process for contributing. If this is a private cookbook, remove this section.

e.g.
1. Fork the repository on Github
2. Create a named feature branch (like add_component_x)
3. Write you change
4. Write tests for your change (if applicable)
5. Run the tests, ensuring they all pass
6. Submit a Pull Request using Github

License and Authors

Author:: RightScale, Inc. (cookbooks@rightscale.com)

Dependent cookbooks

yum-epel >= 0.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

CHANGELOG for pound

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.

Unreleased

Added

Changed

0.1.3 - 2017-03-28

Changed

  • Updated to chef12
  • Updated to ChefDK 1.2.22
  • Updated to kitchen-dokken

0.1.0:

  • Initial release of pound

Collaborator Number Metric
            

0.1.3 failed this metric

Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.

Contributing File Metric
            

0.1.3 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file

Foodcritic Metric
            

0.1.3 passed this metric

No Binaries Metric
            

0.1.3 passed this metric

Testing File Metric
            

0.1.3 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file

Version Tag Metric
            

0.1.3 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number