SlideShare une entreprise Scribd logo
1  sur  20
Building a High-Availability
PostgreSQL Cluster
Presenter: Devon Mizelle
System Administrator
Co-Author: Steven Bambling
System Administrator
What is ARIN?
•Regional Internet registry for
Canada, US, and parts of the
Caribbean
•Distributes IPv4 & IPv6 addresses and
Autonomous System Numbers (Internet
number resources) in the region
•Provides authoritative WHOIS services
for number resources in the region
2
ARIN’s Internal Data
3
Requirements
4
Why Not Slony or pgpool-II?
• Slony replaces pgSQL‟s replication –
Why do this?
– Why not let pgSQL handle it?
• Pgpool is not ACID-Compliant
– Doesn‟t confirm writes to multiple nodes
5
Our solution
• CMAN / Corosync
– Red Hat + Open-source solution for cross-
node communication
• Pacemaker
– Red Hat and Novell‟s solution for service
management and fencing
• Both under active development by
Clusterlabs
6
CMAN/ Corosync
• Provides a messaging framework
between nodes
• Handles a heartbeat between nodes
– “Are you up and available?”
– Does not provide „status‟ of service,
Pacemaker does
• Pacemaker uses Corosync to send
messages between nodes
7
CMAN / Corosync
8
About Pacemaker
• Developed / maintained by Red Hat and Novell
• Scalable – Anywhere from a two-node to a 16-
node setup
• Scriptable – Resource scripts can be written in
any language
– Monitoring – Watches out for service state changes
– Fencing – Disables a box and switches roles when
failures occur
• Shareable database between nodes about
status of services / nodes
9
Pacemaker
10
Master
AsyncSync
Other Pacemaker Resources
11
Fencing IP Addresses
How does it all tie together?
From the bottom up…
Pacemaker
13
Client “vip”Replication “vip”
Master
Sync Async App
Event Scenario
14
Master Sync AsyncMaster SyncAsync
PostgreSQL
• Still in charge of replicating data
• The state of the service and how it
starts is controlled by Pacemaker
15
Layout
16
💙 💙
MasterSlave Slave
cman cman cman
Client
Using Tools to Look Deeper
Introspection…
# crm_mon -i 1 -Arf
# crm_mon –i 1 -Arf (cont)
Questions? Devon Mizelle

Contenu connexe

Tendances

Tendances (10)

New Relic Plugin for Hadoop | Blue Medora
New Relic Plugin for Hadoop | Blue MedoraNew Relic Plugin for Hadoop | Blue Medora
New Relic Plugin for Hadoop | Blue Medora
 
IPv6
IPv6IPv6
IPv6
 
Monitoring Apps & Networks in a Cloud-Centric World at Gartner IOSS 2016
Monitoring Apps & Networks in a Cloud-Centric World at Gartner IOSS 2016Monitoring Apps & Networks in a Cloud-Centric World at Gartner IOSS 2016
Monitoring Apps & Networks in a Cloud-Centric World at Gartner IOSS 2016
 
Internet Number Resource Status Report by Guangliang Pan [APRICOT 2015]
Internet Number Resource Status Report by Guangliang Pan [APRICOT 2015]Internet Number Resource Status Report by Guangliang Pan [APRICOT 2015]
Internet Number Resource Status Report by Guangliang Pan [APRICOT 2015]
 
Dataflow with Apache NiFi - Crash Course - HS16SJ
Dataflow with Apache NiFi - Crash Course - HS16SJDataflow with Apache NiFi - Crash Course - HS16SJ
Dataflow with Apache NiFi - Crash Course - HS16SJ
 
Let Data Flow: Removing the Latest DevOps Constraints with DataOps
Let Data Flow: Removing the Latest DevOps Constraints with DataOpsLet Data Flow: Removing the Latest DevOps Constraints with DataOps
Let Data Flow: Removing the Latest DevOps Constraints with DataOps
 
How CDNs Can improve Mobile Application Performance
How CDNs Can improve Mobile Application PerformanceHow CDNs Can improve Mobile Application Performance
How CDNs Can improve Mobile Application Performance
 
