Book Image

LEARNING PUPPET

Book Image

LEARNING PUPPET

Overview of this book

Table of Contents (17 chapters)
Learning Puppet
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Adding parameters to the loadbalancer class


The load balancer node is now working, but the configuration is quite static in the sense that the HTTP end points /nagios and /webapp are bound to back-end services defined in the class loadbalancer. What if the web server's IP address changes or we wanted to change the name of the end points? We could adjust the loadbalancer class, but the better option is to make the loadbalancer class to accept parameters that enables us to specify the end points and backend service URLs when we call the class.

We currently use the following "hardcoded" URL mappings in the class loadbalancer:

{ 'path' => '/nagios', 'url' => 'http://192.168.56.11/nagios' }

This links the resource /nagios with URL http://192.168.56.11/nagios:

{ 'path' => '/webapp', 'url' => 'http://192.168.56.12/' }

This links the resource /webapp with URL http://192.168.56.12/.

To make the path and the url parameters configurable when calling the class, we will add four input parameters...