joe-speedboat.os_update
役割名
この役割は、Red Hat、Ubuntu、Alpineマシンに対してセキュリティまたはフルパッチを適用します。
できること:
- セキュリティまたはフルパッチの適用
- 古いカーネルバージョンのクリーンアップ
- 再起動が必要な場合の検出と再起動(変数を参照)
私はAWX(v20.0.1)のみを使用しているため、最新のAnsibleバージョンでのみテストされています。
要件
インターネット接続と、マシンの適切なリポジトリ設定が必要です。
サポートされているオペレーティングシステム:
RHEL、CentOS、Rocky、Alma
- バージョン:6-9
Ubuntu LTS:20.04、22.04
Alpine:stable-latest
Debianも動作するはずですが、私はLTSディストリビューションのみを使用しており、SLAがあります。
Mintも動作しますが、特にフォーカスはありません(個人的なニーズ)。
役割変数
gather_factsはオフになっています。最初にホストがオンラインかどうかを確認する必要があるためです。 これを何度も行い、負荷や接続の問題を回避します。testsフォルダを参照してください。
ほとんどの変数には、デフォルトをプレイブックレベルで上書きするために使用されるvarname_default相当のものがあります。
これにより、変数がまったく定義されていないすべてのターゲットに対してデフォルトの動作を定義できます。例:フル|セキュリティパッチ適用。
例を挙げてみましょう:
defaults/main.ymlのデフォルトos_update_rebootはTrueに設定されています。- プレイブックで、
os_update_reboot_defaultをFalseで定義します。 - インベントリで、ホストグループ
testingに対してos_update_rebootをTrueに設定します。 こうすることで、ホストグループtestingを除くすべてのホストがパッチ適用後に再起動を避けます・・・さあ、賢いでしょ?
注意:varnameは常に強制され、varname_defaultは役割のデフォルト動作を上書きするだけです。
os_update_level:security
os_update_level: [none|security|full]os_update_reboot:true
os_update_reboot: [true|false]os_update_remove_old_kernel:true
os_update_remove_old_kernel: [true|false]os_update_keep_kernel_nr:2
依存関係
今のところなし。
例プレイブック
例についてはテストディレクトリを確認してください。
ライセンス
GPLv3
プロジェクトについて
Security or full patching, cleanup old kernel versions, detect needed reboots and boot them. All that is controlled by defaults in clever way :-)
インストール
ansible-galaxy install joe-speedboat.os_updateライセンス
gpl-3.0
ダウンロード
6.2k
所有者
I don't do Linux for 25 years because I love Unix or consoles.
OpenSource is what I love and want to do.
moving together ...
that fascinates me ...
