<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Supporto Tecnico Enterprise : Cluster Service</title><link>http://blogs.technet.com/itasupport/archive/tags/Cluster+Service/default.aspx</link><description>Tags: Cluster Service</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Cluster Service – Il Poison Packet</title><link>http://blogs.technet.com/itasupport/archive/2009/07/27/cluster-service-il-poison-packet.aspx</link><pubDate>Mon, 27 Jul 2009 02:00:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3266413</guid><dc:creator>itentblg</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/itasupport/comments/3266413.aspx</comments><wfw:commentRss>http://blogs.technet.com/itasupport/commentrss.aspx?PostID=3266413</wfw:commentRss><description>&lt;P&gt;In questo post cerchiamo di capire come si comporta il Cluster Service in caso di &lt;STRONG&gt;problemi di comunicazione&lt;/STRONG&gt; tra i nodi e quando utilizza il &lt;STRONG&gt;poison packet&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;Per semplicità consideriamo un cluster a 2 nodi, ma lo stesso identico scenario è applicabile anche a configurazioni con un numero di nodi maggiori.&lt;/P&gt;
&lt;H3&gt;Problema&lt;/H3&gt;
&lt;P&gt;Lo scenario tipico si ha quando il nodo 2, che non detiene il quorum, è stato &lt;STRONG&gt;rimosso dal cluster&lt;/STRONG&gt; e il cluster service è arrestato. &lt;BR&gt;Inoltre, se si tenta di avviare il &lt;STRONG&gt;cluster service&lt;/STRONG&gt; manualmente, dopo pochi minuti si &lt;STRONG&gt;arresta automaticamente&lt;/STRONG&gt;. &lt;BR&gt;Ovviamente in una configurazione a 2 nodi questo limita l’high availability, in quanto un failover non sarebbe possibile con 1 nodo solo disponibile.&lt;/P&gt;
&lt;H3&gt;Raccolta e Analisi dei Dati&lt;/H3&gt;
&lt;P&gt;Il primo punto da verificare sono gli &lt;STRONG&gt;Eventi di sistema&lt;/STRONG&gt; in quanto riportano tutti gli eventi generati dal Cluster Service, ClusDisk e ClusNet.&lt;/P&gt;
&lt;P&gt;In particolare, eventi tipici sintomatici del problema sono i seguenti:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;Warning&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ClusSvc&amp;nbsp;&amp;nbsp; 1123&amp;nbsp;&amp;nbsp; The node lost communication with cluster node 'Node2' on network 'Public'.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Nodo1 &lt;BR&gt;&lt;/FONT&gt;&lt;FONT size=2 face="Courier New"&gt;Warning&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ClusSvc&amp;nbsp;&amp;nbsp; 1123&amp;nbsp;&amp;nbsp; The node lost communication with cluster node 'Node2' on network 'Private'.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Nodo1 &lt;BR&gt;&lt;/FONT&gt;&lt;FONT size=2 face="Courier New"&gt;Information&amp;nbsp;&amp;nbsp; ClusSvc&amp;nbsp;&amp;nbsp; 1122&amp;nbsp;&amp;nbsp; The node (re)established communication with cluster node 'Node2' on network 'Public'.&amp;nbsp; Nodo1 &lt;BR&gt;&lt;/FONT&gt;&lt;FONT size=2 face="Courier New"&gt;Information&amp;nbsp;&amp;nbsp; ClusSvc&amp;nbsp;&amp;nbsp; 1122&amp;nbsp;&amp;nbsp; The node (re)established communication with cluster node 'Node2' on network 'Private'. Nodo1&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Seguito dal seguente evento:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;Error&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ClusNet&amp;nbsp;&amp;nbsp; 1118&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;&lt;FONT color=#ff0000&gt;Cluster service was terminated as requested by Node 1&lt;/FONT&gt;&lt;/STRONG&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp; Node2&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;L’ultimo evento indicato permette di capire che i 2 nodi sono riusciti a comunicare: infatti il Nodo 1 richiede esplicitamente al Nodo 2 di arrestare il Cluster Service.&lt;/P&gt;
&lt;P&gt;Analizziamo il &lt;STRONG&gt;cluster.log&lt;/STRONG&gt; presente in C:\Windows\Cluster del nodo 2, e non negli altri nodi, in quando i file cluster.log contengono gli eventi specifici del nodo e quindi sono diversi gli uni dagli altri. &lt;BR&gt;Notiamo i seguenti eventi in corrispondenza dell’ora indicata &lt;STRONG&gt;calcolata in GTM&lt;/STRONG&gt; (fuso orario di Londra):&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;00001728.0000077c::2009/07/20-14:42:13.623 INFO [CS] &lt;STRONG&gt;&lt;FONT color=#008000&gt;Cluster Service started&lt;/FONT&gt;&lt;/STRONG&gt; - Cluster Node Version 4.3790&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New"&gt;00001728.00000a4c::2009/07/20-14:49:21.406 INFO [ClMsg] &lt;STRONG&gt;Received poison event&lt;/STRONG&gt;. &lt;BR&gt;00001728.00000a4c::2009/07/20-14:49:21.406 ERR&amp;nbsp; [RGP] Node 2: REGROUP ERROR: &lt;STRONG&gt;&lt;FONT color=#ff0000&gt;poison packet received from node 1&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;La prima riga indica &lt;STRONG&gt;l’avvio del Cluster Service&lt;/STRONG&gt;: questo avviene indipendentemente dalla volontà del cluster perché è il Service Control Manager del Sistema Operativo a riavviare il servizio ad intervalli regolari in base alle impostazioni. &lt;BR&gt;Dopo soli 7 minuti il tentativo di regroup al cluster fallisce perché il Cluster Message notifica la &lt;STRONG&gt;ricezione del Poison Packet&lt;/STRONG&gt; e questo termina ogni attività del Cluster Service istantaneamente.&lt;/P&gt;
&lt;H3&gt;Soluzione&lt;/H3&gt;
&lt;P&gt;In questo esempio, la sovrapposizione dei problemi di visibilità tra i due nodi e l’evento del Poison Packet indica evidenti &lt;STRONG&gt;problemi di comunicazione&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;326330" mce_href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;326330"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Questo comportamento avviene nel momento in cui un nodo del cluster fallisce un aggiornamento tramite GUM, in quel momento il nodo che detiene il Quorum invia il Poison Packet e blocca il nodo finchè l’aggiornamento non è eseguito correttamente.&lt;/P&gt;
&lt;P&gt;Il seguente articolo illustra un caso particolare in cui un fallimento della comunicazione RPC genera il Poison Packet:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;326330" target=_blank mce_href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;326330"&gt;KB 326330 - The Cluster Service Detects RPC Errors 1726 and 1722&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Per quanto riguarda gli errori di comunicazione, possono influire molto nella sincronizzazione dei nodi, e per questo consiglio la lettura di questo articolo:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://support.microsoft.com/kb/892422/en-us" target=_blank mce_href="http://support.microsoft.com/kb/892422/en-us"&gt;KB 892422 - Overview of event ID 1123 and event ID 1122 logging in Windows 2000-based and Windows Server 2003-based server clusters&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Quando il nodo 1, che ha incarico il quorum, non riceve un aggiornamento dall’altro per più di&lt;STRONG&gt; 6 volte il tempo di hearbeat&lt;/STRONG&gt; (1.2 secondi) su tutte le schede di rete, lo considera offline e gli invia il Poison Packet. &lt;BR&gt;Questa procedura serve per tutelare il corretto funzionamento di tutto il cluster, in quanto la parte con meno voti (in questo caso il Nodo 2) non deve interferire con la parte maggioritaria (Nodo 1 + Quorum) e tutti i servizi continuano a essere erogati correttamente.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/itasupport/pages/daniele-maso.aspx" mce_href="http://blogs.technet.com/itasupport/pages/daniele-maso.aspx"&gt;Daniele Maso&lt;/A&gt; &lt;BR&gt;Senior Support Engineer &lt;BR&gt;Microsoft Enterprise Platforms Support&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3266413" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/itasupport/archive/tags/Windows+Team/default.aspx">Windows Team</category><category domain="http://blogs.technet.com/itasupport/archive/tags/Daniele+Maso/default.aspx">Daniele Maso</category><category domain="http://blogs.technet.com/itasupport/archive/tags/Cluster+Service/default.aspx">Cluster Service</category></item><item><title>Cluster Service – Evict del nodo e Rimozione del Servizio</title><link>http://blogs.technet.com/itasupport/archive/2008/11/10/cluster-service-Evict-del-nodo-e-Rimozione-del-Servizio.aspx</link><pubDate>Mon, 10 Nov 2008 04:00:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3147295</guid><dc:creator>itentblg</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/itasupport/comments/3147295.aspx</comments><wfw:commentRss>http://blogs.technet.com/itasupport/commentrss.aspx?PostID=3147295</wfw:commentRss><description>&lt;P&gt;Di seguito vediamo un caso molto particolare di &lt;STRONG&gt;evict automatico&lt;/STRONG&gt; di un nodo da un cluster senza apparentemente alcuna spiegazione.&lt;/P&gt;
&lt;P&gt;Lo scenario è formato da 2 nodi collegati tra di loro ad un rete di heartbeat condivisa tra più cluster.&lt;/P&gt;
&lt;P&gt;Se gli indirizzi IP delle schede di rete non sono configurate correttamente oppure esiste un altro cluster con lo stesso nome collegato sulla rete, c’è il rischio di incorrere nell’evict automatico del nodo!&lt;/P&gt;
&lt;P&gt;Se analizziamo il cluster log di un nodo che ha avuto questo problema, troveremo:&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;Date-Time WARN [JOIN] Attempting join with sponsor 192.168.222.23. &lt;BR&gt;Date-Time INFO [NMJOIN] Beginning cluster join process. &lt;BR&gt;Date-Time ERR [NMJOIN] &lt;FONT color=#ff0000&gt;&lt;STRONG&gt;Unable to begin join, status 5893.&lt;/STRONG&gt;&lt;/FONT&gt; &lt;BR&gt;Date-Time WARN [JOIN] &lt;FONT color=#ff8040&gt;&lt;STRONG&gt;NmJoinCluster failed&lt;/STRONG&gt;&lt;/FONT&gt;, status 5893.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;L’errore &lt;STRONG&gt;5893&lt;/STRONG&gt; corrisponde a “&lt;STRONG&gt;ERROR_CLUSTER_INSTANCE_ID_MISMATCH&lt;/STRONG&gt;” in cui appunto si fa riferimento al fatto che il nodo che ha provato a fare il join al cluster già esistente aveva un ID diverso e che non corrispondeva a quello condiviso nel quorum.&lt;/P&gt;
&lt;P&gt;Gli eventi successivi indicano l’avvio della rimozione completa del nodo:&lt;CODE&gt;&lt;/CODE&gt; &lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;Date-Time INFO [INIT] Cleaning up failed join attempt. &lt;BR&gt;Date-Time INFO [INIT] &lt;/FONT&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#ff8000&gt;&lt;STRONG&gt;Leaving cluster &lt;BR&gt;&lt;/STRONG&gt;&lt;/FONT&gt;Date-Time INFO [NM] Interface cleanup starting... &lt;BR&gt;Date-Time INFO [NM] Network interface cleanup complete &lt;BR&gt;Date-Time INFO [NM] Network cleanup starting... &lt;BR&gt;Date-Time INFO [NM] Network cleanup complete &lt;BR&gt;Date-Time INFO [NM] Node cleanup starting... &lt;BR&gt;Date-Time INFO [NM] &lt;FONT color=#008000&gt;&lt;STRONG&gt;Node cleanup complete&lt;/STRONG&gt;&lt;/FONT&gt; &lt;BR&gt;Date-Time WARN [NM] Shutdown of the Cluster Network driver failed, status 21 &lt;BR&gt;Date-Time INFO [INIT] Deregistering RPC endpoints &amp;amp; interfaces. &lt;BR&gt;Date-Time WARN [INIT] &lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;STRONG&gt;&lt;FONT face="Courier New"&gt;This node has been evicted from the cluster when it was unavailable. Initiating cleanup.&lt;/FONT&gt; &lt;BR&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Dopo questo evento il servizio cluster è completamente disinstallato dal server e non è più presente nell’elenco dei servizi attivi. La sequenza si conclude con questi eventi:&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;Date-Time ERR [CS] ClusterInitialize failed 5893 &lt;BR&gt;Date-Time WARN [INIT] The cluster service is shutting down. &lt;BR&gt;Date-Time INFO [EVT] EvShutdown &lt;BR&gt;Date-Time WARN [FM] Shutdown: Failover Manager requested to shutdown groups. &lt;BR&gt;Date-Time INFO [FM] FmpCleanupGroups: Entry &lt;BR&gt;Date-Time INFO [FM] FmpCleanupGroups: Exit &lt;BR&gt;Date-Time INFO [Dm] DmShutdown &lt;BR&gt;Date-Time INFO [DM] DmpShutdownFlusher: Entry &lt;BR&gt;Date-Time INFO [DM] DmpShutdownFlusher: Setting event &lt;BR&gt;Date-Time INFO [DM] DmpRegistryFlusher: got 0 &lt;BR&gt;Date-Time INFO [DM] DmpRegistryFlusher: exiting &lt;BR&gt;Date-Time WARN [MM] MMLeave is called when rgp=NULL. &lt;BR&gt;Date-Time &lt;FONT color=#ff0000&gt;&lt;STRONG&gt;ERR [CS] Service Stopped. exit code = 5893&lt;/STRONG&gt;&lt;/FONT&gt; &lt;BR&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Da questo momento in avanti, il nodo è tornato a far parte dei member server e non appartiene più al cluster. &lt;/P&gt;
&lt;P&gt;Per poter risolvere il problema è necessario innanzitutto capire la causa del problema e risolverla quanto prima perché questo può causare altri “clean up” dei nodi involontari e ovviamente la perdita di ridondanza dei servizi clusterizzati.&lt;/P&gt;
&lt;P&gt;Una volta risolto il problema, si può procedere con il &lt;STRONG&gt;join del nodo al cluster esistente&lt;/STRONG&gt; in modo da poter ripristinare la situazione originale.&lt;/P&gt;
&lt;P&gt;Maggiori informazioni e approfondimenti:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;924473" target=_blank mce_href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;924473"&gt;The Microsoft Cluster Service is removed from the cluster node when you try to join a cluster node to a Windows Server 2003-based cluster&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://support.microsoft.com/kb/258750" target=_blank mce_href="http://support.microsoft.com/kb/258750"&gt;Recommended private "Heartbeat" configuration on a cluster server&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A class="" href="http://technet.microsoft.com/en-us/library/cc758334.aspx" target=_blank mce_href="http://technet.microsoft.com/en-us/library/cc758334.aspx"&gt;Server Clusters: Network Configuration Best Practices for Windows 2000 and Windows Server 2003&lt;/A&gt; &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/itasupport/pages/daniele-maso.aspx" mce_href="http://blogs.technet.com/itasupport/pages/daniele-maso.aspx"&gt;Daniele Maso&lt;/A&gt; &lt;BR&gt;Senior Support Engineer &lt;BR&gt;Microsoft Enterprise Platforms Support&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3147295" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/itasupport/archive/tags/Windows+Team/default.aspx">Windows Team</category><category domain="http://blogs.technet.com/itasupport/archive/tags/Daniele+Maso/default.aspx">Daniele Maso</category><category domain="http://blogs.technet.com/itasupport/archive/tags/Cluster+Service/default.aspx">Cluster Service</category></item></channel></rss>