2013-11-10 22 views
3

我试图设置postgres与流浪+厨师独奏。chef-solo + postgres导致无效pg_hba.conf

我使用的正式收据:http://community.opscode.com/cookbooks/postgresql

正如我Berksfile包含:

site :opscode 

cookbook "postgresql" 

而且我Vagrantfile块是:

config.berkshelf.enabled = true 

config.vm.provision "chef_solo" do |chef| 

chef.add_recipe "postgresql::server" 

    chef.json = { 

    "postgresql" => { 
     "version" => "9.2", 
     "password" => { "postgres" => "123" }, 
     config: { 
     "ssl" => "false" 
    }, 
     pg_hba: [ 
      { type: 'local', db: 'all', user: 'all', addr: '', method: 'trust' }, 
      { type: 'local', db: 'all', user: 'all', addr: '127.0.0.1/32', method: 'trust' }, 
      { type: 'local', db: 'all', user: 'all', addr: '::1/128 ', method: 'trust' } 
    ] 
    } 
end 

的生成内容:/etc/postgresql/9.2/main/pg_hba.conf样子这个:

# This file was automatically generated and dropped off by Chef! 

# PostgreSQL Client Authentication Configuration File 
# =================================================== 
# 
# Refer to the "Client Authentication" section in the PostgreSQL 
# documentation for a complete description of this file. 

# TYPE DATABASE  USER   ADDRESS     METHOD 

########### 
# Other authentication configurations taken from chef node defaults: 
########### 

local all    all          trust 

local all    all    127.0.0.1/32   trust 

local all    all    ::1/128     trust 

# "local" is for Unix domain socket connections only 
local all    all          peer 

但是,如果我跑sudo service postgresql restart时,出现错误:

The PostgreSQL server failed to start. Please check the log output: 
2013-11-10 08:12:05 GMT LOG: invalid authentication method "127.0.0.1/32" 
2013-11-10 08:12:05 GMT CONTEXT: line 17 of configuration file "/etc/postgresql/9.2/main/pg_hba.conf" 
2013-11-10 08:12:05 GMT LOG: invalid authentication method "::1/128" 
2013-11-10 08:12:05 GMT CONTEXT: line 19 of configuration file "/etc/postgresql/9.2/main/pg_hba.conf" 
2013-11-10 08:12:05 GMT FATAL: could not load pg_hba.conf 

有问题的条目是那些持有地址。任何想法在我的用例中有什么错误?

+0

我不完全确定,但我不认为您可以像第一行那样将地址留空。尝试删除该行。 –

+2

第一行是确定的,实际上它是唯一确定的行。提到地址的应该是“主机”,而不是“本地”。而最后一个目前没用。 –

+0

@ MilenA.Radev感谢您的支持,那就是它。随意添加它作为答案,我很乐意将其标记为正确的。 –

回答

4

第一行是确定的,实际上它是唯一确定的行。提到地址的应该是“主机”,而不是“本地”。而最后一个目前没用。

更多关于Postgres的文档 - "Client Authentication", "The pg_hba.conf File"

相关问题