SlideShare a Scribd company logo
Linux‐HA
+
DRBD
+
PostgreSQL


          Jesse
Young

Target
Audience

•  System
Administrators

•  DBAs
looking
into
replicaBon

Goals

•    Inspire
more
replicaBon
discussions

•    Inform
System
Admins/DBAs

•    Describe
components

•    Simple
Setup

•    DemonstraBon

•    Performance
Tips

Intro


•  Zonar
Systems,
Inc.

  –  45,000
vehicles
sending
data
in
24/7
and
growing

  –  15
database
servers

  –  5
TB
data,
growing
~25GB
daily


  –  PostgreSQL
+
PostGIS

Why
use
Linux‐HA
+
DRBD?

•    Simple
replicaBon

•    GPS
data
coming
into
the
system
24/7

•    MiBgate
problems
from
server
hardware

•    Users
and
IntegraBon
soYware
access

Linux‐HA

•  “Provide a high availability (clustering) 
   solu6on for Linux which promotes reliability, 
   availability, and serviceability (RAS) through a 
   community development effort.”


•  System
Admins:
You
can
conBnue
to
(half)

   sleep,
even
if
a
server
dies.

DRBD

•  Distributed
Replicated
Block
Device

     •  Mirrored
storage
across
servers





                                           Image
from
h_p://www.drbd.org

PostgreSQL

•  Database
engine
we
all
know
and
love

Setup

•    Dual‐proc
Quad‐core
Intel
Xeon
@
2.66
GHz

•    16GB
RAM

•    2x
74
GB
SCSI
@
15kRPM
(RAID
1
‐
OS)

•    6x
300
GB
SCSI
@
10kRPM
(RAID
10
–
DRBD)

•    LSI
Megaraid
–
2
Channel,
512
MB
Cache
w/

     BBU

Quick
Install

•  Versions

   –  heartbeat‐2.0.8

   –  drbd‐8.0.5

   –  PostgreSQL
–
Any
version

Install
DRBD

•  Compile
from
source

or

•  yum
install
drbd
kmod‐drbd

Configure
DRBD

resource
postgres
{


on
node‐001
{






device
/dev/drbd0;






disk


/dev/sdb1;






address
10.40.0.1:7788;






meta‐disk

internal;



}




on
node‐002
{






device
/dev/drbd0;






disk


/dev/sdb1;






address
10.40.0.2:7788;






meta‐disk

internal;



}

}

Begin
DRBD

•  Each
node:

  –  modprobe
drbd

  –  drbdadm
create‐md
postgres

  –  drbadm
up
all

Create
ParBBon
on
DRBD
Device

•  Primary
node:

  –  drbdadm
‐‐
‐‐overwrite‐data‐of‐peer
primary
all

  –  mke2fs
‐j
/dev/drbd0


  –  mount
device

  –  Edit
/etc/init.d/postgresql

     •  PGDATA
to
DRBD
device

  –  initdb
or
sync/copy
exisBng
database

DRBD
status

•  cat
/proc/drbd



version:
8.0.5
(api:86/proto:86)

SVN
Revision:
3011
build
by
jesse@node‐001.zonarsystems.net,
2007‐09‐02
23:16:51


0:
cs:Connected
st:Primary/Secondary
ds:UpToDate/UpToDate
C
r‐‐‐





ns:191681144
nr:108784
dw:191798660
dr:1228217841
al:962834152
bm:9054
lo:0

      pe:0
ua:0
ap:0

     
resync:
used:0/31
hits:34633
misses:4367
starving:0
dirty:0
changed:4367

     
act_log:
used:0/127
hits:11433119293
misses:1051777270
starving:11558178

      dirty:81149096
changed:962834152

Install
Linux‐HA

•  Compile
from
source

or

•  yum
install
heartbeat

Configure
Linux‐HA

•  ha.cf

•  haresources

•  authkeys

ha.cf

deadBme
120

auto_failback
off

udpport
694

ucast
eth1
10.30.0.10

node



node‐001.zonarsystems.net

node



node‐002.zonarsystems.net

haresources

cluster‐001.zonarsystems.net

IPaddr::10.30.0.101/24
drbddisk::postgres































Filesystem::/dev/drbd0::/mnt/rod1::ext3































postgresql


MailTo::jesse@zonarsystems.com::'Zonar_Cluster‐001_Switch'

authkeys

auth
1

