腐女子エンジニアの日記

創作と技術と時々音楽

Ansible 2.9→2.10の変更点まとめてみた

背景

  • Ansible2.9から2.10でモジュールの構成が変わるという話を聞いて今後のバージョンアップに不安を感じたため、情報をまとめることにしました。

注意

  • あくまで現時点での覚書です。
  • 本記事は参照元の変更に従い情報更新や変更を行います。
  • 参照記事を翻訳・解釈したものなので、間違ってたら指摘ください。

参照

本記事は下記ページから情報を取得しています。

概要

The 2.10 release of Ansible will fundamentally change the scope of plugins included in the ansible/ansible repository, by moving much of the plugins into smaller collection repositories that will be shipped through https://galaxy.ansible.com/ (https://docs.ansible.com/ansible/devel/roadmap/ROADMAP_2_10.html#additional-resources)

  • 2.10系からはansible/ansibleリポジトリのリリースのスコープが変更される、というのが大まかな内容です。
  • 下記ざっくりと書いてみました。

2.9系までの方針

  • ansible/ansibleという単一リポジトリで全てのパッケージを管理していた。

2.10系からの方針

  • ansible/ansibleリポジトリには下記内容のみ存在する。
    • core ansible programs(ansible-{playbook, galaxy, doc, test} etc...)
    • ドキュメント
    • コントローラで機能可能なモジュール・プラグインの小さなサブセット
    • ansible-base(anible/ansibleのdevelブランチのこと)
  • 上記以外のモジュールはcollectionに移動する。
    • Collectionはansible/ansibleと異なるタイミングでリリース可能。
    • Ansibleコミュニティチームが管理するコレクションはcommunity.generalリポジトリに移動。
  • Ansible 2.10パッケージのリリースでは、ansible-baseと、もともとansible/ansibleの一部だったコミュニティcollectionが組み込まれる。
  • 2.10系のリリースサイクルの大半はリポジトリの構成変更によるもの

その他

  • Ansibleのインストールコマンドが変更される。
    • pip install ansible-baseAnsible(2.10)インストール
    • pip install ansibleAnsible Community Distribution(Ansible(2.10) + collection経由で追加のモジュール・プラグイン)インストール

影響

  • バージョンアップ自体はこれまで通りのコマンドでいける。(モジュール入れる入れないでも変わりそうだけど)
  • 必要なcollectionを洗い出しておく必要がある。
  • 各モジュールのアップデートをどこまで追うか、組織での検討が必要。

所感

  • インストール手順ががっつり変わるわけではなくホッとしました。(現時点でわかる範囲ですが・・・)
  • モジュール単位のバージョンアップが容易になることで、嬉しい反面負荷が大きくなりそうだなあ、という印象です。

翻訳に自信がないので間違えてたら指摘ください・・・。