Ответ 1
Есть много причин, по которым в большинстве статей говорится об их использовании.
Подумайте о Ansible как способе установки и настройки машины, на которой вы можете вернуться и настроить любой отдельный шаг этой установки и конфигурации в будущем. Затем вы можете масштабировать эту концепцию на многих машинах, как вы можете управлять.
Основное отличие, в котором Ansible имеет преимущество, заключается в том, что он не может просто управлять внутренними компонентами машины, а также управлять другими системами, такими как сеть, DNS, мониторинг и т.д., которые окружают машину.
Создание многих машин через Ansible занимает в значительной степени столько времени, сколько нужно для создания 50 машин, как и для 1, поскольку все 50 будут созданы поэтапно. Если вы выполняете развертывание развертывания в нескольких средах, эта поэтапная сборка занимает много времени.
Теперь подумайте о том, что Docker создал одну из этих отдельных машин - установленную и настроенную и готовую к развертыванию везде, где доступна докерная система (что в наши дни довольно много). Недостатком здесь является то, что вы не можете управлять всеми остальными аспектами, необходимыми для того, чтобы на самом деле работали контейнеры для докеров, а их настройка на долгое время не такая забавная, как кажется, если вы не автоматизировали конфигурацию (следовательно, Ansible помогает здесь).
Масштабирование от 1 до 50 машин докеров, как только вы уже создали начальное изображение, ослеплятельно быстро по сравнению с пошаговым подходом. Сильные удары, и это наиболее очевидно во время развернутого развертывания многих машин в меньших группах.
У каждого есть свои недостатки как в способности, так и в скорости. Объедините их обоих, но это может быть довольно удивительно. Несомненно, что большинство статей, которые вы уже прочитали, я бы рекомендовал рассмотреть возможность использования Ansible для создания (и обновления) вашего базового контейнера (ов) Docker, а затем использования Ansible для управления развертыванием любого масштаба контейнеров, который вам нужно удовлетворить использование ваших приложений.