<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Windows | Suporte &amp; Troubleshooting</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/diegoalb/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/diegoalb/feed.xml</link>
    <description>diegoalb | Premier Field Engineer</description>
    <lastBuildDate>Wed, 17 Apr 2019 03:26:33 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>FailoverClustering EventID 1196 | Network Name Resource</title>
      <link>https://docs.microsoft.com/archive/blogs/diegoalb/failoverclustering-eventid-1196-network-name-resource</link>
      <pubDate>Wed, 10 Feb 2016 20:15:58 GMT</pubDate>
      <dc:creator><![CDATA[diegoalb]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/diegoalb/?p=111</guid>
      <description><![CDATA[Nesse post iremos abordar um evento relativamente comum que é logado no System EventLog de nós do...]]></description>
      <content:encoded><![CDATA[Nesse post iremos abordar um evento relativamente comum que é logado no System EventLog de nós do Cluster que estejam enfrentando problemas relacionados a registros DNS.
<p style="padding-left: 60px"><a href="https://msdnshared.blob.core.windows.net/media/2016/02/14.jpg"><img class="alignnone size-mediumlarge wp-image-131" src="https://msdnshared.blob.core.windows.net/media/2016/02/14-500x347.jpg" alt="P3-1" width="500" height="347" /></a></p>
O EventID 1196 (Source: FailoverClustering) indica que a atualização do registro DNS de um determinado Cluster Network Name falhou. E, no caso desse cliente, a mensagem de erro trazida foi "<strong>DNS operation refused</strong>". Esse erro é logado de forma consistente a cada 15 minutos, a cada tentativa de registro DNS em que ocorre falha:
<p style="padding-left: 60px"> <a href="https://msdnshared.blob.core.windows.net/media/2016/02/21.jpg"><img class="alignnone size-mediumlarge wp-image-141" src="https://msdnshared.blob.core.windows.net/media/2016/02/21-500x204.jpg" alt="P3-2" width="500" height="204" /></a></p>
No cluster.log o que vemos é a sequência de eventos a seguir:
<p style="padding-left: 30px">d54:274.01/12[13:00:31.698](000000) INFO [RES] Network Name <em>&lt;&lt;-ResourceName-&gt;&gt;</em>: Dns: Registering into DNS Name:<em> &lt;-ResourceName-&gt;</em> (Type: Singleton)...
d54:274.01/12[13:00:31.698](000000) INFO [RES] Network Name: Agent: Sending request Netname/GetToken to NN:2265e20f-56e3-40a4-bea6-9e9052c7d61e:Identity
d54:274.01/12[13:00:31.699](000000) INFO [RES] Network Name: [NN] IdentityLocal Begin Impersonating
d54:274.01/12[13:00:31.699](000000) INFO [RES] Network Name: [NNLIB] Registering name<em> &lt;-ResourceName-&gt;</em> on DNS Network: <em>contoso.com</em>, with 3 DNS Servers, 1 Virtual Addresses, 1 Domain Names
d54:274.01/12[13:00:31.699](000000) INFO [RES] Network Name: [NNLIB] DNS.S: 172.16.100.xx
d54:274.01/12[13:00:31.699](000000) INFO [RES] Network Name: [NNLIB] DNS.S: 172.16.200.xx
d54:274.01/12[13:00:31.699](000000) INFO [RES] Network Name: [NNLIB] DNS.S: 172.16.100.xx
d54:274.01/12[13:00:31.699](000000) INFO [RES] Network Name: [NNLIB] V.Addr: 172.31.10.xx
d54:274.01/12[13:00:31.699](000000) INFO [RES] Network Name: [NNLIB] Registering: <em>&lt;-ResourceName-&gt;.corp.contoso.com</em>
d54:274.01/12[13:00:32.710](000000) INFO [RES] Network Name: [NNLIB] DNS Record there for <em>&lt;-ResourceName-&gt;.corp.contoso.com</em>, proceeding
<span style="color: #ff0000">d54:274.01/12[13:00:34.750](000000) ERR [RES] Network Name: [NNLIB] Error 9005 on DNS DnsReplaceRecordSetW for A records, name <em>&lt;-ResourceName-&gt;.corp.contoso.com</em> (ipv4Count 1, ipv6Count 0)</span>
d54:274.01/12[13:00:34.750](000000) INFO [RES] Network Name: [NNLIB] Second Phase for DNS Network: corp.ihf (3 DNS Servers)
d54:274.01/12[13:00:34.750](000000) INFO [RES] Network Name: [NN] IdentityLocal End Impersonating
<span style="color: #ff0000">d54:274.01/12[13:00:34.750](000000) ERR [RES] Network Name <em>&lt;&lt;-ResourceName-&gt;&gt;</em>: Dns: Failed DNS registration with error 9005 for Name: &lt;-ResourceName-&gt; (Type: Singleton)</span></p>
O código de erro "9005" traduz exatamente para DNS_ERROR_RCODE_REFUSED:
<p style="padding-left: 30px"><em> C:\Users\diegoalb&gt;err 9005</em>
<em> # for decimal 9005 / hex 0x232d :</em>
<em> SQL_9005_severity_16 sql_err</em>
<em> # Either start LSN or end LSN specified in OpenRowset(DBLog,</em>
<em> # ...) is invalid.</em>
<em> <span style="color: #800000">DNS_ERROR_RCODE_REFUSED winerror.h</span></em>
<em><span style="color: #800000"> # DNS operation refused.</span></em>
<em> # for hex 0x9005 / decimal 36869 :</em>
<em> SSLEVENT_NO_PRIVATE_KEY lsapmsgs.mc</em>
<em> # The SSL %1 credential's private key has the following</em>
<em># 3 matches found for "9005"</em></p>
Observe que todos os endereços IP associados a um recurso Network Name são registrados dinamicamente no DNS (se estiver configurado para <a href="https://technet.microsoft.com/en-us/library/cc771255.aspx">dynamic updates</a>) quando eles são trazidos online - Esse é o comportamento padrão do Cluster.

Para determinar a solução para esse evento teremos de investigar os vários aspectos que envolvem DNS, sobretudo:
<ul>
	<li>Se os Servidores DNS estão plenamente operacionais e acessíveis;</li>
	<li>Se as zonas e configuração de registro dinâmico estão configuradas de forma apropriada;</li>
	<li>Se a ACL do registro daquele recurso está correta: Na console do DNS clique com o botão direito no registro e em seguida na aba Security - Confirme que o objeto do CNO (Cluster Name Object, tipicamente seguido de "$" como na imagem-exemplo abaixo) tem Full Control;</li>
</ul>
<p style="padding-left: 120px"><a href="https://msdnshared.blob.core.windows.net/media/2016/02/3.jpg"><img class="alignnone  wp-image-121" src="https://msdnshared.blob.core.windows.net/media/2016/02/3-313x350.jpg" alt="P3-3" width="315" height="352" /></a></p>

<ul>
	<li>Se o registro NÂO está estático (foi criado de forma manual), dessa forma a ACL dele possivelmente estaria errada e incorreríamos no bullet anterior.</li>
</ul>
<p style="padding-left: 120px"><a href="https://msdnshared.blob.core.windows.net/media/2016/02/4.jpg"><img class="alignnone size-mediumlarge wp-image-124" src="https://msdnshared.blob.core.windows.net/media/2016/02/4-500x310.jpg" alt="P3-4" width="500" height="310" /></a></p>
&nbsp;

Especificamente nesse cliente encontramos que durante o setup do ambiente os administradores tinham um procedimento que envolvia criar o registro de forma manual no Console do DNS para fins de testes (!). Na medida em que o registro era estático, evidentemente o Cluster não tinha permissões suficientes para atualizá-lo.

A solução foi simplesmente apagar o registro estático e forçar novo registro do recurso através do comando Powershell :

Get-ClusterResource &lt;NomedoRecurso&gt; | Update-ClusterNetworkNameResource

&nbsp;

&nbsp;

&nbsp;

Referências:
<a href="https://technet.microsoft.com/en-us/library/hh847276.aspx">https://blogs.msdn.microsoft.com/clustering/2009/07/17/dns-registration-with-the-network-name-resource/</a>

<a href="https://technet.microsoft.com/en-us/library/hh847276.aspx">https://technet.microsoft.com/en-us/library/hh847276.aspx</a>]]></content:encoded>
    </item>
    <item>
      <title>O caso do Cluster que travou e o Failover não acontecia!</title>
      <link>https://docs.microsoft.com/archive/blogs/diegoalb/o-caso-do-cluster-que-travou-e-o-failover-nao-acontecia</link>
      <pubDate>Wed, 03 Feb 2016 23:18:55 GMT</pubDate>
      <dc:creator><![CDATA[diegoalb]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/diegoalb/?p=32</guid>
      <description><![CDATA[Failover Cluster é um grupo de servidores conectados com objetivo de proporcionar alta...]]></description>
      <content:encoded><![CDATA[<p style="text-align: justify">Failover Cluster é um grupo de servidores conectados com objetivo de proporcionar alta disponibilidade e escalabilidade para as Aplicações e Serviços. Se qualquer componente de hardware ou software falha, outro nó do Cluster começa a prover aquele Serviço (processo conhecido como Failover) com vistas a garantir a disponibilidade para os usuários e clientes.</p>
<p style="text-align: justify">Idealmente os clientes haveriam de perceber apenas minimamente quaisquer ocasiões de falhas, no entanto em raras oportunidades pode ocorrer um evento que impede que o Failover aconteça plenamente - Esse post descreve exatamente uma situação real em que um serviço parou de responder e o Failover não aconteceu conforme o esperado.</p>
<p style="text-align: justify">O ambiente é composto por um <a href="https://technet.microsoft.com/en-us/library/cc732035(v=ws.10).aspx#BKMK_multi_site" target="_blank">Cluster Geográfico</a>, com 4 nós Windows Server 2008 R2 SP1 com a role de File Server e File Server Resource Manager, cada um em um site diferente e virtualizados sob VMware.</p>

<h3>Sintomas</h3>
<p style="text-align: justify">Os usuários e clientes perceberam uma degradação da performance e no acesso aos arquivos de uma maneira geral e desde várias horas, ao ponto que os administradores sequer conseguiam conectar na console do nó que era dono dos recursos, nem tampouco os usuários eram capazes de acessar aos seus arquivos. Eventualmente tentou-se mover os recursos de File Server para o outro nó, porém os discos permaneceram com o status ONLINE PENDING por várias horas.</p>
<p style="text-align: justify">Com o objetivo de restabelecer os Serviços daquela máquina e posteriormente diagnosticar o causador do problema o cliente decidiu capturar um Kernel <a href="https://msdn.microsoft.com/en-us/library/ff545499.aspx" target="_blank">Memory Dump de forma manual</a>. O nosso escopo a partir daqui é determinar a causa raiz desse problema a partir da análise dos dados capturados, sobretudo os logs do Cluster, Perfmon (que já estava previamente configurado nesse sistema) e o dump.</p>

<h3>Análise da Causa Raiz</h3>
<p style="text-align: justify">Na perspectiva do Cluster o problema começou por volta das 19:45hs, quando o <em>health check</em> de alguns recursos começaram a falhar (timed out) de forma inesperada. A consequência disso é que o RHS é terminado:</p>
<p style="padding-left: 30px"> <em>818:700.07/26[20:38:02.204](000000) WARN  [RES] File Server &lt;FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:)&gt;: Failed in NetShareGetInfo(&lt;&lt;editado&gt;&gt;, BA2), status 53. Tolerating...</em>
<span style="color: #ff0000"><em> 818:bac.07/26[20:45:02.346](000000) ERR   [RHS] RhsCall::DeadlockMonitor: Call ISALIVE timed out for resource 'FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:)'.</em></span>
<em> 818:bac.07/26[20:45:02.361](000000) INFO  [RHS] Enabling RHS termination watchdog with timeout 1200000 and recovery action 3.</em>
<span style="color: #ff0000"><em> 818:bac.07/26[20:45:02.361](000000) ERR   [RHS] Resource FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:) handling deadlock. Cleaning current operation and terminating RHS process.</em></span>
<span style="color: #ff0000"><em> 818:bac.07/26[20:45:02.361](000000) ERR   [RHS] About to send WER report.</em></span>
<em> 814:1c0.07/26[20:45:02.361](000000) WARN  [RCM] HandleMonitorReply: FAILURENOTIFICATION for 'FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:)', gen(0) result 4.</em>
<em> 814:1c0.07/26[20:45:02.361](000000) INFO  [RCM] rcm::RcmResource::HandleMonitorReply: Resource 'FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:)' consecutive failure count 1.</em></p>
<p style="text-align: justify">Quando o &lt;FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:)&gt; tentou vir online novamente, percebe-se que o Resource Control Manager acusa somente o status 'WaitingToComeOnline' por um período longo, apesar das diversas tentativas de movimentação entre os nós feita pelos administradores enquanto o problema acontecia:</p>
<p style="padding-left: 30px"><em> 814:1c0.07/26[19:46:16.058](000000) DBG   [RCM] FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:): WaitingToComeOnline,</em>
<em> 814:1c0.07/26[19:46:19.179](000000) DBG   [RCM] FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:): WaitingToComeOnline,</em>
<em> 814:1c0.07/26[19:46:22.299](000000) DBG   [RCM] FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:): WaitingToComeOnline,</em>
<em> .</em>
<em> .</em>
<em> .</em>
<em> 814:1c0.07/26[20:30:53.221](000000) DBG   [RCM] FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:): WaitingToComeOnline,</em>
<em> 814:1c0.07/26[20:30:56.341](000000) DBG   [RCM] FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:): WaitingToComeOnline,</em>
<em> 814:1c0.07/26[20:30:59.461](000000) DBG   [RCM] FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:): WaitingToComeOnline,</em>
<em> .</em>
<em> .</em>
<em> .</em>
<em> 814:1c0.07/26[22:57:51.989](000000) DBG   [RCM] FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:): WaitingToComeOnline,</em>
<em> 814:1c0.07/26[22:57:55.109](000000) DBG   [RCM] FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:): WaitingToComeOnline,</em>
<em> 814:1c0.07/26[22:57:58.229](000000) DBG   [RCM] FileServer-(&lt;&lt;editado&gt;&gt;)(Disk D:): WaitingToComeOnline,</em></p>
Esses comportamentos se repetiram algumas vezes até o momento que a máquina foi reiniciada.

