Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Puppet清单:安装MySQL和PHP_Php_Mysql_Centos_Puppet - Fatal编程技术网

Puppet清单:安装MySQL和PHP

Puppet清单:安装MySQL和PHP,php,mysql,centos,puppet,Php,Mysql,Centos,Puppet,我对傀儡和写我的第一个清单是陌生的,但它给了我一个错误 每当代理尝试与主机通信时 做不好,需要一些指导。我的操作系统是centos 7 我的init.pp: package { 'mysql': ensure => 'present', } package { 'php': ensure => 'present', } service { 'mysql': ensure => 'running', }

我对傀儡和写我的第一个清单是陌生的,但它给了我一个错误 每当代理尝试与主机通信时

做不好,需要一些指导。我的操作系统是centos 7

我的
init.pp

 package { 'mysql':
          ensure => 'present',
 }

 package { 'php':
          ensure => 'present',
 }

 service { 'mysql':
           ensure => 'running',
 }

 service { 'php':
           ensure => 'running',
 }

我将尝试使用实际的软件包名称进行安装:

package { 'mysql-server':
  ensure => present,
}

package { 'mysql':
  ensure => present,
}

package { 'php-mysql':
  ensure => present,
}
并使用正确的服务名称

service { 'mysqld':
  ensure => running,
}


希望对您有所帮助……

首先,您需要安装正确名称的PHP和MySQL软件包。在您的例子中,它是
mysql服务器
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,有,例如,请参见此处的使用示例;对于Apache上的PHP,请查看

如果你想自己做事情,你也可以去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"],
}

错误是什么?您使用什么命令来运行puppet agent?下面我给您的答案非常笼统。关于堆栈溢出,您的答案应该更具体。正如RaviTezu所说,您至少应该添加您得到的错误以及如何运行puppet。