Docker の NFS-Ganesha イメージを使用して NFS サーバーを構築する詳細なプロセス

Docker の NFS-Ganesha イメージを使用して NFS サーバーを構築する詳細なプロセス

NFS-Ganesha3 イメージの説明と使用方法

1. NFS-Ganeshaの紹介

NFS-Ganesha は、NFS プロトコル (NFSv3/NFSv4、NFSv4.1) をサポートするユーザー モード ファイル サーバーです。Unix および Unix 系オペレーティング システム用の FUSE (Filesystem in Userspace) 互換インターフェイス FSAL (File System Abstraction Layer) を提供します。このようにして、ユーザーは NFS クライアントを通じて自分のストレージ デバイスにアクセスできます。 NFS-Ganesha サービスを使用すると、ユーザーはカーネルと頻繁にやり取りすることなく、FSAL を介してユーザー モードでデータにアクセスできるため、データ読み取りの応答時間が大幅に短縮されます。

2. NFS-Ganeshaの設定

GANESHA_LOGFILE: ログファイルの場所

GANESHA_CONFIGFILE: ganesha.conf の場所

GANESHA_OPTIONS: ganesha に渡すコマンドライン オプション

GANESHA_EPOCH: ガネーシャのエポック値

GANESHA_EXPORT_ID: ガネーシャの一意のエクスポート ID

GANESHA_EXPORT: エクスポート場所

GANESHA_ACCESS: アクセス ACL リストをエクスポート

GANESHA_ROOT_ACCESS: ルートアクセス ACL リストをエクスポートする

GANESHA_NFS_PROTOCOLS: サポートするnfsプロトコル

GANESHA_TRANSPORTS: サポートするnfsトランスポート

GANESHA_BOOTSTRAP_CONFIG: 起動時に新しい設定ファイルを書き込む

STARTUP_SCRIPT: 起動時に実行するシェルスクリプトの場所


3. NFS-Ganeshaコンテナの使用

3.1 NFS-Ganesha サーバーの構築

1. ホストにNFSサービスがある場合は、まずホスト上のNFSサービスをシャットダウンします。

systemctl 停止 NFS
systemctlでNFSとRPC関連のサービスを無効にするか、直接yumでnfs-utilsを削除します。

2. コンテナを実行する

docker run -d --net=host --privileged=true --restart=always --name=nfs_server -v /data/k8s:/export elimuzi/nfs-ganesha

コンテナを実行する

-dはバックグラウンドで実行することを意味します

–net=hostはホストIPを共有することを意味します

–privileged=true このパラメータを使用すると、コンテナ内のルートに実際のルート権限が与えられます

–name=nfs_server コンテナの名前をnfs_serverにする

-v /data/k8s:/export はディスク マッピングを作成します。/data/k8s はローカル マシンが nfs として共有する必要があるディレクトリであり、/export は構成ファイルで固定されているコンテナーのディレクトリです。

elimuzi/nfs-ganeshaはイメージ名です

–restart=always は起動時に自動的に再起動することを意味します

3. オプション: デフォルト設定を変更するには

設定ファイルはデフォルトのものを使用できますが、デフォルトの設定を変更する場合、ganesha イメージでは、nfs-ganesha の起動スクリプトは /start.sh です。これを変更する必要がある場合は、まずこのファイルをコピーします。

docker cp nfs_server:/start.sh を実行します。

変更後、コンテナにコピーし直します

docker cp start.sh nfs_server:/start.sh
docker restart nfs_server # コンテナを再起動します

3.2 NFS-Ganesha クライアントの使用

サーバーホストのIPアドレスを確認する

ここに画像の説明を挿入

クライアントのIPアドレスを確認する

ここに画像の説明を挿入

3.マウントビューの表示

ショーマウント -e 192.168.18.143 

ここに画像の説明を挿入

4. nfs3のマウント

マウントコマンドはデフォルトでnfs3を使用します

192.168.18.143:/export /mnt をマウントします

ここに画像の説明を挿入

