Поделиться через


Upload usage data to Azure in indirect mode

Периодически можно экспортировать сведения об использовании. Экспорт и отправка этих сведений создает и обновляет контроллер данных и управляемый экземпляр SQL.

Note

Usage information is automatically uploaded for Azure Arc data controller deployed in direct connectivity mode. The instructions in this article only apply to uploading usage information for Azure Arc data controller deployed in indirect connectivity mode..

Подождите не менее 24 часов после создания контроллера данных ARC в Azure перед отправкой данных об использовании.

Создание принципала службы и назначение ролей

Прежде чем продолжить, убедитесь, что вы создали требуемый субъект-службу и назначили его соответствующей роли. Подробная информация доступна в следующих статьях:

В примерах в этой статье используются угловые скобки < ... > для определения значений, которые необходимо заменить перед запуском скрипта. Замените квадратные скобки и значения внутри квадратных скобок.

Отправка данных об использовании

Сведения об использовании, такие как инвентаризация и использование ресурсов, можно отправить в Azure следующим образом в два шага.

  1. Экспортируйте данные об использовании с помощью команды az arcdata dc export следующим образом.

Note

Для экспорта сведений о потреблении/выставлении счетов, метрик и журналов с помощью команды az arcdata dc export на данный момент требуется обход проверки SSL. Вам будет предложено обойти проверку SSL, либо вы можете задать переменную среды AZDATA_VERIFY_SSL=no, чтобы избежать появления запроса. В настоящее время нет возможности настроить SSL-сертификат для API экспорта контроллера данных.

az arcdata dc export --type usage --path usage.json --k8s-namespace <namespace> --use-k8s

Эта команда создает файл со всеми ресурсами данных с поддержкой usage.json Azure Arc, такими как управляемые экземпляры SQL, созданные на контроллере данных.

Пока файл не зашифрован, поэтому можно просмотреть его содержимое. Вы можете открыть его в текстовом редакторе и просмотреть содержимое.

Обратите внимание на наличие двух наборов данных: resources и data. resources являются контроллерами данных и управляемыми экземплярами SQL. Записи resources в данных фиксируют соответствующие события в журнале ресурса — когда он был создан, изменен и удален. Записи data фиксируют, сколько ядер было доступно для использования заданным экземпляром каждый час.

Пример записи resource:

    {
        "customObjectName": "<resource type>-2020-29-5-23-13-17-164711",
        "uid": "4bc3dc6b-9148-4c7a-b7dc-01afc1ef5373",
        "instanceName": "sqlInstance001",
        "instanceNamespace": "arc",
        "instanceType": "<resource>",
        "location": "eastus",
        "resourceGroupName": "production-resources",
        "subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
        "isDeleted": false,
        "externalEndpoint": "32.191.39.83:1433",
        "vCores": "2",
        "createTimestamp": "05/29/2020 23:13:17",
        "updateTimestamp": "05/29/2020 23:13:17"
    }

Пример записи data:

        {
          "requestType": "usageUpload",
          "clusterId": "4b0917dd-e003-480e-ae74-1a8bb5e36b5d",
          "name": "DataControllerTestName",
          "subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
          "resourceGroup": "production-resources",
          "location": "eastus",
          "uploadRequest": {
            "exportType": "usages",
            "dataTimestamp": "2020-06-17T22:32:24Z",
            "data": "[{\"name\":\"sqlInstance001\",
                       \"namespace\":\"arc\",
                       \"type\":\"<resource type>\",
                       \"eventSequence\":1, 
                       \"eventId\":\"50DF90E8-FC2C-4BBF-B245-CB20DC97FF24\",
                       \"startTime\":\"2020-06-17T19:11:47.7533333\",
                       \"endTime\":\"2020-06-17T19:59:00\",
                       \"quantity\":1,
                       \"id\":\"4BC3DC6B-9148-4C7A-B7DC-01AFC1EF5373\"}]",
           "signature":"MIIE7gYJKoZIhvcNAQ...2xXqkK"
          }
        }
  1. Отправка данных об использовании с помощью команды upload.

    az arcdata dc upload --path usage.json
    

Upload frequency

In the indirect mode, usage information needs to be uploaded to Azure at least once in every 30 days. Настоятельно рекомендуется отправлять чаще, например ежедневно. Если информация об использовании не загружена более 32 дней, вы заметите некоторое ухудшение качества обслуживания, например, невозможность подготовки новых ресурсов.

Для отложенной отправки данных об использовании будет два типа уведомлений: предупреждающий этап и этап снижения качества. На этапе предупреждения будет сообщение, например Billing data for the Azure Arc data controller has not been uploaded in {0} hours. Please upload billing data as soon as possible..

На этапе понижения сообщение будет выглядеть так: Billing data for the Azure Arc data controller has not been uploaded in {0} hours. Some functionality will not be available until the billing data is uploaded..

Note

Вы увидите предупреждение, если данные об использовании не были загружены в течение более чем 48 часов.

Страница обзора портал Azure для контроллера данных и состояния пользовательского ресурса контроллера данных в кластере Kubernetes будет указывать дату последней отправки и сообщения о состоянии.

Автоматизация отправки (необязательно)

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

В любом редакторе текста или кода добавьте следующий скрипт в файл и сохраните его как исполняемый файл скрипта, например .sh (Linux/Mac) или .cmd, .bat или .ps1.

az arcdata dc export --type usage --path usage.json --force --k8s-namespace <namespace> --use-k8s
az arcdata dc upload --path usage.json

Сделайте файл скрипта исполняемым

chmod +x myuploadscript.sh

Запускайте сценарий ежедневно для использования:

watch -n 1200 ./myuploadscript.sh

Можно также использовать планировщик заданий, например cron, или планировщик задач Windows, или оркестратор, например Ansible, Puppet или Chef.

Отправка метрик и журналов в Azure Monitor

Отправка журналов в Azure Monitor

Отправка данных о выставлении счетов в Azure и их просмотр на портале Azure

Просмотр ресурса контроллера данных Azure Arc на портале Azure