среда, 3 июня 2015 г.

Ошибки: SMBWitnessClient Event id 8 и SMBWitnessClient Event id 5


В рамках внедрения кластеризованных решений удалось отловить ошибки: SMBWitnessClient Event id 8 и SMBWitnessClient Event id 5.


Ошибка возникает по причине: 
DNS именя ресурса %NetworkName1% и сетевого имени ресурса %DNSName1% не совпадают.

Скриншоты для ресурсов Network Name, пример:

 


 

Можно проверить с помощью команд:

Get-ClusterResource -Name %NetworkName1% | Get-ClusterParameter

Get-ClusterResource -Name %NetworkName2% | Get-ClusterParameter

 
 

В Failover Cluster можно использовать разные имена для DNS имени ресурса и сетевого имени ресурса, это не приводит к проблемам в работе кластера. Однако служба SMB3 witness server по умолчанию считает, что данные имена должны совпадать. Данное поведение by-design в Windows Server 2012 (R2).

 

Ошибку можно устранить назначив для DNS имени ресурса и сетевого имени ресурса одинаковые имена.

 

Сделать это можно командами:

 

Get-ClusterResource “SQL Network Name (%ObjectName1%)” | %{ $_.Name = “%DNSName1%”}

Get-ClusterResource “SQL Network Name (%ObjectName2%)” | %{ $_.Name = “(%DNSName2%”}


Публикую пример:

 
 
 
 
 
 

4 комментария:

  1. команда Get ни чего не изменит! Вы сами то проверяли данный запрос?!

    ОтветитьУдалить
  2. Специально для Вас выложил пример, который проделал на стенде :)
    см. обновление статьи

    ОтветитьУдалить
    Ответы
    1. Ок! Спасибо за оперативный ответ! Значит я был не прав!
      Но вопрос все еще остается. Есть 2 ноды в кастере. Node1 и Node2. Имя кластера Cluster.
      При выводе команды
      Get-ClusterResource
      там будет параметр name SQL Network Name (Cluster)
      а при выводе команды
      Get-ClusterResource -Name "SQL Network Name (Cluster)" | Get-ClusterParameter
      покажет полные характеристики кластера SQL.
      Это все хорошо и правильно.
      Такие же команды Вы давали в приведенном Вами примере в консоли PowerShell.
      Но ни какой информации по каждой ноды кластера при выполнении команды
      Get-ClusterResource -Name Node1 | Get-ClusterParameter
      НЕТ и НЕ БУДЕТ. И ни чего Вы этими командами не проверите.
      И если посмотреть Ваши команды в PowerShell, то в них указывается имя кластера, а не ноды кластера.

      Удалить
    2. Извиняюсь за долгий ответ.
      Перечитал текст ещё раз, вы правы, заглушки-переменные, которые я использовал в тесте вносят сумятицу... Внес правки с пояснениями.
      Спасибо за внимательную вычитку.

      Удалить

Уважаемый коллега, Ваш комментарий пройдёт модерацию, чтобы избежать спам-атак в ленте. Спасибо за понимание.