VMSS с сервисной фабричной кластерной автомасштабировкой

Я хочу масштабировать или масштабировать в приложении Service Fabric. Для этого я добавил автоматическое масштабирование с метрикой ЦП на шкале ВМ. И в наборе масштаба VM, у меня есть секция расширения с секцией wadcfg со счетчиком на метрике ЦП. И данные успешно передаются в учетную запись хранения, которую я указал. Но масштабирование или масштабирование параметров не выполняются с помощью VMSS и кластера сервисной фабрики. Я прошел шаги по устранению неисправностей, которые были указаны на лазурном портале. https://azure.microsoft.com/en-us/documentation/articles/virtual-machine-scale-sets-troubleshoot/

А без сервисной структуры тот же показатель ЦП работает нормально, а масштабирование виртуальной машины постепенно уменьшается.

Также проверен лимит подписки. Но не смог найти проблему. Но мы получаем почтовое уведомление, в котором говорится, что не удалось прочитать диагностические данные для автоматического масштабирования при совместном развертывании vmss и сервисной фабрики.

1 ответ

Решение

Service Fabric поддерживает AutoScale, но она не очень хорошо документирована. Вот основная документация - https://azure.microsoft.com/en-us/documentation/articles/service-fabric-cluster-scale-up-down/ которая использует элемент "XmlCfg" для настройки счетчиков. Однако есть способ сделать это и через JSON, который более читабелен. Вот фрагмент блока "настройки" из расширения "IaaSDiagnostics".

Обратите внимание на включение элементов "PerformanceCounters" и "Metrics" в "DiagnosticMonitorConfiguration".

{
  "name": "Windows_VMDiagnosticsVmExt",
  "properties": {
    "type": "IaaSDiagnostics",
    "autoUpgradeMinorVersion": true,
    "protectedSettings": {
      "storageAccountName": "[variables('applicationDiagnosticsStorageAccountName')]",
      "storageAccountKey": "[listKeys(resourceId('Microsoft.Storage/storageAccounts', variables('applicationDiagnosticsStorageAccountName')),'2016-01-01').keys[0].value]",
      "storageAccountEndPoint": "https://core.windows.net/"
    },
    "publisher": "Microsoft.Azure.Diagnostics",
    "settings": {
      "WadCfg": {
        "DiagnosticMonitorConfiguration": {
          "overallQuotaInMB": "50000",
          "PerformanceCounters": {
            "PerformanceCounterConfiguration": [
              {
                "annotation": [],
                "scheduledTransferPeriod": "PT1M",
                "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
                "sampleRate": "PT1M"
              },
              {
                "annotation": [],
                "scheduledTransferPeriod": "PT1M",
                "counterSpecifier": "\\Memory\\% Committed Bytes in Use",
                "sampleRate": "PT1M"
              }
            ]
          },
          "Metrics": {
            "resourceId": "[resourceId('Microsoft.Compute/virtualMachineScaleSets', variables('defaultVMNodeTypeName'))]",
            "MetricAggregation": [
              { "scheduledTransferPeriod": "PT1H" },
              { "scheduledTransferPeriod": "PT1M" }
            ]
          },
          "EtwProviders": {
            "EtwEventSourceProviderConfiguration": [
              {
                "provider": "Microsoft-ServiceFabric-Actors",
                "scheduledTransferKeywordFilter": "1",
                "scheduledTransferPeriod": "PT5M",
                "DefaultEvents": {
                  "eventDestination": "ServiceFabricReliableActorEventTable"
                }
              },
              {
                "provider": "Microsoft-ServiceFabric-Services",
                "scheduledTransferPeriod": "PT5M",
                "DefaultEvents": {
                  "eventDestination": "ServiceFabricReliableServiceEventTable"
                }
              }
            ],
            "EtwManifestProviderConfiguration": [
              {
                "provider": "cbd93bc2-71e5-4566-b3a7-595d8eeca6e8",
                "scheduledTransferLogLevelFilter": "Information",
                "scheduledTransferKeywordFilter": "4611686018427387904",
                "scheduledTransferPeriod": "PT5M",
                "DefaultEvents": {
                  "eventDestination": "ServiceFabricSystemEventTable"
                }
              }
            ]
          }
        }
      },
      "StorageAccount": "[variables('applicationDiagnosticsStorageAccountName')]"
    },
    "typeHandlerVersion": "1.5"
  }
}

Другие вопросы по тегам