1
sha1
f93e5e562d430dae92b7fd7b272c13bb0c5de0e2

Start
Linux‐HA

•  /etc/init.d/heartbeat
start

DEMO

Problems?

•  Secondary
server
always
stand‐by

•  Failed
node
can
cause
slow
downs

•  Kernel
module

Performance?

•  dd
if=/dev/zero
of=/mnt/drbd/pgwest/test
bs=8192

   count=2000000


•  DRBD
device

   –  ~85
MB/s

•  Disk
device

   –  121MB/s



        30%
write performance
degradaBon

Problems?

Performance
Improvements

Ethernet

•  Direct
cross
over
cable

•  GigE,
10
GigE

•  1500
MTU
vs
9000
MTU

RAID
Cards

•  Capable
of
WRITEBACK

•  Write
caching

•  Ba_ery
backup
unit
(BBU)

Writeback
VS.
Writethrough

                        100

•  Writeback
            90

                         80

  –  80MB/s
–
94MB/s
    70

                         60

                         50

                         40

•  Writethrough
         30

  –  61MB/s
–
71MB/s
    20

                         10

                          0

                           Run
 Run
 Run
 Run
 Run
 Run
 Run
 Run

                            1
   3
   5
   7
   9
 11
 13
 15

DRBD
Protocols

•  Protocol
A

   –  DRBD
waits
for
local
disk
and
local
TCP
send
buffer

•  Protocol
B

   –  DRBD
waits
for
local
disk
and
remote
buffer
cache

•  Protocol
C

   –  DRBD
waits
for
both
local
and
remote
disk

   –  SAFEST

YMMV

•  Remember
to
test
yourself

•  Fedora/e1000
network
stack
issues

•  DRBD
is
soYware
too,
bugs
come
up

Other

Uses

            HA‐Linux
+
DRBD
+
???

•  Mail

•  NFS

•  MySQL

QuesBons?

Links

•  Linux‐HA:
h_p://www.linux‐ha.org

•  DRBD:
h_p://www.drbd.org

Demo
(backup
plan)

Host:
c6a

Host:
c6a

Host:
c6a

Host:
c6a

Host:
c6a

Host:
c6b

Host:
c6b

Host:
c6a


More Related Content

Similar to HA+DRBD+Postgres - PostgresWest '08

Timm – Telecom Network Module Management
Timm – Telecom Network Module ManagementTimm – Telecom Network Module Management
Timm – Telecom Network Module Management
rasour
 
The Lean Startup at Web 2.0 Expo
The Lean Startup at Web 2.0 ExpoThe Lean Startup at Web 2.0 Expo
The Lean Startup at Web 2.0 ExpoVenture Hacks
 
Capacity Planning for Cloud Computing
Capacity Planning for Cloud ComputingCapacity Planning for Cloud Computing
Capacity Planning for Cloud ComputingAdrian Cockcroft
 
The Yahoo Open Stack
The Yahoo Open StackThe Yahoo Open Stack
The Yahoo Open StackMegan Eskey
 
UW ADC - Course 3 - Class 1 - User Stories And Acceptance Testing
UW ADC - Course 3 - Class 1 - User Stories And Acceptance TestingUW ADC - Course 3 - Class 1 - User Stories And Acceptance Testing
UW ADC - Course 3 - Class 1 - User Stories And Acceptance TestingChris Sterling
 
Scalability without going nuts
Scalability without going nutsScalability without going nuts
Scalability without going nutsJames Cox
 
Yakov Fain - Design Patterns a Deep Dive
Yakov Fain - Design Patterns a Deep DiveYakov Fain - Design Patterns a Deep Dive
Yakov Fain - Design Patterns a Deep Dive
360|Conferences
 
Genome Browser
Genome BrowserGenome Browser
Genome Browser
Hong ChangBum
 
LSG Webinar - 13 Nov 08
LSG Webinar - 13 Nov 08LSG Webinar - 13 Nov 08
LSG Webinar - 13 Nov 08
Barry Sampson
 
Gmr Highload Presentation Revised
Gmr Highload Presentation RevisedGmr Highload Presentation Revised
Gmr Highload Presentation RevisedOntico
 
Gmr Highload Presentation
Gmr Highload PresentationGmr Highload Presentation
Gmr Highload PresentationOntico
 
2009 05 01 How To Build A Lean Startup Step By Step
2009 05 01 How To Build A Lean Startup Step By Step2009 05 01 How To Build A Lean Startup Step By Step
2009 05 01 How To Build A Lean Startup Step By StepEric Ries
 
