Конфигурация Ключ-АСТРОМ как код: различия между версиями

Материал из Документация Ключ-АСТРОМ
(Новая страница: «'''Ключ-АСТРОМ конфигурация как код''' обеспечивает наблюдаемость как код и безопасность,...»)
 
 
(не показаны 2 промежуточные версии 2 участников)
Строка 1: Строка 1:
'''''[[Применение Ключ-АСТРОМ]] / [[Применение Ключ-АСТРОМ#.D0.92.D0.BB.D0.B0.D0.B4.D0.B5.D0.BD.D0.B8.D0.B5|Владение]] / С[https://doc.ruscomtech.ru/index.php/Создание_и_управление_владениями оздание и управление владениями] / Конфигурация Ключ-АСТРОМ как код'''''
'''Ключ-АСТРОМ конфигурация как код''' обеспечивает наблюдаемость как код и безопасность, как код для полной автоматизации конфигурации платформы Ключ-АСТРОМ  в любом масштабе: от автоматизации стандартной конфигурации всех ваших сред Ключ-АСТРОМ до удовлетворения конкретных требований для отдельных сред.
'''Ключ-АСТРОМ конфигурация как код''' обеспечивает наблюдаемость как код и безопасность, как код для полной автоматизации конфигурации платформы Ключ-АСТРОМ  в любом масштабе: от автоматизации стандартной конфигурации всех ваших сред Ключ-АСТРОМ до удовлетворения конкретных требований для отдельных сред.


Строка 22: Строка 24:
* Передайте свою конфигурацию в систему контроля версий и совместно работайте над изменениями.
* Передайте свою конфигурацию в систему контроля версий и совместно работайте над изменениями.


== Monaco или Terraform? ==
== Terraform ==
При выборе инструмента для '''Ключ-АСТРОМ конфигурация как код''' у вас есть два основных варианта:
Помимо встроенного функционала '''Terraform''', установщик может запускаться, как автономный исполняемый файл для экспорта существующей конфигурации из среды Ключ-АСТРОМ. Эта функциональность представляет собой альтернативу ручному созданию конфигурации '''Terraform''' и позволяет легко создавать шаблоны на основе существующей конфигурации.
 
=== Предустановка ===
 
* '''Terraform CLI''' с установленным поставщиком Ключ-АСТРОМ, доступным под управлением <code>PATH</code>.
* Токен доступа, как минимум со следующими разрешениями:
** Чтение настроек (<code>settings.read</code>)
** Запись настроек (<code>settings.write</code>)
** Чтение конфигурации (<code>ReadConfig</code>)
** Запись конфигурации (<code>WriteConfig</code>)
** Создание и чтение синтетических мониторов, местоположений и узлов (<code>ExternalSyntheticIntegration</code>)
** Данные запроса на захват (<code>CaptureRequestData</code>)
** Чтение записей хранилища учетных данных (<code>credentialVault.read</code>)
** Запись записей хранилища учетных данных (<code>credentialVault.write</code>)
** Чтение сетевых зон (<code>networkZones.read</code>)
** Запись сетевых зон (<code>networkZones.write</code>)
 
