Azure: автоматизация назначения Azure Policy для настройки Log Analytics скриптами Azure PowerShell

Azure: автоматизация назначения Azure Policy для настройки Log Analytics скриптами Azure PowerShell

Channel:
Subscribers:
59,800
Published on ● Video Link: https://www.youtube.com/watch?v=Rxu3OH68nD0



Category:
Vlog
Duration: 27:49
460 views
22


Мой LinkedIn ►►► https://www.linkedin.com/in/iwalker2000/ | Подписаться на канал ►►► http://bit.ly/iwalker2000_subs | Подготовка к AZ-900 ►►► http://bit.ly/Exam-Az-900 |Загляните на мой блог ►►► http://iwalker2000.com

Обещанные «очень технические» видео по теме Azure на канале – пришло время поделиться некоторыми из личных скриптов и заложенных в них идеях и особенностях реализации той или иной функциональности Azure. В этом видео/посте – поговорим про реализацию автоматического назначения некоторых Azure Policy для конфигурации отправки различными объектами диагностики в Azure Log Analytics при помощи скриптов Azure PowerShell.

Почему не с применением ARM Template? – да потому, что «заморочек» в работе с политиками через ARM Template, особенно если говорить о назначении имеющихся политик, да еще и в режиме «исправления» Remediation. Это и огромные нечитаемые «простыни» самого ARM Template вероятными ошибками при копи-пасте и «заморочками» при редактировании, и масса вопросов по описанию в том же (или отдельном) шаблоне всех необходимых учетных записей managed identity (principal) с раздачей им необходимых ролей в том же шаблоне, и процесс поиска и прописывания массы параметров вручную и прочие моменты типа «ручного участия» даже в назначении имен в том же шаблоне… Потому – скрипт, который управляет назначением выбранных политик – является куда меньшим «злом» с точки зрения процесса и более универсальным в работе, чем шаблоны, которые нужно потом очень внимательно править.

И пару моих детальных видео об автоматизации Azure с применением скриптов (с детальным разбором данных скриптов):
• Azure - подробный обзор универсального PowerShell скрипта для работы с Azure Log Analytics API - https://youtu.be/2AB-bIQl_4Q
• Закон Мерфи для кода или автоматическое копирование файлов между Azure Storage с Azure Logic Apps - https://youtu.be/jvWX6V92aCQ

Но вернемся к представленному Azure PowerShell скрипту, в задачу которого входит назначение политик (стандартных, встроенных в Azure) настройки мониторинга Azure Log Analytics для всех типов сервисов Azure, которые поддерживают данные настройки, на уровне выбранной подписки Azure (хотя в качестве области назначения политик может быть и ресурсная группа, и Management Group). В качестве политики используются встроенные политики Azure Policy, которые соответствуют шаблону имени '*diagnostic settings*Log Analytics*', которые развертываются в режиме Remediation (effect = DeployIfNotExists) для своего типа сервисов.

Какие важные блоки в данном скрипте, на что обратить внимание при работе с назначением политик и использованием их в режиме Remediation (исправления) в коде Azure PowerShell:
• Простые операции получения списка нужных политик (или инициатив – набора политик) при помощи команды
$mons = Get-AzPolicyDefinition | Where-Object { $_.Properties.DisplayName -like '*diagnostic settings*Log Analytics*' }
и работы с данным списком в цикле для каждого элемента.
• Проверка параметров для политики – напомню, что у политики есть свои параметры – большинство из которых – например, тот же режим работы политики – параметр Effect – является установленным по умолчанию в рекомендуемое значение, но вот параметр logAnalytics (которым назначается конкретное хранилище Log Analytics Workspace, куда направляются все логи) может иметь различные модификации имен. Потому – в скрипте проводится проверка точного имени параметра по шалону ‘logAnalytics*’ и формирование параметра на основе полученного имени.
• Формирование имени для назначения конкретной политики на основе строки описания политики, из которой по шаблонам извлекается название сервиса, для которого назначается политика, и после, используя полученное название – создается имя типа $name = "{0}-monitoring-assigned-byScript" -f $aname
• Назначение политики в режиме Remediation – обязательное указание параметров локации (параметр команды -Location) и привязки managed identity (-AssignIdentity) - $assignment = New-AzPolicyAssignment -Name $name -PolicyDefinition $mon -Scope $subsId -PolicyParameterObject $asparam -Location westeurope -AssignIdentity
• Ожидание создания учетной записи, привязанной к назначенной политики – требуется время, чтобы вновь созданная учетная запись была реплицирована внутри Azure AD и была доступна – поскольку без этого нельзя назначать требуемые роли.
• Самая важная часть скрипта – при назначении политик в портале Azure выполняет операцию по конфигурации связанной учетной записи на фоне, но когда используется PowerShell – команда New-AzPolicyAssignment только создает учетную запись, но не назначает на нее роли, которые потом требуются для выполнения политикой операций по исправлению конфигураций. Потому скрипт берет данные о ролях из описания политик и назначает роли для вновь созданных учетных записей.
• И, в заключение – назначение задачи по сканированию конфигурации существующих экземпляров соответствующих политике сервисов и исправлению, если таково требуется.




