首先,您需要安装正确名称的 PHP 和 MySQL 软件包。在您的情况下,它是 mysql-server、php 和 php-mysql(或 php5 和 php5-mysql,例如)。
另一件事是您需要以正确的名称启动正确的服务。数据库应该是mysqld。您为 PHP 启动的服务取决于您打算如何运行它 - 例如。要在 apache 中运行 PHP,您可能需要启动 apache2。
您的示例的第三个问题是您需要确保仅在安装相应的软件包后才启动服务。您可以使用require 实现此目的,例如:
service { "mysqld":
ensure => "running",
enable => "true",
require => Package["mysql-server"],
}
最后,安装 MySQL 和 PHP 不仅仅是安装包和运行服务。您需要创建配置文件等。我建议您使用为此目的编写的现有模块。对于 MySQL,有例如 puppetlabs-mysql,请参阅那里的用法示例;对于 Apache 上的 PHP,请查看 puppetlabs-apache。
如果您想自己动手,也可以查看this tutorial 的 Ubuntu。以下是教程的摘录:
Package { ensure => "installed" }
package { "apache2": }
package { "apache2.2-common": }
package { "php5": }
package { "php5-mysql": }
package { "mysql-server": }
exec { "mysqlpasswd":
command => "/usr/bin/mysqladmin -u root password ChangeThis1",
notify => [Service["mysql"], Service["apache2"]],
require => [Package["mysql-server"], Package["apache2"]],
}
service { "apache2":
ensure => "running",
enable => "true",
require => Package["apache2"],
}
service { "mysql":
ensure => "running",
enable => "true",
require => Package["mysql-server"],
}