Nvmeの構成を理解しようとしています。
しかし、nvmeブロックとnvmeキャラクターデバイスの2つのデバイスがある理由がわかりません。
crw------- 1 root root 243, 0 Dec 12 16:09 /dev/nvme0
brw-rw---- 1 root disk 259, 0 Jan 14 01:30 /dev/nvme0n1
それぞれの目的は何ですか、またはいつ使用するのですか?
キャラクターデバイス/dev/nvme0
はNVMEデバイスコントローラーであり、/dev/nvme0n1
のようなブロックデバイスはNVMEストレージネームスペースです。これは、実際のストレージに使用するデバイスであり、基本的にディスクとして動作します。
エンタープライズグレードのハードウェアでは、いくつかの名前空間、名前空間内のシンプロビジョニング、およびその他の機能がサポートされる場合があります。今のところ、名前空間は、エンタープライズで使用するための追加機能を備えたメタパーティションのようなものと考えることができます。
名前空間は、SSDを安全に消去しても消えないパーティションと考えてください。コントローラと名前空間は別々です。名前空間は共有でき、リモートコントローラーがそれらにアクセスできるようにすることができます。 ExceleroやLightbitsなどの企業は、このテクノロジーを自社の製品で活用しています。
15TB NVMEなどの大きなデバイスでは、SSDを異なる目的で3つに分割することができます(/ dev/nvme0n1のキャッシュ、/ dev/nvme0n2のデータベース、VMストレージ/ dev/nvme0n3)。3つの等しいまたは等しくないサイズの名前空間を作成し、各/ dev/nvme0n_デバイスでそれらを使用できます。残ったスペースは、独自の利点を持つプロビジョニングされた容量を超えます。