Redundancy with Linux
Supporting a large network?
Less is more!
Provide redundancy with Linux; Anycast
DNS, Fail-over DHCP, Peering NTP
Kim Hawtin
University of Adelaide
Redundancy with Linux
Objectives
●
Why do we need redundancy?
●
The start of the project; what is core?
●
Goals
●
Decisions made; why/how/what/where
●
Lessons learned
●
Questions
Redundancy with Linux
Why?
Why do we need redundancy?
Redundancy with Linux
file:///home/silvia/Desktop-Backup/Why_You_Need_A_DR_Site.JPG
Redundancy with Linux
What is Core?
What are the core services
for your site or your org?
Redundancy with Linux
What is Core?
Users perspective
●
Email
●
Phones
●
Web apps
●
Other apps
Redundancy with Linux
What is Core?
So what are the dependencies?
Redundancy with Linux
What is Core?
Core hardware
●
Network cores, switch & routers
●
Servers running core services
Core services for hosts
●
DNS
●
DHCP
●
NTP
Redundancy with Linux
What is Core?
Site Design
How do we design for redundancy?
●
Where do you find information?
●
Who can you talk to?
●
Where do you start?
●
Redundancy with Linux
What is Core?
Find info from;
●
Local SysAdmin & Network teams
●
Vendors
●
Other Unis and local corporates
●
LUGs
●
The all knowing Internets
Redundancy with Linux
Goals
●
Aim for best practice deployment
●
Aim for redundant DNS, DHCP and NTP
●
Use native package management
●
Use vendor packages
●
Three projects; DNS,DHCP,NTP
Redundancy with Linux
Why/What/How/Where
Why; DNS upgrade project
●
Add redundancy
●
Hardware refresh
●
OS refresh; Redhat 7.x to Redhat AS 4
●
Upgrade Bind 9
Redundancy with Linux
Why/What/How/Where
How; DNS and Anycast IP
●
OSPF and AnyCast IP
●
Use existing Primary/Secondary tree
●
Use existing host database scripts
●
Use Quagga on host with OSPF
Redundancy with Linux
Why/What/How/Where
What; Idea of "Less is more"
●
If your DNS client can only handle two
DNS servers
●
Two is plenty when using Anycast, routers
move routes if first server "goes away"
Redundancy with Linux
Why/What/How/Where
Where; Locate a server physically local to
your clients
●
Three campuses; Four new servers, one
each at the remote, three at the central
●
Routers actively push routes out for
closest server via OSPF
●
Location diversity is good!
●
LAN diversity is good!
Redundancy with Linux
Why/What/How/Where
Why; DHCP Project
●
Hardware refresh
●
Had one server with no redundancy
●
Using Cisco IP helper on every VLAN and
subnet to forward to one host
●
Add redundancy
Redundancy with Linux
Why/What/How/Where
How; DHCP and fail over pairs
●
Three campuses, three zones
●
Three failover pairs on five hosts
●
Cisco IP helper send to two hosts
Redundancy with Linux
Why/What/How/Where
What/Where; Locate a server physically
local to your clients
●
Tune lease split to closer to remote
campus
●
Tune for 50%/50% on central campus
●
With 50%/50% servers share load
Redundancy with Linux
Why/What/How/Where
Why; NTP project
●
Peering from upstream stratum 1
●
More servers needed for accurate timing
●
Model is the Byzantine fault tolerance
problem
Redundancy with Linux
Why/What/How/Where
How;
●
Already run a stratum 2
●
Add four stratum 3 as peers
●
Make stratum 2 server preferred
●
Add off site stratum 2 servers
●
Clients configured with up to four stratum
3 servers
Redundancy with Linux
Why/What/How/Where
What;
●
Standard current version of NTP from ISC
●
Stratum 3 servers peer
Where;
●
NTP service local to clients, for unreliable
network links
Redundancy with Linux
Lessons Learnt
Social Lessons Learnt;
●
Spend time consulting local network guru
for network configs
●
Engage local tech gurus for server
configs, good ideas and gotchas
●
Spent more time in research than
deployment
●
Spent more time chasing packaging bugs
than testing
Redundancy with Linux
Lessons Learnt
Technical Lessons Learnt;
●
VLANS rock, but makes more work
●
testing environment needs to be isolated
from production network
●
NTP needs three machines upstream to
get the right time
●
NTP should run local hardware clocks like
GPS, GPRS, CDMA
Redundancy with Linux
Resources
●
"Three Practical Ways to Improve Your Network" by Kevin
Miller from the CMU; http://www.net.cmu.edu/pres/lisa03/
●
“Deploying IP Anycast by Kevin Miller” from CMU;
http://www.net.cmu.edu/pres/anycast/
●
“The Reasons and Configuration of Anycast DNS Servers” by
Glen Turner from AARNET;
http://www.linuxsa.org.au/meetings/2006-07/anycast-dns.pdf
●
Failover DHCPd Paul Heinlein;
http://www.madboa.com/geek/dhcp-failover/
●
DHCPd; http://www.isc.org/sw/dhcp/
●
Byzantine Fault Tolerance from Wikipedia;
http://en.wikipedia.org/wiki/Byzantine_fault_tolerance
●
NTPd; http://www.isc.org/sw/ntp
●
Quagga; http://www.quagga.net/
Redundancy with Linux
Questions
Router Server
Clients
Clients
Server Router
Server
Router Server Router
Clients
Clients
Router
Clients
Clients
Router Server