マウント #マウントを表示

ここに画像の説明を挿入

5. nfs4のマウント

mount.nfs4 192.168.18.143:/ /mnt #nfs4 は /export の代わりに / を使用します

ここに画像の説明を挿入

IV. 参考文献

NFS-Ganesha ソースコード アドレス: https://github.com/nfs-ganesha/nfs-ganesha
NFS-Ganesha2.5 コンテナ ソース コード アドレス: https://github.com/apnar/docker-image-nfs-ganesha
NFS-Ganesha3 コンテナのソースコード アドレス: https://github.com/JiHeTuXing/docker-image-nfs-ganesha
NFS-Ganesha2.5 コンテナ アドレス: https://hub.docker.com/r/apnar/nfs-ganesha
NFS-Ganesha3 コンテナ アドレス: https://hub.docker.com/r/elimuzi/nfs-ganesha

Docker の NFS-Ganesha イメージを使用して NFS サーバーを構築する方法についての記事はこれで終わりです。Docker を使用した NFS サーバーの構築の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Docker Composeでコンテナ管理の問題を解決する
  • DockerでGPUを使用するプロセスの詳細な説明

<<:  上部の固定ナビゲーションバーによって CSS アンカーの配置がブロックされる問題の解決方法

>>:  MySQL シリーズ 11 ログ

推薦する

WeChatミニプログラムがシームレスなスクロールを実現

この記事の例では、WeChatアプレットのシームレスなスクロールを実現するための具体的なコードを参考...

CentOS に MySQL をインストールしてリモート アクセスを設定する方法

1. MySQLリポジトリソースをダウンロードする$ wget http://repo.mysql....

17 個の JavaScript ワンライナー

目次1. DOMとBOM関連1. 要素にフォーカスがあるかどうかを確認する2. 要素の兄弟ノードをす...

MySQLデータベースが大きすぎる場合にバックアップと復元を行う方法

コマンド: mysqlhotcopyこのコマンドは、ファイルをコピーする前にテーブルをロックし、不完...

単一の MySQL テーブルで数千万のデータを処理するアイデアを共有する

目次プロジェクトの背景改善案データ特性を観察するマルチプロセスアイデアの要約データ処理スキルプロジェ...

JSは文字列内の指定された文字列のn番目の出現位置を取得します

文字の位置を取得するための同様の方法について学習します。 charAt() 文字列内の指定された位置...

MySQL の組み込み関数 find_in_set を使用した効率的なあいまい検索の詳細な説明

一般的に使用される方法は次の 4 つです。 1.locate()メソッドを使用する一般的な使用法: ...

ネイティブ JavaScript を使用して計算機のサンプル コードを開発する

計算機の主な機能は数値計算を実行することです。計算機機能の Web インスタンスを開発すると、js ...

ウェブサイトのユーザーエクスペリエンスデザイン(UE)

Google Reader で、JunChen が書いた「フロー理論と設計」というタイトルの投稿を見...

全画面ページのスクロール効果を実現するJavaScript

JavaScript DOM を読み終えた後、解釈型 JavaScript スクリプト言語に対する...

使用場所によって混乱しやすいXHTMLタグ

<br />jb51.net では、常に記事のセマンティクスを重視してきましたが、HTM...

HTMLからPDFへの変換のための純粋なクライアント側と純粋なサーバー側の実装ソリューション

必要ユーザーがフォームに入力して「保存」をクリックすると、PDF ドキュメントを直接ダウンロードでき...

Vue での mixin の応用について議論する

Mixin は、再利用可能な機能を Vue コンポーネント間で分散する非常に柔軟な方法を提供します。...

関連するプロパティのリストを含む HTML エリア イメージ ホットスポットの使用の概要

<area> タグは主にイメージマップで使用されます。イメージマップにアクティブ領域 (...

CSS3+JS による虫眼鏡モードの完璧な実装の詳細説明

約 1 年前、私は「虫眼鏡効果を模倣するいくつかの方法の原理の分析」という記事を書きました。当時、自...