diff --git a/doc/Pacemaker_Explained/en-US/Ch-Resources.xml b/doc/Pacemaker_Explained/en-US/Ch-Resources.xml index 63c79a623f..f1ccb1c29e 100644 --- a/doc/Pacemaker_Explained/en-US/Ch-Resources.xml +++ b/doc/Pacemaker_Explained/en-US/Ch-Resources.xml @@ -1,522 +1,522 @@ <chapter id="ch-resources"> <title>Cluster Resources</title> <section id="s-resource-intro"> <title>What is a Cluster Resource</title> <indexterm significance="preferred"><primary>Resource</primary><secondary>Description</secondary></indexterm> <para> The role of a resource agent is to abstract the service it provides and present a consistent view to the cluster, which allows the cluster to be agnostic about the resources it manages. The cluster doesn't need to understand how the resource works because it relies on the resource agent to do the right thing when given a <literal>start</literal>, <literal>stop</literal> or <literal>monitor</literal> command. </para> <para>For this reason it is crucial that resource agents are well tested. </para> <para>Typically resource agents come in the form of shell scripts, however they can be written using any technology (such as C, Python or Perl) that the author is comfortable with.</para> </section> <section id="s-resource-supported"> <title>Supported Resource Classes</title> <indexterm significance="preferred"><primary>Resource</primary><secondary>Classes</secondary></indexterm> <para> There are three basic classes of agents supported by Pacemaker. In order of encouraged usage they are: </para> <section id="s-resource-ocf"> <title>Open Cluster Framework</title> <indexterm significance="preferred"><primary>Resource</primary><secondary>OCF</secondary></indexterm> <indexterm significance="preferred"><primary>OCF</primary><secondary>Resources</secondary></indexterm> <indexterm significance="preferred"><primary>Open Cluster Framework</primary><secondary>Resources</secondary></indexterm> <para>The OCF Spec<footnote><para><ulink url="http://www.opencf.org/cgi-bin/viewcvs.cgi/specs/ra/resource-agent-api.txt?rev=HEAD"/> - at least as it relates to resource agents.</para></footnote>'<footnote><para>Note: The Pacemaker implementation has been somewhat extended from the OCF Specs, but none of those changes are incompatible with the original OCF specification.</para></footnote> is basically an extension of the Linux Standard Base conventions for init scripts to</para> <itemizedlist spacing="compact"> <listitem><para>support parameters,</para></listitem> <listitem><para>make them self describing and</para></listitem> <listitem><para>extensible</para></listitem> </itemizedlist> <para> OCF specs have strict definitions of the exit codes that actions must return<footnote> <para>Included with the cluster is the ocf-tester script, which can be useful in this regard.</para> </footnote>. The cluster follows these specifications exactly, and giving the wrong exit code will cause the cluster to behave in ways you will likely find puzzling and annoying. In particular, the cluster needs to distinguish a completely stopped resource from one which is in some erroneous and indeterminate state. </para> <para> Parameters are passed to the script as environment variables, with the special prefix <envar>OCF_RESKEY_</envar>. So, a parameter which the user thinks of as ip it will be passed to the script as <envar>OCF_RESKEY_ip</envar>. The number and purpose of the parameters is completely arbitrary, however your script should advertise any that it supports using the <literal>meta-data</literal> command. </para> <para>The OCF class is the most preferred one as it is an industry standard, highly flexible (allowing parameters to be passed to agents in a non-positional manner) and self-describing.</para> <para>For more information, see the reference<footnote><para><ulink url="http://www.linux-ha.org/wiki/OCF_Resource_Agents"/></para></footnote> and <xref linkend="ap-ocf"/>.</para> </section> <section id="s-resource-lsb"> <title>Linux Standard Base</title> <indexterm significance="preferred"><primary>Resource</primary><secondary>LSB</secondary></indexterm> <indexterm significance="preferred"><primary>LSB</primary><secondary>Resources</secondary></indexterm> <indexterm significance="preferred"><primary>Linus Standard Base</primary><secondary>Resources</secondary></indexterm> <para> LSB resource agents are those typically found in <filename>/etc/init.d</filename>. Generally they are provided by the OS/distribution and, in order to be used with the cluster, they must conform to the LSB Spec<footnote><para> See <ulink url="http://refspecs.linux-foundation.org/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/iniscrptact.html"/> for the LSB Spec (as it relates to init scripts). </para></footnote>. </para> <para> Many distributions claim LSB compliance but ship with broken init scripts. To see if your init script is LSB-compatible, see the FAQ entry <xref linkend="ap-lsb"/>. The most common problems are: </para> <itemizedlist spacing="compact"> <listitem><para>Not implementing the status operation at all</para></listitem> <listitem><para>Not observing the correct exit status codes for start/stop/status actions</para></listitem> <listitem><para>Starting a started resource returns an error (this violates the LSB spec)</para></listitem> <listitem><para>Stopping a stopped resource returns an error (this violates the LSB spec)</para></listitem> </itemizedlist> </section> <section id="s-resource-heartbeat"> <title>Legacy Heartbeat</title> <indexterm significance="preferred"><primary>Resource</primary><secondary>Heartbeat (legacy)</secondary></indexterm> <indexterm significance="preferred"><primary>Heartbeat</primary><secondary>Legacy Resources</secondary></indexterm> <para> Version 1 of Heartbeat came with its own style of resource agents and it is highly likely that many people have written their own agents based on its conventions. To enable administrators to continue to use these agents, they are supported by the new cluster manager<footnote> <para>See <ulink url="http://wiki.linux-ha.org/HeartbeatResourceAgent"/> for more information.</para></footnote>. </para> </section> <section id="s-resource-stonith"> <title>STONITH</title> <indexterm significance="preferred"><primary>Resource</primary><secondary>STONITH</secondary></indexterm> <indexterm significance="preferred"><primary>STONITH</primary><secondary>Resources</secondary></indexterm> <para> There is also an additional class, STONITH, which is used exclusively for fencing related resources. This is discussed later in <xref linkend="ch-stonith"/>. </para> </section> </section> <section id="s-resource-properties"> <title>Properties</title> <para>These values tell the cluster which script to use for the resource, where to find that script and what standards it conforms to.</para> <table frame="all"> <title>Properties of a Primitive Resource</title> <tgroup cols="2"> <colspec colwidth="1*"/> <colspec colwidth="6*"/> <thead> <row> <entry>Field</entry> <entry>Description</entry> </row> </thead> <tbody> <row> <entry> <indexterm significance="preferred"><primary>id</primary></indexterm> id</entry> <entry>Your name for the resource</entry> </row> <row> <entry> <indexterm significance="preferred"><primary>class</primary><secondary>Resource Field</secondary></indexterm> <indexterm significance="preferred"><primary>Resource</primary><secondary>Field</secondary><tertiary>class</tertiary></indexterm> class</entry> <entry>The standard the script conforms to. Allowed values: <literal>heartbeat</literal>, <literal>lsb</literal>, <literal>ocf</literal>, <literal>stonith</literal></entry> </row> <row> <entry> <indexterm significance="preferred"><primary>type</primary><secondary>Resource Field</secondary></indexterm> <indexterm significance="preferred"><primary>Resource</primary><secondary>Field</secondary><tertiary>type</tertiary></indexterm> type</entry> <entry>The name of the Resource Agent you wish to use. Eg. <emphasis>IPaddr</emphasis> or <emphasis>Filesystem</emphasis></entry> </row> <row> <entry> <indexterm significance="preferred"><primary>provider</primary><secondary>Resource Field</secondary></indexterm> <indexterm significance="preferred"><primary>Resource</primary><secondary>Field</secondary><tertiary>provider</tertiary></indexterm> provider</entry> <entry>The OCF spec allows multiple vendors to supply the same ResourceAgent. To use the OCF resource agents supplied with Heartbeat, you should specify <literal>heartbeat</literal> here.</entry> </row> </tbody> </tgroup> </table> <para>Resource definitions can be queried with the <command>crm_resource</command> tool. For example</para> <screen><command>crm_resource --resource Email --query-xml</command></screen> <para>might produce</para> <example> <title>An example LSB resource</title> <programlisting><![CDATA[<primitive id="Email" class="lsb" type="exim"/>]]> </programlisting> </example> <note> <para>One of the main drawbacks to LSB resources is that they do not allow any parameters!</para> <para><!-- Fix for PDF output overlaid with Note --></para> </note> <para>Example for an OCF resource:</para> <example> <title>An example OCF resource</title> <programlisting><![CDATA[<primitive id="Public-IP" class="ocf" type="IPaddr" provider="heartbeat"> <instance_attributes id="params-public-ip"> <nvpair id="public-ip-addr" name="ip" value="1.2.3.4"/> </instance_attributes> </primitive> ]]> </programlisting> </example> <para>Or, finally for the equivalent legacy Heartbeat resource:</para> <example> <title>An example Heartbeat resource</title> <programlisting><![CDATA[ <primitive id="Public-IP-legacy" class="heartbeat" type="IPaddr"> <instance_attributes id="params-public-ip-legacy"> <nvpair id="public-ip-addr-legacy" name="1" value="1.2.3.4"/> </instance_attributes> </primitive> ]]> </programlisting> </example> <note> <para> Heartbeat resources take only ordered and unnamed parameters. The supplied name therefore indicates the order in which they are passed to the script. Only single digit values are allowed. </para> <para><!-- Fix for PDF output overlaid with Note --></para> </note> </section> <section id="s-resource-options"> <title>Resource Options</title> <para>Options are used by the cluster to decide how your resource should behave and can be easily set using the <parameter>--meta</parameter> option of the <command>crm_resource</command> command.</para> <table frame="all"> <title>Options for a Primitive Resource</title> <tgroup cols="3"> <colspec colwidth="1*"/> <colspec colwidth="1*"/> <colspec colwidth="4*"/> <thead> <row> <entry>Field</entry> <entry>Default</entry> <entry>Description</entry> </row> </thead><tbody><row> <entry> <indexterm significance="preferred"><primary>priority</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance="preferred"><primary>Resource</primary><secondary>Option</secondary><tertiary>priority</tertiary></indexterm> priority</entry> <entry><literal>0</literal></entry> <entry>If not all resources can be active, the cluster will stop lower priority resources in order to keep higher priority ones active.</entry> </row> <row> <entry> <indexterm significance="preferred"><primary>target-role</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance="preferred"><primary>Resource</primary><secondary>Option</secondary><tertiary>target-role</tertiary></indexterm> target-role</entry> <entry><literal>Started</literal></entry> <entry> <para>What state should the cluster attempt to keep this resource in? Allowed values: <itemizedlist spacing="compact"> <listitem><para><literal>Stopped</literal> - Force the resource to be stopped</para></listitem> <listitem><para><literal>Started</literal> - Allow the resource to be started (In the case of <link linkend="s-resource-multistate">multi-state</link> resources, they will not promoted to master)</para></listitem> <listitem><para><literal>Master</literal> - Allow the resource to be started and, if appropriate, promoted</para></listitem> </itemizedlist></para> </entry> </row> <row> <entry> <indexterm significance="preferred"><primary>is-managed</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance="preferred"><primary>Resource</primary><secondary>Option</secondary><tertiary>is-managed</tertiary></indexterm> is-managed</entry> <entry>TRUE</entry> <entry> Is the cluster allowed to start and stop the resource? Allowed values: <literal>true</literal>, <literal>false</literal> </entry> </row> <row> <entry> <indexterm significance="preferred"><primary>resource-stickiness</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance="preferred"><primary>Resource</primary><secondary>Option</secondary><tertiary>resource-stickiness</tertiary></indexterm> resource-stickiness</entry> <entry>Inherited</entry> <entry> How much does the resource prefer to stay where it is? Defaults to the value of <literal>resource-stickiness</literal> in the <literal>rsc_defaults</literal> section </entry> </row> <row> <entry> <indexterm significance="preferred"><primary>migration-threshold</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance="preferred"><primary>Resource</primary><secondary>Option</secondary><tertiary>migration-threshold</tertiary></indexterm> migration-threshold</entry> <entry><literal>INFINITY</literal> (disabled)</entry> <entry>How many failures may occur for this resource on a node, before this node is marked ineligible to host this resource. </entry> </row> <row> <entry> <indexterm significance="preferred"><primary>failure-timeout</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance="preferred"><primary>Resource</primary><secondary>Option</secondary><tertiary>failure-timeout</tertiary></indexterm> failure-timeout</entry> <entry><literal>0</literal> (disabled)</entry> <entry>How many seconds to wait before acting as if the failure had not occurred, and potentially allowing the resource back to the node on which it failed.</entry> </row> <row> <entry> <indexterm significance="preferred"><primary>multiple-active</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance="preferred"><primary>Resource</primary><secondary>Option</secondary><tertiary>multiple-active</tertiary></indexterm> multiple-active</entry> <entry><literal>stop_start</literal></entry> <entry> <para>What should the cluster do if it ever finds the resource active on more than one node. Allowed values: <itemizedlist spacing="compact"> <listitem><para><literal>block</literal> - mark the resource as unmanaged</para></listitem> <listitem><para><literal>stop_only</literal> - stop all active instances and leave them that way</para></listitem> <listitem><para><literal>stop_start</literal> - stop all active instances and start the resource in one location only</para></listitem> </itemizedlist> </para> </entry> </row> </tbody> </tgroup> </table> <para>If you performed the following commands on the previous LSB Email resource</para> <screen><command>crm_resource --meta --resource Email --set-parameter priority --property-value 100</command> <command>crm_resource --meta --resource Email --set-parameter multiple-active --property-value block</command> </screen> <para>the resulting resource definition would be</para> <example> <title>An LSB resource with cluster options</title> <programlisting><![CDATA[<primitive id="Email" class="lsb" type="exim"> <meta_attributes id="meta-email"> <nvpair id="email-priority" name="priority" value="100"/> <nvpair id="email-active" name="multiple-active" value="block"/> </meta_attributes> </primitive> ]]> </programlisting> </example> </section> <section id="s-resource-defaults"> <title>Setting Global Defaults for Resource Options</title> <para>To set a default value for a resource option, simply add it to the <literal>rsc_defaults</literal> section with <command>crm_attribute</command>. Thus, </para> <para><command>crm_attribute --type rsc_defaults --attr-name is-managed --attr-value false</command></para> <para>would prevent the cluster from starting or stopping any of the resources in the configuration (unless of course the individual resources were specifically enabled and had <literal>is-managed</literal> set to <literal>true</literal>).</para> </section> <section id="s-resource-attributes"> <title>Instance Attributes</title> <para>The scripts of some resource classes (LSB not being one of them) can be given parameters which determine how they behave and which instance of a service they control.</para> <para>If your resource agent supports parameters, you can add them with the <command>crm_resource</command> command. For instance</para> <programlisting><command>crm_resource --resource Public-IP --set-parameter ip --property-value 1.2.3.4</command></programlisting> <para>would create an entry in the resource like this:</para> <example> <title>An example OCF resource with instance attributes</title> <programlisting><![CDATA[ <primitive id="Public-IP" class="ocf" type="IPaddr" provider="heartbeat"> <instance_attributes id="params-public-ip"> <nvpair id="public-ip-addr" name="ip" value="1.2.3.4"/> </instance_attributes> </primitive> ]]> </programlisting> </example> <para>For an OCF resource, the result would be an environment variable called <envar>OCF_RESKEY_ip</envar> with a value of <literal>1.2.3.4</literal>.</para> <para> The list of instance attributes supported by an OCF script can be found by calling the resource script with the <parameter>meta-data</parameter> command. The output contains an XML description of all the supported attributes, their purpose and default values. </para> <example> <title>Displaying the metadata for the Dummy resource agent template</title> <programlisting><userinput>export OCF_ROOT=/usr/lib/ocf; $OCF_ROOT/resource.d/pacemaker/Dummy meta-data</userinput> <![CDATA[ <?xml version="1.0"?> <!DOCTYPE resource-agent SYSTEM "ra-api-1.dtd"> <resource-agent name="Dummy" version="0.9"> <version>1.0</version> <longdesc lang="en-US"> This is a Dummy Resource Agent. It does absolutely nothing except keep track of whether its running or not. Its purpose in life is for testing and to serve as a template for RA writers. </longdesc> <shortdesc lang="en-US">Dummy resource agent</shortdesc> <parameters> <parameter name="state" unique="1"> <longdesc lang="en-US"> Location to store the resource state in. </longdesc> <shortdesc lang="en-US">State file</shortdesc> <content type="string" default="/var/run/Dummy-{OCF_RESOURCE_INSTANCE}.state" /> </parameter> <parameter name="dummy" unique="0"> <longdesc lang="en-US"> Dummy attribute that can be changed to cause a reload </longdesc> <shortdesc lang="en-US">Dummy attribute that can be changed to cause a reload</shortdesc> <content type="string" default="blah" /> </parameter> </parameters> <actions> <action name="start" timeout="90" /> <action name="stop" timeout="100" /> <action name="monitor" timeout="20" interval="10" depth="0" start-delay="0" /> <action name="reload" timeout="90" /> <action name="migrate_to" timeout="100" /> <action name="migrate_from" timeout="90" /> <action name="meta-data" timeout="5" /> <action name="validate-all" timeout="30" /> </actions> </resource-agent> ]]> </programlisting> </example> </section> <section id="s-resource-operations"> <title>Resource Operations</title> <section id="s-resource-failure"> <title>Monitoring Resources for Failure</title> <para> By default, the cluster will not ensure your resources are still healthy. To instruct the cluster to do this, you need to add a <literal>monitor</literal> operation to the resource's definition. </para> <example> <title>An OCF resource with a recurring health check</title> <programlisting><![CDATA[ <primitive id="Public-IP" class="ocf" type="IPaddr" provider="heartbeat"> <operations> <op id="public-ip-check" name="monitor" interval="60s"/> </operations> <instance_attributes id="params-public-ip"> <nvpair id="public-ip-addr" name="ip" value="1.2.3.4"/> </instance_attributes> </primitive> ]]> </programlisting> </example> <table frame="all"> <title>Properties of an Operation</title> <tgroup cols="2"> <colspec colwidth="1*"/> <colspec colwidth="6*"/> <thead> <row> <entry>Field</entry> <entry>Description</entry> </row> </thead><tbody><row> <entry>id</entry> <entry>Your name for the action. Must be unique.</entry> </row> <row> <entry>name</entry> <entry>The action to perform. Common values: <literal>monitor</literal>, <literal>start</literal>, <literal>stop</literal></entry> </row> <row> <entry>interval</entry> <entry>How frequently (in seconds) to perform the operation. Default value: <literal>0</literal>, meaning never.</entry> </row> <row> <entry>timeout</entry> <entry>How long to wait before declaring the action has failed.</entry> </row> <row> <entry>requires</entry> <entry> <para>What conditions need to be satisfied before this action occurs. Allowed values: <itemizedlist spacing="compact"> <listitem><para><literal>nothing</literal> - The cluster may start this resource at any time </para></listitem> <listitem><para><literal>quorum</literal> - The cluster can only start this resource if a majority of the configured nodes are active </para></listitem> <listitem><para><literal>fencing</literal> - The cluster can only start this resource if a majority of the configured nodes are active <emphasis>and</emphasis> any failed or unknown nodes have been powered off.</para></listitem> </itemizedlist> STONITH resources default to <literal>nothing</literal>, and all others default to <literal>fencing</literal> if STONITH is enabled and <literal>quorum</literal> otherwise.</para> </entry> </row> <row> <entry>on-fail</entry> <entry> <para>The action to take if this action ever fails. Allowed values: <itemizedlist spacing="compact"> <listitem><para><literal>ignore</literal> - Pretend the resource did not fail</para></listitem> <listitem><para><literal>block</literal> - Don't perform any further operations on the resource</para></listitem> <listitem><para><literal>stop</literal> - Stop the resource and do not start it elsewhere</para></listitem> <listitem><para><literal>restart</literal> - Stop the resource and start it again (possibly on a different node) </para></listitem> <listitem><para><literal>fence</literal> - STONITH the node on which the resource failed</para></listitem> <listitem><para><literal>standby</literal> - Move <emphasis>all</emphasis> resources away from the node on which the resource failed</para></listitem> </itemizedlist> The default for the <literal>stop</literal> operation is <literal>fence</literal> when STONITH is enabled and <literal>block</literal> otherwise. All other operations default to <literal>stop</literal>.</para> </entry> </row> <row> <entry>enabled</entry> <entry>If <literal>false</literal>, the operation is treated as if it does not exist. Allowed values: <literal>true</literal>, <literal>false</literal></entry> </row> </tbody> </tgroup> </table> </section> </section> <section id="s-operation-defaults"> <title>Setting Global Defaults for Operations</title> <para>To set a default value for a operation option, simply add it to the <literal>op_defaults</literal> section with <command>crm_attribute</command>. Thus, </para> <programlisting><command>crm_attribute --type op_defaults --attr-name timeout --attr-value 20s</command></programlisting> <para> would default each operation's <literal>timeout</literal> to 20 seconds. If an operation's definition also includes a value for <literal>timeout</literal>, then that value would be used instead (for that operation only). </para> <section id="s-operation-timeouts"> <title>When Resources Take a Long Time to Start/Stop</title> <para> There are a number of implicit operations that the cluster will always perform - <literal>start</literal>, <literal>stop</literal> and a non-recurring <literal>monitor</literal> operation (used at startup to check the resource isn't already active). If one of these is taking too long, then you can create an entry for them and simply specify a new value. </para> <example> <title>An OCF resource with custom timeouts for its implicit actions</title> <programlisting><![CDATA[ <primitive id="Public-IP" class="ocf" type="IPaddr" provider="heartbeat"> <operations> <op id="public-ip-startup" name="monitor" interval="0" timeout="90s"/> <op id="public-ip-start" name="start" interval="0" timeout="180s"/> <op id="public-ip-stop" name="stop" interval="0" timeout="15min"/> </operations> <instance_attributes id="params-public-ip"> <nvpair id="public-ip-addr" name="ip" value="1.2.3.4"/> </instance_attributes> </primitive> ]]> </programlisting> </example> </section> <section id="s-operation-monitor-multiple"> <title>Multiple Monitor Operations</title> <para> Provided no two operations (for a single resource) have the same name and interval you can have as many monitor operations as you like. In this way you can do a superficial health check every minute and progressively more intense ones at higher intervals. </para> <para> To tell the resource agent what kind of check to perform, you need to provide each monitor with a different value for a common parameter. The OCF standard creates a special parameter called <envar>OCF_CHECK_LEVEL</envar> for this purpose and dictates that it is "<emphasis>made available to the resource agent without the normal <envar>OCF_RESKEY_</envar> prefix</emphasis>". </para> <para> Whatever name you choose, you can specify it by adding an <literal>instance_attributes</literal> block to the op tag. Note that it is up to each resource agent to look for the parameter and decide how to use it. </para> <example> <title>An OCF resource with two recurring health checks, performing different levels of checks - specified via <literal>OCF_CHECK_LEVEL</literal>.</title> <programlisting><![CDATA[ <primitive id="Public-IP" class="ocf" type="IPaddr" provider="heartbeat"> <operations> <op id="public-ip-health-60" name="monitor" interval="60"> <instance_attributes id="params-public-ip-depth-60"> <nvpair id="public-ip-depth-60" name="OCF_CHECK_LEVEL" value="10"/> </instance_attributes> </op> <op id="public-ip-health-300" name="monitor" interval="300"> <instance_attributes id="params-public-ip-depth-300"> <nvpair id="public-ip-depth-300" name="OCF_CHECK_LEVEL" value="20"/> </instance_attributes> </op> </operations> <instance_attributes id="params-public-ip"> <nvpair id="public-ip-level" name="ip" value="1.2.3.4"/> </instance_attributes> </primitive> ]]> </programlisting> </example> </section> <section id="s-operation-monitor-disable"> <title>Disabling a Monitor Operation</title> <para> The easiest way to stop a recurring monitor is to just delete it. However, there can be times when you only want to disable it temporarily. - In such cases, simply add <literal>disabled="true"</literal> to the operation's definition. + In such cases, simply add <literal>enabled="false"</literal> to the operation's definition. </para> <example> <title>Example of an OCF resource with a disabled health check</title> <programlisting><![CDATA[ <primitive id="Public-IP" class="ocf" type="IPaddr" provider="heartbeat"> <operations> - <op id="public-ip-check" name="monitor" interval="60s" disabled="true"/> + <op id="public-ip-check" name="monitor" interval="60s" enabled="false"/> </operations> <instance_attributes id="params-public-ip"> <nvpair id="public-ip-addr" name="ip" value="1.2.3.4"/> </instance_attributes> </primitive> ]]> </programlisting> </example> <para>This can be achieved from the command-line by executing</para> - <programlisting><command>cibadmin -M -X ‘<op id="public-ip-check" disabled="true"/>'</command></programlisting> + <programlisting><command>cibadmin -M -X ‘<op id="public-ip-check" enabled="false"/>'</command></programlisting> <para>Once you've done whatever you needed to do, you can then re-enable it with</para> - <programlisting><command>cibadmin -M -X ‘<op id="public-ip-check" disabled="false"/>'</command></programlisting> + <programlisting><command>cibadmin -M -X ‘<op id="public-ip-check" enabled="true"/>'</command></programlisting> </section> </section> </chapter> diff --git a/doc/Pacemaker_Explained/pot/Ch-Resources.pot b/doc/Pacemaker_Explained/pot/Ch-Resources.pot index 55525a15ec..9239760092 100644 --- a/doc/Pacemaker_Explained/pot/Ch-Resources.pot +++ b/doc/Pacemaker_Explained/pot/Ch-Resources.pot @@ -1,959 +1,959 @@ # # AUTHOR <EMAIL@ADDRESS>, YEAR. # msgid "" msgstr "" "Project-Id-Version: 0\n" "POT-Creation-Date: 2012-02-27T09:17:56\n" "PO-Revision-Date: 2012-02-27T09:17:56\n" "Last-Translator: Automatically generated\n" "Language-Team: None\n" "MIME-Version: 1.0\n" "Content-Type: application/x-publican; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. Tag: title #, no-c-format msgid "Cluster Resources" msgstr "" #. Tag: title #, no-c-format msgid "What is a Cluster Resource" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>Description</secondary>" msgstr "" #. Tag: para #, no-c-format msgid "The role of a resource agent is to abstract the service it provides and present a consistent view to the cluster, which allows the cluster to be agnostic about the resources it manages. The cluster doesn't need to understand how the resource works because it relies on the resource agent to do the right thing when given a <literal>start</literal>, <literal>stop</literal> or <literal>monitor</literal> command." msgstr "" #. Tag: para #, no-c-format msgid "For this reason it is crucial that resource agents are well tested." msgstr "" #. Tag: para #, no-c-format msgid "Typically resource agents come in the form of shell scripts, however they can be written using any technology (such as C, Python or Perl) that the author is comfortable with." msgstr "" #. Tag: title #, no-c-format msgid "Supported Resource Classes" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>Classes</secondary>" msgstr "" #. Tag: para #, no-c-format msgid "There are three basic classes of agents supported by Pacemaker. In order of encouraged usage they are:" msgstr "" #. Tag: title #, no-c-format msgid "Open Cluster Framework" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>OCF</secondary>" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>OCF</primary><secondary>Resources</secondary>" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>Open Cluster Framework</primary><secondary>Resources</secondary>" msgstr "" #. Tag: para #, no-c-format msgid "The OCF Spec<footnote><para><ulink url=\"http://www.opencf.org/cgi-bin/viewcvs.cgi/specs/ra/resource-agent-api.txt?rev=HEAD\" /> - at least as it relates to resource agents.</para></footnote>'<footnote><para>Note: The Pacemaker implementation has been somewhat extended from the OCF Specs, but none of those changes are incompatible with the original OCF specification.</para></footnote> is basically an extension of the Linux Standard Base conventions for init scripts to" msgstr "" #. Tag: para #, no-c-format msgid "support parameters," msgstr "" #. Tag: para #, no-c-format msgid "make them self describing and" msgstr "" #. Tag: para #, no-c-format msgid "extensible" msgstr "" #. Tag: para #, no-c-format msgid "OCF specs have strict definitions of the exit codes that actions must return<footnote> <para>Included with the cluster is the ocf-tester script, which can be useful in this regard.</para> </footnote>. The cluster follows these specifications exactly, and giving the wrong exit code will cause the cluster to behave in ways you will likely find puzzling and annoying. In particular, the cluster needs to distinguish a completely stopped resource from one which is in some erroneous and indeterminate state." msgstr "" #. Tag: para #, no-c-format msgid "Parameters are passed to the script as environment variables, with the special prefix <envar>OCF_RESKEY_</envar>. So, a parameter which the user thinks of as ip it will be passed to the script as <envar>OCF_RESKEY_ip</envar>. The number and purpose of the parameters is completely arbitrary, however your script should advertise any that it supports using the <literal>meta-data</literal> command." msgstr "" #. Tag: para #, no-c-format msgid "The OCF class is the most preferred one as it is an industry standard, highly flexible (allowing parameters to be passed to agents in a non-positional manner) and self-describing." msgstr "" #. Tag: para #, no-c-format msgid "For more information, see the reference<footnote><para><ulink url=\"http://www.linux-ha.org/wiki/OCF_Resource_Agents\" /></para></footnote> and <xref linkend=\"ap-ocf\" />." msgstr "" #. Tag: title #, no-c-format msgid "Linux Standard Base" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>LSB</secondary>" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>LSB</primary><secondary>Resources</secondary>" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>Linus Standard Base</primary><secondary>Resources</secondary>" msgstr "" #. Tag: para #, no-c-format msgid "LSB resource agents are those typically found in <filename>/etc/init.d</filename>. Generally they are provided by the OS/distribution and, in order to be used with the cluster, they must conform to the LSB Spec<footnote><para> See <ulink url=\"http://refspecs.linux-foundation.org/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/iniscrptact.html\" /> for the LSB Spec (as it relates to init scripts). </para></footnote>." msgstr "" #. Tag: para #, no-c-format msgid "Many distributions claim LSB compliance but ship with broken init scripts. To see if your init script is LSB-compatible, see the FAQ entry <xref linkend=\"ap-lsb\" />. The most common problems are:" msgstr "" #. Tag: para #, no-c-format msgid "Not implementing the status operation at all" msgstr "" #. Tag: para #, no-c-format msgid "Not observing the correct exit status codes for start/stop/status actions" msgstr "" #. Tag: para #, no-c-format msgid "Starting a started resource returns an error (this violates the LSB spec)" msgstr "" #. Tag: para #, no-c-format msgid "Stopping a stopped resource returns an error (this violates the LSB spec)" msgstr "" #. Tag: title #, no-c-format msgid "Legacy Heartbeat" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>Heartbeat (legacy)</secondary>" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>Heartbeat</primary><secondary>Legacy Resources</secondary>" msgstr "" #. Tag: para #, no-c-format msgid "Version 1 of Heartbeat came with its own style of resource agents and it is highly likely that many people have written their own agents based on its conventions. To enable administrators to continue to use these agents, they are supported by the new cluster manager<footnote> <para>See <ulink url=\"http://wiki.linux-ha.org/HeartbeatResourceAgent\" /> for more information.</para></footnote>." msgstr "" #. Tag: title #, no-c-format msgid "STONITH" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>STONITH</secondary>" msgstr "" #. Tag: indexterm #, no-c-format msgid "<primary>STONITH</primary><secondary>Resources</secondary>" msgstr "" #. Tag: para #, no-c-format msgid "There is also an additional class, STONITH, which is used exclusively for fencing related resources. This is discussed later in <xref linkend=\"ch-stonith\" />." msgstr "" #. Tag: title #, no-c-format msgid "Properties" msgstr "" #. Tag: para #, no-c-format msgid "These values tell the cluster which script to use for the resource, where to find that script and what standards it conforms to." msgstr "" #. Tag: title #, no-c-format msgid "Properties of a Primitive Resource" msgstr "" #. Tag: entry #, no-c-format msgid "Field" msgstr "" #. Tag: entry #, no-c-format msgid "Description" msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>id</primary></indexterm> id" msgstr "" #. Tag: entry #, no-c-format msgid "Your name for the resource" msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>class</primary><secondary>Resource Field</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Field</secondary><tertiary>class</tertiary></indexterm> class" msgstr "" #. Tag: entry #, no-c-format msgid "The standard the script conforms to. Allowed values: <literal>heartbeat</literal>, <literal>lsb</literal>, <literal>ocf</literal>, <literal>stonith</literal>" msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>type</primary><secondary>Resource Field</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Field</secondary><tertiary>type</tertiary></indexterm> type" msgstr "" #. Tag: entry #, no-c-format msgid "The name of the Resource Agent you wish to use. Eg. <emphasis>IPaddr</emphasis> or <emphasis>Filesystem</emphasis>" msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>provider</primary><secondary>Resource Field</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Field</secondary><tertiary>provider</tertiary></indexterm> provider" msgstr "" #. Tag: entry #, no-c-format msgid "The OCF spec allows multiple vendors to supply the same ResourceAgent. To use the OCF resource agents supplied with Heartbeat, you should specify <literal>heartbeat</literal> here." msgstr "" #. Tag: para #, no-c-format msgid "Resource definitions can be queried with the <command>crm_resource</command> tool. For example" msgstr "" #. Tag: screen #, no-c-format msgid "<command>crm_resource --resource Email --query-xml</command>" msgstr "" #. Tag: para #, no-c-format msgid "might produce" msgstr "" #. Tag: title #, no-c-format msgid "An example LSB resource" msgstr "" #. Tag: programlisting #, no-c-format msgid "<primitive id=\"Email\" class=\"lsb\" type=\"exim\"/>\n" " " msgstr "" #. Tag: para #, no-c-format msgid "One of the main drawbacks to LSB resources is that they do not allow any parameters!" msgstr "" #. Tag: para #, no-c-format msgid "Example for an OCF resource:" msgstr "" #. Tag: title #, no-c-format msgid "An example OCF resource" msgstr "" #. Tag: programlisting #, no-c-format msgid "<primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" #. Tag: para #, no-c-format msgid "Or, finally for the equivalent legacy Heartbeat resource:" msgstr "" #. Tag: title #, no-c-format msgid "An example Heartbeat resource" msgstr "" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP-legacy\" class=\"heartbeat\" type=\"IPaddr\">\n" " <instance_attributes id=\"params-public-ip-legacy\">\n" " <nvpair id=\"public-ip-addr-legacy\" name=\"1\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" #. Tag: para #, no-c-format msgid "Heartbeat resources take only ordered and unnamed parameters. The supplied name therefore indicates the order in which they are passed to the script. Only single digit values are allowed." msgstr "" #. Tag: title #, no-c-format msgid "Resource Options" msgstr "" #. Tag: para #, no-c-format msgid "Options are used by the cluster to decide how your resource should behave and can be easily set using the <parameter>--meta</parameter> option of the <command>crm_resource</command> command." msgstr "" #. Tag: title #, no-c-format msgid "Options for a Primitive Resource" msgstr "" #. Tag: entry #, no-c-format msgid "Default" msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>priority</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>priority</tertiary></indexterm> priority" msgstr "" #. Tag: entry #, no-c-format msgid "<literal>0</literal>" msgstr "" #. Tag: entry #, no-c-format msgid "If not all resources can be active, the cluster will stop lower priority resources in order to keep higher priority ones active." msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>target-role</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>target-role</tertiary></indexterm> target-role" msgstr "" #. Tag: entry #, no-c-format msgid "<literal>Started</literal>" msgstr "" #. Tag: para #, no-c-format msgid "What state should the cluster attempt to keep this resource in? Allowed values:" msgstr "" #. Tag: para #, no-c-format msgid "<literal>Stopped</literal> - Force the resource to be stopped" msgstr "" #. Tag: para #, no-c-format msgid "<literal>Started</literal> - Allow the resource to be started (In the case of <link linkend=\"s-resource-multistate\">multi-state</link> resources, they will not promoted to master)" msgstr "" #. Tag: para #, no-c-format msgid "<literal>Master</literal> - Allow the resource to be started and, if appropriate, promoted" msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>is-managed</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>is-managed</tertiary></indexterm> is-managed" msgstr "" #. Tag: entry #, no-c-format msgid "TRUE" msgstr "" #. Tag: entry #, no-c-format msgid "Is the cluster allowed to start and stop the resource? Allowed values: <literal>true</literal>, <literal>false</literal>" msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>resource-stickiness</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>resource-stickiness</tertiary></indexterm> resource-stickiness" msgstr "" #. Tag: entry #, no-c-format msgid "Inherited" msgstr "" #. Tag: entry #, no-c-format msgid "How much does the resource prefer to stay where it is? Defaults to the value of <literal>resource-stickiness</literal> in the <literal>rsc_defaults</literal> section" msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>migration-threshold</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>migration-threshold</tertiary></indexterm> migration-threshold" msgstr "" #. Tag: entry #, no-c-format msgid "<literal>INFINITY</literal> (disabled)" msgstr "" #. Tag: entry #, no-c-format msgid "How many failures may occur for this resource on a node, before this node is marked ineligible to host this resource." msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>failure-timeout</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>failure-timeout</tertiary></indexterm> failure-timeout" msgstr "" #. Tag: entry #, no-c-format msgid "<literal>0</literal> (disabled)" msgstr "" #. Tag: entry #, no-c-format msgid "How many seconds to wait before acting as if the failure had not occurred, and potentially allowing the resource back to the node on which it failed." msgstr "" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>multiple-active</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>multiple-active</tertiary></indexterm> multiple-active" msgstr "" #. Tag: entry #, no-c-format msgid "<literal>stop_start</literal>" msgstr "" #. Tag: para #, no-c-format msgid "What should the cluster do if it ever finds the resource active on more than one node. Allowed values:" msgstr "" #. Tag: para #, no-c-format msgid "<literal>block</literal> - mark the resource as unmanaged" msgstr "" #. Tag: para #, no-c-format msgid "<literal>stop_only</literal> - stop all active instances and leave them that way" msgstr "" #. Tag: para #, no-c-format msgid "<literal>stop_start</literal> - stop all active instances and start the resource in one location only" msgstr "" #. Tag: para #, no-c-format msgid "If you performed the following commands on the previous LSB Email resource" msgstr "" #. Tag: screen #, no-c-format msgid "<command>crm_resource --meta --resource Email --set-parameter priority --property-value 100</command>\n" " <command>crm_resource --meta --resource Email --set-parameter multiple-active --property-value block</command>\n" " " msgstr "" #. Tag: para #, no-c-format msgid "the resulting resource definition would be" msgstr "" #. Tag: title #, no-c-format msgid "An LSB resource with cluster options" msgstr "" #. Tag: programlisting #, no-c-format msgid "<primitive id=\"Email\" class=\"lsb\" type=\"exim\">\n" " <meta_attributes id=\"meta-email\">\n" " <nvpair id=\"email-priority\" name=\"priority\" value=\"100\"/>\n" " <nvpair id=\"email-active\" name=\"multiple-active\" value=\"block\"/>\n" " </meta_attributes>\n" " </primitive> " msgstr "" #. Tag: title #, no-c-format msgid "Setting Global Defaults for Resource Options" msgstr "" #. Tag: para #, no-c-format msgid "To set a default value for a resource option, simply add it to the <literal>rsc_defaults</literal> section with <command>crm_attribute</command>. Thus," msgstr "" #. Tag: para #, no-c-format msgid "<command>crm_attribute --type rsc_defaults --attr-name is-managed --attr-value false</command>" msgstr "" #. Tag: para #, no-c-format msgid "would prevent the cluster from starting or stopping any of the resources in the configuration (unless of course the individual resources were specifically enabled and had <literal>is-managed</literal> set to <literal>true</literal>)." msgstr "" #. Tag: title #, no-c-format msgid "Instance Attributes" msgstr "" #. Tag: para #, no-c-format msgid "The scripts of some resource classes (LSB not being one of them) can be given parameters which determine how they behave and which instance of a service they control." msgstr "" #. Tag: para #, no-c-format msgid "If your resource agent supports parameters, you can add them with the <command>crm_resource</command> command. For instance" msgstr "" #. Tag: programlisting #, no-c-format msgid "<command>crm_resource --resource Public-IP --set-parameter ip --property-value 1.2.3.4</command>" msgstr "" #. Tag: para #, no-c-format msgid "would create an entry in the resource like this:" msgstr "" #. Tag: title #, no-c-format msgid "An example OCF resource with instance attributes" msgstr "" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" #. Tag: para #, no-c-format msgid "For an OCF resource, the result would be an environment variable called <envar>OCF_RESKEY_ip</envar> with a value of <literal>1.2.3.4</literal>." msgstr "" #. Tag: para #, no-c-format msgid "The list of instance attributes supported by an OCF script can be found by calling the resource script with the <parameter>meta-data</parameter> command. The output contains an XML description of all the supported attributes, their purpose and default values." msgstr "" #. Tag: title #, no-c-format msgid "Displaying the metadata for the Dummy resource agent template" msgstr "" #. Tag: programlisting #, no-c-format msgid "<userinput>export OCF_ROOT=/usr/lib/ocf; $OCF_ROOT/resource.d/pacemaker/Dummy meta-data</userinput>\n" " <?xml version=\"1.0\"?>\n" " <!DOCTYPE resource-agent SYSTEM \"ra-api-1.dtd\">\n" " <resource-agent name=\"Dummy\" version=\"0.9\">\n" " <version>1.0</version>\n" " \n" " <longdesc lang=\"en-US\">\n" " This is a Dummy Resource Agent. It does absolutely nothing except \n" " keep track of whether its running or not.\n" " Its purpose in life is for testing and to serve as a template for RA writers.\n" " </longdesc>\n" " <shortdesc lang=\"en-US\">Dummy resource agent</shortdesc>\n" " \n" " <parameters>\n" " <parameter name=\"state\" unique=\"1\">\n" " <longdesc lang=\"en-US\">\n" " Location to store the resource state in.\n" " </longdesc>\n" " <shortdesc lang=\"en-US\">State file</shortdesc>\n" " <content type=\"string\" default=\"/var/run/Dummy-{OCF_RESOURCE_INSTANCE}.state\" />\n" " </parameter>\n" " \n" " <parameter name=\"dummy\" unique=\"0\">\n" " <longdesc lang=\"en-US\"> \n" " Dummy attribute that can be changed to cause a reload\n" " </longdesc>\n" " <shortdesc lang=\"en-US\">Dummy attribute that can be changed to cause a reload</shortdesc>\n" " <content type=\"string\" default=\"blah\" />\n" " </parameter>\n" " </parameters>\n" " \n" " <actions>\n" " <action name=\"start\" timeout=\"90\" />\n" " <action name=\"stop\" timeout=\"100\" />\n" " <action name=\"monitor\" timeout=\"20\" interval=\"10\" depth=\"0\" start-delay=\"0\" />\n" " <action name=\"reload\" timeout=\"90\" />\n" " <action name=\"migrate_to\" timeout=\"100\" />\n" " <action name=\"migrate_from\" timeout=\"90\" />\n" " <action name=\"meta-data\" timeout=\"5\" />\n" " <action name=\"validate-all\" timeout=\"30\" />\n" " </actions>\n" " </resource-agent> " msgstr "" #. Tag: title #, no-c-format msgid "Resource Operations" msgstr "" #. Tag: title #, no-c-format msgid "Monitoring Resources for Failure" msgstr "" #. Tag: para #, no-c-format msgid "By default, the cluster will not ensure your resources are still healthy. To instruct the cluster to do this, you need to add a <literal>monitor</literal> operation to the resource's definition." msgstr "" #. Tag: title #, no-c-format msgid "An OCF resource with a recurring health check" msgstr "" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" " <op id=\"public-ip-check\" name=\"monitor\" interval=\"60s\"/>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" #. Tag: title #, no-c-format msgid "Properties of an Operation" msgstr "" #. Tag: entry #, no-c-format msgid "id" msgstr "" #. Tag: entry #, no-c-format msgid "Your name for the action. Must be unique." msgstr "" #. Tag: entry #, no-c-format msgid "name" msgstr "" #. Tag: entry #, no-c-format msgid "The action to perform. Common values: <literal>monitor</literal>, <literal>start</literal>, <literal>stop</literal>" msgstr "" #. Tag: entry #, no-c-format msgid "interval" msgstr "" #. Tag: entry #, no-c-format msgid "How frequently (in seconds) to perform the operation. Default value: <literal>0</literal>, meaning never." msgstr "" #. Tag: entry #, no-c-format msgid "timeout" msgstr "" #. Tag: entry #, no-c-format msgid "How long to wait before declaring the action has failed." msgstr "" #. Tag: entry #, no-c-format msgid "requires" msgstr "" #. Tag: para #, no-c-format msgid "What conditions need to be satisfied before this action occurs. Allowed values:" msgstr "" #. Tag: para #, no-c-format msgid "<literal>nothing</literal> - The cluster may start this resource at any time" msgstr "" #. Tag: para #, no-c-format msgid "<literal>quorum</literal> - The cluster can only start this resource if a majority of the configured nodes are active" msgstr "" #. Tag: para #, no-c-format msgid "<literal>fencing</literal> - The cluster can only start this resource if a majority of the configured nodes are active <emphasis>and</emphasis> any failed or unknown nodes have been powered off." msgstr "" #. Tag: para #, no-c-format msgid "STONITH resources default to <literal>nothing</literal>, and all others default to <literal>fencing</literal> if STONITH is enabled and <literal>quorum</literal> otherwise." msgstr "" #. Tag: entry #, no-c-format msgid "on-fail" msgstr "" #. Tag: para #, no-c-format msgid "The action to take if this action ever fails. Allowed values:" msgstr "" #. Tag: para #, no-c-format msgid "<literal>ignore</literal> - Pretend the resource did not fail" msgstr "" #. Tag: para #, no-c-format msgid "<literal>block</literal> - Don't perform any further operations on the resource" msgstr "" #. Tag: para #, no-c-format msgid "<literal>stop</literal> - Stop the resource and do not start it elsewhere" msgstr "" #. Tag: para #, no-c-format msgid "<literal>restart</literal> - Stop the resource and start it again (possibly on a different node)" msgstr "" #. Tag: para #, no-c-format msgid "<literal>fence</literal> - STONITH the node on which the resource failed" msgstr "" #. Tag: para #, no-c-format msgid "<literal>standby</literal> - Move <emphasis>all</emphasis> resources away from the node on which the resource failed" msgstr "" #. Tag: para #, no-c-format msgid "The default for the <literal>stop</literal> operation is <literal>fence</literal> when STONITH is enabled and <literal>block</literal> otherwise. All other operations default to <literal>stop</literal>." msgstr "" #. Tag: entry #, no-c-format msgid "enabled" msgstr "" #. Tag: entry #, no-c-format msgid "If <literal>false</literal>, the operation is treated as if it does not exist. Allowed values: <literal>true</literal>, <literal>false</literal>" msgstr "" #. Tag: title #, no-c-format msgid "Setting Global Defaults for Operations" msgstr "" #. Tag: para #, no-c-format msgid "To set a default value for a operation option, simply add it to the <literal>op_defaults</literal> section with <command>crm_attribute</command>. Thus," msgstr "" #. Tag: programlisting #, no-c-format msgid "<command>crm_attribute --type op_defaults --attr-name timeout --attr-value 20s</command>" msgstr "" #. Tag: para #, no-c-format msgid "would default each operation's <literal>timeout</literal> to 20 seconds. If an operation's definition also includes a value for <literal>timeout</literal>, then that value would be used instead (for that operation only)." msgstr "" #. Tag: title #, no-c-format msgid "When Resources Take a Long Time to Start/Stop" msgstr "" #. Tag: para #, no-c-format msgid "There are a number of implicit operations that the cluster will always perform - <literal>start</literal>, <literal>stop</literal> and a non-recurring <literal>monitor</literal> operation (used at startup to check the resource isn't already active). If one of these is taking too long, then you can create an entry for them and simply specify a new value." msgstr "" #. Tag: title #, no-c-format msgid "An OCF resource with custom timeouts for its implicit actions" msgstr "" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" " <op id=\"public-ip-startup\" name=\"monitor\" interval=\"0\" timeout=\"90s\"/>\n" " <op id=\"public-ip-start\" name=\"start\" interval=\"0\" timeout=\"180s\"/>\n" " <op id=\"public-ip-stop\" name=\"stop\" interval=\"0\" timeout=\"15min\"/>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" #. Tag: title #, no-c-format msgid "Multiple Monitor Operations" msgstr "" #. Tag: para #, no-c-format msgid "Provided no two operations (for a single resource) have the same name and interval you can have as many monitor operations as you like. In this way you can do a superficial health check every minute and progressively more intense ones at higher intervals." msgstr "" #. Tag: para #, no-c-format msgid "To tell the resource agent what kind of check to perform, you need to provide each monitor with a different value for a common parameter. The OCF standard creates a special parameter called <envar>OCF_CHECK_LEVEL</envar> for this purpose and dictates that it is \"<emphasis>made available to the resource agent without the normal <envar>OCF_RESKEY_</envar> prefix</emphasis>\"." msgstr "" #. Tag: para #, no-c-format msgid "Whatever name you choose, you can specify it by adding an <literal>instance_attributes</literal> block to the op tag. Note that it is up to each resource agent to look for the parameter and decide how to use it." msgstr "" #. Tag: title #, no-c-format msgid "An OCF resource with two recurring health checks, performing different levels of checks - specified via <literal>OCF_CHECK_LEVEL</literal>." msgstr "" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" " <op id=\"public-ip-health-60\" name=\"monitor\" interval=\"60\">\n" " <instance_attributes id=\"params-public-ip-depth-60\">\n" " <nvpair id=\"public-ip-depth-60\" name=\"OCF_CHECK_LEVEL\" value=\"10\"/>\n" " </instance_attributes>\n" " </op>\n" " <op id=\"public-ip-health-300\" name=\"monitor\" interval=\"300\">\n" " <instance_attributes id=\"params-public-ip-depth-300\">\n" " <nvpair id=\"public-ip-depth-300\" name=\"OCF_CHECK_LEVEL\" value=\"20\"/>\n" " </instance_attributes>\n" " </op>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-level\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" #. Tag: title #, no-c-format msgid "Disabling a Monitor Operation" msgstr "" #. Tag: para #, no-c-format -msgid "The easiest way to stop a recurring monitor is to just delete it. However, there can be times when you only want to disable it temporarily. In such cases, simply add <literal>disabled=\"true\"</literal> to the operation's definition." +msgid "The easiest way to stop a recurring monitor is to just delete it. However, there can be times when you only want to disable it temporarily. In such cases, simply add <literal>enabled=\"false\"</literal> to the operation's definition." msgstr "" #. Tag: title #, no-c-format msgid "Example of an OCF resource with a disabled health check" msgstr "" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" -" <op id=\"public-ip-check\" name=\"monitor\" interval=\"60s\" disabled=\"true\"/>\n" +" <op id=\"public-ip-check\" name=\"monitor\" interval=\"60s\" enabled=\"false\"/>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" #. Tag: para #, no-c-format msgid "This can be achieved from the command-line by executing" msgstr "" #. Tag: programlisting #, no-c-format -msgid "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" disabled=\"true\"/>'</command>" +msgid "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" enabled=\"false\"/>'</command>" msgstr "" #. Tag: para #, no-c-format msgid "Once you've done whatever you needed to do, you can then re-enable it with" msgstr "" #. Tag: programlisting #, no-c-format -msgid "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" disabled=\"false\"/>'</command>" +msgid "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" enabled=\"true\"/>'</command>" msgstr "" diff --git a/doc/Pacemaker_Explained/ro-RO/Ch-Resources.po b/doc/Pacemaker_Explained/ro-RO/Ch-Resources.po index c4e1a88e4b..bf00e81ec7 100644 --- a/doc/Pacemaker_Explained/ro-RO/Ch-Resources.po +++ b/doc/Pacemaker_Explained/ro-RO/Ch-Resources.po @@ -1,1067 +1,1067 @@ msgid "" msgstr "" "Project-Id-Version: Pacemaker 1.1\n" "POT-Creation-Date: 2012-01-01T17:48:32\n" "PO-Revision-Date: 2012-01-01T17:48:32\n" "Last-Translator: Dan Frîncu <df.cluster@gmail.com>\n" "Language-Team: None\n" "MIME-Version: 1.0\n" "Content-Type: application/x-publican; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. Tag: title #, no-c-format msgid "Cluster Resources" msgstr "Resursele Clusterului" #. Tag: title #, no-c-format msgid "What is a Cluster Resource" msgstr "Ce este o Resursă de Cluster" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>Description</secondary>" msgstr "<primary>Descrierea</primary><secondary>Resursei</secondary>" #. Tag: para #, no-c-format msgid "The role of a resource agent is to abstract the service it provides and present a consistent view to the cluster, which allows the cluster to be agnostic about the resources it manages. The cluster doesn't need to understand how the resource works because it relies on the resource agent to do the right thing when given a <literal>start</literal>, <literal>stop</literal> or <literal>monitor</literal> command." msgstr "Rolul agentului de resursă este de a abstractiza serviciul pe care îl furnizează şi de a prezenta o viziune consistentă clusterului, care îi permite clusterului să fie agnostic cu resursele pe care le gestionează. Clusterul nu trebuie să înţeleagă cum funcţionează resursa pentru că se bazează pe agentul de resursă să efectueze ceea ce trebuie atunci când îi este trimisă o comandă de <literal>start</literal>, <literal>stop</literal> sau <literal>monitor</literal>." #. Tag: para #, no-c-format msgid "For this reason it is crucial that resource agents are well tested." msgstr "Din acest motiv este imperativ ca agenţii de resursă să fie testaţi corespunzător." #. Tag: para #, no-c-format msgid "Typically resource agents come in the form of shell scripts, however they can be written using any technology (such as C, Python or Perl) that the author is comfortable with." msgstr "În mod normal agenţii de resursă vin sub forma de scripturi de shell, însă aceştia pot fi scrişi folosind orice limbaj de programare (cum ar fi C, Python sau Perl) cu care este confortabil autorul." #. Tag: title #, no-c-format msgid "Supported Resource Classes" msgstr "Clase de Resurse Suportate" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>Classes</secondary>" msgstr "<primary>Clase de</primary><secondary>Resurse</secondary>" #. Tag: para #, no-c-format msgid "There are three basic classes of agents supported by Pacemaker. In order of encouraged usage they are:" msgstr "Există trei clase de bază de agenţi suportate de Pacemaker. În ordinea în care este încurajată folosirea acestora ele sunt:" #. Tag: title #, no-c-format msgid "Open Cluster Framework" msgstr "Open Cluster Framework" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>OCF</secondary>" msgstr "<primary>Resursă</primary><secondary>OCF</secondary>" #. Tag: indexterm #, no-c-format msgid "<primary>OCF</primary><secondary>Resources</secondary>" msgstr "<primary>Resurse</primary><secondary>OCF</secondary>" #. Tag: indexterm #, no-c-format msgid "<primary>Open Cluster Framework</primary><secondary>Resources</secondary>" msgstr "<primary>Resurse</primary><secondary>Open Cluster Framework</secondary>" #. Tag: para #, no-c-format msgid "The OCF Spec<footnote><para><ulink url=\"http://www.opencf.org/cgi-bin/viewcvs.cgi/specs/ra/resource-agent-api.txt?rev=HEAD\" /> - at least as it relates to resource agents.</para></footnote>'<footnote><para>Note: The Pacemaker implementation has been somewhat extended from the OCF Specs, but none of those changes are incompatible with the original OCF specification.</para></footnote> is basically an extension of the Linux Standard Base conventions for init scripts to" msgstr "Spec-ul OCF<footnote><para><ulink url=\"http://www.opencf.org/cgi-bin/viewcvs.cgi/specs/ra/resource-agent-api.txt?rev=HEAD\" /> - cel puțin partea care se leagă de agenții de resursă.</para></footnote>'<footnote><para>Notă: Implementarea Pacemaker a fost oarecum extinsă din Specificațiile OCF, dar nici una din acele modificări nu sunt incompatibile cu specificația originală OCF.</para></footnote> este în principiu o extensie a convențiilor Linux Standard Base folosite pentru scripturile de init ca să" #. Tag: para #, no-c-format msgid "support parameters," msgstr "suporte parametri" #. Tag: para #, no-c-format msgid "make them self describing and" msgstr "să îi facă auto descriptivi şi" #. Tag: para #, no-c-format msgid "extensible" msgstr "extensibili" #. Tag: para #, no-c-format msgid "OCF specs have strict definitions of the exit codes that actions must return<footnote> <para>Included with the cluster is the ocf-tester script, which can be useful in this regard.</para> </footnote>. The cluster follows these specifications exactly, and giving the wrong exit code will cause the cluster to behave in ways you will likely find puzzling and annoying. In particular, the cluster needs to distinguish a completely stopped resource from one which is in some erroneous and indeterminate state." msgstr "Specificaţiile OCF au definiţii stricte asupra căror coduri de ieşire trebuie să returneze acţiunile<footnote> <para>Inclus cu clusterul este scriptul ocf-tester care poate fi folositor în această privinţă.</para> </footnote>. Clusterul urmează aceste specificaţii întocmai, iar ieşirea din execuţie cu codul de eroare greşit va cauza clusterul să se comporte în feluri pe care le puteţi găsi enervante şi lipsite de sens. În mod special, clusterul trebuie să poată distinge între o resursă oprită complet şi una care se află într-o stare eronată sau nedeterminată." #. Tag: para #, no-c-format msgid "Parameters are passed to the script as environment variables, with the special prefix <envar>OCF_RESKEY_</envar>. So, a parameter which the user thinks of as ip it will be passed to the script as <envar>OCF_RESKEY_ip</envar>. The number and purpose of the parameters is completely arbitrary, however your script should advertise any that it supports using the <literal>meta-data</literal> command." msgstr "Parametrii sunt pasaţi scriptului ca variabile de mediu, cu prefixul special <envar>OCF_RESKEY_</envar>. Deci, un parametru pe care utilizatorul îl consideră ca fiind ip va fi pasat către script ca <envar>OCF_RESKEY_ip</envar>. Numărul şi scopul parametrilor este complet arbitrar, însă scriptul vostru ar trebui să îi anunţe pe toţi pe care îi suportă folosind comanda <literal>meta-data</literal>." #. Tag: para #, no-c-format msgid "The OCF class is the most preferred one as it is an industry standard, highly flexible (allowing parameters to be passed to agents in a non-positional manner) and self-describing." msgstr "Clasa OCF este cea mai preferată din moment ce este un standard al industriei, foarte flexibilă (permiţând parametrii să fie pasaţi agenţilor într-o manieră care nu ţine cont de poziţia acestora) şi auto-descriptivă." #. Tag: para #, no-c-format msgid "For more information, see the reference<footnote><para><ulink url=\"http://www.linux-ha.org/wiki/OCF_Resource_Agents\" /></para></footnote> and <xref linkend=\"ap-ocf\" />." msgstr "Pentru mai multe informaţii, vedeţi referința<footnote><para><ulink url=\"http://www.linux-ha.org/wiki/OCF_Resource_Agents\" /></para></footnote> şi <xref linkend=\"ap-ocf\" />." #. Tag: title #, no-c-format msgid "Linux Standard Base" msgstr "Linux Standard Base" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>LSB</secondary>" msgstr "<primary>Resursă</primary><secondary>LSB</secondary>" #. Tag: indexterm #, no-c-format msgid "<primary>LSB</primary><secondary>Resources</secondary>" msgstr "<primary>Resurse</primary><secondary>LSB</secondary>" #. Tag: indexterm #, no-c-format msgid "<primary>Linus Standard Base</primary><secondary>Resources</secondary>" msgstr "<primary>Resurse</primary><secondary>Linus Standard Base</secondary>" #. Tag: para #, no-c-format msgid "LSB resource agents are those typically found in <filename>/etc/init.d</filename>. Generally they are provided by the OS/distribution and, in order to be used with the cluster, they must conform to the LSB Spec<footnote><para> See <ulink url=\"http://refspecs.linux-foundation.org/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/iniscrptact.html\" /> for the LSB Spec (as it relates to init scripts). </para></footnote>." msgstr "Agenţii de resursă LSB sunt cei găsiţi în <filename>/etc/init.d</filename>. În mod normal aceştia sunt furnizaţi de către OS/distribuţie şi pentru a putea fi folosiţi împreună cu clusterul, trebuie să se conforme Specificaţiilor LSB<footnote><para> Vedeți <ulink url=\"http://refspecs.linux-foundation.org/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/iniscrptact.html\" /> pentru Spec-ul LSB (partea care se leagă de scripturi de init). </para></footnote>." #. Tag: para #, no-c-format msgid "Many distributions claim LSB compliance but ship with broken init scripts. To see if your init script is LSB-compatible, see the FAQ entry <xref linkend=\"ap-lsb\" />. The most common problems are:" msgstr "Multe distribuţii afirmă compatibilitatea LSB dar livrează scripturi de init nefuncţionale din acest punct de vedere. Pentru a vedea dacă scriptul vostru de init este compatibil LSB, vedeţi intrarea din FAQ referitoare la <xref linkend=\"ap-lsb\" />. Cele mai comune probleme sunt:" #. Tag: para #, no-c-format msgid "Not implementing the status operation at all" msgstr "Neimplementarea în vreun fel a operaţiunii status" #. Tag: para #, no-c-format msgid "Not observing the correct exit status codes for start/stop/status actions" msgstr "Neobservarea status-urilor corecte de ieşire pentru acţiuni start/stop/status" #. Tag: para #, no-c-format msgid "Starting a started resource returns an error (this violates the LSB spec)" msgstr "Pornirea unei resurse deja pornite returnează o eroare (acest aspect încalcă specificaţia LSB)" #. Tag: para #, no-c-format msgid "Stopping a stopped resource returns an error (this violates the LSB spec)" msgstr "Oprirea unei resurse deja oprită returnează o eroare (acest aspect încalcă specificaţia LSB)" #. Tag: title #, no-c-format msgid "Legacy Heartbeat" msgstr "Depreciat Heartbeat" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>Heartbeat (legacy)</secondary>" msgstr "<primary>Resursă</primary><secondary>Heartbeat (depreciat)</secondary>" #. Tag: indexterm #, no-c-format msgid "<primary>Heartbeat</primary><secondary>Legacy Resources</secondary>" msgstr "<primary>Resurse Depreciate</primary><secondary>Heartbeat</secondary>" #. Tag: para #, no-c-format msgid "Version 1 of Heartbeat came with its own style of resource agents and it is highly likely that many people have written their own agents based on its conventions. To enable administrators to continue to use these agents, they are supported by the new cluster manager<footnote> <para>See <ulink url=\"http://wiki.linux-ha.org/HeartbeatResourceAgent\" /> for more information.</para></footnote>." msgstr "Versiunea 1 de Heartbeat venea cu propriul stil de agenţi de resursă şi este foarte probabil că mulţi oameni şi-au scris proprii agenţi de resursă pe baza convenţiilor acestuia. Pentru a permite administratorilor să continue folosirea acestor agenţi, aceştia sunt suportaţi de către noul manager de cluster<footnote> <para>Vedeți <ulink url=\"http://wiki.linux-ha.org/HeartbeatResourceAgent\" /> pentru mai multe informații.</para></footnote>." #. Tag: title #, no-c-format msgid "STONITH" msgstr "STONITH" #. Tag: indexterm #, no-c-format msgid "<primary>Resource</primary><secondary>STONITH</secondary>" msgstr "<primary>Resursă</primary><secondary>STONITH</secondary>" #. Tag: indexterm #, no-c-format msgid "<primary>STONITH</primary><secondary>Resources</secondary>" msgstr "<primary>Resurse</primary><secondary>STONITH</secondary>" #. Tag: para #, no-c-format msgid "There is also an additional class, STONITH, which is used exclusively for fencing related resources. This is discussed later in <xref linkend=\"ch-stonith\" />." msgstr "Mai există o clasă adiţională, STONITH, care este folosită exclusiv pentru resurse relevante în procesul de evacuare forțată. Acest aspect este discutat mai târziu în <xref linkend=\"ch-stonith\" />." #. Tag: title #, no-c-format msgid "Properties" msgstr "Proprietăţi" #. Tag: para #, no-c-format msgid "These values tell the cluster which script to use for the resource, where to find that script and what standards it conforms to." msgstr "Aceste valori îi spun clusterului care script să îl folosească pentru resursă, unde să găsească acel script şi care sunt standardele la care acesta aderă." #. Tag: title #, no-c-format msgid "Properties of a Primitive Resource" msgstr "Proprietăţile unei Resurse Primitive" #. Tag: entry #, no-c-format msgid "Field" msgstr "Câmp" #. Tag: entry #, no-c-format msgid "Description" msgstr "Descriere" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>id</primary></indexterm> id" msgstr "<indexterm significance=\"preferred\"><primary>id</primary></indexterm> id" #. Tag: entry #, no-c-format msgid "Your name for the resource" msgstr "Numele pe care îl daţi resursei" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>class</primary><secondary>Resource Field</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Field</secondary><tertiary>class</tertiary></indexterm> class" msgstr "<indexterm significance=\"preferred\"><primary>class</primary><secondary>Câmpul Resursei</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Câmpul</primary><secondary>Resursei</secondary><tertiary>class</tertiary></indexterm> class" #. Tag: entry #, no-c-format msgid "The standard the script conforms to. Allowed values: <literal>heartbeat</literal>, <literal>lsb</literal>, <literal>ocf</literal>, <literal>stonith</literal>" msgstr "Standardul la care aderă scriptul. Valori permise: <literal>heartbeat</literal>, <literal>lsb</literal>, <literal>ocf</literal>, <literal>stonith</literal>" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>type</primary><secondary>Resource Field</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Field</secondary><tertiary>type</tertiary></indexterm> type" msgstr "<indexterm significance=\"preferred\"><primary>type</primary><secondary>Câmpul Resursei</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Câmpul</primary><secondary>Resursei</secondary><tertiary>type</tertiary></indexterm> type" #. Tag: entry #, no-c-format msgid "The name of the Resource Agent you wish to use. Eg. <emphasis>IPaddr</emphasis> or <emphasis>Filesystem</emphasis>" msgstr "Numele Agentului de Resursă pe care doriţi să îl folosiţi. ex. <emphasis>IPaddr</emphasis> or <emphasis>Filesystem</emphasis>" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>provider</primary><secondary>Resource Field</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Field</secondary><tertiary>provider</tertiary></indexterm> provider" msgstr "<indexterm significance=\"preferred\"><primary>provider</primary><secondary>Câmpul Resursei</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Câmpul</primary><secondary>Resursei</secondary><tertiary>provider</tertiary></indexterm> provider" #. Tag: entry #, no-c-format msgid "The OCF spec allows multiple vendors to supply the same ResourceAgent. To use the OCF resource agents supplied with Heartbeat, you should specify <literal>heartbeat</literal> here." msgstr "Specificaţia OCF permite mai multor entităţi să furnizeze acelaşi Agent de Resursă. Pentru a folosi agenţii de resursă OCF furnizaţi împreună cu Heartbeat, ar trebui să specificaţi <literal>heartbeat</literal> aici." #. Tag: para #, no-c-format msgid "Resource definitions can be queried with the <command>crm_resource</command> tool. For example" msgstr "Definiţiile resurselor pot fi interogate cu utilitarul <command>crm_resource</command>. De exemplu" #. Tag: screen #, no-c-format msgid "<command>crm_resource --resource Email --query-xml</command>" msgstr "<command>crm_resource --resource Email --query-xml</command>" #. Tag: para #, no-c-format msgid "might produce" msgstr "ar putea produce" #. Tag: title #, no-c-format msgid "An example LSB resource" msgstr "Un exemplu de resursă LSB" #. Tag: programlisting #, no-c-format msgid "<primitive id=\"Email\" class=\"lsb\" type=\"exim\"/>\n" " " msgstr "" "<primitive id=\"Email\" class=\"lsb\" type=\"exim\"/>\n" " " #. Tag: para #, no-c-format msgid "One of the main drawbacks to LSB resources is that they do not allow any parameters!" msgstr "Unul din principalele aspecte negative ale resurselor LSB este acela că nu permit parametri!" #. Tag: para #, no-c-format msgid "Example for an OCF resource:" msgstr "Exemplu pentru o resursă OCF:" #. Tag: title #, no-c-format msgid "An example OCF resource" msgstr "Un exemplu de resursă OCF" #. Tag: programlisting #, no-c-format msgid "<primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" "<primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " #. Tag: para #, no-c-format msgid "Or, finally for the equivalent legacy Heartbeat resource:" msgstr "sau în sfârşit pentru echivalentul unei resurse depreciate Heartbeat: " #. Tag: title #, no-c-format msgid "An example Heartbeat resource" msgstr "Un exemplu de resursă Heartbeat" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP-legacy\" class=\"heartbeat\" type=\"IPaddr\">\n" " <instance_attributes id=\"params-public-ip-legacy\">\n" " <nvpair id=\"public-ip-addr-legacy\" name=\"1\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" " <primitive id=\"Public-IP-legacy\" class=\"heartbeat\" type=\"IPaddr\">\n" " <instance_attributes id=\"params-public-ip-legacy\">\n" " <nvpair id=\"public-ip-addr-legacy\" name=\"1\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " #. Tag: para #, no-c-format msgid "Heartbeat resources take only ordered and unnamed parameters. The supplied name therefore indicates the order in which they are passed to the script. Only single digit values are allowed." msgstr "Resursele Heartbeat primesc doar parametri ordonaţi şi fără denumire. Numele furnizat indică prin urmare ordinea în care sunt pasaţi către script. Doar valori formate dintr-o singură cifră sunt permise." #. Tag: title #, no-c-format msgid "Resource Options" msgstr "Opţiuni ale Resurselor" #. Tag: para #, no-c-format msgid "Options are used by the cluster to decide how your resource should behave and can be easily set using the <parameter>--meta</parameter> option of the <command>crm_resource</command> command." msgstr "Opţiunile sunt folosite de către cluster pentru a decide cum ar trebui să se comporte resursa voastră şi pot fi setate facil folosind opţiunea <parameter>--meta</parameter> a comenzii <command>crm_resource</command>." #. Tag: title #, no-c-format msgid "Options for a Primitive Resource" msgstr "Opţiuni pentru o Resursă Primitivă" #. Tag: entry #, no-c-format msgid "Default" msgstr "Valoarea implicită" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>priority</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>priority</tertiary></indexterm> priority" msgstr "<indexterm significance=\"preferred\"><primary>priority</primary><secondary>Opțiunea Resursei</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Opțiunea</primary><secondary>Resursei</secondary><tertiary>priority</tertiary></indexterm> priority" #. Tag: entry #, no-c-format msgid "<literal>0</literal>" msgstr "<literal>0</literal>" #. Tag: entry #, no-c-format msgid "If not all resources can be active, the cluster will stop lower priority resources in order to keep higher priority ones active." msgstr "Dacă nu pot fi active toate resursele, clusterul va opri resursele cu prioritate mai mică pentru a păstra resursele cu o prioritate mai mare active." #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>target-role</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>target-role</tertiary></indexterm> target-role" msgstr "<indexterm significance=\"preferred\"><primary>target-role</primary><secondary>Opțiunea Resursei</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Opțiunea</primary><secondary>Resursei</secondary><tertiary>target-role</tertiary></indexterm> target-role" #. Tag: entry #, no-c-format msgid "<literal>Started</literal>" msgstr "<literal>Started</literal>" #. Tag: para #, no-c-format msgid "What state should the cluster attempt to keep this resource in? Allowed values:" msgstr "În ce stare ar trebui să încerce clusterul să menţină această resursă? Valori permise:" #. Tag: para #, no-c-format msgid "<literal>Stopped</literal> - Force the resource to be stopped" msgstr "<literal>Stopped</literal> - Forţează resursa să fie oprită" #. Tag: para #, no-c-format msgid "<literal>Started</literal> - Allow the resource to be started (In the case of <link linkend=\"s-resource-multistate\">multi-state</link> resources, they will not promoted to master)" msgstr "<literal>Started</literal> - Permite resursei să fie pornită (În cazul resurselor cu <link linkend=\"s-resource-multistate\">multi-state</link>, acestea nu vor fi promovate la master)" #. Tag: para #, no-c-format msgid "<literal>Master</literal> - Allow the resource to be started and, if appropriate, promoted" msgstr "<literal>Master</literal> - Permite resursei să fie pornită, iar dacă este adecvat, promovată" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>is-managed</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>is-managed</tertiary></indexterm> is-managed" msgstr "<indexterm significance=\"preferred\"><primary>is-managed</primary><secondary>Opțiunea Resursei</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Opțiunea</primary><secondary>Resursei</secondary><tertiary>is-managed</tertiary></indexterm> is-managed" #. Tag: entry #, no-c-format msgid "TRUE" msgstr "TRUE" #. Tag: entry #, no-c-format msgid "Is the cluster allowed to start and stop the resource? Allowed values: <literal>true</literal>, <literal>false</literal>" msgstr "Îi este permis clusterului să pornească şi să oprească resursa? Valori permise: <literal>true</literal>, <literal>false</literal>" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>resource-stickiness</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>resource-stickiness</tertiary></indexterm> resource-stickiness" msgstr "<indexterm significance=\"preferred\"><primary>resource-stickiness</primary><secondary>Opțiunea Resursei</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Opțiunea</primary><secondary>Resursei</secondary><tertiary>resource-stickiness</tertiary></indexterm> resource-stickiness" #. Tag: entry #, no-c-format msgid "Inherited" msgstr "Moştenită" #. Tag: entry #, no-c-format msgid "How much does the resource prefer to stay where it is? Defaults to the value of <literal>resource-stickiness</literal> in the <literal>rsc_defaults</literal> section" msgstr "Cât de mult preferă resursa să rămână acolo unde este? Valoarea implicită este cea a <literal>resource-stickiness</literal> din secţiunea <literal>rsc_defaults</literal>" #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>migration-threshold</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>migration-threshold</tertiary></indexterm> migration-threshold" msgstr "<indexterm significance=\"preferred\"><primary>migration-threshold</primary><secondary>Opțiunea Resursei</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Opțiunea</primary><secondary>Resursei</secondary><tertiary>migration-threshold</tertiary></indexterm> migration-threshold" #. Tag: entry #, no-c-format msgid "<literal>INFINITY</literal> (disabled)" msgstr "<literal>INFINITY</literal> (dezactivat)" #. Tag: entry #, no-c-format msgid "How many failures may occur for this resource on a node, before this node is marked ineligible to host this resource." msgstr "Câte eşecuri ar trebui să se întâmple acestei resurse pe un nod înainte de face nodul ineligibil de a mai găzdui această resursă." #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>failure-timeout</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>failure-timeout</tertiary></indexterm> failure-timeout" msgstr "<indexterm significance=\"preferred\"><primary>failure-timeout</primary><secondary>Opțiunea Resursei</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Opțiunea</primary><secondary>Resursei</secondary><tertiary>failure-timeout</tertiary></indexterm> failure-timeout" #. Tag: entry #, no-c-format msgid "<literal>0</literal> (disabled)" msgstr "<literal>0</literal> (dezactivat)" #. Tag: entry #, no-c-format msgid "How many seconds to wait before acting as if the failure had not occurred, and potentially allowing the resource back to the node on which it failed." msgstr "Câte secunde să aştepte înainte să se comporte ca şi cum eşecul nu s-ar fi întâmplat (şi potenţial să permită resursei să revină pe nodul pe care a eşuat)." #. Tag: entry #, no-c-format msgid "<indexterm significance=\"preferred\"><primary>multiple-active</primary><secondary>Resource Option</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Resource</primary><secondary>Option</secondary><tertiary>multiple-active</tertiary></indexterm> multiple-active" msgstr "<indexterm significance=\"preferred\"><primary>multiple-active</primary><secondary>Opțiunea Resursei</secondary></indexterm> <indexterm significance=\"preferred\"><primary>Opțiunea</primary><secondary>Resursei</secondary><tertiary>multiple-active</tertiary></indexterm> multiple-active" #. Tag: entry #, no-c-format msgid "<literal>stop_start</literal>" msgstr "<literal>stop_start</literal>" #. Tag: para #, no-c-format msgid "What should the cluster do if it ever finds the resource active on more than one node. Allowed values:" msgstr "Ce ar trebui să realizeze clusterul dacă găseşte vreodată o resursă activă pe mai mult de un nod. Valori permise:" #. Tag: para #, no-c-format msgid "<literal>block</literal> - mark the resource as unmanaged" msgstr "<literal>block</literal> - marchează resursa ca fiind negestionată" #. Tag: para #, no-c-format msgid "<literal>stop_only</literal> - stop all active instances and leave them that way" msgstr "<literal>stop_only</literal> - opreşte toate instanţele active şi lasă-le în acest fel" #. Tag: para #, no-c-format msgid "<literal>stop_start</literal> - stop all active instances and start the resource in one location only" msgstr "<literal>stop_start</literal> - opreşte toate instanţele active şi porneşte resursa doar într-o singură locaţie" #. Tag: para #, no-c-format msgid "If you performed the following commands on the previous LSB Email resource" msgstr "Dacă aţi efectuat următoarele comenzi pe resursa LSB Email anterioară" #. Tag: screen #, no-c-format msgid "<command>crm_resource --meta --resource Email --set-parameter priority --property-value 100</command>\n" " <command>crm_resource --meta --resource Email --set-parameter multiple-active --property-value block</command>\n" " " msgstr "" "<command>crm_resource --meta --resource Email --set-parameter priority --property-value 100</command>\n" " <command>crm_resource --meta --resource Email --set-parameter multiple-active --property-value block</command>\n" " " #. Tag: para #, no-c-format msgid "the resulting resource definition would be" msgstr "definiţia rezultantă a resursei ar fi" #. Tag: title #, no-c-format msgid "An LSB resource with cluster options" msgstr "O resursă LSB cu opţiuni ale clusterului" #. Tag: programlisting #, no-c-format msgid "<primitive id=\"Email\" class=\"lsb\" type=\"exim\">\n" " <meta_attributes id=\"meta-email\">\n" " <nvpair id=\"email-priority\" name=\"priority\" value=\"100\"/>\n" " <nvpair id=\"email-active\" name=\"multiple-active\" value=\"block\"/>\n" " </meta_attributes>\n" " </primitive> " msgstr "" "<primitive id=\"Email\" class=\"lsb\" type=\"exim\">\n" " <meta_attributes id=\"meta-email\">\n" " <nvpair id=\"email-priority\" name=\"priority\" value=\"100\"/>\n" " <nvpair id=\"email-active\" name=\"multiple-active\" value=\"block\"/>\n" " </meta_attributes>\n" " </primitive> " #. Tag: title #, no-c-format msgid "Setting Global Defaults for Resource Options" msgstr "Setarea de Valori Implicite Globale pentru Opţiunile Clusterului" #. Tag: para #, no-c-format msgid "To set a default value for a resource option, simply add it to the <literal>rsc_defaults</literal> section with <command>crm_attribute</command>. Thus," msgstr "Pentru a seta o valoare implicită pentru o opţiune a resursei, pur şi simplu adăugaţi-o la secţiunea <literal>rsc_defaults</literal> cu <command>crm_attribute</command>. Astfel," #. Tag: para #, no-c-format msgid "<command>crm_attribute --type rsc_defaults --attr-name is-managed --attr-value false</command>" msgstr "<command>crm_attribute --type rsc_defaults --attr-name is-managed --attr-value false</command>" #. Tag: para #, no-c-format msgid "would prevent the cluster from starting or stopping any of the resources in the configuration (unless of course the individual resources were specifically enabled and had <literal>is-managed</literal> set to <literal>true</literal>)." msgstr "ar preveni clusterul de a porni sau opri orice resurse din configuraţie (cu excepţia cazului când resursele individuale au fost activate în mod specific şi aveau <literal>is-managed</literal> setat pe <literal>true</literal>)." #. Tag: title #, no-c-format msgid "Instance Attributes" msgstr "Atributele Instanţelor" #. Tag: para #, no-c-format msgid "The scripts of some resource classes (LSB not being one of them) can be given parameters which determine how they behave and which instance of a service they control." msgstr "Scripturile unor clase de resurse (LSB nefiind una dintre acestea) pot primi parametri care determină cum se comportă şi care instanţe ale unui serviciu controlează acestea." #. Tag: para #, no-c-format msgid "If your resource agent supports parameters, you can add them with the <command>crm_resource</command> command. For instance" msgstr "Dacă agentul vostru de resursă suportă parametri, îi puteţi adăuga cu comanda <command>crm_resource</command>. De exemplu" #. Tag: programlisting #, no-c-format msgid "<command>crm_resource --resource Public-IP --set-parameter ip --property-value 1.2.3.4</command>" msgstr "<command>crm_resource --resource Public-IP --set-parameter ip --property-value 1.2.3.4</command>" #. Tag: para #, no-c-format msgid "would create an entry in the resource like this:" msgstr "ar crea o intrare în resursă precum aceasta:" #. Tag: title #, no-c-format msgid "An example OCF resource with instance attributes" msgstr "Un exemplu de resursă OCF cu atribute de instanţă" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " #. Tag: para #, no-c-format msgid "For an OCF resource, the result would be an environment variable called <envar>OCF_RESKEY_ip</envar> with a value of <literal>1.2.3.4</literal>." msgstr "Pentru o resursă OCF, rezultatul ar fi o variabilă de mediu numită <envar>OCF_RESKEY_ip</envar> cu o valoare de <literal>1.2.3.4</literal>." #. Tag: para #, no-c-format msgid "The list of instance attributes supported by an OCF script can be found by calling the resource script with the <parameter>meta-data</parameter> command. The output contains an XML description of all the supported attributes, their purpose and default values." msgstr "Lista de atribute de instanţă suportate de un script OCF poate fi găsită apelând scriptul resursei cu comanda <parameter>meta-data</parameter>. Rezultatul de ieşire conţine o descriere XML a tuturor atributelor suportate, scopul acestora şi valori implicite." #. Tag: title #, no-c-format msgid "Displaying the metadata for the Dummy resource agent template" msgstr "Afişarea metadata pentru template-ul agentului de resursă Dummy" #. Tag: programlisting #, no-c-format msgid "<userinput>export OCF_ROOT=/usr/lib/ocf; $OCF_ROOT/resource.d/pacemaker/Dummy meta-data</userinput>\n" " <?xml version=\"1.0\"?>\n" " <!DOCTYPE resource-agent SYSTEM \"ra-api-1.dtd\">\n" " <resource-agent name=\"Dummy\" version=\"0.9\">\n" " <version>1.0</version>\n" " \n" " <longdesc lang=\"en-US\">\n" " This is a Dummy Resource Agent. It does absolutely nothing except \n" " keep track of whether its running or not.\n" " Its purpose in life is for testing and to serve as a template for RA writers.\n" " </longdesc>\n" " <shortdesc lang=\"en-US\">Dummy resource agent</shortdesc>\n" " \n" " <parameters>\n" " <parameter name=\"state\" unique=\"1\">\n" " <longdesc lang=\"en-US\">\n" " Location to store the resource state in.\n" " </longdesc>\n" " <shortdesc lang=\"en-US\">State file</shortdesc>\n" " <content type=\"string\" default=\"/var/run/Dummy-{OCF_RESOURCE_INSTANCE}.state\" />\n" " </parameter>\n" " \n" " <parameter name=\"dummy\" unique=\"0\">\n" " <longdesc lang=\"en-US\"> \n" " Dummy attribute that can be changed to cause a reload\n" " </longdesc>\n" " <shortdesc lang=\"en-US\">Dummy attribute that can be changed to cause a reload</shortdesc>\n" " <content type=\"string\" default=\"blah\" />\n" " </parameter>\n" " </parameters>\n" " \n" " <actions>\n" " <action name=\"start\" timeout=\"90\" />\n" " <action name=\"stop\" timeout=\"100\" />\n" " <action name=\"monitor\" timeout=\"20\" interval=\"10\" depth=\"0\" start-delay=\"0\" />\n" " <action name=\"reload\" timeout=\"90\" />\n" " <action name=\"migrate_to\" timeout=\"100\" />\n" " <action name=\"migrate_from\" timeout=\"90\" />\n" " <action name=\"meta-data\" timeout=\"5\" />\n" " <action name=\"validate-all\" timeout=\"30\" />\n" " </actions>\n" " </resource-agent> " msgstr "" "<userinput>export OCF_ROOT=/usr/lib/ocf; $OCF_ROOT/resource.d/pacemaker/Dummy meta-data</userinput>\n" " <?xml version=\"1.0\"?>\n" " <!DOCTYPE resource-agent SYSTEM \"ra-api-1.dtd\">\n" " <resource-agent name=\"Dummy\" version=\"0.9\">\n" " <version>1.0</version>\n" " \n" " <longdesc lang=\"en-US\">\n" " This is a Dummy Resource Agent. It does absolutely nothing except \n" " keep track of whether its running or not.\n" " Its purpose in life is for testing and to serve as a template for RA writers.\n" " </longdesc>\n" " <shortdesc lang=\"en-US\">Dummy resource agent</shortdesc>\n" " \n" " <parameters>\n" " <parameter name=\"state\" unique=\"1\">\n" " <longdesc lang=\"en-US\">\n" " Location to store the resource state in.\n" " </longdesc>\n" " <shortdesc lang=\"en-US\">State file</shortdesc>\n" " <content type=\"string\" default=\"/var/run/Dummy-{OCF_RESOURCE_INSTANCE}.state\" />\n" " </parameter>\n" " \n" " <parameter name=\"dummy\" unique=\"0\">\n" " <longdesc lang=\"en-US\"> \n" " Dummy attribute that can be changed to cause a reload\n" " </longdesc>\n" " <shortdesc lang=\"en-US\">Dummy attribute that can be changed to cause a reload</shortdesc>\n" " <content type=\"string\" default=\"blah\" />\n" " </parameter>\n" " </parameters>\n" " \n" " <actions>\n" " <action name=\"start\" timeout=\"90\" />\n" " <action name=\"stop\" timeout=\"100\" />\n" " <action name=\"monitor\" timeout=\"20\" interval=\"10\" depth=\"0\" start-delay=\"0\" />\n" " <action name=\"reload\" timeout=\"90\" />\n" " <action name=\"migrate_to\" timeout=\"100\" />\n" " <action name=\"migrate_from\" timeout=\"90\" />\n" " <action name=\"meta-data\" timeout=\"5\" />\n" " <action name=\"validate-all\" timeout=\"30\" />\n" " </actions>\n" " </resource-agent> " #. Tag: title #, no-c-format msgid "Resource Operations" msgstr "Operaţiile Resurselor" #. Tag: title #, no-c-format msgid "Monitoring Resources for Failure" msgstr "Monitorizarea Resurselor pentru Defecţiuni" #. Tag: para #, no-c-format msgid "By default, the cluster will not ensure your resources are still healthy. To instruct the cluster to do this, you need to add a <literal>monitor</literal> operation to the resource's definition." msgstr "În mod implicit, clusterul nu va asigura că resursele voastre sunt încă sănătoase. Pentru a instrui clusterul să realizeze acest lucru, trebuie să adăugaţi o operaţiune <literal>monitor</literal> la definiţia resursei." #. Tag: title #, no-c-format msgid "An OCF resource with a recurring health check" msgstr "O resursă OCF cu o verificare recurentă a sănătăţii" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" " <op id=\"public-ip-check\" name=\"monitor\" interval=\"60s\"/>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" " <op id=\"public-ip-check\" name=\"monitor\" interval=\"60s\"/>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " #. Tag: title #, no-c-format msgid "Properties of an Operation" msgstr "Proprietăţile unei Operaţii" #. Tag: entry #, no-c-format msgid "id" msgstr "id" #. Tag: entry #, no-c-format msgid "Your name for the action. Must be unique." msgstr "Numele dat acţiunii. Trebuie să fie unic." #. Tag: entry #, no-c-format msgid "name" msgstr "nume" #. Tag: entry #, no-c-format msgid "The action to perform. Common values: <literal>monitor</literal>, <literal>start</literal>, <literal>stop</literal>" msgstr "Acţiunea pe care să o execute. Valori obişnuite: <literal>monitor</literal>, <literal>start</literal>, <literal>stop</literal>" #. Tag: entry #, no-c-format msgid "interval" msgstr "interval" #. Tag: entry #, no-c-format msgid "How frequently (in seconds) to perform the operation. Default value: <literal>0</literal>, meaning never." msgstr "Cât de frecvent (în secunde) să efectueze operaţiunea. Valoarea implicită: <literal>0</literal>, însemnând niciodată." #. Tag: entry #, no-c-format msgid "timeout" msgstr "timeout" #. Tag: entry #, no-c-format msgid "How long to wait before declaring the action has failed." msgstr "Cât de mult să aştepte înainte de a declara că acţiunea a eşuat." #. Tag: entry #, no-c-format msgid "requires" msgstr "necesită" #. Tag: para #, no-c-format msgid "What conditions need to be satisfied before this action occurs. Allowed values:" msgstr "Care condiţii trebuie să fie satisfăcute înainte ca această acţiune să se întâmple. Valori permise:" #. Tag: para #, no-c-format msgid "<literal>nothing</literal> - The cluster may start this resource at any time" msgstr "<literal>nothing</literal> - Clusterul poate porni această resursă oricând" #. Tag: para #, no-c-format msgid "<literal>quorum</literal> - The cluster can only start this resource if a majority of the configured nodes are active" msgstr "<literal>quorum</literal> - Clusterul poate porni această resursă dacă o majoritate a nodurilor configurate este activă" #. Tag: para #, no-c-format msgid "<literal>fencing</literal> - The cluster can only start this resource if a majority of the configured nodes are active <emphasis>and</emphasis> any failed or unknown nodes have been powered off." msgstr "<literal>fencing</literal> - Clusterul poate porni această resursă doar dacă o majoritate a nodurilor configurate este activă <emphasis>şi</emphasis> orice noduri necunoscute sau defectate au fost deconectate de la reţeaua de alimentare." #. Tag: para #, no-c-format msgid "STONITH resources default to <literal>nothing</literal>, and all others default to <literal>fencing</literal> if STONITH is enabled and <literal>quorum</literal> otherwise." msgstr "Resursele STONITH au ca valoare implicită <literal>nimic</literal>, iar toate celelalte au ca valoare implicită <literal>fencing</literal> dacă STONITH este activat şi <literal>quorum</literal> în caz contrar." #. Tag: entry #, no-c-format msgid "on-fail" msgstr "on-fail" #. Tag: para #, no-c-format msgid "The action to take if this action ever fails. Allowed values:" msgstr "Acţiunea pe care să o execute dacă vreodată această acţiune eşuează. Valori permise:" #. Tag: para #, no-c-format msgid "<literal>ignore</literal> - Pretend the resource did not fail" msgstr "<literal>ignore</literal> - Consideră că acţiunea nu a eşuat" #. Tag: para #, no-c-format msgid "<literal>block</literal> - Don't perform any further operations on the resource" msgstr "<literal>block</literal> - Nu mai efectua operaţiuni ulterioare pe resursă" #. Tag: para #, no-c-format msgid "<literal>stop</literal> - Stop the resource and do not start it elsewhere" msgstr "<literal>stop</literal> - Opreşte resursa şi nu o mai porni în altă parte" #. Tag: para #, no-c-format msgid "<literal>restart</literal> - Stop the resource and start it again (possibly on a different node)" msgstr "<literal>restart</literal> - Opreşte resursa şi porneşte-o din nou (posibil pe un nod diferit)" #. Tag: para #, no-c-format msgid "<literal>fence</literal> - STONITH the node on which the resource failed" msgstr "<literal>fence</literal> - STONITH nodul pe care resursa a eşuat" #. Tag: para #, no-c-format msgid "<literal>standby</literal> - Move <emphasis>all</emphasis> resources away from the node on which the resource failed" msgstr "<literal>standby</literal> - Mută <emphasis>toate</emphasis> resursele de pe nodul pe care resursa a eşuat" #. Tag: para #, no-c-format msgid "The default for the <literal>stop</literal> operation is <literal>fence</literal> when STONITH is enabled and <literal>block</literal> otherwise. All other operations default to <literal>stop</literal>." msgstr "Valoarea implicită pentru operaţiunea <literal>stop</literal> este <literal>fence</literal> atunci când STONITH este activat şi <literal>block</literal> în caz contrar. Toate celelalte operaţiuni au valoarea implicită <literal>stop</literal>." #. Tag: entry #, no-c-format msgid "enabled" msgstr "activat" #. Tag: entry #, no-c-format msgid "If <literal>false</literal>, the operation is treated as if it does not exist. Allowed values: <literal>true</literal>, <literal>false</literal>" msgstr "Dacă este <literal>false</literal>, operaţiunea este tratată ca şi când nu ar exista. Valori permise: <literal>true</literal>, <literal>false</literal>" #. Tag: title #, no-c-format msgid "Setting Global Defaults for Operations" msgstr "Setarea de Valori Implicite Globale pentru Operaţiuni" #. Tag: para #, no-c-format msgid "To set a default value for a operation option, simply add it to the <literal>op_defaults</literal> section with <command>crm_attribute</command>. Thus," msgstr "Pentru a seta o valoare implicită pentru o opţiune a resursei, pur şi simplu adăugaţi-o la secţiunea <literal>rsc_defaults</literal> cu <command>crm_attribute</command>. Astfel," #. Tag: programlisting #, no-c-format msgid "<command>crm_attribute --type op_defaults --attr-name timeout --attr-value 20s</command>" msgstr "<command>crm_attribute --type op_defaults --attr-name timeout --attr-value 20s</command>" #. Tag: para #, no-c-format msgid "would default each operation's <literal>timeout</literal> to 20 seconds. If an operation's definition also includes a value for <literal>timeout</literal>, then that value would be used instead (for that operation only)." msgstr "ar seta valoarea implicită a <literal>timeout</literal>-ului fiecărei operaţiuni la 20 de secunde. Dacă definiţia unei operaţiuni include de asemenea o valoare pentru <literal>timeout</literal>, atunci acea valoare ar fi folosită în schimb (numai pentru acea operaţiune)." #. Tag: title #, no-c-format msgid "When Resources Take a Long Time to Start/Stop" msgstr "Când Resursele Durează Mult Timp să Pornească/Oprească" #. Tag: para #, no-c-format msgid "There are a number of implicit operations that the cluster will always perform - <literal>start</literal>, <literal>stop</literal> and a non-recurring <literal>monitor</literal> operation (used at startup to check the resource isn't already active). If one of these is taking too long, then you can create an entry for them and simply specify a new value." msgstr "Sunt un număr de operaţiuni implicite pe care clusterul pe va efectua întotdeauna - <literal>start</literal>, <literal>stop</literal> şi o operaţiune <literal>monitor</literal> nerecurentă (folosită la pornire pentru a verifica dacă resursa nu este deja activă). Dacă una din aceste operaţiuni durează prea mult, atunci puteţi crea o intrare pentru acestea şi să specificaţi o valoarea nouă." #. Tag: title #, no-c-format msgid "An OCF resource with custom timeouts for its implicit actions" msgstr "O resursă OCF cu intervale customizate pentru acţiunile implicite ale acesteia" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" " <op id=\"public-ip-startup\" name=\"monitor\" interval=\"0\" timeout=\"90s\"/>\n" " <op id=\"public-ip-start\" name=\"start\" interval=\"0\" timeout=\"180s\"/>\n" " <op id=\"public-ip-stop\" name=\"stop\" interval=\"0\" timeout=\"15min\"/>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" " <op id=\"public-ip-startup\" name=\"monitor\" interval=\"0\" timeout=\"90s\"/>\n" " <op id=\"public-ip-start\" name=\"start\" interval=\"0\" timeout=\"180s\"/>\n" " <op id=\"public-ip-stop\" name=\"stop\" interval=\"0\" timeout=\"15min\"/>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " #. Tag: title #, no-c-format msgid "Multiple Monitor Operations" msgstr "Operaţiuni de Monitorizare Multiple" #. Tag: para #, no-c-format msgid "Provided no two operations (for a single resource) have the same name and interval you can have as many monitor operations as you like. In this way you can do a superficial health check every minute and progressively more intense ones at higher intervals." msgstr "Atâta timp cât o pereche de două operaţiuni (pentru o singură resursă) nu au acelaşi nume sau acelaşi interval puteţi avea cât de multe operaţiuni de monitorizare pe cât doriţi. În acest fel puteţi realiza o verificare superficială a stării de sănătate la fiecare minut şi unele progresiv mai intense la intervale mai mari." #. Tag: para #, no-c-format msgid "To tell the resource agent what kind of check to perform, you need to provide each monitor with a different value for a common parameter. The OCF standard creates a special parameter called <envar>OCF_CHECK_LEVEL</envar> for this purpose and dictates that it is \"<emphasis>made available to the resource agent without the normal <envar>OCF_RESKEY_</envar> prefix</emphasis>\"." msgstr "Pentru a spune agentului ce fel de verificare să efectueze, trebuie să furnizaţi fiecărei operaţiuni monitor o valoare diferită pentru un parametru comun. Standardul OCF creează un parametru special numit <envar>OCF_CHECK_LEVEL</envar> pentru acest scop şi dictează că este \"<emphasis>făcut disponibil agentului de resursă fără obişnuitul prefix <envar>OCF_RESKEY_</envar> </emphasis>\"." #. Tag: para #, no-c-format msgid "Whatever name you choose, you can specify it by adding an <literal>instance_attributes</literal> block to the op tag. Note that it is up to each resource agent to look for the parameter and decide how to use it." msgstr "Indiferent de ce nume alegeţi, puteţi să îl specificaţi adăugând un bloc <literal>instance_attributes</literal> la tag-ul op. Ţineţi cont că acest lucru este datoria fiecărui agent de resursă să verifice dacă parametrul există şi să decidă cum să îl folosească." #. Tag: title #, no-c-format msgid "An OCF resource with two recurring health checks, performing different levels of checks - specified via <literal>OCF_CHECK_LEVEL</literal>." msgstr "O resursă OCF cu două verificări de sănătate recurente, efectuând nivele diferite de verificări - specificate via <literal>OCF_CHECK_LEVEL</literal>." #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" " <op id=\"public-ip-health-60\" name=\"monitor\" interval=\"60\">\n" " <instance_attributes id=\"params-public-ip-depth-60\">\n" " <nvpair id=\"public-ip-depth-60\" name=\"OCF_CHECK_LEVEL\" value=\"10\"/>\n" " </instance_attributes>\n" " </op>\n" " <op id=\"public-ip-health-300\" name=\"monitor\" interval=\"300\">\n" " <instance_attributes id=\"params-public-ip-depth-300\">\n" " <nvpair id=\"public-ip-depth-300\" name=\"OCF_CHECK_LEVEL\" value=\"20\"/>\n" " </instance_attributes>\n" " </op>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-level\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" " <op id=\"public-ip-health-60\" name=\"monitor\" interval=\"60\">\n" " <instance_attributes id=\"params-public-ip-depth-60\">\n" " <nvpair id=\"public-ip-depth-60\" name=\"OCF_CHECK_LEVEL\" value=\"10\"/>\n" " </instance_attributes>\n" " </op>\n" " <op id=\"public-ip-health-300\" name=\"monitor\" interval=\"300\">\n" " <instance_attributes id=\"params-public-ip-depth-300\">\n" " <nvpair id=\"public-ip-depth-300\" name=\"OCF_CHECK_LEVEL\" value=\"20\"/>\n" " </instance_attributes>\n" " </op>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-level\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " #. Tag: title #, no-c-format msgid "Disabling a Monitor Operation" msgstr "Dezactivarea unei Operaţiuni de Monitorizare" #. Tag: para #, no-c-format -msgid "The easiest way to stop a recurring monitor is to just delete it. However, there can be times when you only want to disable it temporarily. In such cases, simply add <literal>disabled=\"true\"</literal> to the operation's definition." -msgstr "Cel mai simplu mod de a opri un monitor recurent este să îl ştergeţi. Însă pot exista momente când vreţi doar să îl dezactivaţi temporar. În astfel de cazuri, pur şi simplu adăugaţi <literal>disabled=\"true\"</literal> la definiţia operaţiunii." +msgid "The easiest way to stop a recurring monitor is to just delete it. However, there can be times when you only want to disable it temporarily. In such cases, simply add <literal>enabled=\"false\"</literal> to the operation's definition." +msgstr "Cel mai simplu mod de a opri un monitor recurent este să îl ştergeţi. Însă pot exista momente când vreţi doar să îl dezactivaţi temporar. În astfel de cazuri, pur şi simplu adăugaţi <literal>enabled=\"false\"</literal> la definiţia operaţiunii." #. Tag: title #, no-c-format msgid "Example of an OCF resource with a disabled health check" msgstr "Exemplu de resursă OCF cu o verificare a sănătăţii dezactivată" #. Tag: programlisting #, no-c-format msgid " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" -" <op id=\"public-ip-check\" name=\"monitor\" interval=\"60s\" disabled=\"true\"/>\n" +" <op id=\"public-ip-check\" name=\"monitor\" interval=\"60s\" enabled=\"false\"/>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " msgstr "" " <primitive id=\"Public-IP\" class=\"ocf\" type=\"IPaddr\" provider=\"heartbeat\">\n" " <operations>\n" -" <op id=\"public-ip-check\" name=\"monitor\" interval=\"60s\" disabled=\"true\"/>\n" +" <op id=\"public-ip-check\" name=\"monitor\" interval=\"60s\" enabled=\"false\"/>\n" " </operations>\n" " <instance_attributes id=\"params-public-ip\">\n" " <nvpair id=\"public-ip-addr\" name=\"ip\" value=\"1.2.3.4\"/>\n" " </instance_attributes>\n" " </primitive> " #. Tag: para #, no-c-format msgid "This can be achieved from the command-line by executing" msgstr "Acest lucru poate fi realizat din linia de comanda executând" #. Tag: programlisting #, no-c-format -msgid "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" disabled=\"true\"/>'</command>" -msgstr "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" disabled=\"true\"/>'</command>" +msgid "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" enabled=\"false\"/>'</command>" +msgstr "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" enabled=\"false\"/>'</command>" #. Tag: para #, no-c-format msgid "Once you've done whatever you needed to do, you can then re-enable it with" msgstr "Odată ce aţi făcut ceea ce aveaţi nevoie să faceţi, îl puteţi reactiva cu" #. Tag: programlisting #, no-c-format -msgid "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" disabled=\"false\"/>'</command>" -msgstr "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" disabled=\"false\"/>'</command>" +msgid "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" enabled=\"true\"/>'</command>" +msgstr "<command>cibadmin -M -X ‘<op id=\"public-ip-check\" enabled=\"true\"/>'</command>"