GKEでcronJobを使っているときに、このようなエラーが出て実行が止まってしまいました。
MountVolume.SetUp failed for volume "service-account" : mount failed: exit status 1 Mounting command: systemd-run Mounting arguments: --description=Kubernetes transient mount for /var/lib/kubelet/pods/cd987559-252d-11e8-8bea-42010a920fe9/volumes/kubernetes.io~secret/service-account --scope -- mount -t tmpfs tmpfs /var/lib/kubelet/pods/cd987559-252d-11e8-8bea-42010a920fe9/volumes/kubernetes.io~secret/service-account Output: Failed to start transient scope unit: Argument list too long |
こちらのIssueにWorkaroundがあり、ノード(GCE)上で次のコマンドを打つと解決します。
問題の状態を確認。なお上記が発生した時は2^17
くらいの数まで溜まっていました。
systemctl list-units --all | wc -l |
次のコマンドで綺麗になります。
systemctl daemon-reload |
Systemdの問題か?
systemdの問題で、このPRで直っていると思います。これが取り込まれているのがv237です。
私の手元のGCEのsystemdはv232でした。
新しいk8sクラスタを作るとどのバージョンになるのかはまだ確認していないです。