]> git.openstreetmap.org Git - chef.git/blobdiff - roles/db-master.rb
Configure database for logical replication
[chef.git] / roles / db-master.rb
index a341c65763ad20385d8d059cbf7db3321cef6407..11080f5ee98672a6d1c98254c6907bb0fcafb819 100644 (file)
@@ -3,33 +3,19 @@ description "Role applied to all the master database server"
 
 default_attributes(
   :postgresql => {
-    :versions => [ "9.1" ],
     :settings => {
       :defaults => {
-        :wal_level => "hot_standby",
+        :wal_level => "logical",
         :archive_mode => "on",
-        :archive_command => "/bin/cp %p /store/postgresql/archive/%f",
-        :max_wal_senders => "2",
+        :archive_command => "/usr/local/bin/openstreetmap-wal-e --terse wal-push %p",
+        :max_wal_senders => "3",
+        :max_replication_slots => "1",
         :late_authentication_rules => [
-          { :database => "replication", :user => "replication", :address => "146.179.159.168/32" },
-          { :database => "replication", :user => "replication", :address => "146.179.159.173/32" }
-        ]
-      }
-    }
-  },
-  :rsyncd => {
-    :modules => {
-      :archive => {
-        :comment => "WAL Archive",
-        :path => "/store/postgresql/system/archive",
-        :read_only => true,
-        :write_only => false,
-        :list => false,
-        :uid => "postgres",
-        :gid => "postgres",
-        :transfer_logging => false,
-        :hosts_allow => [
-          "146.179.159.168", "146.179.159.173"
+          { :database => "replication", :user => "replication", :address => "10.0.48.49/32" },
+          { :database => "replication", :user => "replication", :address => "10.0.48.50/32" },
+          { :database => "replication", :user => "replication", :address => "10.0.48.5/32" },
+          { :database => "replication", :user => "replication", :address => "10.0.0.10/32" },
+          { :database => "replication", :user => "replication", :address => "10.0.32.40/32" }
         ]
       }
     }