У меня есть локальная сервисная фабрика, состоящая из 18 узлов (9 - начальные узлы), защищенных с помощью безопасности окон gMSA.Версия кода кластера 6.4.622.9590
К сожалению, мне нужно перестроить 6 из этих узлов (3 семенных узла).Все они живут в одном центре обработки данных (кластер охватывает 3 DC).Таким образом, я хочу удалить эти 6 узлов, перестроить их, а затем повторно добавить их.
В соответствии с MSDOCs , добавление / удаление узлов выполняется через обновления конфигурации.Примечание: я уже использовал этот процесс недавно для добавления 12 узлов, поэтому хорошо понимаю концепцию обновлений конфигурации SF.
К сожалению, я не могу выполнять ЛЮБЫЕ обновления конфигурации в этом кластере, пока не удалю узлы -это связано с ValidationExceptions, сообщаемым командой Start-ServiceFabricClusterConfigurationUpgrade
powershell:
- Если я не добавлю 6 узлов в раздел «NodesToBeRemoved», я получу ошибку проверки, что не все удаленные узлы находятся вэто поле
- Если я добавлю 6 узлов, я получу следующую ошибку проверки:
Start-ServiceFabricClusterConfigurationUpgrade :
System.Runtime.InteropServices.COMException (-2147017627)
ValidationException: Model validation error. Removing a non-seed node and changing reliability level in the same
upgrade is not supported. Initiate an upgrade to remove node first and then change the reliability level.
At line:1 char:1
+ Start-ServiceFabricClusterConfigurationUpgrade -ClusterConfigPath "AL ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (Microsoft.Servi...usterConnection:ClusterConnection) [Start-ServiceFa
...gurationUpgrade], FabricException
+ FullyQualifiedErrorId : StartClusterConfigurationUpgradeErrorId,Microsoft.ServiceFabric.Powershell.StartClusterC
onfigurationUpgrade
Итак, мы застряли!Я также уже удалил состояния узлов, оставив все 6 узлов в «Недопустимом состоянии».Get-ServiceFabricClusterConfiguration
не возвращает эти 6 узлов, но они по-прежнему отображаются в SF Explorer и перечислены в XML-файле манифеста кластера.
Что касается уровня надежности, я уверен, что никто не сможетдольше меняйте это в SF;то есть более старые версии SF позволяли вам настраивать бронзу / серебро / золото в конфигурационном файле, но в последних версиях (+6,0 ??) - это вычисляемое поле, управляемое изнутри SF.В любом случае - поскольку начальные узлы будут уменьшены с 9 до 6, я подозреваю, что внутренний расчетный уровень надежности упадет (предположительно с золота на серебро).
Я также натолкнулся на хак , который кто-то использовал для удаления узлов в кластере ... но в моем сценарии узлы все еще перечислены в файле манифеста ... Тем не менее,слова hack и production никогда не должны встречаться!
Итак, как мне вывести наш производственный кластер из этой ситуации?Перестройка кластера невозможна (в этом вся причина кластеров ... высокая доступность!).