Enterprise Data Science at Scale @ Princeton, NJ 14-Nov-2017
Enterprise Data Science at Scale @ Princeton, NJ 14-Nov-2017Enterprise Data Science at Scale @ Princeton, NJ 14-Nov-2017
Enterprise Data Science at Scale @ Princeton, NJ 14-Nov-2017
 
Look Before You Leap: Migrating On-Premises Hadoop to AWS
Look Before You Leap: Migrating On-Premises Hadoop to AWSLook Before You Leap: Migrating On-Premises Hadoop to AWS
Look Before You Leap: Migrating On-Premises Hadoop to AWS
 
AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...
AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...
AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...
 

Similaire à Building a High-Availability PostgreSQL Cluster at ARIN

Blue host openstacksummit_2013
Blue host openstacksummit_2013Blue host openstacksummit_2013
Blue host openstacksummit_2013
Jun Park
 
Blue host using openstack in a traditional hosting environment
Blue host using openstack in a traditional hosting environmentBlue host using openstack in a traditional hosting environment
Blue host using openstack in a traditional hosting environment
OpenStack Foundation
 
Understanding i pv6 2
Understanding i pv6 2Understanding i pv6 2
Understanding i pv6 2
srmanjuskp
 

Similaire à Building a High-Availability PostgreSQL Cluster at ARIN (20)

MySQL Options in OpenStack
MySQL Options in OpenStackMySQL Options in OpenStack
MySQL Options in OpenStack
 
OpenStack Days East -- MySQL Options in OpenStack
OpenStack Days East -- MySQL Options in OpenStackOpenStack Days East -- MySQL Options in OpenStack
OpenStack Days East -- MySQL Options in OpenStack
 
MYSQL
MYSQLMYSQL
MYSQL
 
MySQL & Oracle Linux Keynote at Open Source India 2014
MySQL & Oracle Linux Keynote at Open Source India 2014MySQL & Oracle Linux Keynote at Open Source India 2014
MySQL & Oracle Linux Keynote at Open Source India 2014
 
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
 
Blue host openstacksummit_2013
Blue host openstacksummit_2013Blue host openstacksummit_2013
Blue host openstacksummit_2013
 
Blue host using openstack in a traditional hosting environment
Blue host using openstack in a traditional hosting environmentBlue host using openstack in a traditional hosting environment
Blue host using openstack in a traditional hosting environment
 
EBS on Oracle Cloud
EBS on Oracle CloudEBS on Oracle Cloud
EBS on Oracle Cloud
 
IPv6 on the Interop Network
IPv6 on the Interop NetworkIPv6 on the Interop Network
IPv6 on the Interop Network
 
DoneDeal - AWS Data Analytics Platform
DoneDeal - AWS Data Analytics PlatformDoneDeal - AWS Data Analytics Platform
DoneDeal - AWS Data Analytics Platform
 
Disaster Recovery Site Implementation with MySQL
Disaster Recovery Site Implementation with MySQLDisaster Recovery Site Implementation with MySQL
Disaster Recovery Site Implementation with MySQL
 
Postgres for Digital Transformation: NoSQL Features, Replication, FDW & More
Postgres for Digital Transformation:NoSQL Features, Replication, FDW & MorePostgres for Digital Transformation:NoSQL Features, Replication, FDW & More
Postgres for Digital Transformation: NoSQL Features, Replication, FDW & More
 
Cross-platform interaction
Cross-platform interactionCross-platform interaction
Cross-platform interaction
 
Tale of a New Bangladeshi NIX
Tale of a New Bangladeshi NIXTale of a New Bangladeshi NIX
Tale of a New Bangladeshi NIX
 
Aruman Cassandra database
Aruman Cassandra databaseAruman Cassandra database
Aruman Cassandra database
 
Understanding i pv6 2
Understanding i pv6 2Understanding i pv6 2
Understanding i pv6 2
 
Neo4j 3.2 Launch
Neo4j 3.2 LaunchNeo4j 3.2 Launch
Neo4j 3.2 Launch
 
Cost Effectively Run Multiple Oracle Database Copies at Scale
Cost Effectively Run Multiple Oracle Database Copies at Scale Cost Effectively Run Multiple Oracle Database Copies at Scale
Cost Effectively Run Multiple Oracle Database Copies at Scale
 
Play With Streams
Play With StreamsPlay With Streams
Play With Streams
 