Other Videos By iwalker2000


2021-10-30Словакия 360 - Старая Братислава (Stare Mesto) - 360 экскурсия по Братиславскому Граду, ч.04
2021-10-26Открыты предзаказы на миниПК CHUWI RZBox (AMD R9 4900H) и минилептоп GPD Pocket 3 на Intel i7-1195G7
2021-10-16Путевые Заметки, Австрия, Халльштатт, август 2021: поднимаемся на фуникулере на гору с шахтами
2021-10-13Домашние гаджеты: продвинутый анализатор качества воздуха Huma-I Smart от компании Smartwell
2021-10-11Windows 11: установка и настройка встроенного ядра Linux в Win11, запуск Linux GUI приложений
2021-10-10iLive:Slovakia - воскресная пьянка и прогулка на новые Nivy с Сергеем Подорвановым
2021-10-09Путевые Заметки, Австрия, Траунзи, август 2021: прогулка на кораблике по красивому озеру Traunsee
2021-10-08Windows 11: переключаем новые контекстные меню Win11 в режим старых добрых меню Windows 10
2021-10-06Windows 11: тестируем хак с отключением TPM/CPU при установке Win11 на неподдерживаемое железо
2021-10-05Azure: PowerShell скрипт для автоматизации назначения Azure Policy для конфигурации Azure Defender
2021-09-28Azure: автоматизация назначения Azure Policy для настройки Log Analytics скриптами Azure PowerShell
2021-09-25Австрия360/Путевые Заметки - мимишный Халльштатт - прогулка по одному из самых узнаваемых городков
2021-09-23Гаджеты: Microsoft представила новую линейку Surface - Surface Pro 8, Surface Duo 2 и Laptop Studio
2021-09-22Windows 11 - Microsoft обновила утилиту проверки совместимости PC Health Check App и требования к ПК
2021-09-20Домашние гаджеты - сенсор качества воздуха IKEA VINDRIKTNING - просто красивая лампочка за 10 евро!
2021-09-18Путевые Заметки, Австрия, Халльштатт, август 2021: прогулка по одному из самых узнаваемых городков
2021-09-17Хобби/"китайское лего" - собираем модель сверхтяжелого танка MAUS - огромная,красивая,сложная модель
2021-09-13ИТ-карьера, сезон 2021-22 - открытое собеседование на позицию Azure Admin - что нужно знать, ч.01
2021-09-11Путевые Заметки, Австрия, Bad Ischl, август 2021: технический музей FAHRZEUG-TECHNIK-LUFTFAHRT
2021-09-03СРОЧНО В НОМЕР! - Windows 11 - в Сеть утекла Store-ссылка на установку Windows Subsystem for Android
2021-09-03Домашние гаджеты/AliExpress - различные LED лампы в стиле UFO, которые полезны для рабочего места



Tags:
софт
экзамен
сертификационный экзамен
Microsoft
AZ-900
Azure Fundamentals
экзамен Microsoft
сертификация Microsoft
Azure
Игорь Шаститко
Igor Shastitko
iwalker2000
Azure Log Analytics
API
PowerShell
deploy Azure Policy by PowerShell
PowerShell Log Analytics
Azure Policy
KQL
вызор запросов KUSTO в PowerShell
статистика Azure через PowerShell
настройка диагностики через политики Azure