NetApp Docker Volume Plugin Overview以前は各ホストに Docker Volume Plugin をインストールしていましたが、Docker version 1.13 以降はdocker コマンドで docker volume plugin をインストール可能となりました。 今回は docker volume plugin を使用したNetAppのインテグレーションを再度紹介します。 最後にこの記事で設定している内容を一括で設定する ansible-playbookを公開していますのでお試しで使ってみたい場合はこちらも活用ください。 Docker Managed Plugin systemDocker Managed Plugin system は Docker イメージで plugin を配布する方法です。Docker Engine を使用してplugi
オプション 動作 bg NFSクライアントがNFSサーバへマウントを要求し、応答がなかったとき、バックグラウンドで再マウントを試みる fg NFSクライアントがNFSサーバへマウントを要求し、応答がなかったとき、フォアグラウンドで再マウントを試みる。マウントが終わるまで次の作業は行えない(標準設定) rsize=数値 クライアントがNFSサーバのファイルを読み出すときのバッファのサイズをバイト数で指定する。指定する数値は1024の倍数で16384以下。 Linuxでは8192が推奨されており、「rsize=8192」と指定すると、転送速度が向上する場合がある。 wsize=数値 クライアントがNFSサーバのファイルを書き込むときのバッファのサイズをバイト数で指定する。指定する数値は1024の倍数で16384以下。 Linuxでは8192が推奨されており、「wsize=8192」と指定すると
NFS で iostat の await と svctm のような情報を取れるツールが欲しいと思っていたら nfsiostat という素敵なツールを見つけた。await にあたるのが avg exe (ms)、svctm にあたるのが avg RTT (ms) だと思う。 iostat の await と svctm の意味は Linux の iostat の出力結果を銀行のATMに例えて説明してみる - ablog 参照。 書式 $ nfsstat <interval> 実行例 ops/s: 秒間の read または write リクエストの発行回数 kB/s: 1秒間に read または write されたサイズ(KB) kB/op: 1回の read または write の秒間の平均サイズ(KB) avg RTT (ms): カーネルが RPC リクエストを発行してから応答までの時間
Oracle Linux 7.1 でNFSの設定をしたのでメモ。 環境 NFSサーバ: Oracle Linux 7.1 NFSクライアント: Oracle Linux 5.3 構成 NFS Server:/home/oracle/nfs/local -> NFS Server:/home/oracle/nfs/remote -> NFS Client:/home/oracle/nfs/remote 設定手順 NFS Server ターゲット側にディレクトリ作成 $ mkdir -p /home/oracle/nfs/{local,remote} /etc/exports に以下を追記 /home/oracle/nfs/local *.oracle.com(rw,no_root_squash) NFS関連サービスを起動する # systemctl start rpcbind # syste
NFSバージョン4には運用上便利な機能が幾つか導入されているが、旧バージョンからの移行にあたって問題視されるパフォーマンスについて、ベンチマークを用いて検証してみた。 2003年4月に公開されたNFSバージョン4(NFSv4)には、クライアント/サーバ間のステートフルな(状態遷移型)インタラクションと“ファイルデリゲーション(権限委譲)”が導入された。これにより、クライアントはサーバ上のファイルに対して一時的な排他的アクセスが行える。NFSv4では、RPCSEC_GSS、複数操作のサーバへの一括送信、新たなファイル属性、レプリケーション、クライアント側のキャッシュ処理、ファイルロックの改良といったセキュリティ面での改善が施されている。以前のバージョンから進化した部分は数多くあるが、この記事ではその1つであるパフォーマンスに絞って調査を実施した。 NFSv4への移行に伴う問題の1つが、エクス
NFSのセットアップ手順を簡単にまとめておきます。 NFS v3以前と v4とでポリシーがかなり違うので、それぞれの方法をまとめておきます。 まずは、 RHEL/CentOS でのやり方をメインに説明します。最後に Ubuntu でやる場合の差分情報もまとめておきました。 ### REEL/CentOS 編 #### NFSv3以前の場合 CentOS の場合、nfs-file-server パッケージはデフォルトでインストールされています。 サーバー側の設定は `/etc/exports` に directory client(option,...) client(option,...) ... の形で記述します。 /path/to/dir1 nfs.client.addr(rw,sync) /path/to/dir2 nfs.client.addr(rw,sync) みたいな感じ。 同
Why Is The Internet Broken? Random musings. Photography. Tech stuff. Bad jokes. NOTE: I wrote this blog nearly 2 years ago, so a lot has changed since then regarding Docker. Check out this newer blog on NFS/Docker for NetApp here: Docker + NFS + FlexGroup volumes = Magic! Also, check out how to Kerberize NFS in a container! Securing NFS mounts in a Docker container Recently, I wrote a post on Data
Docker 1.8 では Volume と Network 二種類のプラグイン構造が導入されました。 これを使えば難しかったボリュームの永続化や、コンテナ間の仮想ネットワークが実現できるという触れ込みです。 そろっとこのプラグインとやらを使ってみるかと思い、いくつかリリースされている Volume Plugin から試してみることにしました。 これまで コンテナを終了、再起動してもデータを永続化するためにボリュームを使ってきました。これはホストのファイルシステムの一部をコンテナ内にマウントする様な仕組みです。 ボリュームで永続化ができるようになりましたが、ホストとコンテナの内部が密接に関係してしまいコンテナのポータビリティが失われるという問題がありました。 なのでボリュームマウントするのはネットワークファイルシステムにしたいという要求がわいてくるのですが、これも一筋縄ではいかなかった様に
人材流動性の高まりを感じているみなさんこんにちは。 比較的時間があるので今までCakePHP2.7で作っていたアプリケーションをRails4に移行しているのですが、その開発開発環境としてはVagrantを使っています(みなさん、VagrantとかDockerとか使っていると思います)。 そこで今回は、僕が使っているVagrantのベース部分をシェアします。 特に難しいことはしていないのですが、以下のような仕様になっています。肝は共有フォルダの設定だけです。 ソースコード自体はローカル側のMacで編集したいのでVagrantとディレクトリを共有しますただ共有の際に、VagrantのSynced Folder機能だとファイルやディレクトリのパーミッションがローカル側のものになってしまい不都合が多い(たとえばgemのNative Extensionが権限の理由でビルドできない)ので、NFS共有機
NFSのマウントオプションで soft と hard がある。プロセスがI/Oシステムコールを発行してユーザーモードからカーネルモードにコンテキストスイッチした後、応答がないと、soft の場合はリトライを繰返した後にI/Oエラーになるが、hard の場合は応答があるまで待ち続ける。 hard + intr: kill できる*1。おそらく TASK_INTERRUPTIBLE でスリープするため。 hard + nointr: kill できない。おそらく TASK_UNINTERRUPTIBLE でスリープするため。 Kernel 2.6.25 以降、TASK_KILLABLE が導入され、NFS Client のコードでI/Oシステムコール発行後、TASK_KILLABLE でスリープするよう変更が入り、マウントオプションに hard を指定しても kill できるようになっている。
Vagrantの共有フォルダ(Synced Folders)はこれが無かったらVagrant使ってねーよってぐらい便利です。 Vagrantfileに下記の感じで書くだけですし。 config.vm.synced_folder "/var/www/hogehoge", "/var/www/hogehoge", create:true apacheの設定でEnableSendfileをoffにしていないとファイルを更新しても反映されないので注意。apacheのhttpd.confにネットワーク越しにマウントしているときはoffにしてねと書いてあります。 さて、これで共有フォルダをapache経由で表示できる様になりましたが、上記設定だと共有ファイルのownerが全部vagrantになってしまいます。その為、apacheから共有フォルダに書き込めません。パーミッションを0777に変更しようとし
はじめに GlusterFSのボリュームは、FUSEを使ってマウントする以外にNFSクライアントを使ってマウントすることもできる。 GlusterFS内蔵のNFSサーバはNFSv3プロトコルにのみ対応している。しかしNFS-Ganeshaと連携することによりNFSv4プロトコルにも対応することができる。 元情報は http://blog.gluster.org/2014/09/glusterfs-and-nfs-ganesha-integration/ だが、やってみると結構違った。 セットアップ 本題ではないので特に解説はしないが、私がCentOS 7でいつも使っている標準的な方法を載せておく。CentOS 6でもsystemctlがserviceかchkconfigに変わるのと、xfsprogsがインストールされてなければインストールするくらいの違いだろう。 なお面倒なのでfirewa
稼働中NFSの状態確認コマンドをメモ書き クライアント側 マウント状況、オプションの確認 [root@nfs-client01 ~]# df -h ... 192.168.1.154:/tmp/ 65G 47G 15G 77% /mnt [root@nfs-client01 ~]# mount ... 192,168.1.154:/tmp/ on /mnt type nfs (rw,addr=192,168.1.154)チューニングのためrsize、wsizeを大きくしていたり、 サーバ停止時の対策としてsoft、intr使ってるなら、ちゃんと入ってるかチェックしましょう アクセス状況の確認 [root@nfs-client01 ~]# nfsstat -c Client rpc stats: calls retrans authrefrsh 1616 0 0 Client nfs v3:
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く