
軽量な完全 OS 仮想化ツールを探しています。
これは Linux 上で実行されるはずであり、仮想化内の OS も Linux です。
私のユースケース: 構成管理をテストしたい。
- 現在の Linux ディストリビューション (Ubuntu および SuSE) のベース イメージを起動します。
- 構成管理(ソルトスタック)を実行する
- オペレーティング システムが正しく構成され、動作しているかどうかを確認します。
一致しないと思われるもの:
- KVM/Qemu: 重すぎる、軽量ではない
- Docker: OS 内に cron、ssh、apache が必要です。私の知る限り、Docker はここでは適していません。
- chroot だけでは不十分です。私の知る限り、0.0.0.0 へのバインドは機能しません (apache、sshd、...)
どの(オープンソース)ツールを使用できますか?
答え1
私が思いつく最も近いものは翻訳。
LXDは「仮想化」のためにLXCを使用する管理デーモンです。
内部の実装は Docker に似ていますが (Docker は以前は LXC ライブラリに基づいていました)、使用方法は VM に似ています。
ここで実際に得られるのは、コンテナ内の init プロセスです。Ubuntu、CentOS、Alpine、その他の Linux システムに近似するために、さまざまなベース イメージから始めることができます。ただし、VM のようなハードウェア エミュレーションはなく、すべてのコンテナはホストのカーネル上で実行されます。
リード開発者はブログシリーズを書いているここLXD の使用について。
私は開発とテストで LXD をよく使用します。プライベート ブリッジを使用してローカル マシンに分離されたネットワークにしたり、物理インターフェイスとブリッジして外部ネットワークにコンテナーを公開したりできます。これは、私がホーム サーバーを運用している方法であり、各コンテナー/サーバーにフル サーバーのように ssh で接続できます。
テストおよび開発作業では、ネットワーク ブリッジは物理デバイスに接続されていないため、実際のネットワークで必要なデータベース クラスターなどをローカル ラップトップ上でのみ設定できます。