Мониторинг Azure Управляемый экземпляр для Apache Cassandra с помощью Azure Monitor

Azure Управляемый экземпляр для Apache Cassandra предоставляет метрики и журналы диагностики с помощью Azure Monitor.

Azure Управляемый экземпляр для метрик Apache Cassandra

Вы можете визуализировать метрики для Azure Управляемый экземпляр для Apache Cassandra в портал Azure, перейдя в ресурс кластера и выбрав метрики. Затем можно выбрать доступные метрики и агрегаты.

Screenshot that shows the Metrics pane in the Azure portal.

Параметры диагностики в Azure

Azure Monitor использует параметры диагностики для сбора журналов ресурсов, которые также называются журналами плоскости данных. Ресурс Azure выдает журналы ресурсов для предоставления богатых и частых данных о своих операциях. Azure Monitor записывает эти журналы на запрос. Примеры операций плоскости данных включают удаление, вставку и чтение. Содержимое этих журналов зависит от типа ресурса.

Метрики платформы и журналы действий собираются автоматически, в то время как необходимо создать параметр диагностики для сбора журналов ресурсов или перенаправления их за пределы Azure Monitor. Вы можете включить параметры диагностики для ресурсов кластера Apache Cassandra для Azure Управляемый экземпляр и отправить журналы ресурсов в следующие источники:

  • область Azure Log Analytics. Данные, отправляемые в рабочие области Log Analytics, записываются в таблицы Диагностика Azure (устаревшая версия) или таблицы для конкретных ресурсов (предварительная версия).
  • Концентратор событий.
  • учетной записи хранения.

Примечание.

Рекомендуется создать параметр диагностики в режиме конкретного ресурса.

Создание параметров диагностики с помощью портал Azure

  1. Войдите на портал Azure.

  2. Перейдите к ресурсу кластера Apache Cassandra в Azure Управляемый экземпляр.

    Screenshot that shows selecting a cluster from a list of resources.

  3. Выберите параметры диагностики в разделе "Мониторинг " и нажмите кнопку "Добавить параметр диагностики".

    Screenshot that shows the pane for diagnostic settings and the button for adding a diagnostic setting.

  4. На панели параметров диагностики выберите имя параметра.

    Затем в разделе "Сведения о категории" выберите свои категории. Категория CassandraLogs записывает операции сервера Cassandra. Операции аудита и языка запросов CassandraAudit записывают операции аудита и языка запросов Cassandra (CQL).

    В разделе "Сведения о назначении" выберите предпочитаемое место для журналов. Если вы отправляете журналы в рабочую область Log Analytics, обязательно выберите "Ресурс" в качестве целевой таблицы.

    Screenshot that shows selections for a diagnostic setting.

    Примечание.

    Если вы отправляете журналы в рабочую область Log Analytics, они могут занять до 20 минут. До тех пор таблицы, относящиеся к ресурсам (показанные в разделе Azure Управляемый экземпляр для Apache Cassandra), не отображаются.

  5. После настройки журналов диагностики и потоков данных можно выбрать журналы и запросить доступные журналы диагностики с помощью Azure Data Обозреватель. Дополнительные сведения о Azure Monitor и язык запросов Kusto см. в разделе "Запросы журнала" в Azure Monitor.

    Screenshot that shows query logs.

Создание параметра диагностики с помощью Azure CLI

Чтобы создать параметр диагностики с помощью Azure CLI, используйте команду az monitor diagnostic-settings create :

    logs='[{"category":"CassandraAudit","enabled":true,"retentionPolicy":{"enabled":true,"days":3}},{"category":"CassandraLogs","enabled":true,"retentionPolicy":{"enabled":true,"days":3}}]'
    resourceId='/subscriptions/{SUBSCRIPTION_ID}/resourceGroups/{RESOURCE_GROUP}/providers/Microsoft.DocumentDB/cassandraClusters/{CLUSTER_NAME}'
    workspace='/subscriptions/{SUBSCRIPTION_ID}/resourcegroups/{RESOURCE_GROUP}/providers/microsoft.operationalinsights/workspaces/{WORKSPACE_NAME}'

    az monitor diagnostic-settings create  --name tvk-diagnostic-logs-cassandra --resource $resourceId --logs  $logs --workspace $workspace --export-to-resource-specific true

Создание параметра диагностики с помощью REST API

Для создания параметра диагностики через интерактивную консоль используйте REST API Azure Monitor.

Примечание.

Рекомендуется задать logAnalyticsDestinationType свойство для включения таблиц, относящихся к Dedicated ресурсам.

Запросить

PUT
https://management.azure.com/{resource-id}/providers/microsoft.insights/diagnosticSettings/service?api-version={api-version}

Заголовки

Параметры и заголовки Значение и описание
name Имя параметра диагностики
resourceUri subscriptions/{SUBSCRIPTION_ID}/resourceGroups/{RESOURCE_GROUP}/providers/Microsoft.DocumentDb/databaseAccounts/{ACCOUNT_NAME}/providers/microsoft.insights/diagnosticSettings/{DIAGNOSTIC_SETTING_NAME}
api-version 2017-05-01-preview
Content-Type application/json

