6 ポイント 投稿者 GN⁺ 2024-09-08 | 5件のコメント | WhatsAppで共有
  • Ubuntu Multipassは、ワークステーションでLinux仮想マシンをすばやく起動・管理するためのツール
    • Linux、MacOS、Windowsで利用可能
  • DockerやVirtualBoxの代替として、より簡単かつ手軽に使える
  • ワークステーションをクリーンに保ち、ソフトウェアのテストやデプロイに役立つ

Multipassはどのように動作するのか?

  • 新しい仮想マシンを作成して起動: multipass launch --name backend
  • 状態確認: multipass info backend
  • コマンド実行: multipass exec backend -- systemctl restart apache
  • インタラクティブシェルセッションを起動: multipass shell backend
  • すべてのインスタンス一覧: multipass list
  • 再起動: multipass restart backend
  • インスタンス削除: multipass delete backend
  • ディレクトリのマウント(mount)やファイルコピー(transfer)などの追加コマンドもある
  • 詳細なドキュメントはこちらで確認できる

Multipassで何ができるのか?

  • 仮想マシンとコンテナは、開発者のツールベルトの中でも最も有用なツールのひとつ
  • サードパーティ製ソフトウェアを隔離環境にインストールすることで、ワークステーションをクリーンで健全な状態に保てる
  • クリーンな環境でテストやデプロイを行うことで、「自分のマシンでは動くのに」症候群を減らせる
  • Docker、VMWare、VirtualBox、低価格なVPS、クラウドの使い捨てインスタンスなど、さまざまなソリューションがある
  • Multipassの仮想マシンは完全なUbuntu LTSインスタンス
  • Ubuntu Linuxサーバーでできることは、Multipassインスタンスでもすべて実行できる
  • ワークステーションから隔離された状態でソフトウェアを実行できる
  • 複数のマイクロインスタンスを起動して、自動化された統合テストを実行できる
  • デプロイスクリプトをローカルでテストできる

Multipassの利点

Multipassインスタンスは完全なUbuntu LTSを実行する

  • nanocurlなど、必要なものは最初からそろっている
  • 使い慣れたLinuxツールをすぐに使える
  • 新しいコマンドを覚える必要がなく、開発者の認知負荷を減らせる

Multipassインスタンスは接続性がある

  • インスタンスを起動した直後からLANやWANにアクセス可能
  • 追加設定なしで接続が開かれている
  • 仮想ネットワークを手動で構成したり、ポートをマッピングしたりする必要がない

Multipassインスタンスは永続的

  • Dockerコンテナは使い捨てを前提に設計されている
  • データは共有ボリュームに保存する必要がある
  • Multipassではmountコマンドでホストのフォルダをインスタンスにマウントできる
  • デフォルトインスタンスは標準でホームフォルダを~/Homeとしてマウントし、ファイルにすぐアクセスできる

Multipassインスタンスの管理は簡単

  • コマンド構文やオプションが少なく、覚えやすい
  • コマンド実行やファイル転送機能により、ソフトウェアのインストール、統合テスト、デプロイ作業などを自動化するスクリプトを簡単に書ける

UIもある

  • PopOS! LinuxボックスにMultipassをインストールすると、上部バーにUIが表示される

どこで入手できるのか?

  • MultipassはLinux、MacOS、Windowsで利用可能
  • Linuxではsnapでインストールするのが最適
  • Ubuntuベースのディストリビューションでは、snapがすでにインストールされている可能性が高い
  • そうでない場合は、パッケージマネージャーでまずsnapデーモンをインストールする必要がある
  • 他のプラットフォームではこちらから適切なインストールパッケージをダウンロードできる

備考

  • Oracle VirtualBoxのような他のVMソフトウェアが動作中だと、Multipassインスタンスが起動しない場合がある
  • VirtualBoxを停止して再試行すればよい

GN⁺のまとめ

  • Ubuntu Multipassは、開発者やDevOpsエンジニアにとって有用な仮想マシン管理ツール
  • Multipassは開発環境を隔離してクリーンに保つのに非常に有用で、とくにさまざまなLinuxツールを簡単に使えるため開発者にとって親しみやすい。
  • DockerやVirtualBoxよりも簡単かつ手軽に使える
    • Dockerと比較すると、永続的なデータ保存やネットワーク設定の手軽さが大きな利点。ただし、Dockerの軽量性や高速なデプロイ速度も無視できない。
  • 完全なUbuntu LTSインスタンスを実行するため、使い慣れたツールやコマンドをすぐに使える
  • ローカルでさまざまなテストやデプロイシナリオを簡単に試せるため、実運用環境で発生しうる問題を事前に発見して解決できる
  • さまざまなプラットフォームで利用でき、インストールも簡単

5件のコメント

 
savvykang 2024-09-08

内部的に仮想化ツールが必要なのを見ると、素直に仮想化ツールを直接使ったほうがよさそうです

 
savvykang 2024-09-08

本当にsnapをインストールしないといけないんですね? これのためにsnapまで入れるとなると、管理ポイントが増えるだけではないかと思います https://multipass.run/install

 
kaydash 2024-09-08

仮想化ゲストをUbuntuのみにするよりも、
ホスト上でrootless podmanを使う方法のほうがUbuntu、Alpine、RHEL、Rockyなど複数のLinux OSをゲストとして使えるため、デプロイ環境の多様な要件に対応しやすく、より有利です

 
halfenif 2024-09-08

新しいコマンドを覚える必要がないので、開発者の脳の容量を節約できる。

でも私はManjaroを使っている。

 
iolothebard 2024-09-08

Ubuntu向けのVagrant?