Webinar slides: How to deploy and manage HAProxy, MaxScale or ProxySQL with C...
Webinar slides: How to deploy and manage HAProxy, MaxScale or ProxySQL with C...Webinar slides: How to deploy and manage HAProxy, MaxScale or ProxySQL with C...
Webinar slides: How to deploy and manage HAProxy, MaxScale or ProxySQL with C...
 

Plus de ARIN

Plus de ARIN (20)

Growing the Internet with IPv6 Infographic
Growing the Internet with IPv6 InfographicGrowing the Internet with IPv6 Infographic
Growing the Internet with IPv6 Infographic
 
Out of IPv4! What that means for ISPs
Out of IPv4! What that means for ISPs Out of IPv4! What that means for ISPs
Out of IPv4! What that means for ISPs
 
CES 2016 Panel: Your Customers Are on the New Internet – Are you?
CES 2016 Panel: Your Customers Are on the New Internet – Are you?CES 2016 Panel: Your Customers Are on the New Internet – Are you?
CES 2016 Panel: Your Customers Are on the New Internet – Are you?
 
ARIN on the Road
ARIN on the RoadARIN on the Road
ARIN on the Road
 
Internet Operations and the RIRs
Internet Operations and the RIRsInternet Operations and the RIRs
Internet Operations and the RIRs
 
ARIN IP Address Stewardship
ARIN IP Address StewardshipARIN IP Address Stewardship
ARIN IP Address Stewardship
 
ARIN 36 IETF IPv6 Activities Report
ARIN 36 IETF IPv6 Activities ReportARIN 36 IETF IPv6 Activities Report
ARIN 36 IETF IPv6 Activities Report
 
ARIN 36 ASO AC / NRO NC Report
ARIN 36 ASO AC / NRO NC ReportARIN 36 ASO AC / NRO NC Report
ARIN 36 ASO AC / NRO NC Report
 
ARIN 36 Engineering Report
ARIN 36 Engineering ReportARIN 36 Engineering Report
ARIN 36 Engineering Report
 
ARIN 36 Registration Services Report
ARIN 36 Registration Services ReportARIN 36 Registration Services Report
ARIN 36 Registration Services Report
 
ARIN 36 Advisory Council Report
ARIN 36 Advisory Council ReportARIN 36 Advisory Council Report
ARIN 36 Advisory Council Report
 
ARIN 36 Board of Trustees Report
ARIN 36 Board of Trustees ReportARIN 36 Board of Trustees Report
ARIN 36 Board of Trustees Report
 
ARIN 36 NRO Activities Report
ARIN 36 NRO Activities ReportARIN 36 NRO Activities Report
ARIN 36 NRO Activities Report
 
ARIN 35: NRO Activities Report
ARIN 35: NRO Activities ReportARIN 35: NRO Activities Report
ARIN 35: NRO Activities Report
 
ARIN 35: Internet Number Resource Status Report
ARIN 35: Internet Number Resource Status ReportARIN 35: Internet Number Resource Status Report
ARIN 35: Internet Number Resource Status Report
 
ARIN 35: CRISP Panel
ARIN 35: CRISP PanelARIN 35: CRISP Panel
ARIN 35: CRISP Panel
 
ARIN 35 Tutorial: How to certify your ARIN resources with RPKI
ARIN 35 Tutorial: How to certify your ARIN resources with RPKIARIN 35 Tutorial: How to certify your ARIN resources with RPKI
ARIN 35 Tutorial: How to certify your ARIN resources with RPKI
 
ARIN 35 Tutorial: Life after IPv4 depletion
ARIN 35 Tutorial: Life after IPv4 depletionARIN 35 Tutorial: Life after IPv4 depletion
ARIN 35 Tutorial: Life after IPv4 depletion
 
ARIN 34 ARIN Reports: Engineering
ARIN 34 ARIN Reports: EngineeringARIN 34 ARIN Reports: Engineering
ARIN 34 ARIN Reports: Engineering
 
ARIN 34 Policy Implementation and Experience Report
ARIN 34 Policy Implementation and Experience ReportARIN 34 Policy Implementation and Experience Report
ARIN 34 Policy Implementation and Experience Report
 

Dernier

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Dernier (20)

WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 

Building a High-Availability PostgreSQL Cluster at ARIN