<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <title>access.redhat.com | Red Hat Knowledgebase:  What is a Highly Available LVM (HA-LVM) configuration and how do I implement it?</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="keywords" content=""/>
    <meta name="version" content="public"/>
    <meta name="tag" content="kcs_verified"/>
    <meta name="tag" content="kcs"/>
    <meta name="tag" content="lvm"/>
    <meta name="tag" content="cluster_suite"/>
    <meta name="tag" content="rhcs"/>
    <meta name="tag" content="cluster"/>
    <meta name="tag" content="storage"/>
    <meta name="tag" content="rhel5"/>
    <meta name="tag" content="rhel4"/>

<meta http-equiv="Content-Language" content="en" />
<link rel="search"
    href="/kb/opensearch.xml"
    title="Red Hat Knowledgebase"
    type="application/opensearchdescription+xml"/>

    <link rel="shortcut icon" type="image/x-icon"  href="/kb/favicon.ico" />
    <link rel="icon" type="image/png" href="/kb/favicon.png" />
    <script type="text/javascript">
        if (typeof(_jive_base_url) == "undefined") {
            var _jive_base_url = "/kb/";
            <!-- need to strip ;jsessionid=3rjp0oit23hk7 from urls -->
            if (_jive_base_url.indexOf(";") > 0) {
                _jive_base_url = _jive_base_url.substring(0, _jive_base_url.indexOf(";"));
            }
            if (_jive_base_url.charAt(_jive_base_url.length -1) == '/') {
                _jive_base_url = _jive_base_url.substring(0,_jive_base_url.length -1);
            }
        }
    </script>



    <script type="text/javascript">
        window.SPELL_LANGS = "English (Canada)=en_ca,English (United Kingdom)=en_gb,+English (United States)=en_us,French=fr,French (Canada)=fr_ca,German=de,Italian=it,Spanish=es";
        window.CS_BASE_URL = "/kb";
        window.tinyMCEPreInit = {
            suffix : "_src",
            base : CS_BASE_URL + "/resources/scripts/tiny_mce3"
        };
    </script>
     






    

    <script type="text/javascript">
        var profileShortUrl = "/kb/profile-short.jspa";
        var profileLoadingTooltip = "Loading user profile";
        var profileErrorTooltip = "There was an error loading that profile information.";

        var projectChooserUrl = "/kb/project-chooser!input.jspa";
        var groupChooserUrl = "/kb/group-chooser!input.jspa";
    </script>



    
    

    <style type="text/css" media="all">
        @import "/kb/styles/jive-wiki.css";
    </style>
        <meta name="content-type" content="premium"/>
    <meta name="title" content="What is a Highly Available LVM (HA-LVM) configuration and how do I implement it?" />
    <meta name="last-modified" content="2011-01-18"/>

    
    <script type="text/javascript">
        window.SPELL_LANGS = "English (Canada)=en_ca,English (United Kingdom)=en_gb,+English (United States)=en_us,French=fr,French (Canada)=fr_ca,German=de,Italian=it,Spanish=es";
        window.CS_BASE_URL = "/kb";
        window.tinyMCEPreInit = {
            suffix : "_src",
            base : CS_BASE_URL + "/resources/scripts/tiny_mce3"
        };
    </script>
     



    <script>
    // can't just use property as a boolean, in case it's doesn't exist and is null
            // checking perm helper
        window._images_enabled = false;
    </script>

    <link rel="stylesheet" type="text/css" href="/kb/resources/scripts/tiny_mce3/plugins/inlinepopups/skins/clearlooks2/window.css" />
    
<script type="text/javascript">
if (dwr == null) var dwr = {};
if (dwr.engine == null) dwr.engine = {};
if (DWREngine == null) var DWREngine = dwr.engine;

dwr.engine._origScriptSessionId = "3787F1C4C26FD8411F7240936742A291";
dwr.engine._sessionCookieName = "JSESSIONID"; // JSESSIONID
dwr.engine._allowGetForSafariButMakeForgeryEasier = "true";
dwr.engine._scriptTagProtection = "throw 'allowScriptTagRemoting is false.';";
dwr.engine._defaultPath = "/kb/dwr/interface";
dwr.engine._pollWithXhr = "false";
</script>


        <link rel="alternate" type="application/rss+xml"
            title="What is a Highly Available LVM (HA-LVM) configuration and how do I implement it? Version History Feed"
            href="/kb/community/feeds/document-history/DOC-3068" />

        <link rel="alternate" type="application/rss+xml"
            title="What is a Highly Available LVM (HA-LVM) configuration and how do I implement it? Comments Feed"
            href="/kb/community/feeds/document-comments/DOC-3068" />

    





    <script type="text/javascript">
        var documentID = 3068;

        function publishDraft() {
            $('documentPublishForm').submit();
        }

        function restoreVersion(version) {
           if (confirm('Are you sure you want to restore this version of the article text?')){
                $('documentRestoreForm').submit();
           }
        }

        function deleteDocument() {
            if (confirm('Are you sure you want to delete this article?')){
                $('documentDeleteForm').submit();
            }
        }

    </script>




    <link rel="stylesheet" href="/kb/resources/scripts/zapatec/styles/aqua.css" type="text/css" media="all" />
    <link rel="stylesheet" href="/kb/styles/jive-global.css" type="text/css" media="all" />
    <link rel="stylesheet" href="/kb/styles/jive-sidebar.css" type="text/css" media="all" />
    <link rel="stylesheet" href="/kb/styles/redhat-external2.css" type="text/css" media="all" />
    <!-- link rel="stylesheet" href="/kb/styles/jive-external.css" type="text/css" media="all" /-->
        <link rel="stylesheet" href="/kb/plugins/recentcommentswidget/recentcomments.css" type="text/css" media="all" />
        <link rel="stylesheet" href="/kb/plugins/kbpublish/web/style.css" type="text/css" media="all" />




    <!--[if IE 6]>
    <style type="text/css">
    /* hack for IE6's lack of alpha PNG support */
    * html #jive-wrapper .ie6png,
    * html #jive-wrapper #jive-global-header *.ie6png,
    * html #jive-wrapper #user-bar-wrapper *.ie6png,
    * html #jive-wrapper #jive-body *.ie6png,
    * html #jive-wrapper #jive-footer *.ie6png {
        background-image: expression(
        this.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" +
        (this.tagName=='IMG' ? this.src : this.currentStyle.backgroundImage.split('\"')[1]) + ")",
        this.runtimeStyle.backgroundImage = "none",
        this.src = "/kb/images/transparent.png"
        );
        }
    </style>
    <![endif]-->
    <!--[if lte IE 7]><link href="/kb/styles/ie.css" rel="stylesheet" type="text/css" /> <![endif]-->
    

<title>
access.redhat.com
</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="content-language" content="en" />
<meta name="avalon-host-info" content="avalon03" />

<link rel="shortcut icon" href="https://access.redhat.com/webassets/avalon/g/favicon.ico" />
<link rel="stylesheet" type="text/css" media="screen" href="https://access.redhat.com/webassets/avalon/s/jquery-ui/cp/jquery-ui-1.8.7.custom.css" />
<link rel="stylesheet" type="text/css" media="screen" href="https://access.redhat.com/webassets/avalon/s/global.css" />
<link rel="stylesheet" type="text/css" media="print" href="https://access.redhat.com/webassets/avalon/s/print.css" />
<!--[if lte IE 7]><link rel="stylesheet" type="text/css" media="screen" href="/webassets/avalon/s/ielte7.css" /><![endif]--> 
<!--[if IE 6]><link rel="stylesheet" type="text/css" media="screen" href="/webassets/avalon/s/ie6.css" /><![endif]--> 
<script type="text/javascript">
        var avalon = { host: "https://access.redhat.com", kbaseContext: "/kb", cspContext: "/jbossnetwork", customerCenterContext: "/wapps", lang: "en" };
        var avalonHost = avalon.host; // deprecate this?
</script>
<script type="text/javascript" src="https://access.redhat.com/webassets/avalon/j/jquery-1.4.1.min.js"></script>
<script type="text/javascript" src="https://access.redhat.com/webassets/avalon/j/jquery-ui-1.8.7.custom.min.js"></script>
<script type="text/javascript" src="https://access.redhat.com/webassets/avalon/j/idle-timer-1.0.js"></script>
<script type="text/javascript" src="https://access.redhat.com/webassets/avalon/j/jquery.blockUI.js"></script>   
<script type="text/javascript" src="https://access.redhat.com/webassets/avalon/j/autoresize.jquery.js"></script>        
<script type="text/javascript" src="https://access.redhat.com/webassets/avalon/j/base.js"></script>

    <style type="text/css">#content {
        margin-top: -5px;
}
</style>
    <style type="text/css">/* custom-css-container */</style>

<script type="text/javascript" language="JavaScript" src="/kb/resources/scripts/gen/7265c1fe51531759a11d67365213b902.js"></script>
<script type="text/javascript" language="JavaScript">
        Zapatec.Calendar._TT["DEF_DATE_FORMAT"] = "%m/%d/%Y";


        // begin list of custom CSS
        jive.rte.defaultStyles = new Array();
            jive.rte.defaultStyles.push("/kb/plugins/recentcommentswidget/recentcomments.css");
            jive.rte.defaultStyles.push("/kb/plugins/kbpublish/web/style.css");
        // end list of custom CSS


            var jiveControl = new jive.model.Controller();


    
