Forge Home


LAMP basic configuration and deploy module


9,970 latest version

4.0 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 1.1.0 (latest)
released Apr 10th 2015
This version is compatible with:
  • , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'alexggolovin-lamp', '1.1.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add alexggolovin-lamp
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install alexggolovin-lamp --version 1.1.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



alexggolovin/lamp — version 1.1.0 Apr 10th 2015


Table of Contents

  1. Overview
  2. Module Description
  3. Setup
  4. Usage
  5. Reference
  6. Limitations
  7. Development
  8. Release Notes


This module helps with automation of LAMP stack deploy environment on RedHat/CentOS/Debian/Ubuntu distributions.

Module Description

The main purpose of lamp module is the automation of puppetlabs apache and mysql modules which were chosen as the main modules for apache/mysql/php configuration and deploy. So all the next particular components configurations must be done inside apache and mysql modules itself, which installed as dependencies to lamp module.

Look into apache/ and mysql/ descriptions for more configuration and usage technical details.


What lamp affects

  • configuration files and directories (created and written to)
    • WARNING: Configurations that are not managed by Puppet will be purged.
  • package/service/configuration files for Apache
  • Apache modules
  • virtual hosts
  • listened-to ports
  • /etc/make.conf on FreeBSD and Gentoo
  • depends on module 'gentoo/puppet-portage' for Gentoo

Beginning with lamp

To get LAMP installed on your "" node lamp class needs to be added in site.pp configuration file:

node '' {                                                                                          
   include lamp                                                                                                         


Apache and MySQL installation configured inside the lamp::apache and lamp::mysql classes, where they could be disabled if required.


Though mpm 'worker' apache module is configured for Debian/Ubuntu distributions in puppetlabs-apache params by default, the lamp::apache class configured for mpm 'prefork' apache module usage for all distributions include Debian and Ubuntu because of apache php module installation requirement. But this configuration could be changed if necessary inside the lamp::apache '::apache': class parameters. Also php installation could be disabled with commented include ::apache::mod::php line in this class.


Module tested with RedHat/CentOS/Debian/Ubuntu operating systems, but it's additional puppetlabs components supposed to works with OracleLinux and Scientific distributions also.


This module could be used by others puppet users as helpful base for next CMS systems like Drupal, Joomla or Wordpress.

Release Notes

Release 1.1.0.

LAMP deploy for RedHat/CentOS/Debian/Ubuntu operating systems.