「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > PythonおよびExcelの動的リスク更新のヒント

PythonおよびExcelの動的リスク更新のヒント

2025-04-18に投稿されました
ブラウズ:202

Dynamic Risk-Based Updates Using Python and Excel

PythonとExcelを使用した動的リスクベースの更新」

このブログでは、単純なAnsible Server Updateスクリプトを取り、リスクベースの更新システムに変換します。ここでは、リスクが最も低いサーバーが最初にパッチが適用され、より優先順位システムに進む前に徹底的にテストする機会が与えられます。

    Ansible Automation:
    • PythonとExcelを使用した動的リスクベースの更新 "
    • ホストファイル
    • 動的ホストリスト
    • ホストファイルを使用してみませんか?
秘密のソース?明確に定義されたグループをセットアップして、このフローをシームレスに行います。しかし、本当の問題は、前回からAnsibleスクリプトに大きな変更を加えることなくこれをやってのけることができますか?見つけましょう!

ホストファイル

ホストファイルはこの変更の中心にあります。最後の投稿では、サーバータイプによってグループ化された静的ファイルを使用しました。次に、リスクレベルごとに2番目のグループ化層を追加します。これは、ホストファイルに複雑さを追加します。

しかし、ここにひねりがあります:ホストファイルをより一般的なソースから動的に生成できる場合はどうなりますか?それは物事を柔軟に保ち、無限のファイルの編集から私たちを救うでしょう!

動的ホストリスト

Ansibleは動的に作成されたホストファイルで動作することができます。これにより、サーバーを追跡するためのより柔軟な方法が得られます。この例では、Excelファイルを使用してホストを整理します。

例hosts_data.xlsx構造:

ホスト名サーバー環境 ansibleユーザーサーバータイプ dns notes ミント dev リチャードデスクトップ desktop.sebostech.local ミントデスクトップ ansible_node dev ansible_admin ansible ansible_node.sebostech.local Development Server;毎月のみ clone_master dev ansible_admin クローン clone.dev.sebostech.local Development Server;毎月のみ Mele ステージングリチャード nas nas.stage.sebostech.local テストサーバー;アプリケーションテストに使用 pbs 生産根バックアップサーバー pbs.prod.sebostech.local テストサーバー;アプリケーションテストに使用 pve 生産根 Hypervisor api.stage.sebostech.local テストサーバー;アプリケーションテストに使用サンバ生産リチャード nas nas.prod.sebostech.local critical server;毎日のバックアップが必要ですファイアウォール生産リチャードファイアウォール firewall.sebostech.local critical server;毎日のバックアップが必要です
を更新する
を更新する
ほとんどのIT部門には、Excelファイルに隠されたサーバーのリストがすでにあるので、それをうまく使用してみませんか?このアプローチにより、常に手動の更新なしで、Ansibleホストを整理し、最新の状態に保つことができます。

しかし、AnsibleはExcelファイルをどのように使用しますか?このデータを使用可能な動的在庫に変換する方法に飛び込みましょう!


##これはすべてのホストを再び実行します ansible -playbook -i dynamic_inventory.py playbook.yml
## This will run agains all host
ansible-playbook -i dynamic_inventory.py playbook.yml
サーバー環境、サーバータイプ、または両方の組み合わせに基づいて、環境変数オプションを使用することもできます。


##ただの生産 server_environment = "production" ansible-playbook -i dynamic_inventory.py playbook.yml - limit "high:web" ##ただのNAS server_type = "nas" ansible-playbook -i dynamic_inventory.py playbook.yml - limit "high:web" ##生産nas server_environment = "production" server_type = "nas" ansible-playbook -i dynamic_inventory.py playbook.yml - limit "high:web"

## Just production
SERVER_ENVIRONMENT="production" 
ansible-playbook -i dynamic_inventory.py playbook.yml --limit "high:web"

## Just nas
SERVER_TYPE="nas" 
ansible-playbook -i dynamic_inventory.py playbook.yml --limit "high:web"

## production nas
SERVER_ENVIRONMENT="production" 
SERVER_TYPE="nas" 
ansible-playbook -i dynamic_inventory.py playbook.yml --limit "high:web"

Pythonコードを見るには、こちらを参照してください。

ホストファイルを使用してみませんか?

私が最初にAnsibleの使用を始めたとき、ホストファイルは私の魅力でした。しかし、より多くのサーバー、特に二重の役割を持つサーバーを追加したとき、そのファイルはますます複雑になりました。

従来のホストファイルを使用してこれを達成できますか?確かにいくつかの欠点があります。

ホストファイルを使用すると、必要なすべての構造をキャプチャするための複製エントリまたは追加の変数が表示される可能性があります。一方、Excelファイルは、物事を整理したままにしておくと、清潔で容易な構造を提供します。

企業環境では、サーバーリストを備えた少なくとも1つのExcelファイルがすでにある可能性が高いので、それを利用してみませんか?

Pythonコードをさらに深く掘り下げたい場合は、私に知らせてください!

リリースステートメント この記事は、https://dev.to/sebos/dynamic-riskベースのbased-upthates-using-python-and-excel-dcp?1に再現されています。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3