ログ日記

作業ログと日記とメモ

Linux Kernel 5.8 で Ansible の service, systemd がエラーになる

めっちゃハマった。
別のPCからAnsibleをそのまま持ってきてコンテナに実行したらエラーになった。

RUNNING HANDLER [common : reload nginx] ****************************************************************
 [WARNING]: The service (nginx) is actually an init script but the system is managed by systemd

fatal: [app-php.local]: FAILED! => {"changed": false, "msg": "Service is in unknown state", "status": {}}

ansibleのserviceをsystemdにしてもダメ。
変わったのはカーネルバージョンのみで、OSのバージョンは同じ。
Debianカーネルだけ5.8にしたものでエラーが出た。
カーネル5.8のsystemdのバグらしい。

github.com

コンテナだから中のゲストカーネルも同じ5.8になっちゃうよねえ…。
現段階では、カーネルバージョンを下げるか、少し待って最新版をDLするか、修正を自分で適応させるしかないっぽい。
まだissueのスレッドは進行中。

2日前に回避用の修正はプルリクされたようだ。
github.com

カーネルのバージョン5.7にできれば一番良いんだろうけど、公式パッケージがないとつらい。buster-backports のカーネルって新しいカーネルが出るたびにバージョンアップされるのかな?
5.9になったら直っていることを祈りつつ。
ひとまず、設定が進まないのでパッケージで入れたansibleの /usr/lib/python3/dist-packages/ansible/modules/system/systemd.py を手動修正した。