Проблема с подключением к кластеру Secure Azure Service Fabric - PullRequest
0 голосов
/ 01 октября 2018

Я пытаюсь подключиться к кластеру с одним узлом, который был успешно создан, но до сих пор не может подключиться с самого узла или с отдельного клиентского компьютера.

Установка представляет собой кластер с одним узлом, где кластери сервер / узел одинаковы.Я использую самозаверяющие сертификаты и (теоретически) установил первичные и вторичные сертификаты на кластере / сервере, а также сертификат администратора и стандартного клиента на клиентском компьютере.

Если я устанавливаю незащищенный кластер нана машине, я могу успешно перейти к ней через браузер, но когда я создаю защищенный кластер, я не могу подключиться.

Попытка подключиться через ошибки PowerShell с «Не удалось проверить подлинность сервера».

Сбой при просмотре на сервере с помощью Chrome.

Конфигурация JSON кластера выглядит следующим образом:

{
  "name": "SomeFancyCluster",
  "clusterConfigurationVersion": "1.0.0",
  "apiVersion": "10-2017",
  "nodes": [
    {
      "nodeName": "vm0",
      "iPAddress": "some.server.name",
      "nodeTypeRef": "NodeType0",
      "faultDomain": "fd:/dc1/r0",
      "upgradeDomain": "UD0"
    }
  ],
  "properties": {
    "diagnosticsStore": {
      "metadata": "Please replace the diagnostics file share with an actual file share accessible from all cluster machines.",
      "dataDeletionAgeInDays": "21",
      "storeType": "FileShare",
      "connectionstring": "c:\\ProgramData\\SF\\DiagnosticsStore"
    },
    "security": {
      "metadata": "The Credential type X509 indicates this is cluster is secured using X509 Certificates. The thumbprint format is - d5 ec 42 3b 79 cb e5 07 fd 83 59 3c 56 b9 d5 31 24 25 42 64.",
      "ClusterCredentialType": "Windows",
      "ServerCredentialType": "X509",
      "WindowsIdentities": {
        "ClusterIdentity": "some.server"
      },
      "CertificateInformation": {
        "ClusterCertificate": {
          "Thumbprint": "ab123456789123456789123456789123456789cd",
          "ThumbprintSecondary": "ef123456789123456789123456789123456789gh",
          "X509StoreName": "My"
        },
        "ServerCertificate": {
          "Thumbprint": "ab123456789123456789123456789123456789cd",
          "ThumbprintSecondary": "ef123456789123456789123456789123456789gh",
          "X509StoreName": "My"
        },
        "ClientCertificateThumbprints": [{
               "CertificateThumbprint": "ab123456789123456789123456789123456789ef",
               "IsAdmin": false
           }, {
               "CertificateThumbprint": "ab123456789123456789123456789123456789gh",
               "IsAdmin": true
           }]
      }
    },
    "nodeTypes": [
      {
        "name": "NodeType0",
        "clientConnectionEndpointPort": "19000",
        "clusterConnectionEndpointPort": "19001",
        "leaseDriverEndpointPort": "19002",
        "serviceConnectionEndpointPort": "19003",
        "httpGatewayEndpointPort": "19080",
        "reverseProxyEndpointPort": "30000",
        "applicationPorts": {
          "startPort": "20001",
          "endPort": "20031"
        },
        "ephemeralPorts": {
          "startPort": "20032",
          "endPort": "20287"
        },
        "isPrimary": true
      }
    ],
    "fabricSettings": [
      {
        "name": "Setup",
        "parameters": [
          {
            "name": "FabricDataRoot",
            "value": "C:\\ProgramData\\SF"
          },
          {
            "name": "FabricLogRoot",
            "value": "C:\\ProgramData\\SF\\Log"
          }
        ]
      }
    ]
  }
}

Затем я попытался подключиться согласно документам.с помощью следующей команды PowerShell

Connect-ServiceFabricCluster -ConnectionEndpoint some.server.name:19000 -KeepAliveIntervalInSec 10 -X509Credential -ServerCertThumbprint <Server Thumbprint> -FindType FindByThumbprint -FindValue <Client Thumbprint> -StoreLocation CurrentUser -StoreName My

Я установил сертификат клиента в «Сертификаты - Текущий пользователь / Личные / Сертификаты»

На сервере все сертификаты находятся в «Сертификаты (локальный компьютер»).) / Личные / Сертификаты '

С основным сервером / сертификатом кластера также в' Сертификаты (локальный компьютер) / TrusКорневые центры сертификации ted 'с CN, равным some.server.name.

Есть идеи относительно того, что отсутствует / неверно выше?

1 Ответ

0 голосов
/ 01 октября 2018

У меня такое ощущение, что это связано с полем ClusterIdentity в конфигурации.Не могли бы вы сказать мне, почему вы добавили это?

Вы проходите аутентификацию по сертификату, поэтому полностью удалите раздел WindowsIdentities и измените ClusterCredentialType на X509, если хотите подключиться к кластеру по сертификату.Обновите конфигурацию кластера, и вы сможете подключиться.

В противном случае укажите -WindowsCredential параметр, а не сертификат при подключении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...