手順200個のうち2%が「足す」形だと、100回流したときに396個の余分が積もりました。
0%なら何回流しても0個です。書き方1つで、繰り返せるかどうかが決まります。
宣言として書けているかどうかは、2回流して差が出るかで確かめられます。
Ansibleに書くのは、望ましい状態です。公式は手元または離れた系の望ましい状態を、手順書の中で宣言すると述べています。
「宣言する」と書けていれば、何回流しても同じ状態になります。書けていなければ積もります。
どれだけ積もるかを数えました。手順200個のうち、一定の割合が「足す」形だとします。
手順 200個。同じ手順を繰り返し流したときの、意図した状態との差を数える 「足す」形の手順は流すたびに増える。「そうする」形の手順は何回流しても同じ 足す形の割合 1回 2回 5回 20回 100回 (意図と違う項目) 0% 0個 0個 0個 0個 0個 2% 0個 4個 16個 76個 396個 10% 0個 20個 80個 380個 1980個
1回目はどの行も0個です。最初に流した時点では違いが出ません。
2回目で差が出ます。2%なら4個、10%なら20個です。
表の2列目が、そのまま確かめ方になります。同じ手順を2回流して、2回目に何も変わらなければよいのです。
変わったものがあれば、そこが「足す」形です。4個という数は、200個のうち4個を直せばよいという意味でもあります。
1回しか流さない前提で書いていると、この確認が抜けます。100回流したときの396個は、その積み重ねです。
1回目では差が出ない。2回目から積もりはじめる。
You declare the desired state of a local or remote system in your playbook.原文Ansible 公式ドキュメント「Introduction to Ansible」 この内容の有効期限2027-02-18
宣言として書けていれば、状態を確かめて飛ばせます。繰り返せるかどうかが速さにも効きます。
Ansibleの手順書について、公式はAnsibleは、手順書と呼ばれる単純で人が読める記述を使って、作業を自動化すると説明しています。
この手順書を繰り返し流す前提だと、飛ばせるかどうかが時間に効きます。
流し直しにかかる時間(変わらない手順は飛ばせるかどうかで比べる) やり方 1回目 2回目以降 100回ぶんの合計 毎回すべて実行する 24.0秒 24.0秒 40.0分 変わらない分は飛ばす 24.0秒 1.6秒 3.0分
1回目はどちらも24.0秒です。差が出るのは2回目からになります。
100回ぶんでは40.0分と3.0分です。13倍の違いになります。
前の節と合わせると、宣言として書けていることは2つの効き目を持ちます。
3番目が運用で効きます。流す前に確かめられるので、想定外の変更を止められます。
Ansible uses simple, human-readable scripts called playbooks to automate your tasks.原文Ansible 公式ドキュメント「Introduction to Ansible」 この内容の有効期限2027-02-18
手元から対象へ向かって流す形です。だから流す間隔を、こちらで決めることになります。
Ansibleの手順書の中身は、公式が定めています。手順書はプレイを含む。プレイはAnsibleの実行の基本の単位であるという説明です。
実行するのは手元の側です。対象の側に常駐する仕組みを置きません。
常駐していないので、流していない間はずれていきます。その量を数えました。
管理する対象 400件・90日ぶん。1日に平均 1.2件が手で触られる 宣言した状態に戻す作業を、決めた間隔で行う 直す間隔 ずれている件数(平均) 最大 直した回数 1回あたり直す件数 直さない 88.0件 206件 0.0回 0.0件 1日ごと 1.9件 8件 90.0回 1.9件 7日ごと 7.7件 25件 12.0回 13.5件 30日ごと 30.0件 75件 3.0回 58.2件
1日ごとに流せば、ずれは平均1.9件に収まります。30日ごとなら30.0件です。
前の節の時間と合わせて考えます。飛ばせる形なら1回1.6秒なので、毎日流しても負担になりません。
飛ばせない形だと1回24.0秒です。繰り返せるように書けているかどうかが、流す間隔の選択肢を決めます。
対象の側に常駐して突き合わせ続ける形もあります。その場合の数字はArgoCDの記事で扱いました。
違いは誰が間隔を決めるかです。流す側から流す形では、こちらの都合で決められる代わり、忘れれば直りません。
手順の数、1手順あたりの時間、手で触られる件数はいずれも置いた値です。「足す」形の手順が何個あるかも割合で置きました。実際には、同じ手順でも対象の状態によって積もり方が違います。ここで見せているのは、繰り返せるかどうかが2回目に現れること、それが流し直しの時間にも効くという2つの関係です。どちらも自分の手順書で、2回流せば確かめられます。
They contain Plays (which are the basic unit of Ansible execution).原文Ansible 公式ドキュメント「Ansible concepts」 この内容の有効期限2027-02-18
同じ課題を持つ会社にとって、動いている設定は「作る時間」を買えるということです。ServiceDockは自作のワークフローやテンプレートを出品できるマーケットプレイスです。手数料や出品の流れは出品者向けページにまとまっています。
出品の仕組みを見る