Для аутентификации некоторых ресурсов (например, API автоматизации, управления документами и учётными записями) требуется клиент '''OAuth'''. Подробнее см. на страницах, посвящённых конкретным ресурсам, в [https://registry.terraform.io/providers/dynatrace-oss/dynatrace/latest/docs реестре Terraform].
 
=== Руководство по экспорту ===
1. Определите URL-адрес среды и токен '''API''' в окне терминала. Это позволит идентифицировать клиента Ключ-АСТРОМ для получения конфигурации.
 
'''Windows - SaaS'''
{| class="wikitable"
|set astromkey_ENV_URL=<nowiki>https://########.live.astromkey.com</nowiki>
 
set astromkey_API_TOKEN=dt0c01.########.########
|}
'''Windows - Managed'''
{| class="wikitable"
|set astromkey_ENV_URL=https://<astromkey-host>/e/########
 
set astromkey_API_TOKEN=dt0c01.########.########
|}
'''Linux - SaaS'''
{| class="wikitable"
|export astromkey_ENV_URL=<nowiki>https://########.live.astromkey.com</nowiki>
 
export astromkey_API_TOKEN=dt0c01.########.########
|}
'''Linux - Managed'''
{| class="wikitable"
|export astromkey_ENV_URL=https://<astromkey-host>/e/########
 
export astromkey_API_TOKEN=dt0c01.########.########
|}
При желании можно указать выходную директорию <code>astromkey_TARGET_FOLDER</code>. Если не указано <code>./configuration</code>, будет использоваться директория по умолчанию.
 
2. Откройте исполняемый файл '''Terraform Astromkey Provider''' в терминале. Это не стандартный исполняемый файл, такой как <code>terraform.exe</code> или <code>./terraform</code>. Обычно он находится в <code>.terraform/providers/registry.terraform.io/astromkey-oss/astromkey/{provider_version}/{os_version}/terraform-provider-astromkey_x.y.z</code>.
 
3. Вызовите исполняемый файл напрямую с необходимыми параметрами. Поскольку экспорт — это дополнительная функция, плагин можно вызывать напрямую, а предупреждение можно спокойно игнорировать. Примеры см. в разделе '''Примеры использования''' ниже.
 
'''Windows''' ''':''' <code>terraform-provider-astromkey.exe -export [-ref] [-migrate] [-import-state] [-id] [-flat] [-exclude] [<resourcename>[=<id>]]</code>
 
'''Linux''' ''':''' <code>./terraform-provider-astromkey -export [-ref] [-migrate] [-import-state] [-id] [-flat] [-exclude] [<resourcename>[=<id>]]</code>
 
=== Параметры ===
 
* <code>-ref</code>: Включить ресурсы с источниками данных и зависимостями.
* <code>-migrate</code>: Включить ресурсы с зависимостями, за исключением источников данных. Подробнее см. в руководстве по миграции .
* <code>-import-state</code>: Инициализация модулей terraform и импорт ресурсов в состояние.
* <code>-id</code>: Отображение прокомментированного идентификатора в файлах ресурсов.
* <code>-flat</code>: Хранить все ресурсы непосредственно в целевой папке без модульной структуры.
* <code>-exclude</code>: Исключить указанные ресурсы из экспорта.
* <code>-list-exclusions</code>: Выводит обзор ресурсов, которые не будут экспортированы, если явно не указано иное.
 
По умолчанию дашборды (<code>astromkey_json_dashboard</code>) и различные другие ресурсы исключаются из экспорта, если ресурс не указан явно. Используйте эту опцию <code>-list-exclusions</code>, чтобы получить полный список исключенных ресурсов.
 
=== Примеры использования ===
В следующих примерах показаны различные способы использования утилиты экспорта.
 
* Экспортировать все конфигурации без источников данных/зависимостей:  <br /><code>./terraform-provider-astromkey -export</code>
* Экспортируйте все конфигурации с источниками данных/зависимостями и включите прокомментированные идентификаторы:  <br /><code>./terraform-provider-astromkey -export -ref -id</code>
* Экспортируйте все конфигурации с источниками данных/зависимостями, включая указанные ресурсы в списке исключений: <br /><code>./terraform-provider-astromkey -export -ref * astromkey_json_dashboard astromkey_document</code>
* Конфигурация экспорта:  <br /><code>./terraform-provider-astromkey -export astromkey_json_dashboard astromkey_document</code>
* Экспорт конкретных конфигураций и их зависимостей:  <br /><code>./terraform-provider-astromkey -export -ref astromkey_json_dashboard astromkey_web_application</code>
* Экспортируйте конкретные профили оповещений по их идентификаторам:  <br /><code>./terraform-provider-astromkey -export -ref astromkey_alerting=4f5942d4-3450-40a8-818f-c5faeb3563d0 astromkey_alerting=9c4b75f1-9a64-4b44-a8e4-149154fd5325</code>
* Экспортировать несколько ресурсов, включая зависимости:  <br /><code>./terraform-provider-astromkey -export -ref astromkey_calculated_service_metric astromkey_alerting=4f5942d4-3450-40a8-818f-c5faeb3563d0</code>
* Экспортируйте все конфигурации и импортируйте их в состояние:  <br /><code>./terraform-provider-astromkey -export -import-state</code>
* Экспортируйте определенные веб-приложения и импортируйте их в состояние: <br /><code>./terraform-provider-astromkey -export -import-state astromkey_web_application</code>
* Экспортировать все конфигурации, за исключением указанных ресурсов:  <br /><code>./terraform-provider-astromkey -export -ref -exclude astromkey_calculated_service_metric astromkey_alerting</code>
 
=== Дополнительная информация ===


* '''Monaco''' — это собственный инструмент '''Ключ-АСТРОМ конфигурация как код'''. '''Monaco''' также рекомендуется для перехода с '''Ключ-АСТРОМ Managed''' на '''Ключ-АСТРОМ SaaS.'''
* Некоторые экспортированные конфигурации могут быть устаревшими или требовать изменений. Такие файлы перемещаются в директорию <code>.flawed</code> в выходной папке с указанием причин в комментариях в начале файла.
* '''Terraform''' — Ключ-АСТРОМ также поддерживает '''конфигурация как код''' через выделенного поставщика '''Terraform'''. Рассмотрите возможность выбора этого варианта, если вы уже используете '''Terraform''' в своей среде.
* В некоторых конфигурациях может отсутствовать важная информация из-за конфиденциальности данных или случаев <code>terraform apply</code>, когда файлы требуют дополнительного внимания. Такие файлы перемещены в <code>.requires_attention</code>, с пояснениями в виде комментариев в начале файла.  Например в <code>astromkey_credentials</code>, конфиденциальные строки недоступны через API.

Текущая версия на 20:08, 6 августа 2025

Применение Ключ-АСТРОМ / Владение / Создание и управление владениями / Конфигурация Ключ-АСТРОМ как код

Ключ-АСТРОМ конфигурация как код обеспечивает наблюдаемость как код и безопасность, как код для полной автоматизации конфигурации платформы Ключ-АСТРОМ в любом масштабе: от автоматизации стандартной конфигурации всех ваших сред Ключ-АСТРОМ до удовлетворения конкретных требований для отдельных сред.

Почему конфигурация как код?

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

Подход Ключ-АСТРОМ конфигурация как код позволяет управлять задачами наблюдения за средой Ключ-АСТРОМ с помощью файлов конфигурации вместо графического пользовательского интерфейса.

Файлы конфигурации позволяют вам создавать, обновлять и управлять конфигурациями наблюдаемости безопасно, последовательно и многократно. Их можно повторно использовать, добавлять версии и делиться ими в вашей команде.

Как это работает

Разработчики определяют файл конфигурации и проверяют его в системе контроля версий вместе с исходным кодом приложения. Код создается и развертывается со следующим запросом на извлечение, автоматически создавая конфигурацию наблюдаемости, такую ​​как дашборд, синтетические мониторы и оповещения.

Возможности

Конфигурация как код может выполнять следующие действия:

  • Создавайте шаблоны конфигурации, которые можно повторно использовать в различных средах.
  • Управляйте взаимозависимостями между конфигурациями без необходимости сохранения уникальных идентификаторов.
  • Применяйте одну и ту же конфигурацию к сотням сред Ключ-АСТРОМ и обновляйте их все одновременно.
  • Продвигайте конфигурации приложений в разных средах после развертывания на каждом этапе.
  • Поддерживайте все механизмы и лучшие практики рабочих процессов на базе Git, такие как запросы на извлечение, слияние и утверждения.
  • Передайте свою конфигурацию в систему контроля версий и совместно работайте над изменениями.

Terraform

Помимо встроенного функционала Terraform, установщик может запускаться, как автономный исполняемый файл для экспорта существующей конфигурации из среды Ключ-АСТРОМ. Эта функциональность представляет собой альтернативу ручному созданию конфигурации Terraform и позволяет легко создавать шаблоны на основе существующей конфигурации.

Предустановка

  • Terraform CLI с установленным поставщиком Ключ-АСТРОМ, доступным под управлением PATH.
  • Токен доступа, как минимум со следующими разрешениями:
    • Чтение настроек (settings.read)
    • Запись настроек (settings.write)
    • Чтение конфигурации (ReadConfig)
    • Запись конфигурации (WriteConfig)
    • Создание и чтение синтетических мониторов, местоположений и узлов (ExternalSyntheticIntegration)
    • Данные запроса на захват (CaptureRequestData)
    • Чтение записей хранилища учетных данных (credentialVault.read)
    • Запись записей хранилища учетных данных (credentialVault.write)
    • Чтение сетевых зон (networkZones.read)
    • Запись сетевых зон (networkZones.write)

Для аутентификации некоторых ресурсов (например, API автоматизации, управления документами и учётными записями) требуется клиент OAuth. Подробнее см. на страницах, посвящённых конкретным ресурсам, в реестре Terraform.

Руководство по экспорту

1. Определите URL-адрес среды и токен API в окне терминала. Это позволит идентифицировать клиента Ключ-АСТРОМ для получения конфигурации.

Windows - SaaS

set astromkey_ENV_URL=https://########.live.astromkey.com

set astromkey_API_TOKEN=dt0c01.########.########

Windows - Managed

set astromkey_ENV_URL=https://<astromkey-host>/e/########

set astromkey_API_TOKEN=dt0c01.########.########

Linux - SaaS

export astromkey_ENV_URL=https://########.live.astromkey.com

export astromkey_API_TOKEN=dt0c01.########.########

Linux - Managed

export astromkey_ENV_URL=https://<astromkey-host>/e/########

export astromkey_API_TOKEN=dt0c01.########.########

При желании можно указать выходную директорию astromkey_TARGET_FOLDER. Если не указано ./configuration, будет использоваться директория по умолчанию.

2. Откройте исполняемый файл Terraform Astromkey Provider в терминале. Это не стандартный исполняемый файл, такой как terraform.exe или ./terraform. Обычно он находится в .terraform/providers/registry.terraform.io/astromkey-oss/astromkey/{provider_version}/{os_version}/terraform-provider-astromkey_x.y.z.

3. Вызовите исполняемый файл напрямую с необходимыми параметрами. Поскольку экспорт — это дополнительная функция, плагин можно вызывать напрямую, а предупреждение можно спокойно игнорировать. Примеры см. в разделе Примеры использования ниже.

Windows : terraform-provider-astromkey.exe -export [-ref] [-migrate] [-import-state] [-id] [-flat] [-exclude] [<resourcename>[=<id>]]

Linux : ./terraform-provider-astromkey -export [-ref] [-migrate] [-import-state] [-id] [-flat] [-exclude] [<resourcename>[=<id>]]

Параметры

  • -ref: Включить ресурсы с источниками данных и зависимостями.
  • -migrate: Включить ресурсы с зависимостями, за исключением источников данных. Подробнее см. в руководстве по миграции .
  • -import-state: Инициализация модулей terraform и импорт ресурсов в состояние.
  • -id: Отображение прокомментированного идентификатора в файлах ресурсов.
  • -flat: Хранить все ресурсы непосредственно в целевой папке без модульной структуры.
  • -exclude: Исключить указанные ресурсы из экспорта.
  • -list-exclusions: Выводит обзор ресурсов, которые не будут экспортированы, если явно не указано иное.

По умолчанию дашборды (astromkey_json_dashboard) и различные другие ресурсы исключаются из экспорта, если ресурс не указан явно. Используйте эту опцию -list-exclusions, чтобы получить полный список исключенных ресурсов.

Примеры использования

В следующих примерах показаны различные способы использования утилиты экспорта.

  • Экспортировать все конфигурации без источников данных/зависимостей:
    ./terraform-provider-astromkey -export
  • Экспортируйте все конфигурации с источниками данных/зависимостями и включите прокомментированные идентификаторы:
    ./terraform-provider-astromkey -export -ref -id
  • Экспортируйте все конфигурации с источниками данных/зависимостями, включая указанные ресурсы в списке исключений:
    ./terraform-provider-astromkey -export -ref * astromkey_json_dashboard astromkey_document
  • Конфигурация экспорта:
    ./terraform-provider-astromkey -export astromkey_json_dashboard astromkey_document
  • Экспорт конкретных конфигураций и их зависимостей:
    ./terraform-provider-astromkey -export -ref astromkey_json_dashboard astromkey_web_application
  • Экспортируйте конкретные профили оповещений по их идентификаторам:
    ./terraform-provider-astromkey -export -ref astromkey_alerting=4f5942d4-3450-40a8-818f-c5faeb3563d0 astromkey_alerting=9c4b75f1-9a64-4b44-a8e4-149154fd5325
  • Экспортировать несколько ресурсов, включая зависимости:
    ./terraform-provider-astromkey -export -ref astromkey_calculated_service_metric astromkey_alerting=4f5942d4-3450-40a8-818f-c5faeb3563d0
  • Экспортируйте все конфигурации и импортируйте их в состояние:
    ./terraform-provider-astromkey -export -import-state
  • Экспортируйте определенные веб-приложения и импортируйте их в состояние:
    ./terraform-provider-astromkey -export -import-state astromkey_web_application
  • Экспортировать все конфигурации, за исключением указанных ресурсов:
    ./terraform-provider-astromkey -export -ref -exclude astromkey_calculated_service_metric astromkey_alerting

Дополнительная информация

  • Некоторые экспортированные конфигурации могут быть устаревшими или требовать изменений. Такие файлы перемещаются в директорию .flawed в выходной папке с указанием причин в комментариях в начале файла.
  • В некоторых конфигурациях может отсутствовать важная информация из-за конфиденциальности данных или случаев terraform apply, когда файлы требуют дополнительного внимания. Такие файлы перемещены в .requires_attention, с пояснениями в виде комментариев в начале файла. Например в astromkey_credentials, конфиденциальные строки недоступны через API.