jive.rte.macros.push(new jive.rte.Macro("color","","TEXT", true, false, [], [{name: "0",value: ""},{name: "__default_attr",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("size","","TEXT", true, false, [], [{name: "0",value: ""},{name: "__default_attr",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("font","","TEXT", true, false, [], [{name: "0",value: ""},{name: "__default_attr",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("toc","","IMAGE", true, true, [], [], true,false));
jive.rte.macros.push(new jive.rte.Macro("code","","TEXT", false, true, [{ name: "sql", deleteAll: true, params: [{ name: "__default_attr", value :"sql"} ]},{ name: "html", deleteAll: true, params: [{ name: "__default_attr", value :"html"} ]},{ name: "xml", deleteAll: true, params: [{ name: "__default_attr", value :"xml"} ]},{ name: "java", deleteAll: true, params: [{ name: "__default_attr", value :"java"} ]},{ name: "plain", deleteAll: true, params: [{ name: "__default_attr", value :"plain"} ]}], [{name: "__default_attr",value: ["sql","html","xml","java","plain"]}], true,false));
jive.rte.macros.push(new jive.rte.Macro("noformat","","TEXT", true, true, [], [], true,false));
jive.rte.macros.push(new jive.rte.Macro("thread","thread/","INLINE", true, false, [], [{name: "id",value: ""},{name: "0",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("message","message/","INLINE", true, false, [], [{name: "id",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("document","docs/","INLINE", true, false, [], [{name: "id",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("blogpost","blogs/","INLINE", true, false, [], [{name: "id",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("blog","blogs/","INLINE", true, false, [], [{name: "id",value: ""},{name: "name",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("community","community/","INLINE", true, false, [], [{name: "id",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("space","community/","INLINE", true, false, [], [{name: "id",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("user","","INLINE", true, false, [], [{name: "id",value: ""},{name: "username",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("project","project/","INLINE", true, false, [], [{name: "id",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("task","view-task.jspa?task=","INLINE", true, false, [], [{name: "id",value: ""},{name: "0",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("group","groups/","INLINE", true, false, [], [{name: "id",value: ""},{name: "__default_attr",value: ""},{name: "title",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("quote","","TEXT", false, true, [], [{name: "title",value: ""},{name: "__default_attr",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("vimeo","","IMAGE", false, false, [], [{name: "__default_attr",value: ""},{name: "width",value: ""},{name: "height",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("veoh","","IMAGE", false, false, [], [{name: "__default_attr",value: ""},{name: "width",value: ""},{name: "height",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("dailymotion","","IMAGE", false, false, [], [{name: "__default_attr",value: ""},{name: "width",value: ""},{name: "height",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("google","","IMAGE", false, false, [], [{name: "__default_attr",value: ""},{name: "width",value: ""},{name: "height",value: ""}], true,false));
jive.rte.macros.push(new jive.rte.Macro("youtube","","IMAGE", false, false, [], [{name: "__default_attr",value: ""},{name: "width",value: ""},{name: "height",value: ""}], true,false));



        if(typeof(tinyMCE) != "undefined"){ // could be Safari 2, which dies with tinyMCE
            tinyMCE.addI18n('en.jivemacros',{
            });
        }


        function RawHTMLSaveFunction(element_id, html, body){
            var text = $('wysiwygtext');
            if(text.style.display == "none"){
                return html;
            }else{
                return text.value;
            }
        }
        jive.rte.multiRTE = new Array();

        function refreshLinks(){
            for(var i=0;i<jive.rte.multiRTE.length;i++){
                if(!$(jive.rte.multiRTE[i] + '_parent')){
                    // safari 2, text only
                    $(jive.rte.multiRTE[i] + '_toggle_html').style.display = "none";
                    $('jivePreferredEditorModeLinkHREF').style.display = "none";
                    return;
                }
                if($(jive.rte.multiRTE[i] + '_parent').style.display == "none"){
                    $(jive.rte.multiRTE[i] + '_toggle_html').style.display = "block";
                }else{
                    $(jive.rte.multiRTE[i] + '_toggle_html').style.display = "none";
                }
                if(preferredMode == currentMode){
                    $('jivePreferredEditorModeLinkHREF').style.display = "none";
                }else{
                    $('jivePreferredEditorModeLinkHREF').style.display = "block";
                }
            }
        }




// timeout for dwr calls
var DWRTimeout = 20000;


function getEditorMode() {
    return currentMode;
}

function setPreferredEditorMode(mode) {
    WikiTextConverter.setPreferredEditorMode(mode,
        {
            callback: function() {
                preferredMode = mode;
                refreshLinks();
            },
            timeout: DWRTimeout // 20 seconds
        }
    );
}


            function startWatch() {
                Watches.watchDocument(documentID, {
                        callback:function(){
                            $('jive-link-document-startWatch').hide();
                            $('jive-link-document-stopWatch').show();
                            Jive.AlertMessage('thread.watch.notify', {
                                    beforeStart:function() {
                                        $('thread.watch.notify').innerHTML
                                            = '<div>You are receiving email notifications for this article. To unsubscribe,click \"Stop email notifications\" below.</div>';
                                    }
                             });
                        }
                });
            }

            function stopWatch() {
                Watches.removeDocumentWatch(documentID, {
                        callback:function(){
                            $('jive-link-document-startWatch').show();
                            $('jive-link-document-stopWatch').hide();
                            Jive.AlertMessage('thread.watch.notify', {
                                    beforeStart:function() {
                                        $('thread.watch.notify').innerHTML
                                            = '<div>You have stopped receiving email notifications for this article. To subscribe to changes to this article via email,click \"Receive email notifications\" below.</div>';
                                    }
                             });
                        }
                });
            }


jive.rte.multiRTE.push("wysiwygtext")

    function writeMoreLikeThisResults(data) {
        var results = data.results;
        var ul = $("jive-more-like-this-" + __objectType + "-" + __objectID);
        if (results.length > 0) {
            ul.update('');
            results.each(function(result) {
                ul.insert(new Element("li").update(resultFormatter(result)));
            });
        }
        else {
            ul.update(new Element("li").update(new Element("span").update(msg_noContent)));
        }
    }

    function resultFormatter(data) {
        return new Element("a", {href: _jive_base_url + data.objectURL, "class": data.objectClass})
            .insert(new Element("span").update(data.subject));
    }

    document.observe("dom:loaded", function() {
    MoreLikeThis.getMoreLikeThisResults(__objectType, __objectID, __numResults, {
       callback:function(data) {
           writeMoreLikeThisResults(data);
        },
        errorHandler:function(errorString) {
            $("jive-more-like-this-" + __objectType + "-" + __objectID).update("<li><span>" + msg_errorContent + " " +
                    + errorString + "</span></li>");
         }}
     );
     });


        var quickuserprofile = new QuickUserProfile("jive-note-user-body", profileShortUrl, profileLoadingTooltip,
                profileErrorTooltip);
        var jiveprojectchooser = new JiveProjectChooser(projectChooserUrl);
        var jivegroupchooser = new JiveGroupChooser(groupChooserUrl);


</script>


</head>
<body>
<!--googleoff: all-->

<!-- BEGIN header -->



<a id="skipnav" class="nodisplay" href="#navPrimary">Skip to navigation</a>

<div class="wrapi">
        <div id="header">
                <div id="globalSearchBlock">
                        <form id="topSearchForm" name="topSearchForm" method="get" action="https://access.redhat.com/knowledge/searchResults" enctype="application/x-www-form-urlencoded"> 
                                <div id="searchWrapSelect"> 
                                        <div id="searchSelect"> 
                                                <span class="label nodisplay">Search Customer Portal
                                                </span><select id="col" name="col" size="1" style="display: none;"> <option value="avalon_portal">Search Customer Portal</option>
        <option value="redhat_kbase">Search Knowledgebase</option>
</select>
                                                <div id="searchLocationBox" class="js-searchDrop" style="display: none;"> 
                                                        <dl> 
                                                                <dt>Search Location</dt>
                                                                        <dd class="selected" id="searchDropRedhat"><div>Search Customer Portal</div></dd> 
                                                                        <dd id="searchDropRedhat_kbase"><div>Search Knowledgebase</div></dd>
                                                        </dl> 
                                                </div> 
                                        </div><!-- /searchSelect --> 
                                </div><!-- /searchWrapSelect --> 
                                <div id="searchWrapField"> 
                                        <input type="hidden" name="topSearchForm" value="topSearchForm" />
                                        <input type="hidden" name="language" value="en" />
                                        <input id="topSearchInput" name="quickSearch" class="searchField" type="text" />
                                        <input id="searchButton" src="https://access.redhat.com/webassets/avalon/g/chrome/btn-search.png" alt="Search" name="searchButton" value="Search" class="magGlass" type="image" />
                                </div><!-- /searchWrapField --> 
                        </form>
                        <div id="topAdvSearch">
                                <a href="https://access.redhat.com/knowledge/advancedSearch" class="liteLinks smallText">Advanced Search</a>
                        </div>
                </div> <!-- /globalSearchBlock -->
                <div id="brand">
                        <a id="rhLogo" title="Go to redhat.com" href="http://www.redhat.com/">
                                <img alt="Red Hat logo" src="https://access.redhat.com/webassets/avalon/g/chrome/logo-redHat.png" />
                        </a>
                        <a id="portalHome" title="Go to Customer Portal Home" href="https://access.redhat.com/home">
                                                <img src="https://access.redhat.com/webassets/avalon/g/chrome/logo-customerPortal.png" alt="Customer Portal" />
                        </a>
                </div> <!-- /brand -->
                <div id="utility-links">
                        <div id="ex-links">
                                <ul>
                                        <li class="first"><a id="rhn" href="http://rhn.redhat.com/">Red Hat Network</a></li>
                                        <li><a id="tryMakara" href="http://www.makara.com/try-it/step1/">Try Makara</a></li>
                                </ul>
                        </div> <!-- /ex-links -->
                        <div id="accountLinksLoggedOut" class="account-links">
                                <ul>
                                        <li class="first">
                                                <a id="accountRegister" href="https://www.redhat.com/wapps/ugc/register.html">Register</a>
                                                <span>or</span>
                                                <a id="accountLogin" href="https://access.redhat.com/login">Log in</a>
                                        </li>
                                        <li>
                                                <a id="siteHelpLoggedOut" href="https://access.redhat.com/help/">Help</a>
                                        </li>
                                </ul>
                        </div> <!-- /accountLinksLoggedOut -->
                        <div id="accountLinksLoggedIn" class="account-links">
                                <ul>
                                        <li class="first">
                                                <a id="accountLogout" href="https://www.redhat.com/wapps/sso/logout.html?redirect=https://access.redhat.com/logout">Log out</a>
                                        </li>
                                        <li>
                                                <a id="siteHelp" href="https://access.redhat.com/help/">Help</a>
                                        </li>
                                        <li id="accountUser">
                                                <a id="yourAccount" href="https://www.redhat.com/wapps/ugc/protected/account.html">Your account</a>
                                                <div class="menuOpen">
                                                        <img src="https://access.redhat.com/webassets/avalon/g/chrome/btn-account.png" alt="Show menu icon" id="myAccountDropButton" />
                                                </div>
                                                <ul id="myAccountDropBox" class="js-accountDrop" style="display:none;"> 
                                                        <li class="nodisplay">Account Menu</li> 
                                                        <li class="accountMenu"><a id="myAccountChangePassword" href="https://www.redhat.com/wapps/ugc/protected/details.html">Change Password</a></li>
                                                        <li class="accountMenu"><a id="myAccountUpdateEmail" href="https://www.redhat.com/wapps/ugc/protected/emailChange.html">Update Email Address</a></li>
                                                        <li class="accountMenu"><a id="myAccountUpdateMailing" href="https://www.redhat.com/wapps/ugc/protected/details.html">Update Mailing Address</a></li>
                                                        <li class="accountMenu"><a id="myAccountUpdateDisplay" href="https://www.redhat.com/wapps/ugc/protected/details.html">Update Display Preferences</a></li>
                                                        <li class="accountMenu last"><a id="myAccountOrderHistory" href="https://www.redhat.com/wapps/orderhistory/">View Web Store Order History</a></li>
                                                </ul>
                                        </li>
                                </ul>
                        </div> <!-- /accountLinksLoggedIn -->
                </div> <!-- /utility-links -->
        </div> <!-- /header -->
</div> <!-- /wrapi -->

<div class="wrapi"><div class="clearWrap" id="navWrap">
<div id="navPrimary">
<ul>
<li class=" " id="navhome">
<a id="navHomeLink" href="https://access.redhat.com/home"><span>Home</span></a>
</li>
<li id="navknowledge" class="">
<a id="knowledge" href="https://access.redhat.com/knowledge/">Knowledge</a>
<div class="mega">
<div class="top">
<div class="cap"></div>
</div>
<div class="body">
<div class="cap">
<div class="col first">
<dl>
<dt>Technical Resources</dt>
<dd>
<ul>
<li class="navkbase">
<a href="https://access.redhat.com/kb/knowledgebase">Knowledgebase</a>
</li>
<li class="navproductdocumentation">
<a href="https://access.redhat.com/knowledge/docs/">Product Documentation</a>
</li>
<li class="navtechnotes">
<a href="https://access.redhat.com/knowledge/whitepapers/">Tech Notes</a>
</li>
<li class="navreferencearchitectures">
<a href="https://access.redhat.com/knowledge/refarch/">Reference Architectures</a>
</li>
<li class="navsupportessentials">
<a href="https://access.redhat.com/kb">Support Essentials</a>
</li>
<li class="navcertifiedhardware">
<a href="http://hardware.redhat.com">Certified Hardware</a>
</li>
<li class="navvideos">
<a href="/knowledge/videos">Videos</a>
</li>
<li class="navcode">
<a href="/knowledge/sources/">Source</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="col">
<dl>
<dt>Security Resources</dt>
<dd>
<ul>
<li class="naverrata">
<a href="https://rhn.redhat.com/errata/">Errata</a>
</li>
<li class="navcvedatabase">
<a href="https://www.redhat.com/security/data/cve/">CVE Database</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="col last">
<dl>
<dt>Additional Resources</dt>
<dd>
<ul>
<li class="navwebinars">
<a href="https://www.redhat.com/webinars/">Webinars</a>
</li>
<li class="navsuccessstories">
<a href="https://customers.redhat.com/">Success Stories</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="clearboth"></div>
</div>
</div>
<div class="bottom">
<div class="cap"></div>
</div>
</div>
</li>
<li id="navsupportCases" class="">
<a id="supportCases" href="https://access.redhat.com/support/">Support</a>
<div class="mega">
<div class="top">
<div class="cap"></div>
</div>
<div class="body">
<div class="cap">
<div class="col first">
<dl>
<dt>Support Cases</dt>
<dd>
<ul>
<li class="navcasesview">
<a href="https://access.redhat.com/support/cases/list">View Support Cases</a>
</li>
<li class="navcasescreate">
<a href="https://access.redhat.com/support/cases/new">Create a New Case</a>
</li>
</ul>
</dd>
<dt>Support Policies</dt>
<dd>
<ul>
<li class="navsupportprocess">
<a href="/support/policy/support_process.html">Support Process</a>
</li>
<li class="navproductupdatepolicies">
<a href="/support/policy/update_policies.html">Product Update Policies</a>
</li>
<li class="navmanagementescalation">
<a href="https://access.redhat.com/support/policy/mgt_escalation.html">Management Escalation</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="col">
<dl>
<dt>Support Programs</dt>
<dd>
<ul>
<li class="navproductionsupport">
<a href="https://access.redhat.com/support/offerings/production/">Production Support</a>
</li>
<li class="navtechnicalaccountmanagement">
<a href="https://access.redhat.com/support/offerings/tam/">Technical Account Management</a>
</li>
<li class="navdevelopersubscriptions">
<a href="/support/offerings/developer/">Developer Subscriptions</a>
</li>
<li class="navtechnologypreview">
<a href="/support/offerings/techpreview/">Technology Preview</a>
</li>
<li class="navhardwarecertification">
<a href="https://access.redhat.com/support/offerings/hwcert/">Hardware Certification</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="col last">
<dl>
<dt>Help & Assistance</dt>
<dd>
<ul>
<li class="navgettingstarted">
<a href="https://access.redhat.com/support/start/">Getting Started</a>
</li>
<li class="navcontactingredhat">
<a href="https://access.redhat.com/support/contact/">Contacting Red Hat</a>
</li>
<li class="navphonenumbersandhours">
<a href="https://access.redhat.com/support/contact/technicalSupport.html">Phone Numbers & Hours</a>
</li>
<li class="navloginassistance">
<a href="https://access.redhat.com/site/help/LoginAssistance.html">Login Assistance</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="clearboth"></div>
</div>
</div>
<div class="bottom">
<div class="cap"></div>
</div>
</div>
</li>
<li id="navdownloads" class="">
<a id="downloads" href="https://access.redhat.com/downloads/">Downloads</a>
<div class="mega">
<div class="top">
<div class="cap"></div>
</div>
<div class="body">
<div class="cap">
<div class="col first">
<dl>
<dt>Active Subscriptions</dt>
<dd>
<ul>
<li class="navredhatenterpriselinux">
<a href="https://rhn.redhat.com/rhn/software/downloads/SupportedISOs.do">Red Hat Enterprise Linux</a>
</li>
<li class="navjbossenterprisemiddleware">
<a href="https://access.redhat.com/jbossnetwork/restricted/listSoftware.html">JBoss Enterprise Middleware</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="col last">
<dl>
<dt>Additional Downloads</dt>
<dd>
<ul>
<li class="navevaluationsdemos">
<a href="https://access.redhat.com/downloads/evals">Evaluations & Demos</a>
</li>
<li class="navfontsotherdownloads">
<a href="https://access.redhat.com/downloads/other">Fonts & Other Downloads</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="clearboth"></div>
</div>
</div>
<div class="bottom">
<div class="cap"></div>
</div>
</div>
</li>
<li id="navsecurity" class="">
<a id="security" href="https://access.redhat.com/security/">Security</a>
<div class="mega">
<div class="top">
<div class="cap"></div>
</div>
<div class="body">
<div class="cap">
<div class="col first">
<dl>
<dt>Security Updates</dt>
<dd>
<ul>
<li class="navactiveproducts">
<a href="https://access.redhat.com/security/updates/active/">Active Products</a>
</li>
<li class="navendoflifeproducts">
<a href="https://access.redhat.com/security/updates/eol/">End-of-Life Products</a>
</li>
<li class="navnotificationsadvisory">
<a href="https://access.redhat.com/security/updates/advisory/">Notifications & Advisories</a>
</li>
</ul>
</dd>
<dt>Resources</dt>
<dd>
<ul>
<li class="navcvedatabase">
<a href="https://www.redhat.com/security/data/cve/">CVE Database</a>
</li>
<li class="navsecuritymeasurement">
<a href="https://www.redhat.com/security/data/metrics/">Security Measurement</a>
</li>
<li class="navredhatgpgkeys">
<a href="https://access.redhat.com/security/team/key/">Product Signing (GPG) Keys</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="col">
<dl>
<dt>Policies & Definitions</dt>
<dd>
<ul>
<li class="navseverityratings">
<a href="https://access.redhat.com/security/updates/classification/">Severity Ratings</a>
</li>
<li class="navscoringsystem">
<a href="https://access.redhat.com/security/updates/cvss/">Scoring System</a>
</li>
<li class="navbackportingpolicy">
<a href="https://access.redhat.com/security/updates/backporting/">Backporting Policy</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="col last">
<dl>
<dt>Security Team</dt>
<dd>
<ul>
<li class="navsecurityresponseteam">
<a href="https://access.redhat.com/security/team/">Security Response Team</a>
</li>
<li class="navsecuritycontacts">
<a href="https://access.redhat.com/security/team/contact/">Security Contacts</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="clearboth"></div>
</div>
</div>
<div class="bottom">
<div class="cap"></div>
</div>
</div>
</li>
<li id="navsubscription" class="">
<a id="subscription" href="https://access.redhat.com/subscriptions">Subscriptions</a>
<div class="mega">
<div class="top">
<div class="cap"></div>
</div>
<div class="body">
<div class="cap">
<div class="col first last">
<dl>
<dt>Details</dt>
<dd>
<ul>
<li class="navoverview">
<a href="https://access.redhat.com/wapps/support/protected/overview.html">Account Overview</a>
</li>
<li class="navactive">
<a href="https://access.redhat.com/wapps/support/protected/subscriptions.html">Active Subscriptions</a>
</li>
<li class="navrenewals">
<a href="https://access.redhat.com/wapps/support/protected/renewals.html">Renewals</a>
</li>
</ul>
</dd>
</dl>
</div>
<div class="clearboth"></div>
</div>
</div>
<div class="bottom">
<div class="cap"></div>
</div>
</div>
</li>
</ul>
</div>
</div>

</div>
<!-- END header -->
        <div class="wrapi">
        <div id="container" class="clearWrap">
        <div id="contentWrap">
        <div id="content">

            <noscript><div id="noJavaScript" class="alertError">Note: Our personalized web services require that your browser be enabled for JavaScript and cookies</div></noscript>

                <div id="user-links-div">
                        <ul>
                        <li class="first"><a title="Click to view your profile" href="/kb/people/rhn_1028736">Profile</a></li>
                        <li><a href="index.jspa?showpreview=true">Your View</a></li>
                        </ul>
                </div>
                <br />

        <div id="main" style="margin:0px;">

<!-- BEGIN user bar -->
<div id="user-bar-wrapper">
        
        
<script type="text/javascript">
        function search_onsubmit() {
                var text = document.getElementById('search.text').value;
                var re = new RegExp("^\\s*DOC-(\\d+)$","i");

                if(re.match(text)) {

                        var results = re.exec(text);
                        var docid = results[1];
                        document.location.href=_jive_base_url+'/docs/'+"DOC-"+docid;

                        return false;
                }

                return true;
        }

        function search_onfocus() {
                var searchField = document.getElementById("search.text");
                var tip = "Search terms or article ID... ";

                if(searchField.value==tip)
                {
                        // clear for input
                        searchField.value="";
                        searchField.className="jive-userbar-search-field";
                }
        }
</script>

<div id="jive-user-bar">



<script type="text/javascript">var pageLocale = "en";</script>

<div class="heading-div">

        <span class="heading">Knowledgebase</span>    
</div>


</div>


</div>
<!-- END user bar -->
        <div id="jive-body">
            

    <form id="documentRestoreForm" method="post" action='/kb/docs/DOC-3068/restore'>
        <input type="hidden" name="version" value="6" />
    <input type="hidden" name="jive.token.name" value="document.restore.DOC-3068" />
    <input type="hidden" name="document.restore.DOC-3068" value="APFXRE1GTEKIEILB4VCVTG6DH9VTD94" />
    </form>

    <form id="documentDeleteForm" method="post" action='/kb/docs/DOC-3068/delete'>
    <input type="hidden" name="jive.token.name" value="document.delete.DOC-3068" />
    <input type="hidden" name="document.delete.DOC-3068" value="CYX61V9UK2ZWXJS8QONA22QL0MHG5OGC" />
    </form>

    <form id="documentPublishForm" method="post" action='/kb/doc-publish.jspa'>
    <input type="hidden" name="jive.token.name" value="document.publish.DOC-3068" />
    <input type="hidden" name="document.publish.DOC-3068" value="26UX5U8KE3P01WDHIL1CSR89QFL7HY62" />
        <input type="hidden" name="document" value="DOC-3068" />
    </form>

    <div id="success-moderation-edit" class="jive-success-box" style="display:none">
    </div>

    <span id="article-lang-dropdown" style="float: right;">
                
    </span>

    <!-- BEGIN header & intro  -->
    <div class="uplink">
            <a href="/kb/community/knowledgebase/en?view=documents" class="jive-link-more">Up to Articles in English Content</a>
    </div>
    <!-- END header & intro -->

    <!-- BEGIN main body -->
    <div id="jive-body-main">

        <!-- BEGIN main body column -->
        <div id="jive-body-maincol-container">

            <div id="jive-body-maincol">

                <div id="thread.watch.notify" class="jive-info-box" style="display:none"></div>



                    
                    



<!-- BEGIN document -->
<!--googleon: all-->
<div class="jive-wiki">
    <div class="jive-wiki-subject">
        <div class="jive-wiki-subject-content">
            <div class="jive-wiki-post-moderating">Currently Being Moderated</div>
            <div class="jive-wiki-subject-content-title">
                <div>
                    <h2> What is a Highly Available LVM (HA-LVM) configuration and how do I implement it?</h2>
                </div>
            </div>

            <h3>
                Article ID: 3068 <span>-</span>

Created on: May 28, 2008 6:00 PM


                <span>-</span>


Last Modified: 
Jan 18, 2011 10:52 AM
            </h3>
        </div>
    </div>
    <div class="jive-wiki-body">

        <div class="jive-wiki-body-content">
    <!-- [DocumentBodyStart:0506171a-9bfe-4612-92cb-e662c0cd9d3f] --><div class='jive-rendered-content'><h3>Issue</h3><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>Uncontrolled simultaneous access to shared storage can lead to data corruption.  Storage access must be managed like any other active/passive service - it must only be active on a single machine at a time.</p><h3>Environment</h3><ul><li>Red Hat Enterprise Linux 4.5+<br/></li><li>Red Hat Enterprise Linux 5</li><li>Red Hat Enterprise Linux 6</li></ul><h3>Resolution</h3><p>As of Red Hat Enterprise Linux 4.5, there is support in rgmanager for highly-available LVM volumes (HA-LVM) in a failover configuration.  This is distinct from active/active configurations enabled by Clustered LVM (CLVM).  When to use HA-LVM or CLVM should be based on the needs of the applications or services being deployed.  If the applications are cluster-aware and have been tuned to run simultaneously on multiple machines at a time, then CLVM should be used.  If the applications run optimally in active/passive (failover) configurations, then HA-LVM is the correct choice.  Most applications will run better in an active/passive configuration, as they are not designed or optimized to run concurrently with other instances.  Choosing to run an application that is not cluster-aware on clustered logical volumes may result in degraded performance if the logical volume is mirrored or snapshotted.  This is because there is cluster communication overhead for the logical volumes themselves in these instances.  A cluster-aware application must be able to acheive performance gains above the performance losses introduced by cluster file systems and cluster-aware logical volumes.  This is achievable for some applications and workloads more easily than others.  Determining what the requirements of the cluster are and whether the extra effort toward optimizing for an active/active cluster will pay dividends is the way to choose between the two LVM variants.  Most users will achieve the best HA results from using HA LVM.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>HA LVM and CLVM are similar in the fact that they prevent corruption of LVM metadata and its logical volumes, which could otherwise occur if multiple machines where allowed to make overlapping changes.  HA LVM imposes the restriction that a logical volume can only be activated exclusively; that is, active on only one machine at a time.  This means that only local (non-clustered) implementations of the storage drivers are used.  Avoiding the cluster coordination overhead in this way increases performance.  CLVM does not impose these restrictions.  A user is free to activate a logical volume on all machines in a cluster.  This forces the use of cluster-aware storage drivers, which allow for cluster-aware file systems and applications to be put on top.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>HA LVM can be setup to use one of two methods for achieving its mandate of exclusive logical volume activation.  The first method uses local machine locking and LVM "tags".  This method is available to RHEL4.5+, RHEL5, and RHEL6.  It has the advantage of not requiring any LVM cluster packages; however, there are more steps involved in setting it up and it does not prevent an admin from mistakenly removing a logical volume from a node in the cluster where it is not active.  The second method uses CLVM, but will only ever activate the logical volumes exclusively.  This has the advantage of easier setup and better prevention of administrative mistakes (like removing a logical volume that is in use); however, it does require all necessary cluster LVM packages.  The CLVM variant is available to RHEL5.6+ and RHEL6 - it is the preferred method.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><strong>To set up HA LVM Failover (using the preferred CLVM variant), perform the following steps:</strong></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>1. Ensure that the parameter <span class="jive-noformat-content">locking_type</span> in the global section of <span class="jive-noformat-content">/etc/lvm/lvm.conf</span> is set to the value <span class="jive-noformat-content">'3'</span>, that all the necessary LVM cluster packages are installed, and the necessary daemons are started (like 'clvmd' and the cluster mirror log daemon - if necessary).</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>2. Create the logical volume and filesystem using standard LVM2 and file system commands. For example:</p><!--[CodeBlockStart:04273f68-0e4f-4560-9751-34678f6db5a5]--><pre class="jive-pre"><code class="jive-code"># pvcreate /dev/sd[cde]1

# vgcreate <volume group name> /dev/sd[cde]1

# lvcreate -L 10G -n <logical volume name> <volume group name>

# mkfs.ext3 /dev/<volume group name>/<logical volume name>

# lvchange -an <volume group name>/<logical volume name>
</code></pre><!--[CodeBlockEnd:04273f68-0e4f-4560-9751-34678f6db5a5]--><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>3. Edit /etc/cluster/cluster.conf to include the newly created logical volume as a resource in one of your services. Alternatively, configuration tools such as <span class="jive-noformat-content">Conga</span> or <span class="jive-noformat-content">system-config-cluster</span> may be used to create these entries.  Below is a sample resource manager section from <span class="jive-noformat-content">/etc/cluster/cluster.conf</span>:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><!--[CodeBlockStart:9571f023-aabb-42fa-a9e6-4a5c2338fb43]--><pre class="jive-pre"><code class="jive-code jive-xml"><span class="jive-xml-tag"><rm></span>  
   <span class="jive-xml-tag"><failoverdomains></span>
       <span class="jive-xml-tag"><failoverdomain name="FD" ordered="1" restricted="0"></span>
          <span class="jive-xml-tag"><failoverdomainnode name="neo-01" priority="1"/></span>
          <span class="jive-xml-tag"><failoverdomainnode name="neo-02" priority="2"/></span>
       <span class="jive-xml-tag"></failoverdomain></span>
   <span class="jive-xml-tag"></failoverdomains></span>
   <span class="jive-xml-tag"><resources></span>
       <span class="jive-xml-tag"><lvm name="lvm" vg_name="shared_vg" lv_name="ha-lv"/></span>
       <span class="jive-xml-tag"><fs name="FS" device="/dev/shared_vg/ha-lv" force_fsck="0" force_unmount="1" fsid="64050" fstype="ext3" mountpoint="/mnt" options="" self_fence="0"/></span>
   <span class="jive-xml-tag"></resources></span>
   <span class="jive-xml-tag"><service autostart="1" domain="FD" name="serv" recovery="relocate"></span>
       <span class="jive-xml-tag"><lvm ref="lvm"/></span>
       <span class="jive-xml-tag"><fs ref="FS"/></span>
   <span class="jive-xml-tag"></service></span>
<span class="jive-xml-tag"></rm></span>
</code></pre><!--[CodeBlockEnd:9571f023-aabb-42fa-a9e6-4a5c2338fb43]--><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><strong>To set up HA LVM Failover (using the original method), perform the following steps:</strong></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>1. Ensure that the parameter <span class="jive-noformat-content">locking_type</span> in the global section of <span class="jive-noformat-content">/etc/lvm/lvm.conf</span> is set to the value <span class="jive-noformat-content">'1'</span>.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>2. Create the logical volume and filesystem using standard LVM2 and file system commands. For example:</p><!--[CodeBlockStart:158ec370-38ab-49e3-8acc-f1471ec29c9c]--><pre class="jive-pre"><code class="jive-code"># pvcreate /dev/sd[cde]1

# vgcreate <volume group name> /dev/sd[cde]1

# lvcreate -L 10G -n <logical volume name> <volume group name>

# mkfs.ext3 /dev/<volume group name>/<logical volume name> </code></pre><!--[CodeBlockEnd:158ec370-38ab-49e3-8acc-f1471ec29c9c]--><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>3. Edit /etc/cluster/cluster.conf to include the newly created logical volume as a resource in one of your services. Alternatively, configuration tools such as <span class="jive-noformat-content">Conga</span> or <span class="jive-noformat-content">system-config-cluster</span> may be used to create these entries.  Below is a sample resource manager section from <span class="jive-noformat-content">/etc/cluster/cluster.conf</span>:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><!--[CodeBlockStart:d754d82b-1266-49fa-9f90-1a2d3f8874a6]--><pre class="jive-pre"><code class="jive-code jive-xml"><span class="jive-xml-tag"><rm></span>  
   <span class="jive-xml-tag"><failoverdomains></span>
       <span class="jive-xml-tag"><failoverdomain name="FD" ordered="1" restricted="0"></span>
          <span class="jive-xml-tag"><failoverdomainnode name="neo-01" priority="1"/></span>
          <span class="jive-xml-tag"><failoverdomainnode name="neo-02" priority="2"/></span>
       <span class="jive-xml-tag"></failoverdomain></span>
   <span class="jive-xml-tag"></failoverdomains></span>
   <span class="jive-xml-tag"><resources></span>
       <span class="jive-xml-tag"><lvm name="lvm" vg_name="shared_vg" lv_name="ha-lv"/></span>
       <span class="jive-xml-tag"><fs name="FS" device="/dev/shared_vg/ha-lv" force_fsck="0" force_unmount="1" fsid="64050" fstype="ext3" mountpoint="/mnt" options="" self_fence="0"/></span>
   <span class="jive-xml-tag"></resources></span>
   <span class="jive-xml-tag"><service autostart="1" domain="FD" name="serv" recovery="relocate"></span>
       <span class="jive-xml-tag"><lvm ref="lvm"/></span>
       <span class="jive-xml-tag"><fs ref="FS"/></span>
   <span class="jive-xml-tag"></service></span>
<span class="jive-xml-tag"></rm></span>
</code></pre><!--[CodeBlockEnd:d754d82b-1266-49fa-9f90-1a2d3f8874a6]--><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><strong>Note</strong>: If there are multiple logical volumes in the volume group, then the Logical Volume name (<span class="jive-noformat-content">lv_name</span>) in the lvm resource should be left blank or unspecified.  The ability to have multiple logical volumes in a single volume group in HA-LVM became available as of Red Hat Enterprise Linux 4.7 (<span class="jive-noformat-content">rgmanager</span>-1.9.80-1) and 5.2 (<span class="jive-noformat-content">rgmanager</span>-2.0.38-2).  Also note that in an HA-LVM configuration, a volume group may only be used by a single service.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>4. Edit the volume_list field in /etc/lvm/lvm.conf. Include the name of your root volume group and your hostname as listed in /etc/cluster/cluster.conf preceded by @. Note that this string MUST match the node name given in cluster.conf.  Below is a sample entry from /etc/lvm/lvm.conf:</p><pre class="jive_text_macro jive_macro_code">volume_list = [ "VolGroup00", "@neo-01" ]</pre><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>This tag will be used to activate shared VGs or LVs. DO NOT include the names of any volume groups that are to be shared using HA-LVM.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>5. Update the initrd on all your cluster nodes. To do this, use the following command:</p><!--[CodeBlockStart:913a935c-0ca0-4511-b12f-ac29f8e09be0]--><pre class="jive-pre"><code class="jive-code"># mkinitrd -f /boot/initrd-$(uname -r).img $(uname -r)
</code></pre><!--[CodeBlockEnd:913a935c-0ca0-4511-b12f-ac29f8e09be0]--><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>6. Reboot all nodes to ensure the correct initrd is in use.</p></div><!-- [DocumentBodyEnd:0506171a-9bfe-4612-92cb-e662c0cd9d3f] -->

<!-- BEGIN attachments -->
<!-- END attachments -->
    <!-- BEGIN content details -->
    <div class="jive-wiki-details">
    <div class="jive-wiki-details-container">

        <div class="jive-wiki-tags">Tags:
                <a href="/kb/community/knowledgebase/en?view=tags&tags=kcs_verified">kcs_verified</a>,
                <a href="/kb/community/knowledgebase/en?view=tags&tags=kcs">kcs</a>,
                <a href="/kb/community/knowledgebase/en?view=tags&tags=lvm">lvm</a>,
                <a href="/kb/community/knowledgebase/en?view=tags&tags=cluster_suite">cluster_suite</a>,
                <a href="/kb/community/knowledgebase/en?view=tags&tags=rhcs">rhcs</a>,
                <a href="/kb/community/knowledgebase/en?view=tags&tags=cluster">cluster</a>,
                <a href="/kb/community/knowledgebase/en?view=tags&tags=storage">storage</a>,
                <a href="/kb/community/knowledgebase/en?view=tags&tags=rhel5">rhel5</a>,
                <a href="/kb/community/knowledgebase/en?view=tags&tags=rhel4">rhel4</a>
        </div>

    </div>
    </div>

    <!-- END content -->
        </div>
    </div>
</div>
<!--googleoff: all-->
<!-- END document -->

    <a name="comments"></a>

    <!-- BEGIN tabs -->
    <div class="jive-body-tabbar">
        <span id="redhat-feedback-tab" class="jive-body-tab jive-body-tabcurrent">
                <a href="#" onClick="jiveToggleTab('redhat-feedback', new Array('jive-authordiscussion', 'jive-comments')); return false;">Feedback</a>         
        </span>
            <span id="jive-comments-tab" class="jive-body-tab">
                <a href="#" onClick="jiveToggleTab('jive-comments', new Array('jive-authordiscussion', 'redhat-feedback')); return false;">Comments (<span id="jive-comments-count">0</span>)</a>
            </span>

    </div>
    <!-- END tabs -->
    <div id="redhat-feedback" style="">
        <div class="jive-content-commentbar">Feedback from users like yourself is a critical factor in helping us make the Red Hat Knowledgebase as useful as possible.</div>
<div id="private-feedback">
        <form>
                <div id="is-helpful-question-div" style="display:none;">
                        <p>Was this information helpful?</p>
                        <input type="radio" value="yes" name="is-helpful-radio" class="private-feedback-radio">Yes</input><br/>
                        <input type="radio" value="no" name="is-helpful-radio" class="private-feedback-radio">No</input><br/>
                        <span id="is-helpful-question-radio-error" class="private-feedback-error" style="display:none;">Please select Yes or No.</span>
                        <hr/>
                        <input type="button" class="private-feedback-button" id="private-feedback-button-next" value="Next" />
                        <div class="private-feedback-spacer-div"></div>
                </div>
                <div id="is-helpful-div" style="display:none;">
                        <p>Glad to hear it helped. What did you like about this answer?</p>
                        <textarea rows="3" cols="50" name="comment"></textarea>
                        <p>Now that you have this information, are you...</p>
                        <span id="is-helpful-radio-error" class="private-feedback-error" style="display:block;">Please select one option below.</span>
                                <input type="radio" value="0" name="more-likely-radio" class="private-feedback-radio">More likely to use the Red Hat Knowledgebase in the future</input><br/>
                                <input type="radio" value="1" name="more-likely-radio" class="private-feedback-radio">More likely to use phone/web support in the future</input><br/>
                                <input type="radio" value="2" name="more-likely-radio" class="private-feedback-radio">Not sure</input><br/>
                        <div class="private-feedback-email-div">
                                <span id="is-helpful-email-error" class="private-feedback-error private-feedback-error-email" style="display:block;">Please provide valid email address or leave the field blank.</span>
                                <span class="private-feedback-mail-label" style="font-weight:bold; margin-top:3px;">Email</span> 
                                <input type="text" class="private-feedback-text" name="private-feedback-email" value="" /> 
                                <span>(if you would like to be contacted by Red Hat)</span>
                        </div>
                        <hr/>
                        <input type="submit" class="private-feedback-button" id="private-feedback-submit-yes-button" value="Send Feedback" />
                        <div class="private-feedback-spacer-div"></div>
                </div>
                <div id="not-helpful-div" style="display:none;">
                        <p>Please tell us why you didn't find this helpful. Thanks!</p>
                        <span id="not-helpful-radio-error" class="private-feedback-error" style="display:block;">Please select one option below.</span>
                                <input type="radio" value="0" class="private-feedback-radio" requirestext="true" name="not-helpful-radio">It didn't answer my question.</input><br/>
                                <input type="radio" value="1" class="private-feedback-radio"  name="not-helpful-radio">It isn't detailed enough or it's unclear</input><br/>
                                <input type="radio" value="3" class="private-feedback-radio" requirestext="true" name="not-helpful-radio">It's wrong</input><br/>
                                <input type="radio" value="4" class="private-feedback-radio"  name="not-helpful-radio">It's out of date</input><br/>
                                <input type="radio" value="5" class="private-feedback-radio" requirestext="true" name="not-helpful-radio">Other - please describe below</input><br/>
                        <p>How can we make it better?</p>
                                        <span id="not-helpful-text-error-0" class="private-feedback-error" style="display:block;">Please let us know what your question is:</span>
                                        <span id="not-helpful-text-error-3" class="private-feedback-error" style="display:block;">Please tell us why this article is wrong:</span>
                                        <span id="not-helpful-text-error-5" class="private-feedback-error" style="display:block;">Please enter your comments below:</span>
                        <textarea rows="3" cols="50" name="comment"></textarea>
                        <div class="private-feedback-email-div">
                                <span id="is-not-helpful-email-error" class="private-feedback-error private-feedback-error-email" style="display:block;">Please provide valid email address or leave the field blank.</span>
                                <span class="private-feedback-mail-label" style="font-weight:bold; margin-top:3px;">Email</span> 
                                <input type="text" class="private-feedback-text" name="private-feedback-email" value="" /> 
                                <span>(if you would like to be contacted by Red Hat)</span>
                        </div>
                        <hr/>
                        <input type="submit" class="private-feedback-button" id="private-feedback-submit-no-button" value="Send Feedback" />
                        <div class="private-feedback-spacer-div"></div>
                </div>
                <div id="just-comment-div" style="display:none;">
                        <p>You have already provided feedback on this article, thank you! Any additional thoughts?</p>
                        <span id="just-comment-error" class="private-feedback-error" style="display:block;">The text area is empty.</span><br/>
                        <textarea rows="3" cols="50" name="comment"></textarea>
                        <div class="private-feedback-email-div">
                                <span class="private-feedback-error private-feedback-error-email" style="display:block;">Please provide valid email address or leave the field blank.</span>
                                <span class="private-feedback-mail-label" style="font-weight:bold; margin-top:3px;">Email</span> 
                                <input type="text" class="private-feedback-text" name="private-feedback-email" value="" /> 
                                <span>(if you would like to be contacted by Red Hat)</span>
                        </div>
                        <hr/>
                        <input type="submit" class="private-feedback-button" id="private-feedback-submit-comment-button" value="Send Feedback" />
                        <div class="private-feedback-spacer-div"></div>
                </div>
        </form>
        <div id="thank-you-div" style="display:none;">
                <p>Thank you for sending us your feedback!</p>
                <hr/>
                <br/>
        </div>
        <div id="cookies-off-div" style="display:none;">
                <p>You need to have cookies enabled in order to submit feedback.</p>
                <hr/>
        </div>
        <div id="feedback-error-div" style="display:none;">
                <p>We're sorry, but an error has occurred.</p>
                <hr/>
        </div>
</div>


<script type="text/javascript">

        var PrivateFeedbackUtils = new Object();
        jQuery(".private-feedback-error").hide();

        PrivateFeedbackUtils.randomString = function() {
                var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
                var string_length = 16;
                var randomstring = '';
                for (var i=0; i<string_length; i++) {
                        var rnum = Math.floor(Math.random() * chars.length);
                        randomstring += chars.substring(rnum,rnum+1);
                }
                return randomstring;
        }

        PrivateFeedbackUtils.setFeedbackCookie = function(){
                if(Cookies.getCookie('feedback') == null)
                {
                        // set feedback cookie
                        var date = new Date();
                        Cookies.setCookie('feedback', PrivateFeedbackUtils.randomString()+date.getTime(), 1000, CS_BASE_URL);
                }
        }

        PrivateFeedbackUtils.hideAll = function(){
                jQuery("#is-helpful-div").hide();
                jQuery("#is-helpful-question-div").hide();
                jQuery("#not-helpful-div").hide();
                jQuery("#just-comment-div").hide();
                jQuery(".private-feedback-error").hide();
        }

        PrivateFeedbackUtils.validateEmail = function(email){
                var filter=/^([\w-\+]+(?:\.[\w-\+]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
                if (filter.test(email))
                        return true;
                else
                        return false;
        }

        PrivateFeedbackUtils.errorHandler = function(errorString, exception){
                PrivateFeedbackUtils.hideAll();
                if(exception.javaClassName.indexOf("NoFeedbackCookieFoundException")!=-1)
                        jQuery("#cookies-off-div").show();
                else
                        jQuery("#feedback-error-div").show();
        }

        PrivateFeedbackUtils.document = new Object();

        jQuery(function(){
                PrivateFeedbackUtils.document.id = 3068;
                PrivateFeedbackUtils.document.version = 6;
                PrivateFeedbackUtils.setFeedbackCookie();

                jQuery("#private-feedback-button-next").click(function(){
                        var value = jQuery("#is-helpful-question-div input[type=radio]:checked").val();

                        if(value === undefined){
                                // validation failed
                                jQuery("#is-helpful-question-radio-error").show('fast');
                        }
                        else{
                                if(value == "yes"){
                                        // yes, was helpful
                                        PrivateFeedbackUtils.hideAll();
                                        jQuery("#is-helpful-div").show();
                                }
                                else if (value == "no"){
                                        PrivateFeedbackUtils.hideAll();
                                        jQuery("#not-helpful-div").show();
                                }
                                else{
                                        // should never happen
                                }

                                // asynchronous rating submission
                                PrivateFeedback.submitRating(value == "yes" ? true: false, PrivateFeedbackUtils.document.id, PrivateFeedbackUtils.document.version, {
                                callback: function(){},
                                errorHandler: PrivateFeedbackUtils.errorHandler
                                });
                        }

                        return false;
                });

                jQuery("#private-feedback-submit-yes-button").click(function(){
                        var value = jQuery("#is-helpful-div input[type=radio]:checked").val();
                        var email = jQuery("#is-helpful-div input[name=private-feedback-email]").val();

                        jQuery(".private-feedback-error").hide();

                        if(value === undefined)
                                jQuery("#is-helpful-radio-error").show('fast');
                        else if (email != "" && !PrivateFeedbackUtils.validateEmail(email))
                                jQuery("#is-helpful-div span.private-feedback-error-email").show('fast');
                        else
                        {
                                PrivateFeedback.submitWasHelpful(jQuery("#is-helpful-div textarea").val(), value, email, PrivateFeedbackUtils.document.id, PrivateFeedbackUtils.document.version, {
                                callback: function(){
                                        // success
                                        PrivateFeedbackUtils.hideAll();
                                        jQuery("#thank-you-div").show();
                                },
                                errorHandler: PrivateFeedbackUtils.errorHandler
                                });
                        }

                        return false;
                });

                jQuery("#private-feedback-submit-no-button").click(function(){
                        var value = jQuery("#not-helpful-div input[type=radio]:checked").val();
                        var email = jQuery("#not-helpful-div input[name=private-feedback-email]").val();

                        jQuery(".private-feedback-error").hide();

                        if(value === undefined)
                                jQuery("#not-helpful-radio-error").show('fast');
                        else if (jQuery("#not-helpful-div input[type=radio]:checked").attr("requirestext") == "true" && jQuery("#not-helpful-div textarea").val() == ""){
                                jQuery("#not-helpful-text-error-"+value).show('fast');
                        }else if (email != "" && !PrivateFeedbackUtils.validateEmail(email))
                                jQuery("#not-helpful-div span.private-feedback-error-email").show('fast');
                        else{
                                PrivateFeedback.submitWasNotHelpful(jQuery("#not-helpful-div textarea").val(),value, email, PrivateFeedbackUtils.document.id, PrivateFeedbackUtils.document.version, {
                                callback: function(){
                                        // success
                                        PrivateFeedbackUtils.hideAll();
                                        jQuery("#thank-you-div").show();
                                },
                                errorHandler: PrivateFeedbackUtils.errorHandler
                                });
                        }

                        return false;
                });

                jQuery("#private-feedback-submit-comment-button").click(function(){
                        var comment = jQuery("#just-comment-div textarea").val();
                        var email = jQuery("#just-comment-div input[name=private-feedback-email]").val();

                        jQuery(".private-feedback-error").hide();

                        if(comment === undefined || comment.length==0)
                        {
                                jQuery("#just-comment-error").show('fast');
                        }
                        else if (email != "" && !PrivateFeedbackUtils.validateEmail(email))
                                jQuery("#just-comment-div span.private-feedback-error-email").show('fast');
                        else {
                                PrivateFeedback.submitComment(comment, email, PrivateFeedbackUtils.document.id, PrivateFeedbackUtils.document.version, {
                                callback: function(){
                                        // success
                                        PrivateFeedbackUtils.hideAll();
                                        jQuery("#thank-you-div").show();
                                },
                                errorHandler: PrivateFeedbackUtils.errorHandler
                                });
                        }

                        return false;
                });

                PrivateFeedback.getFeedbackStatus(PrivateFeedbackUtils.document.id, {
                        callback: function(userFeedbackStatus){
                                if(userFeedbackStatus == null)
                                        jQuery("#is-helpful-question-div").show();
                                else if (userFeedbackStatus.fullFeedbackPresent)
                                        jQuery("#just-comment-div").show();
                                else if (userFeedbackStatus.ratingPositive)
                                        jQuery("#is-helpful-div").show();
                                else
                                        jQuery("#not-helpful-div").show();
                        },
                        errorHandler: PrivateFeedbackUtils.errorHandler
                });
        });
</script>
    </div>
        <div id="jive-comments" style="display: none;" >
            <!--googleon: all-->

        <div class="jive-content-commentbar">
                    <a href="#" onclick="toggleCommentForm('jive-content-post-comments', '-1', 'comments'); return false;">Add a comment</a>
Leave a public comment about this article.        </div>

        <script type="text/javascript">var commentsCount = 0;</script>

            <div class="jive-content-comment">
                    <p>There are no comments on this article</p>
            </div>


            <div id="jive-content-post-comments" class="jive-content-comment jive-comment-post"></div>


            <!--googleoff: all-->
        </div>

    <a name="cf"></a>

<script type="text/javascript">
        var url = window.location.href;
        var index = url.indexOf('#');
        if (index != -1)
        {
                var anchor = url.substring(url.indexOf('#')+1);
                if (anchor.indexOf("comment-")==0)
                {
                        // show comments tab by default
                        jiveToggleTab('jive-comments', new Array('jive-authordiscussion', 'redhat-feedback'));
                }
        }
</script>

    
    <div class='wysiwygtext_html_link' id='wysiwygtext_html_link' style="display:block">
        <a href='javascript:;' id='wysiwygtext_toggle_html' class='toggle_html' style='display:none;'>Show Full Editor</a>
        <a href="javascript:void(0);" onmousedown="setPreferredEditorMode(getEditorMode());return false;"
         class="jive-description" style="font-size:7pt;display:none;" id="jivePreferredEditorModeLinkHREF"
                >Always use this editor</a>
    </div>
    <div id="jive-comment-post-block" style="display:none">
        <span>
        <form method="post" action="/kb/doc-comment-create.jspa"
                name="jive-comment-post-form" onsubmit="if (!validatePost(true)) {return false;}; return true;">
            <input type="hidden" name="document" value="" />
            <input type="hidden" name="parentCommentID" value="" />
            <input type="hidden" name="commentMode" value="" />
    <input type="hidden" name="jive.token.name" value="document.comment.DOC-3068" />
    <input type="hidden" name="document.comment.DOC-3068" value="5FH1XG3K68TO5IGBM4YLYSC6D6DZ627D" />

            <h2>Post a comment</h2>




            <div>
                <textarea name="wysiwygtext" rows="10" class="jive-comment-textarea"></textarea>
                <textarea name="commentBody" rows="10" style='display:none;' class="jive-comment-textarea"></textarea>
                <a name="add-comment"></a>
            </div>

            <div style="display:none;" class="jive-doc-comment-preview" id="jive-doc-comment-preview"></div>

            <div>
                <input type="submit" name="post" value="Add Comment" />

                <input type="button" name="preview" value="Preview"
                        id="comment-preview-button" class="comment-preview-button jive-button"
                        onclick="previewComment(); return false;" />

                    

                <input type="button" name="cancel" value="Cancel" onclick="toggleCommentForm(this.form.parentNode.id);return false;" />
            </div>

        </form>
        </span>
    </div>

<script type="text/javascript">
    <!-- used to hold the currently open comment form -->
    var currentTargetID = "";

    <!-- load the correct tab when a comment is posted -->

    <!-- show form if an error occured while posting a comment -->





        //
        // set the editor's mode to the user's preference
        // on page startup
        preferredMode = 'advanced';
        currentMode = 'advanced';

    var __postSubmitted = false;
    function validatePost() {
        if (!__postSubmitted) {
            // move the html from the wysiwyg to the body
            var currentTarget = $(currentTargetID);
            var elem = $A(currentTarget.getElementsByTagName('textarea'))[2];
            var body = window.editor.get("wysiwygtext").getHTML();
            elem.value = body;
            // safari 1.x and 2.x bug: http://lists.apple.com/archives/Web-dev/2005/Feb/msg00106.html
            if(window.editor.get('wysiwygtext').isTextOnly()){
                elem.style.display = "inline";
                elem.innerHTML = "";
                elem.appendChild(document.createTextNode(body));
                elem.style.display = "none";
            }
            __postSubmitted = true;
            return true;
        }
        return false;
    }
    function closeCurrentCommentForm() {
        // close current target, if exists
        if (currentTargetID != "") {
            var currentTarget = $(currentTargetID);
            if (currentTarget && currentTarget.getElementsByTagName("form").length != 0) {
                document.body.appendChild($('wysiwygtext_html_link'));
                $('wysiwygtext_html_link').style.display = "none";
                window.editor.get("wysiwygtext").destroy();

                currentTarget.removeChild(currentTarget.getElementsByTagName("form")[0]);
                currentTargetID = "";
                window.editor.clear("wysiwygtext");
            }
        }
    }
    
    function focus(){
        window.editor.get('wysiwygtext').focus();
    }
   
    function initEditor() {

        currentMode = "advanced";

        var list = new jive.rte.RTEListener();
        list.doneTogglingMode = function(){
            if(currentMode == "advanced"){
                currentMode = "rawhtml";
            }else{
                currentMode = "advanced";
            }
            refreshLinks();
        }
        window.editor.get('wysiwygtext').addListener(list);

        if(preferredMode == "rawhtml"){
            window.setTimeout(function(list){ return function(){
                window.editor.get('wysiwygtext').toggleEditorMode('wysiwygtext');
                refreshLinks();
                focus();
            }}(list),33);
            return;
        }else if(tinymce.isIE){
            // IE fails at rendering the mini rte in comments
            // unless i toggle it twice. super awesome.
            window.editor.get('wysiwygtext').toggleEditorMode();
            window.editor.get('wysiwygtext').toggleEditorMode();
        }
        focus();
        refreshLinks();
    }


    function initRTE(){
        if(!window.editor.get('wysiwygtext').isReady()){
            window.setTimeout("initRTE()", 33);
            return;
        }
        if(window.editor.get('wysiwygtext').isTextOnly()){
            $('wysiwyg-panel').removeClassName('loading');
            preferredMode = 'rawhtml';
            currentMode = 'rawhtml';
            return;
        }else{
            preferredMode = 'advanced';
            currentMode = 'advanced';
        }

        initEditor();
        refreshLinks();
        focus();
    }

    function toggleCommentForm(target, parentCommentID, commentMode) {
        try{
            // close the current target if exists
            closeCurrentEditCommentForm();
            if (target != currentTargetID) {
                closeCurrentCommentForm();
            }

            var targetElement = $(target);
            if (targetElement.getElementsByTagName("form").length == 0) {
                var form2clone = $('jive-comment-post-block').getElementsByTagName("form")[0].cloneNode(true);

                var elements = $A(form2clone.getElementsByTagName('INPUT'));
                for (var i = 0; i <elements.length; i++) {
                    var e = elements[i];
                    if (e.name == 'document') {
                        e.value = 'DOC-3068';
                    }
                    else if (e.name == 'parentCommentID') {
                        e.value = parentCommentID;
                    }
                    else if (e.name == 'commentMode') {
                        e.value = commentMode;
                    }
                }
                targetElement.appendChild(form2clone);
                currentTargetID = targetElement.id;
                Element.scrollTo(targetElement);
                var elem = $A(form2clone.getElementsByTagName('textarea'))[0];
                elem.id = elem.name;
                if (elem) {  elem.focus();  }
                elem.parentNode.insertBefore($('wysiwygtext_html_link'), elem);
                $('wysiwygtext_html_link').style.display = "block";
                var rte = new jive.rte.RTE(jiveControl, "wysiwygtext", "mini-w-quote");
                window.editor.put('wysiwygtext', rte);
                if(parentCommentID != "-1"){
                    var quote = document.createElement('BLOCKQUOTE');
                    quote.innerHTML = $('comment-body-' + parentCommentID).innerHTML.strip();
                    var div = quote.childNodes[1]; // node 0 and 2 are comments
                    while(div.childNodes.length) quote.appendChild(div.childNodes[0]);
                    quote.removeChild(div);
                    div = document.createElement('DIV');
                    div.appendChild(quote);
                    window._jive_gui_quote_text = "<DIV>" + div.innerHTML.strip() + "</DIV>";
                }else{
                    window._jive_gui_quote_text = "<div><p><br></p></div>";
                }
                initRTE();

            } else {
                closeCurrentCommentForm();
            }
        }catch(e){
            // node insert exception. i can insert this try catch, or spend 2 hours debugging...
        }
    }



        function previewComment() {
            var taExpression = 'div#' + currentTargetID + ' textarea';
            var buExpression = 'div#' + currentTargetID + ' .comment-preview-button';
            var peExpression = 'div#' + currentTargetID + ' .jive-doc-comment-preview';
            var comment = $$(taExpression)[0];
            var button = $$(buExpression)[0];
            var preview = $$(peExpression)[0];
//            var html = comment.value;
            var html = window.editor.get("wysiwygtext").getHTML();
            button.value = 'Previewing...';
            Comment.previewComment(102, 3068, html, {
                callback:function(data) {
                    preview.innerHTML = data;
                    button.value = 'Preview';
                    new Effect.Appear(preview);
                }
            });
        }

        var currentComment = null;

        function closeCurrentEditCommentForm(){
            if(currentComment){
                document.body.appendChild($('wysiwygtext_html_link'));
                $('wysiwygtext_html_link').style.display = "none";
                var container = $('comment-edit-form-' + currentComment);
                Element.toggle(container);
                Element.toggle('comment-body-' + currentComment);
                var tempdata = window.editor.get('wysiwygtext').getHTML();
                window.editor.get('wysiwygtext').destroy();
                window.editor.clear('wysiwygtext');
                var elem = $A(container.getElementsByTagName('textarea'))[0];
                elem.id = "";
                elem.value = tempdata;
                currentComment = null;
            }
        }

        function toggleEditForm(commentID) {
            closeCurrentCommentForm();
            if(currentComment != commentID){
                closeCurrentEditCommentForm();
            }
            var container = $('comment-edit-form-' + commentID);
            window._jive_gui_quote_text = "";
            if(container.style.display == "none"){
                Element.toggle(container);
                Element.toggle('comment-body-' + commentID);
                var elem = $A(container.getElementsByTagName('textarea'))[0];
                elem.id = "wysiwygtext";
                $(elem.id).style.display = "block";
                elem.parentNode.insertBefore($('wysiwygtext_html_link'), elem);
                $('wysiwygtext_html_link').style.display = "block";
                var rte = new jive.rte.RTE(jiveControl, 'wysiwygtext', "mini");
                var list = new jive.rte.RTEListener();
                list.initFinished = function(){
                    window.editor.get('wysiwygtext').focus();
                    window.setTimeout("focus()", 33);
                    window.setTimeout("focus()", 333);
                }
                rte.addListener(list);
                window.editor.put('wysiwygtext', rte);
                currentComment = commentID;
                initRTE();
            }else{
                closeCurrentEditCommentForm();
            }
        }

        function updateCommentViaAjax(commentID, anonymous) {
            var name,email,url,body,comment;
//            body = $F('comment-body-edit-' + commentID);
            body = window.editor.get('wysiwygtext').getHTML();
            if (body.strip() == '') {
                alert("The body of a comment cannot be empty.");
                return false;
            }
            if (anonymous) {
                name = $F('comment-author-edit-' + commentID);
                email = $F('comment-email-edit-' + commentID);
                url = $F('comment-url-edit-' + commentID);
                comment = { objectType:102, objectID:3068, commentID:commentID, name:name, URL:url, email:email, body:body };
            } else {
                comment = { objectType:102, objectID:3068, commentID:commentID, body:body };
            }

            Comment.updateComment(comment, {
                callback:function(data) {
                    if (anonymous) {
                       if ($('comment-url-' + commentID)) {
                           if (url.length > 0) {
                               $('comment-url-' + commentID).href = url;
                           } else {
                               $('comment-url-' + commentID).href = '#';
                           }
                       }

                       if (name.length > 0) {
                           $('comment-name-' + commentID).innerHTML = name;
                       } else {
                           $('comment-name-' + commentID).innerHTML = 'Guest';
                       }
                    }

                     if (data.isModerated) {
                         // highlight and fade before doing ajax call, feels snappier
                         new Effect.Highlight('comment-' + commentID);
                         new Effect.Fade('comment-' + commentID);
                         commentCount = $('jive-comments-count').innerHTML;
                         commentCount = commentCount - 1;
                         $('jive-comments-count').innerHTML = commentCount;
                         $('success-moderation-edit').innerHTML = '<div style="background: transparent url(/kb/images/success-16x16.gif) no-repeat 6px 6px;">' + 'Your comment was posted successfully but will need to be approved by the administrator of this blog before it will appear.'.escapeHTML() + '</div>';
                         $('success-moderation-edit').show();
                         return;
                    }
                    
                    $('comment-body-' + commentID).innerHTML = data.body;
                    $('comment-modDate-' + commentID).innerHTML = data.modificationDateTimeString;
                    toggleEditForm(commentID);
                    new Effect.Highlight('comment-' + commentID);
                }
             });
        }

        function deleteCommentViaAjax(mode, commentID) {
            var confirmDelete = confirm('Are you sure you want to delete this comment?');
            if (confirmDelete) {
                // highlight and fade before doing ajax call, feels snappier
                new Effect.Highlight('comment-' + commentID);
                new Effect.Fade('comment-' + commentID);
                Comment.deleteComment(102, 3068, commentID);
                if (mode == 'backchannel') {
                    backchannelCount = backchannelCount - 1;
                    $('jive-authordiscussion-count').innerHTML = backchannelCount;
                } else {
                    commentsCount = commentsCount - 1;
                    $('jive-comments-count').innerHTML = commentsCount;

                }
            }
        }

        jive.ext.x.xAddEventListener(window, "load", function(){
            Event.observe($('wysiwygtext_toggle_html'), "click", function(){
                window.editor.get('wysiwygtext').toggleEditorMode('wysiwygtext');
            });
        });

    window.editor = new jive.ext.y.HashTable();


</script>

            </div>
        </div>
        <!-- END main body column -->


        <!-- BEGIN sidebar column -->
        <div id="jive-body-sidebarcol-container">

            <div id="jive-body-sidebarcol">


    <!-- BEGIN sidebar box 'ACTIONS' -->
    <div id="jive-action-sidebar" class="jive-sidebar">
                <div id="jive-action-sidebar-body" class="jive-sidebar-body jive-sidebar-body-actions">


            <div id="jive-action-sidebar-tab-_document-actions-tab"
                                        class="jive-action-sidebar-tab-first"
                        >
                                <h4 id="jive-action-sidebar-tab-header_document-actions-tab">Actions</h4>


                <ul id="jive-action-sidebar-tab-list_document-actions-tab" class="">





















                                                <li id="jive-link-document-startWatch" style=""
                                                ><a class="jive-link-watches"
                                                                href="javascript:startWatch();"
                                                                onclick=""
                                                                title="">
                                                        Receive email notifications
                                                        </a></li>


                                                <li id="jive-link-document-stopWatch" style="display:none"
                                                ><a class="jive-link-watches"
                                                                href="javascript:stopWatch();"
                                                                onclick=""
                                                                title="">
                                                        Stop email notifications
                                                        </a></li>


                                                <li id="jive-link-document-pdf" style=""
                                                ><a class="jive-link-pdf"
                                                                href="/kb/docs/DOC-3068.pdf"
                                                                onclick=""
                                                                title="">
                                                        View as PDF
                                                        </a></li>


                                                <li id="jive-link-thread-print" style=""
                                                ><a class="jive-link-printpreview"
                                                                href="/kb/docs/DOC-3068?decorator=print"
                                                                onclick=""
                                                                title="">
                                                        View print preview
                                                        </a></li>

















                                </ul>
                        </div>


        
                </div>
    </div>
    <!-- END sidebar box 'ACTIONS' -->


                    
                    
<!-- BEGIN sidebar box 'More Like This' -->
<div class="jive-sidebar">
    <div class="jive-sidebar-body">
        <h4>More Like This</h4>
        <div class="jive-sidebar-usercontent">
            <ul id="jive-more-like-this-102-3068">
                <li><span>Retrieving data ...</span></li>
            </ul>
        </div>
    </div>
</div>
<script type="text/javascript">
    var msg_noContent = "No similar content found";
    var msg_errorContent = "Unable to retrieve content from the server:";

    var __objectType = 102;
    var __objectID = 3068;
    var __numResults = 5;
</script>

<!-- END sidebar box 'More Like This' -->
                    
                    

<!-- BEGIN sidebar box 'Incoming Links' -->
<div class="jive-sidebar">
    <div class="jive-sidebar-body">
        <h4>Incoming Links</h4>
        <div class="jive-sidebar-usercontent">
            <ul>
                            <li>
                                <a href="https://access.redhat.com/kb/docs/DOC-5899" class="jive-link-wiki">
                                    What services are available in my Red Hat Enterprise Linux Cluster?
                                </a>
                            </li>
                            <li>
                                <a href="https://access.redhat.com/kb/docs/DOC-5648" class="jive-link-wiki">
                                    How can I configure a Highly-Available MySQL service in my Red Hat Enterprise Linux Cluster?
                                </a>
                            </li>
            </ul>
        </div>
    </div>
</div>
<!-- END sidebar box 'Incoming Links' -->



            </div>

        </div>
        <!-- END sidebar column -->


    </div>


        </div>
            <hr style="display:block; clear:both;visibility: hidden;"/>
        </div><!-- /main -->
        </div><!-- /content -->
                                </div><!-- /contentWrap -->
                                
                        </div><!-- /container -->
                </div>
        
<!--  BEGIN FOOTER -->

<div class="wrapi">
<div id="footerWrap">

        <!-- end footer -->
        <div id="footer" class="clearWrap"><img usemap="#logo-redHatJbossMap" id="rhjbLogo" alt="Red Hat and JBoss logos" src="/webassets/avalon/g/chrome/logo-redHatJboss.png" /> <map id="logo-redHatJbossMap" name="logo-redHatJbossMap">
                <area alt="Go to redhat.com" href="http://www.redhat.com/" shape="rect" coords="0,0,98,36" />
                <area alt="Go to jboss.com" href="http://www.jboss.com" shape="rect" coords="98,0,166,36" />
        </map><div class="footerLinks first">
<span>Frequent actions</span>
<ul>
<li>
<a id="searchKbase" href="https://access.redhat.com/knowledge/search">Search knowledge</a>
</li>
<li>
<a id="createCase" href="https://access.redhat.com/support/cases">View support cases</a>
</li>
<li>
<a id="downloadSoftware" href="https://access.redhat.com/downloads">Download software</a>
</li>
<li>
<a id="manageSubscriptions" href="https://access.redhat.com/wapps/support/protected/subscriptions.html">Manage subscriptions</a>
</li>
</ul>
</div><div class="footerLinks">
<span>Support</span>
<ul>
<li>
<a id="loginProblems" href="https://access.redhat.com/site/help/LoginAssistance.html">Login problems</a>
</li>
<li>
<a id="phoneNumbersAndHours" href="https://access.redhat.com/support/contact/technicalSupport.html">Phone numbers & hours </a>
</li>
<li>
<a id="contactUs" href="https://access.redhat.com/support/contact/">Contact us</a>
</li>
</ul>
</div><div class="footerLinks">
<span>Site info</span>
<ul>
<li>
<a id="accessibilityPolicy" href="https://access.redhat.com/site/help/accessibility.html">Accessibility</a>
</li>
<li>
<a id="siteMap" href="https://access.redhat.com/sitemap">Site map</a>
</li>
</ul>
</div><div class="footerLinks">
<span>Legal</span>
<ul>
<li>
<a id="termsOfUse" href="https://access.redhat.com/site/help/terms_conditions.html">Terms of use</a>
</li>
<li>
<a id="privacyPolicy" href="https://www.redhat.com/legal/privacy_statement.html">Privacy policy</a>
</li>
<li>
<a id="aboutRedHat" href="https://www.redhat.com/about/">About Red Hat</a>
</li>
</ul>
</div>
</div>

        <div id="bottomBar">
        <div id="editions">
        <ul>
                        <li><a id="en" href="https://access.redhat.com/changeLanguage?language=en">English</a>
                        </li>
                        <li><a id="es" href="https://access.redhat.com/changeLanguage?language=es">español</a>
                        </li>
                        <li><a id="de" href="https://access.redhat.com/changeLanguage?language=de">Deutsch</a>
                        </li>
                        <li><a id="it" href="https://access.redhat.com/changeLanguage?language=it">italiano</a>
                        </li>
                        <li><a id="ko" href="https://access.redhat.com/changeLanguage?language=ko">한국어</a>
                        </li>
                        <li><a id="fr" href="https://access.redhat.com/changeLanguage?language=fr">français</a>
                        </li>
                        <li><a id="ja" href="https://access.redhat.com/changeLanguage?language=ja">日本語</a>
                        </li>
                        <li><a id="pt" href="https://access.redhat.com/changeLanguage?language=pt">português</a>
                        </li>
                        <li><a id="zh_CN" href="https://access.redhat.com/changeLanguage?language=zh_CN">中文 (中国)</a>
                        </li>
        </ul>
        <br />
        </div>
        <!-- end editions -->
        <div id="copyright" class="copyright_list">
        <ul>
                <li><span>Copyright © 2010 Red Hat, Inc.</span></li>
        </ul>
        </div>
        </div>
        <!-- end bottomBar --><!-- SiteCatalyst code version: H.1 Copyright 1997-2009 Omniture, Inc. More info available at http://www.omniture.com -->
<script type="text/javascript" language="JavaScript" src="https://access.redhat.com/webassets/avalon/j/s_code.js"></script>
<script type="text/javascript" language="JavaScript">
s.pageName="avalon||";
s.server="";
s.channel="customer portal";
s.pageType="";
s.prop1="";
s.campaign="";
s.eVar1="";
s.eVar2="";
s.eVar3="";
s.eVar23=window.location.href;
s.events="";
s.products="";
s.state="";
s.zip="";
s.purchaseID="";
/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
</script><script type="text/javascript" src="https://access.redhat.com/webassets/avalon/j/rh_omni_footer.js"></script>
<script language="JavaScript" type="text/javascript">
if(navigator.appVersion.indexOf('MSIE')>=0)document.write(unescape('%3C')+'\!-'+'-')
</script><noscript><a href="http://www.omniture.com" title="Web Analytics"><img src="https://smtrcs.redhat.com/b/ss/redhatcustomerportal,redhatglobal/1/H.2--NS/0" height="1" width="1" border="0" alt="Omniture" /></a></noscript><!--/DO NOT REMOVE/-->
<!-- End SiteCatalyst code version: H.1 -->
</div> <!-- end footerWrap -->
</div> <!-- end wrapi -->
<!--  END FOOTER -->


<div id="jiveTT-note-user" class="jive-tooltip2 notedefault snp-mouseoffset"  >
        <div class="jive-tooltip2-top"></div>
        <div class="jive-tooltip2-mid">
                <div class="jive-tooltip2-mid-padding" id="jive-note-user-body"></div>
        </div>
        <div class="jive-tooltip2-btm"></div>
</div>

<script type="text/javascript" language="JavaScript" src="/kb/resources/scripts/gen/35c4ad65a6a9ef5951bc8cf766f0445b.js"></script>

<script type="text/javascript">
zoomImagesURI   = "/kb/resources/scripts/fancyzoom/images/";
setupZoom();
</script>            <!-- SiteCatalyst code version: H.1.
 Copyright 1997-2005 Omniture, Inc. More info available at
 http://www.omniture.com sec -->
<div id="oTags">
<script type="text/javascript" src="/j/s_code.js"></script>
<script type="text/javascript" src="/j/rh_omni_footer.js"></script>
<script type="text/javascript"><!--
if(navigator.appVersion.indexOf('MSIE')>=0)document.write(unescape('%3C')+'\!-'+'-')
//--></script><noscript><img
src="https://smtrcs.redhat.com/b/ss/redhatcom/1/H.2--NS/0"
height="1" width="1" border="0" alt="" /></noscript><!--/DO NOT REMOVE/-->

</div>
<!-- End SiteCatalyst code version: H.1. -->
<!--googleon: all-->
</body>
</html>