Comments 10
Цель хорошая, я сам активно использую Ansible в конфигурировании гетерогенных систем, но технически картина сравнения передана неверно. Из предложения "дергать DSC", как и всего остального, у меня сложилось впечатление, что вы с ним не знакомы. Например, в Powershell DSC вот это:
- name: Install AWS CLI
hosts: all
...и остальные пару десятков квази-императивных инструкций...
Выглядит всего лишь как:
Node $AllNodes {
Package AWSCLI {
Name = 'AWS Command Line Interface'
Path = 'https://s3.amazonaws.com/aws-cli/AWSCLI32PY3.msi'
ProductId = '243E6CD9-5503-43BF-9E75-F6F59E6DA157'
}
}
И это такая же "desired state" идемпотентность, которую вы рекламировали в Ansible со всеми необходимыми механизмами контроля и т.п.
> Test-DscConfiguration ...
InDesiredState : True
ResourcesInDesiredState : {[Package]AWSCLI}
ResourcesNotInDesiredState :
ReturnValue : 0
PSComputerName : 127.0.0.1
Справедливости для, проблем у DSC хватает. Он хорош гибкостью. Когда на прошлой неделе возился с динамическими инветарями в Ansible, с тоской вспоминал Powershell. Пришлось даже PR делать, который войдет в 2.9)). Но когда я начинаю какой-то проект на Powershell, то скучаю по Ansible с его огромным количеством наработок: готовых модулей, galaxy, community. Если нужен быстро бойлерплейт — он просто незаменим. Скажем в DSC даже нет ролей из коробки. Я могу реализовать там любую таксономию, но её надо делать. Так что пока тоже Ansible-плейбуки в руки и вперед)))
Отличная статья.
Несколько как бы минусов (на самом деле нет).
- Yaml — действительно декларативный, но ансибл — процедурный. Все сильно зависит от используемых модулей.
- Хотелось бы консистентности в наименованиях. Модуль — это модуль. Роль — это роль.
- Идемпотентность — в первую очередь не в модулях, а в головах, т.е. в том, как человек пишет плейбук. Можно даже с хорошими модулями все испортить.
- Не рассмотрены: awx (для централизованного управления ), аналоги (salt?), установка ansible на windows (вроде как это было возможно).
- Гелекси — та ещё помойка. Очень опасливо что-то оттуда брать готовое. А вот как источник вдохновения — она очень даже годится.
Но статья делает свое позитивное действие по популяризации инструмента.
тогда вся эта муть с winrm должна уйти в прошлое )
Ansible для управления конфигурацией Windows. История успеха