Do ponto de vista de performance observe que o nó estava desde às 15:30hs com uma pressão considerável sobre CPU:

<a href="https://msdnshared.blob.core.windows.net/media/2016/02/Untitled-picture1.jpg"><img class="alignnone size-large wp-image-82" src="https://msdnshared.blob.core.windows.net/media/2016/02/Untitled-picture1-1024x561.jpg" alt="P2-picture1" width="879" height="482" /></a>

E a maior parte dessa utilização estava relacionado a componentes executando em modo privilegiado (Kernel Mode, sobretudo drivers):

<a href="https://msdnshared.blob.core.windows.net/media/2016/02/Untitled-picture2.jpg"><img class="alignnone size-large wp-image-92" src="https://msdnshared.blob.core.windows.net/media/2016/02/Untitled-picture2-1024x554.jpg" alt="P2-picture2" width="879" height="476" /></a>

Os principais ofensores em termos de CPU parecem ser uma instância do SVCHOST e o SYSTEM (este, bem menos quando comparado à primeira).

<a href="https://msdnshared.blob.core.windows.net/media/2016/02/Untitled-picture3.jpg"><img class="alignnone size-large wp-image-102" src="https://msdnshared.blob.core.windows.net/media/2016/02/Untitled-picture3-1024x556.jpg" alt="P2-picture3" width="879" height="477" /></a>
<p style="text-align: justify">A análise do dump (que será assunto para um futuro post<strong> =)</strong> indicou que essa instância do SVCHOST (svchost#9) estava possivelmente hospedando o serviço File Server Resource Manager. Além disso o dump também evidenciava algumas stacks como a abaixo:</p>
<p style="padding-left: 60px"><em>...</em>
<em> nt!KiSwapContext+0x8a </em>
<em> nt!ExAcquireResourceExclusiveLite+0x14f </em>
<em> quota!QuotaPrePnp+0x184 </em>
<em> fltmgr!FltpPerformPreCallbacks+0x2f8 </em>
<em> fltmgr!FltpPassThrough+0x2d9 </em>
<em> fltmgr!FltpDispatch+0xb8 </em>
<em> nt!IopSynchronousCall+0xb5 </em>
<em> nt!IopRemoveDevice+0x101 </em>
<em> nt!PnpSurpriseRemoveLockedDeviceNode+0x128 </em>
<em> nt!PnpDeleteLockedDeviceNode+0x38 </em>
<em> nt!PnpDeleteLockedDeviceNodes+0xa0 </em>
<em> nt!PnpProcessQueryRemoveAndEject+0x6bf </em>
<em> nt!PnpProcessTargetDeviceEvent+0x4c </em>
<em> nt!PnpDeviceEventWorker+0xf99b6 </em>
<em> ...</em></p>
<p style="text-align: justify">Trata-se de um problema conhecido e já endereçado pelo hotfix <a href="https://support.microsoft.com/en-us/kb/2848443">https://support.microsoft.com/en-us/kb/2848443</a>: O driver de quota e File Server Resource Manager (quota.sys) em uma situação muito específica entrava em deadlock (note que esse deadlock não tem nada a ver com o do RHS) e causava os sintomas que variam de alto consumo de CPU até os discos com o status "Online pending".</p>
<p style="text-align: justify">Depois que o hotfix foi instalado o problema foi resolvido em definitivo.</p>
<p style="text-align: justify">Ainda que seja relativamente raro lidar exatamente com essa mesma causa raiz em seu ambiente de produção, observe que de posse dos dados certos, capturados no momento apropriado e com seus servidores devidamente instrumentados, as chances de um diagnóstico preciso aumentam de forma considerável. Pretendo publicar novos posts em breve sobre algumas práticas simples que podem ajudar bastante em análises como essa.</p>
Um abraço.
Diego]]></content:encoded>
    </item>
    <item>
      <title>Hello World!</title>
      <link>https://docs.microsoft.com/archive/blogs/diegoalb/hello-world-2</link>
      <pubDate>Wed, 03 Feb 2016 01:52:07 GMT</pubDate>
      <dc:creator><![CDATA[diegoalb]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/diegoalb/?p=22</guid>
      <description><![CDATA[Olá Pessoal,

Eu me chamo Diego Albuquerque e sou Premier Field Engineer na Microsoft com foco em...]]></description>
      <content:encoded><![CDATA[Olá Pessoal,

Eu me chamo Diego Albuquerque e sou <a title="PFE" href="https://social.technet.microsoft.com/wiki/contents/articles/11841.premier-field-engineering-pfe.aspx" target="_blank">Premier Field Engineer</a> na Microsoft com foco em Plataformas - Trabalho sobretudo com suporte e troubleshooting de Windows Server nos seus aspectos de Core, Performance e Failover Cluster.

O objetivo desse blog é compartilhar conhecimento e experiências de campo nas tecnologias e serviços relacionados a Windows Server, troubleshooting, novidades e melhores práticas, assim como Microsoft Azure.

Interessado em conhecer mais sobre os PFEs no Brasil e quem sabe fazer parte do time!? Esse post de um antigo Mestre é um excelente ponto de partida:

<a href="https://blogs.technet.com/b/pfelatam/archive/2010/09/23/quempremierfieldengineers.aspx">https://blogs.technet.com/b/pfelatam/archive/2010/09/23/quempremierfieldengineers.aspx</a>

Até breve,

diegoalb]]></content:encoded>
    </item>
  </channel>
</rss>