[小ネタ] M1 Mac 環境で Rancher Desktop を利用した場合に、VMのメモリ不足に陥ったら

2022.11.08

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは!DA(データアナリティクス)事業本部 サービスソリューション部の大高です。

先日、M1 Mac環境にて「Rancher Desktop」を試してみました。

この時に、以下の事象を確認していました。

  • 小さな Next.js のアプリケーションはビルドや実行も問題ない
  • 大きな Next.js のアプリケーションはビルド時にSIGKILLエラーで落ちる

ずっと悩んでいたのですが、先日この事象の原因がやっと分かりました。

原因

原因は「メモリ不足」でした。

元々、SIGKILLエラーが発生したため、VMのメモリ不足を疑っており、Rancher DesktopのUIからメモリ容量の設定を増やして検証していました。

一方で、以下の状況に当てはまっていたのか、実際にはVMの容量が増えていないことに気づきました。(これに気づくのに時間が掛かってしまいました…

But not all people can upgrade macOS immediately, so probably we should reduce the default memory to 3GiB when QEMU >= 7.0 && macOS <= 12.3 && CPU == M1 .

私の環境だとQEMUの手動導入はしていないのですが、macOSが12.3.1、CPUがM1だったのでメモリが自動抑制されていたと考えられます。

対応方法

対応方法は単純で、macOS Montereyの最新バージョン(12.6.1)にバージョンアップしました。

バージョンアップ後には、想定どおりVMのメモリが実際に増えており、Next.jsアプリのビルドや実行も問題なくできました。

まとめ

以上、M1 Mac 環境で Rancher Desktop を利用した場合に、VMのメモリ不足に陥った場合の対応方法についてでした。

どなたかのお役に立てば幸いです。それでは!