PEtALS Distributed Service Bus Illustrated
PEtALS Distributed Service Bus IllustratedPEtALS Distributed Service Bus Illustrated
PEtALS Distributed Service Bus IllustratedChristophe Hamerling
 
Delivery Context Descriptions - A Comparison and Mapping Model
Delivery Context Descriptions - A Comparison and Mapping ModelDelivery Context Descriptions - A Comparison and Mapping Model
Delivery Context Descriptions - A Comparison and Mapping Model
Alpen-Adria-Universität
 
Fedora App Slide 2009 Hastac
Fedora App Slide 2009 HastacFedora App Slide 2009 Hastac
Fedora App Slide 2009 HastacLoretta Auvil
 
Revisited
RevisitedRevisited
Revisited
Shunsaku Kudo
 
GIPA
GIPAGIPA
GIPA
ESUG
 
Grails Overview
Grails OverviewGrails Overview
Grails Overview
Christopher Bartling
 

Similar to HA+DRBD+Postgres - PostgresWest '08 (20)

Timm – Telecom Network Module Management
Timm – Telecom Network Module ManagementTimm – Telecom Network Module Management
Timm – Telecom Network Module Management
 
The Lean Startup at Web 2.0 Expo
The Lean Startup at Web 2.0 ExpoThe Lean Startup at Web 2.0 Expo
The Lean Startup at Web 2.0 Expo
 
Capacity Planning for Cloud Computing
Capacity Planning for Cloud ComputingCapacity Planning for Cloud Computing
Capacity Planning for Cloud Computing
 
The Yahoo Open Stack
The Yahoo Open StackThe Yahoo Open Stack
The Yahoo Open Stack
 
Rich Web Clients 20081118
Rich Web Clients 20081118Rich Web Clients 20081118
Rich Web Clients 20081118
 
UW ADC - Course 3 - Class 1 - User Stories And Acceptance Testing
UW ADC - Course 3 - Class 1 - User Stories And Acceptance TestingUW ADC - Course 3 - Class 1 - User Stories And Acceptance Testing
UW ADC - Course 3 - Class 1 - User Stories And Acceptance Testing
 
Scalability without going nuts
Scalability without going nutsScalability without going nuts
Scalability without going nuts
 
Yakov Fain - Design Patterns a Deep Dive
Yakov Fain - Design Patterns a Deep DiveYakov Fain - Design Patterns a Deep Dive
Yakov Fain - Design Patterns a Deep Dive
 
Genome Browser
Genome BrowserGenome Browser
Genome Browser
 
Preon (J-Fall 2008)
Preon (J-Fall 2008)Preon (J-Fall 2008)
Preon (J-Fall 2008)
 
LSG Webinar - 13 Nov 08
LSG Webinar - 13 Nov 08LSG Webinar - 13 Nov 08
LSG Webinar - 13 Nov 08
 
Gmr Highload Presentation Revised
Gmr Highload Presentation RevisedGmr Highload Presentation Revised
Gmr Highload Presentation Revised
 
Gmr Highload Presentation
Gmr Highload PresentationGmr Highload Presentation
Gmr Highload Presentation
 
2009 05 01 How To Build A Lean Startup Step By Step
2009 05 01 How To Build A Lean Startup Step By Step2009 05 01 How To Build A Lean Startup Step By Step
2009 05 01 How To Build A Lean Startup Step By Step
 
PEtALS Distributed Service Bus Illustrated
PEtALS Distributed Service Bus IllustratedPEtALS Distributed Service Bus Illustrated
PEtALS Distributed Service Bus Illustrated
 
Delivery Context Descriptions - A Comparison and Mapping Model
Delivery Context Descriptions - A Comparison and Mapping ModelDelivery Context Descriptions - A Comparison and Mapping Model
Delivery Context Descriptions - A Comparison and Mapping Model
 
Fedora App Slide 2009 Hastac
Fedora App Slide 2009 HastacFedora App Slide 2009 Hastac
Fedora App Slide 2009 Hastac
 
Revisited
RevisitedRevisited
Revisited
 
GIPA
GIPAGIPA
GIPA
 
Grails Overview
Grails OverviewGrails Overview
Grails Overview
 

Recently uploaded

20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 

Recently uploaded (20)

20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 

HA+DRBD+Postgres - PostgresWest '08