Текст

{
    "id": "/subscriptions/{SUBSCRIPTION_ID}/resourceGroups/{RESOURCE_GROUP}/providers/Microsoft.DocumentDb/databaseAccounts/{ACCOUNT_NAME}/providers/microsoft.insights/diagnosticSettings/{DIAGNOSTIC_SETTING_NAME}",
    "type": "Microsoft.Insights/diagnosticSettings",
    "name": "name",
    "location": null,
    "kind": null,
    "tags": null,
    "properties": {
        "storageAccountId": null,
        "serviceBusRuleId": null,
        "workspaceId": "/subscriptions/{SUBSCRIPTION_ID}/resourcegroups/{RESOURCE_GROUP}/providers/microsoft.operationalinsights/workspaces/{WORKSPACE_NAME}",
        "eventHubAuthorizationRuleId": null,
        "eventHubName": null,
        "logs": [
            {
                "category": "CassandraAudit",
                "categoryGroup": null,
                "enabled": true,
                "retentionPolicy": {
                    "enabled": false,
                    "days": 0
                }
            },
            {
                "category": "CassandraLogs",
                "categoryGroup": null,
                "enabled": true,
                "retentionPolicy": {
                    "enabled": false,
                    "days": 0
                }
            }
        ],
        "logAnalyticsDestinationType": "Dedicated"
    },
    "identity": null
}

Список разрешений аудита

Примечание.

В этой статье содержатся ссылки на список разрешений, который корпорация Майкрософт больше не использует. Когда этот термин будет удален из программного обеспечения, мы удалим его из статьи.

По умолчанию ведение журнала аудита создает запись для каждой попытки входа и запроса CQL. Результат может быть подавляющим и увеличить расходы. Для управления этой ситуацией можно использовать список разрешений для выборочного включения или исключения определенных записей аудита.

Cassandra 3.11

В Cassandra 3.11 можно использовать функцию списка разрешений аудита, чтобы задать, какие операции не создают запись аудита. Функция списка разрешений аудита включена по умолчанию в Cassandra 3.11. Сведения о настройке списка разрешений см. в статье "Управление списками разрешений на основе ролей".

Примеры:

  • Чтобы отфильтровать все SELECT и MODIFY операции для пользователя bob из журнала аудита, выполните следующие инструкции:

    cassandra@cqlsh> ALTER ROLE bob WITH OPTIONS = { 'GRANT AUDIT WHITELIST FOR SELECT' : 'data' };
    cassandra@cqlsh> ALTER ROLE bob WITH OPTIONS = { 'GRANT AUDIT WHITELIST FOR MODIFY' : 'data' };
    
  • Чтобы отфильтровать все SELECT операции decisions в таблице в пространстве ключей для пользователя jim из design журнала аудита, выполните следующую инструкцию:

    cassandra@cqlsh> ALTER ROLE jim WITH OPTIONS = { 'GRANT AUDIT WHITELIST FOR SELECT' : 'data/design/decisions' };
    
  • Чтобы отменить список разрешений для пользователя во всех операциях SELECT пользователяbob, выполните следующую инструкцию:

    cassandra@cqlsh> ALTER ROLE bob WITH OPTIONS = { 'REVOKE AUDIT WHITELIST FOR SELECT' : 'data' };
    
  • Чтобы просмотреть текущие списки разрешений, выполните следующую инструкцию:

    cassandra@cqlsh> LIST ROLES;
    

Cassandra 4 и более поздних версий

В Cassandra 4 и более поздних версиях можно настроить список разрешений в конфигурации Cassandra. Подробные инструкции см. в разделе "Обновление конфигурации Cassandra". Доступные варианты приведены следующим образом (справочная документация по Cassandra для ведения журнала аудита):

audit_logging_options:
    included_keyspaces: <Comma separated list of keyspaces to be included in audit log, default - includes all keyspaces>
    excluded_keyspaces: <Comma separated list of keyspaces to be excluded from audit log, default - excludes no keyspace except system, system_schema and system_virtual_schema>
    included_categories: <Comma separated list of Audit Log Categories to be included in audit log, default - includes all categories>
    excluded_categories: <Comma separated list of Audit Log Categories to be excluded from audit log, default - excludes no category>
    included_users: <Comma separated list of users to be included in audit log, default - includes all users>
    excluded_users: <Comma separated list of users to be excluded from audit log, default - excludes no user>

Доступные категории: QUERY, DML, DDLOTHERDCL, , AUTH, . PREPAREERROR

Ниже приведен пример конфигурации:

audit_logging_options:
    included_keyspaces: keyspace1,keyspace2
    included_categories: AUTH,ERROR,DCL,DDL

По умолчанию наборы included_categoriesAUTH,ERROR,DCL,DDLконфигураций — .

Следующие шаги