www.novell.com cnn case study: deploying edirectory ™ in a unix environment steve brunton chief...
TRANSCRIPT
www.novell.com
CNN Case Study: Deploying eDirectory™ in a UNIX Environment
CNN Case Study: Deploying eDirectory™ in a UNIX Environment
Steve BruntonChief EngineerCNN Internet [email protected]
Today’s Agenda
• Defining “the personalization problem” that dot coms face
• CNN business and technical personalization requirements
• Reasons CNN chose Novell eDirectory™ for their solution
• Testing, implementing and supporting Novell eDirectory at CNN
• Summary, Q & A
Defining the personalization Defining the personalization problemproblem
What Is Personalization?
In regards to web services• Targeting advertising• Customizing layouts• Delivering personalized content• “You don’t visit a web site,
the web site visits you!”
Why Personalization?
• Increase advertising revenue
• Build brand loyalty
• Maintain “stickiness” of browsers
• Reduce the information overload by delivering only relevant content
Why Use a Directory Service?
“The directory has spent the last 10 years in relative obscurity, as a sort of isolated application to generate user phone numbers and user IDs, or buried inside of things like a network operating system….What changed all this was the Internet. What changed it even more than the Internet was the concept of personalization.”
— Richard Villars, IDC
CNN business and technical CNN business and technical requirementsrequirements
CNN Requirements
• Extremely high-performance Just downright FAST
• Extremely scaleable Handle more than 100 web servers with a few directory
servers
• Extremely flexible Ability to change “how” the data is stored with no service
interruption
• Extremely fault tolerant On line maintenance, fail-over, repair, determinism
(isolationism)
CNN Requirements (cont.)
• 100% open standards-based Fully RFC-compliant LDAPv3 Easy to develop to (open SDK)
• Buy, not build Shrink-wrap vs. internally developed No code to maintain internally
• Cross-platform Ability to choose best suited OS Could develop and deploy on different platforms
if desired
The Technology Selection
• Understanding the CNN architecture and design philosophy
• Understanding the performance and feature requirements
• Evaluating the requirements against product capabilities
• Capacity testing
Architecture Philosophy (Simple)
HTTPRequests
WebServerQueues
Application
Call Outs
HTTPRequests
Web ServerQueues
Application
Call Outs
Architecture Philosophy (Scaleable)
The CNN “Challenge”
Performance Requirements
• 2000 requests per second• Greater than 99% success of all requests• Less than 250ms latency in the search• Load balance all requests• Graceful degradation of service
“World event” surge in traffic More than two million requests in an hour
Feature Requirements
• Ease of implementation and support Start to finish in weeks 99.999% uptime to date
• Suitability to task The technology matches the job
• Ability to connect to anything Via DirXML™, options are limitless
• Quality of data Integrity and speed of replication
Requirements vs. Capabilities
• Open Standard (LDAP client) Asynchronous support Load balancing and determinism
• Extreme Performance (eDirectory Cache) Efficient data structure stored in memory
and “managed” well
• Ultimate Flexibility (eDirectory Database) Prefer hierarchical (XML store) Very efficient disk reads/writes Ability to “back out” transactions
Division of Duties
• CNN LDAP client
• Novell Directory engine+ Directory cache+ Directory database= Novell eDirectory
Testing Novell eDirectoryTesting Novell eDirectory
Novell SuperLab Testing
• Steps to building the “test” Find “killer” directory, methodology and testing
knowledge• Enter Novell Consulting
Find similar architecture to CNN Web Farm (to measure load/performance)• Enter Novell SuperLab
Transplant to a pilot on the CNN Web Farm for “real-world” testing• Enter Novell Systems Engineering
Novell SuperLab Testing
• The Test Fifty NT Workstations running ten processes each
of an LDAP query One single processor NetWare® Server hosting
eDirectory with eight million objects
• Results More than 500 requests per second Less than 60ms latency with 100% hit rate 98-100% CPU utilization until cache warmed—
4-6% after
Implementing Novell eDirectory Implementing Novell eDirectory at CNNat CNN
Netscape Web Servers on Solaris(CNN Web Farm)
(Cookie)
(Thread-safe, load balanced NSAPI plug-inLDAP Client)
Novell eDirectory on SolarisPartition R/W Replicas
(ad system helpers)
InternalInternalFirewallFirewall
Novell eDirectory on NetWare Development Server
Novell eDirectory on SolarisMaster Replica
HTTP
CNN NovellArchitecture
Novell eDirectory @ CNN “Data Flow”
1. User accesses CNN web site2. Cookie identifies the user3. Web Server “looks up” profile
from Novell eDirectory via LDAP4. Web Server uses profile data
(XML format) to customize the HTTP stream to the browser and/or make call out to ad injection system
Supporting Novell eDirectory Supporting Novell eDirectory at CNNat CNN
Supporting the Solution
• Backup of the directory Rely on inherent eDirectory replication Scheduled export to LDIF
• Directory maintenance Automatic
• Nightly reboots• NOT!• Remember, we’re running
this on NetWare and Solaris!