Open1
Azure Files のマウントでSMBとNFSが利用できますがどんな違いがありますか?
Copilot
Azure Files では SMB と NFS の 2 種類のプロトコルでファイル共有をマウントできますが、
想定用途・対応OS・セキュリティモデル・制約がかなり異なります。
以下、実務で判断しやすい観点で整理します。
1. ざっくり結論
- SMB
- Windows を含む汎用用途向け
- 認証・権限管理が充実
- 企業システム・業務アプリ向き
- NFS
- Linux / UNIX 向け
- 高スループット・シンプル
- 分析処理・HPC・コンテナ用途向き
2. 基本的な違い(比較表)
| 観点 | SMB (Azure Files) | NFS (Azure Files) |
|---|---|---|
| 主な用途 | 汎用ファイル共有 | Linux向け高速共有 |
| 対応OS | Windows / Linux / macOS | Linux のみ |
| プロトコル | SMB 2.1 / 3.x | NFS v4.1 |
| 認証 | AD / Entra ID (Kerberos) / Storage Key | なし(ネットワーク境界) |
| 権限制御 | NTFS ACL | POSIX (UID/GID) |
| 暗号化 | SMB 3.x で暗号化対応 | なし(VNet前提) |
| インターネット経由 | 可 | 不可Premium対応可必須 |
| スナップショット | 可 | 可 |
| マルチクライアント | 可 | 可 |
3. SMB の特徴(Azure Files SMB)
✅ 強み
- Windows ネイティブ
- ドライブ割り当て(Z: など)が可能
- 認証・セキュリティが強力
- Active Directory / Entra ID 認証
- ユーザー・グループ単位の ACL
- インターネット経由マウント可能
- VPN / ExpressRoute 不要(※制限あり)
⚠ 注意点
- Linux では CIFS マウントが必要
- 高スループット用途では NFS より不利な場合あり
- レイテンシの影響を受けやすい
典型的な用途
- Windows VM の共有フォルダ
- 業務アプリのファイル保存先
- ユーザーデータ(ホームディレクトリ)
4. NFS の特徴(Azure Files NFS)
✅ 強み
- Linux 向けに最適化
- 低オーバーヘッド・高スループット
- コンテナ / 分析 / HPC に向く
- シンプルな構成(認証が不要)
⚠ 重要な制約
- Linux 専用
- Premium File Share 必須
- VNet 内限定
- インターネット公開不可
- 認証なし
- UID/GID ベース
- ネットワーク分離が前提
典型的な用途
- Linux VM 間の高速共有
- Azure Container Apps / AKS の共有ボリューム
- 機械学習・分析ワークロード
5. セキュリティモデルの違い(重要)
SMB
ユーザー認証 + ACL + 暗号化Show more lines
- 「誰が・何に・どこまで」アクセスできるかを厳密に制御
- 企業システム向き
NFS
ネットワーク境界 + UID/GIDShow more lines
- VNet に入れたら基本的に信頼
- ゼロトラスト設計には不向き
- 内部処理向け
6. Azure Container / Kubernetes 観点
| シナリオ | 推奨 |
|---|---|
| Windows コンテナ | SMB |
| Linux コンテナ(共有キャッシュ) | NFS |
| マルチAZ共有 | 両方可 |
| セキュアなマルチテナント | SMB |
※ AKS / ACA では NFS の方が性能・運用が楽なケースが多いです。
7. どちらを選ぶべきか(判断フロー)
- ✅ Windows が絡む?→ SMB
- ✅ Linux専用 & 高速処理?→ NFS
- ✅ ユーザー単位の権限制御が必要?→ SMB
- ✅ VNet内の内部処理だけ?→ NFS
- ✅ インターネット越しにマウント?→ SMB
8. まとめ(短く)
- SMB → 汎用・セキュア・Windows中心
- NFS → Linux特化・高速・内部用途