Sophie

Sophie

distrib > Fedora > 13 > i386 > by-pkgid > fd1445e4ec50ea0254985a386bb83a07 > files > 244

pacemaker-doc-1.1.1-1.fc13.i686.rpm

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Configuration Explained</title><link rel="stylesheet" href="./Common_Content/css/default.css" type="text/css" /><meta name="generator" content="publican 1.6" /><meta name="package" content="Pacemaker-Pacemaker_Explained-1.1-en-US-1-0" /><meta name="description" content="The purpose of this document is to definitively explain the concepts used to configure Pacemaker. To achieve this best, it will focus exclusively on the XML syntax used to configure the CIB. For those that are allergic to XML, Pacemaker comes with a cluster shell and a Python based GUI exists, however these tools will not be covered at all in this document It is hoped however, that having understood the concepts explained here, that the functionality of these tools will also be more readily understood. , precisely because they hide the XML. Additionally, this document is NOT a step-by-step how-to guide for configuring a specific clustering scenario. Although such guides exist, the purpose of this document is to provide an understanding of the building blocks that can be used to construct any type of Pacemaker cluster." /><link rel="home" href="index.html" title="Configuration Explained" /><link rel="next" href="pr01.html" title="Preface" /></head><body class=""><p id="title"><a class="left" href="https://fedorahosted.org/publican"><img src="Common_Content/images/image_left.png" alt="Product Site" /></a><a class="right" href="https://fedorahosted.org/publican"><img src="Common_Content/images/image_right.png" alt="Documentation Site" /></a></p><ul class="docnav"><li class="previous"></li><li class="next"><a accesskey="n" href="pr01.html"><strong>Next</strong></a></li></ul><div xml:lang="en-US" class="book" title="Configuration Explained" lang="en-US"><div class="titlepage"><div><div class="producttitle"><span class="productname">Pacemaker</span> <span class="productnumber">1.0</span></div><div><h1 id="id2562559" class="title">Configuration Explained</h1></div><div><h2 class="subtitle">An A-Z guide to Pacemaker's Configuration Options</h2></div><p class="edition">Edition 1</p><div><h3 class="corpauthor">
		<span class="inlinemediaobject"><object data="Common_Content/images/title_logo.svg" type="image/svg+xml"> </object></span>
	</h3></div><div><div xml:lang="en-US" class="authorgroup" lang="en-US"><div class="author"><h3 class="author"><span class="firstname">Andrew</span> <span class="surname">Beekhof</span></h3><div class="affiliation"><span class="orgname">Red Hat</span></div><code class="email"><a class="email" href="mailto:andrew@beekhof.net">andrew@beekhof.net</a></code></div></div></div><hr /><div><div id="id2601874" class="legalnotice"><h1 class="legalnotice">Legal Notice</h1><div class="para">
		Copyright <span class="trademark"></span>© 2009 Andrew Beekhof This material may only be distributed subject to the terms and conditions set forth in the GNU Free Documentation License (GFDL), V1.2 or later (the latest version is presently available at <a href="http://www.gnu.org/licenses/fdl.txt">http://www.gnu.org/licenses/fdl.txt</a>).
	</div></div></div><div><div class="abstract" title="Abstract"><h6>Abstract</h6><div class="para">
			The purpose of this document is to definitively explain the concepts used to configure Pacemaker. To achieve this best, it will focus exclusively on the XML syntax used to configure the CIB.
		</div><div class="para">
			For those that are allergic to XML, Pacemaker comes with a cluster shell and a Python based GUI exists, however these tools will not be covered at all in this document <sup>[<a id="id2891445" href="#ftn.id2891445" class="footnote">1</a>]</sup> , precisely because they hide the XML.
		</div><div class="para">
			Additionally, this document is NOT a step-by-step how-to guide for configuring a specific clustering scenario. Although such guides exist, the purpose of this document is to provide an understanding of the building blocks that can be used to construct any type of Pacemaker cluster.
		</div><div class="footnotes"><br /><hr /><div class="footnote"><p><sup>[<a id="ftn.id2891445" href="#id2891445" class="para">1</a>] </sup>
				It is hoped however, that having understood the concepts explained here, that the functionality of these tools will also be more readily understood.
			</p></div></div></div></div></div><hr /></div><div class="toc"><dl><dt><span class="preface"><a href="pr01.html">Preface</a></span></dt><dd><dl><dt><span class="section"><a href="pr01.html#id2610431">1. Document Conventions</a></span></dt><dd><dl><dt><span class="section"><a href="pr01.html#id2736896">1.1. Typographic Conventions</a></span></dt><dt><span class="section"><a href="pr01.html#id3885007">1.2. Pull-quote Conventions</a></span></dt><dt><span class="section"><a href="pr01.html#id2846910">1.3. Notes and Warnings</a></span></dt></dl></dd><dt><span class="section"><a href="pr01s02.html">2. We Need Feedback!</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch-intro.html">1. Read-Me-First</a></span></dt><dd><dl><dt><span class="section"><a href="ch-intro.html#s-intro-scope">1.1. The Scope of this Document </a></span></dt><dt><span class="section"><a href="s-intro-pacemaker.html">1.2. What Is Pacemaker?</a></span></dt><dt><span class="section"><a href="s-intro-redundancy.html">1.3. Types of Pacemaker Clusters</a></span></dt><dt><span class="section"><a href="s-intro-architecture.html">1.4. Pacemaker Architecture</a></span></dt><dd><dl><dt><span class="section"><a href="s-intro-architecture.html#s-pcmk-internals">1.4.1. Internal Components</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="ch-basics.html">2. Configuration Basics</a></span></dt><dd><dl><dt><span class="section"><a href="ch-basics.html#s-config-layout">2.1. Configuration Layout</a></span></dt><dt><span class="section"><a href="s-cluster-status.html">2.2. The Current State of the Cluster</a></span></dt><dt><span class="section"><a href="s-config-updates.html">2.3. How Should the Configuration be Updated?</a></span></dt><dt><span class="section"><a href="s-config-delete.html">2.4. Quickly Deleting Part of the Configuration</a></span></dt><dt><span class="section"><a href="s-config-tools.html">2.5. Updating the Configuration Without Using XML</a></span></dt><dt><span class="section"><a href="s-config-sandboxes.html">2.6. Making Configuration Changes in a Sandbox</a></span></dt><dt><span class="section"><a href="s-config-testing-changes.html">2.7. Testing Your Configuration Changes</a></span></dt><dt><span class="section"><a href="s-config-synchronization.html">2.8. Do I Need to Update the Configuration on all Cluster Nodes?</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch-cluster-options.html">3. Cluster Options</a></span></dt><dd><dl><dt><span class="section"><a href="ch-cluster-options.html#s-options-special">3.1. Special Options</a></span></dt><dd><dl><dt><span class="section"><a href="ch-cluster-options.html#s-options-version">3.1.1. Configuration Version</a></span></dt><dt><span class="section"><a href="ch-cluster-options.html#s-options-validation">3.1.2. Other Fields</a></span></dt><dt><span class="section"><a href="ch-cluster-options.html#s-options-read-only">3.1.3. Fields Maintained by the Cluster</a></span></dt></dl></dd><dt><span class="section"><a href="s-cluster-options.html">3.2. Cluster Options</a></span></dt><dd><dl><dt><span class="section"><a href="s-cluster-options.html#id2878661">3.2.1. Available Cluster Options</a></span></dt><dt><span class="section"><a href="ch03s02s02.html">3.2.2. Querying and Setting Cluster Options</a></span></dt><dt><span class="section"><a href="ch03s02s03.html">3.2.3. When Options are Listed More Than Once</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="ch-nodes.html">4. Cluster Nodes</a></span></dt><dd><dl><dt><span class="section"><a href="ch-nodes.html#s-node-definition">4.1. Defining a Cluster Node</a></span></dt><dt><span class="section"><a href="s-node-attributes.html">4.2. Describing a Cluster Node</a></span></dt><dt><span class="section"><a href="s-node-add.html">4.3. Adding a New Cluster Node</a></span></dt><dd><dl><dt><span class="section"><a href="s-node-add.html#s-add-ais">4.3.1. OpenAIS</a></span></dt><dt><span class="section"><a href="s-add-heartbeat.html">4.3.2. Heartbeat</a></span></dt></dl></dd><dt><span class="section"><a href="s-node-delete.html">4.4. Removing a Cluster Node</a></span></dt><dd><dl><dt><span class="section"><a href="s-node-delete.html#s-del-ais">4.4.1. OpenAIS</a></span></dt><dt><span class="section"><a href="s-del-heartbeat.html">4.4.2. Heartbeat</a></span></dt></dl></dd><dt><span class="section"><a href="s-node-replace.html">4.5. Replacing a Cluster Node</a></span></dt><dd><dl><dt><span class="section"><a href="s-node-replace.html#s-replace-ais">4.5.1. OpenAIS</a></span></dt><dt><span class="section"><a href="s-replace-heartbeat.html">4.5.2. Heartbeat</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="ch-resources.html">5. Cluster Resources</a></span></dt><dd><dl><dt><span class="section"><a href="ch-resources.html#s-resource-intro">5.1. What is a Cluster Resource</a></span></dt><dt><span class="section"><a href="s-resource-supported.html">5.2. Supported Resource Classes</a></span></dt><dd><dl><dt><span class="section"><a href="s-resource-supported.html#s-resource-ocf">5.2.1. Open Cluster Framework</a></span></dt><dt><span class="section"><a href="s-resource-lsb.html">5.2.2. Linux Standard Base</a></span></dt><dt><span class="section"><a href="s-resource-heartbeat.html">5.2.3. Legacy Heartbeat</a></span></dt></dl></dd><dt><span class="section"><a href="s-resource-properties.html">5.3. Properties</a></span></dt><dt><span class="section"><a href="s-resource-options.html">5.4. Resource Options</a></span></dt><dt><span class="section"><a href="s-resource-defaults.html">5.5. Setting Global Defaults for Resource Options</a></span></dt><dt><span class="section"><a href="s-resource-attributes.html">5.6. Instance Attributes</a></span></dt><dt><span class="section"><a href="s-resource-operations.html">5.7. Resource Operations</a></span></dt><dd><dl><dt><span class="section"><a href="s-resource-operations.html#s-resource-failure">5.7.1. Monitoring Resources for Failure</a></span></dt></dl></dd><dt><span class="section"><a href="s-operation-defaults.html">5.8. Setting Global Defaults for Operations</a></span></dt><dd><dl><dt><span class="section"><a href="s-operation-defaults.html#s-operation-timeouts">5.8.1. When Resources Take a Long Time to Start/Stop</a></span></dt><dt><span class="section"><a href="s-operation-monitor-multiple.html">5.8.2. Multiple Monitor Operations</a></span></dt><dt><span class="section"><a href="s-operation-monitor-disable.html">5.8.3. Disabling a Monitor Operation</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="ch-constraints.html">6. Resource Constraints</a></span></dt><dd><dl><dt><span class="section"><a href="ch-constraints.html#s-scores">6.1. Scores</a></span></dt><dd><dl><dt><span class="section"><a href="ch-constraints.html#s-scores-infinity">6.1.1. Infinity Math</a></span></dt></dl></dd><dt><span class="section"><a href="s-resource-location.html">6.2. Deciding Which Nodes a Resource Can Run On</a></span></dt><dd><dl><dt><span class="section"><a href="s-resource-location.html#id2747521">6.2.1. Options</a></span></dt><dt><span class="section"><a href="ch06s02s02.html">6.2.2. Asymmetrical "Opt-In" Clusters</a></span></dt><dt><span class="section"><a href="ch06s02s03.html">6.2.3. Symmetrical "Opt-Out" Clusters</a></span></dt><dt><span class="section"><a href="node-score-equal.html">6.2.4. What if Two Nodes Have the Same Score</a></span></dt></dl></dd><dt><span class="section"><a href="s-resource-ordering.html">6.3. Specifying the Order Resources Should Start/Stop In</a></span></dt><dd><dl><dt><span class="section"><a href="s-resource-ordering.html#id2730857">6.3.1. Mandatory Ordering</a></span></dt><dt><span class="section"><a href="ch06s03s02.html">6.3.2. Advisory Ordering</a></span></dt></dl></dd><dt><span class="section"><a href="s-resource-colocation.html">6.4. Placing Resources Relative to other Resources</a></span></dt><dd><dl><dt><span class="section"><a href="s-resource-colocation.html#id2698845">6.4.1. Options</a></span></dt><dt><span class="section"><a href="ch06s04s02.html">6.4.2. Mandatory Placement</a></span></dt><dt><span class="section"><a href="ch06s04s03.html">6.4.3. Advisory Placement</a></span></dt></dl></dd><dt><span class="section"><a href="s-resource-sets-ordering.html">6.5. Ordering Sets of Resources</a></span></dt><dt><span class="section"><a href="s-resource-sets-collocation.html">6.6. Collocating Sets of Resources</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch-notification.html">7. Receiving Notification of Cluster Events</a></span></dt><dd><dl><dt><span class="section"><a href="ch-notification.html#s-notify-email">7.1. Configuring Email Notifications</a></span></dt><dt><span class="section"><a href="s-notify-snmp.html">7.2. Configuring SNMP Notifications</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch-rules.html">8. Rules</a></span></dt><dd><dl><dt><span class="section"><a href="ch-rules.html#s-expression-attribute">8.1. Node Attribute Expressions</a></span></dt><dt><span class="section"><a href="s-expression-iso8601.html">8.2. Time/Date Based Expressions</a></span></dt><dd><dl><dt><span class="section"><a href="s-expression-iso8601.html#s-exprssion-date-spec">8.2.1. Date Specifications</a></span></dt><dt><span class="section"><a href="s-expression-duration.html">8.2.2. Durations</a></span></dt></dl></dd><dt><span class="section"><a href="s-rules-location.html">8.3. Using Rules to Determine Resource Location</a></span></dt><dd><dl><dt><span class="section"><a href="s-rules-location.html#id3938485">8.3.1. Using <code class="literal">score-attribute</code> Instead of <code class="literal">score</code></a></span></dt></dl></dd><dt><span class="section"><a href="s-rules-resource-options.html">8.4. Using Rules to Control Resource Options</a></span></dt><dt><span class="section"><a href="s-rules-cluster-options.html">8.5. Using Rules to Control Cluster Options</a></span></dt><dt><span class="section"><a href="s-rules-recheck.html">8.6. Ensuring Time Based Rules Take Effect</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch-advanced-options.html">9. Advanced Configuration</a></span></dt><dd><dl><dt><span class="section"><a href="ch-advanced-options.html#s-remote-connection">9.1. Connecting to the Cluster Configuration from a Remote Machine</a></span></dt><dt><span class="section"><a href="s-recurring-start.html">9.2. Specifying When Recurring Actions are Performed</a></span></dt><dt><span class="section"><a href="s-moving-resource.html">9.3. Moving Resources</a></span></dt><dd><dl><dt><span class="section"><a href="s-moving-resource.html#id2813190">9.3.1. Manual Intervention</a></span></dt><dt><span class="section"><a href="s-failure-migration.html">9.3.2. Moving Resources Due to Failure</a></span></dt><dt><span class="section"><a href="ch09s03s03.html">9.3.3. Moving Resources Due to Connectivity Changes</a></span></dt><dt><span class="section"><a href="ch09s03s04.html">9.3.4. Resource Migration</a></span></dt></dl></dd><dt><span class="section"><a href="s-reusing-config-elements.html">9.4. Reusing Rules, Options and Sets of Operations</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch-advanced-resources.html">10. Advanced Resource Types</a></span></dt><dd><dl><dt><span class="section"><a href="ch-advanced-resources.html#group-resources">10.1. Groups - A Syntactic Shortcut</a></span></dt><dd><dl><dt><span class="section"><a href="ch-advanced-resources.html#id3988158">10.1.1. Properties</a></span></dt><dt><span class="section"><a href="ch-advanced-resources.html#id2867307">10.1.2. Options</a></span></dt><dt><span class="section"><a href="ch-advanced-resources.html#id2768292">10.1.3. Using Groups</a></span></dt></dl></dd><dt><span class="section"><a href="s-resource-clone.html">10.2. Clones - Resources That Should be Active on Multiple Hosts</a></span></dt><dd><dl><dt><span class="section"><a href="s-resource-clone.html#id2858546">10.2.1. Properties</a></span></dt><dt><span class="section"><a href="ch10s02s02.html">10.2.2. Options</a></span></dt><dt><span class="section"><a href="ch10s02s03.html">10.2.3. Using Clones</a></span></dt></dl></dd><dt><span class="section"><a href="s-resource-multistate.html">10.3. Multi-state - Resources That Have Multiple Modes</a></span></dt><dd><dl><dt><span class="section"><a href="s-resource-multistate.html#id2722226">10.3.1. Properties</a></span></dt><dt><span class="section"><a href="ch10s03s02.html">10.3.2. Options</a></span></dt><dt><span class="section"><a href="ch10s03s03.html">10.3.3. Using Multi-state Resources</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="ch-stonith.html">11. Protecting Your Data - STONITH</a></span></dt><dd><dl><dt><span class="section"><a href="ch-stonith.html#s-stonith-why">11.1. Why You Need STONITH</a></span></dt><dt><span class="section"><a href="s-stonith-choose.html">11.2. What STONITH Device Should You Use</a></span></dt><dt><span class="section"><a href="s-stonith-configure.html">11.3. Configuring STONITH</a></span></dt><dd><dl><dt><span class="section"><a href="s-stonith-configure.html#s-stonith-example">11.3.1. Example</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="ch-status.html">12. Status - Here be dragons</a></span></dt><dd><dl><dt><span class="section"><a href="ch-status.html#s-status-intro">12.1. Node Status</a></span></dt><dt><span class="section"><a href="s-status-transient.html">12.2. Transient Node Attributes</a></span></dt><dt><span class="section"><a href="s-status-history.html">12.3. Operation History</a></span></dt><dd><dl><dt><span class="section"><a href="s-status-history.html#s-status-example">12.3.1. Simple Example</a></span></dt><dt><span class="section"><a href="ch12s03s02.html">12.3.2. Complex Resource History Example</a></span></dt></dl></dd></dl></dd><dt><span class="appendix"><a href="ap-faq.html">A. FAQ</a></span></dt><dt><span class="appendix"><a href="ap-ocf.html">B. More About OCF Resource Agents</a></span></dt><dd><dl><dt><span class="section"><a href="ap-ocf.html#s-ocf-location">B.1. Location of Custom Scripts</a></span></dt><dt><span class="section"><a href="s-ocf-actions.html">B.2. Actions</a></span></dt><dt><span class="section"><a href="s-ocf-return-codes.html">B.3. How Does the Cluster Interpret the OCF Return Codes?</a></span></dt><dd><dl><dt><span class="section"><a href="s-ocf-return-codes.html#id2626515">B.3.1. Exceptions</a></span></dt></dl></dd></dl></dd><dt><span class="appendix"><a href="ap-changes.html">C. What Changed in 1.0</a></span></dt><dd><dl><dt><span class="section"><a href="ap-changes.html#s-changes-new">C.1. New</a></span></dt><dt><span class="section"><a href="s-changes.html">C.2. Changed</a></span></dt><dt><span class="section"><a href="s-changes-removed.html">C.3. Removed</a></span></dt></dl></dd><dt><span class="appendix"><a href="ap-install.html">D. Installation</a></span></dt><dd><dl><dt><span class="section"><a href="ap-install.html#s-install-stack">D.1. Choosing a Cluster Stack</a></span></dt><dt><span class="section"><a href="s-install-enable.html">D.2. Enabling Pacemaker</a></span></dt><dd><dl><dt><span class="section"><a href="s-install-enable.html#s-install-enable-ais">D.2.1. For OpenAIS</a></span></dt><dt><span class="section"><a href="s-install-enable-heartbeat.html">D.2.2. For Heartbeat</a></span></dt></dl></dd></dl></dd><dt><span class="appendix"><a href="ap-upgrade.html">E. Upgrading Cluster Software</a></span></dt><dd><dl><dt><span class="section"><a href="ap-upgrade.html#s-upgrade-compatible">E.1. Version Compatibility</a></span></dt><dt><span class="section"><a href="s-upgrade-shutdown.html">E.2. Complete Cluster Shutdown</a></span></dt><dd><dl><dt><span class="section"><a href="s-upgrade-shutdown.html#id3883632">E.2.1. Procedure</a></span></dt></dl></dd><dt><span class="section"><a href="s-upgrade-rolling.html">E.3. Rolling (node by node)</a></span></dt><dd><dl><dt><span class="section"><a href="s-upgrade-rolling.html#id2879651">E.3.1. Procedure</a></span></dt><dt><span class="section"><a href="apes03s02.html">E.3.2. Version Compatibility</a></span></dt><dt><span class="section"><a href="apes03s03.html">E.3.3. Crossing Compatibility Boundaries</a></span></dt></dl></dd><dt><span class="section"><a href="s-upgrade-reattach.html">E.4. Disconnect and Reattach</a></span></dt><dd><dl><dt><span class="section"><a href="s-upgrade-reattach.html#id2812836">E.4.1. Procedure</a></span></dt><dt><span class="section"><a href="apes04s02.html">E.4.2. Notes</a></span></dt></dl></dd></dl></dd><dt><span class="appendix"><a href="ap-upgrade-config.html">F. Upgrading the Configuration from 0.6</a></span></dt><dd><dl><dt><span class="section"><a href="ap-upgrade-config.html#s-upgrade-config-prep">F.1. Preparation</a></span></dt><dt><span class="section"><a href="s-upgrade-config-perform.html">F.2. Perform the upgrade</a></span></dt><dd><dl><dt><span class="section"><a href="s-upgrade-config-perform.html#id2705412">F.2.1. Upgrade the software</a></span></dt><dt><span class="section"><a href="apfs02s02.html">F.2.2. Upgrade the Configuration</a></span></dt><dt><span class="section"><a href="s-upgrade-config-manual.html">F.2.3. Manually Upgrading the Configuration</a></span></dt></dl></dd></dl></dd><dt><span class="appendix"><a href="ap-lsb.html">G. Is This init Script LSB Compatible?</a></span></dt><dt><span class="appendix"><a href="ap-samples.html">H. Sample Configurations</a></span></dt><dd><dl><dt><span class="section"><a href="ap-samples.html#s-sample-empty">H.1. An Empty Configuration</a></span></dt><dt><span class="section"><a href="s-sample-simple.html">H.2. A Simple Configuration</a></span></dt><dt><span class="section"><a href="s-sample-advanced.html">H.3. An Advanced Configuration</a></span></dt></dl></dd><dt><span class="appendix"><a href="ap-further-reading.html">I. Further Reading</a></span></dt><dt><span class="appendix"><a href="apj.html">J. Revision History</a></span></dt><dt><span class="index"><a href="ix01.html">Index</a></span></dt></dl></div></div><ul class="docnav"><li class="previous"></li><li class="next"><a accesskey="n" href="pr01.html"><strong>Next</strong>Preface</a></li></ul></body></html>