分散ファイルシステムFastDFSインストール構成について説明し

分散ファイルシステムFastDFS設定をインストールする方法について説明します。はじめにFastDFSは軽量なオープンソースの分散ファイルシステムであり、機能が含まれます:ファイルストレージ、ファイルの同期、ファイルアクセス(ファイルのアップロード、ファイルのダウンロード)など、大容量ストレージと負荷分散の問題を解決するために。キャリアは、このようなフォトアルバムサイト、動画サイト、など多くのオンラインサービスを、ファイルにするために特に適しています。トラッカー(追跡)とストレージノード(ストレージ):FastDFSは2つの役割を持っています。アクセスでの負荷分散の役割以来トラッカーメインジョブスケジューリング仕事、。ファイルストレージノード、すべての完全なファイル管理機能:保存、同期、およびファイルのメタデータを管理しながら、インターフェースへのアクセスを提供します。キー幅、値1024の幅= 1024:関連するメタデータのような、方法を表したキーと値のペア(キーvaluepair)へのファイルのファイル属性と呼ばれます。プロパティリストファイルのメタデータファイルには、複数のペアを含めることができます。以下の組織図はFastDFS: トラッキングとストレージノードは、1つまたは複数のサーバで構成してもよいです。トラッカーサーバとストレージノードがオンラインまたはオフラインのサービスに影響を与えることなく、いつでも増加させることができます。追跡サーバは全て等しくされており、圧力は、いつでもサーバに応じて増減することができます。大容量をサポートするために、サブボリューム(またはパケット)を使用して、ストレージノード(サーバ)が編成されています。ストレージ・システムは、ボリュームのファイルとボリュームの間で独立しており、一つ以上のボリュームで構成され、すべてのボリュームのファイル容量は、ストレージシステム全体のファイルの蓄積容量です。ボリュームは、1つまたは複数のストレージサーバから形成することができる、ファイルボリューム下ストレージサーバーが同じである、複数のストレージサーバのボリューム効果のバランスをとる冗長性と負荷を果たしました。ボリュームサーバの増加は、既存のファイルの同期は、同期が完了した後、システムは自動的に新しいサーバーのオンラインサービスに切り替え、システムによって自動的に完了します。メモリが少ないか、なくなっしようとしているときは、動的にボリュームを追加することができます。唯一のストレージシステムの容量を拡張するように、1つ以上のサーバーを追加し、新しいロールのためにそれらを設定する必要があります。FastDFS文書識別は、2つの部分に分かれ:ボリュームとファイル名は、両方が不可欠です。ファイルの相互作用をアップロードします。 1.クライアントクエリは、トラッカーの保管、追加パラメータなしにアップロード; 2.トラッカーは、使用可能なストレージを返します; 3.クライアント通信と直接行うストレージファイルアップロード。ファイルの相互作用をダウンロード: 1.クライアントは、ファイルの識別パラメータ(ボリューム名とファイル名)、トラッカーダウンロードファイルストレージを要求し; 2.トラッカーは使用可能なストレージを返す; 3.クライアントの直接通信とストレージはファイルのダウンロードを完了します。同期同じグループ内のストレージ・サーバとの間の機構がピアで、ファイルのアップロード、削除、および他の操作は、任意のストレージサーバ上で実行することができ、プッシュモードを使用して、ストレージサーバの同じグループ内のみの間の同期ファイル、すなわち、場合上記第二規則の例外はあるが、既存のものから、新しいストレージ・サーバを追加し、同期元サーバターゲットサーバに、唯一のソース・データの同期に必要、バックアップデータが再び同期しない、それ以外の場合は、ループを構成します台湾のストレージサーバーを新しいサーバーに同期(ソースデータやバックアップデータを含む)すべてのデータを持っています。II。インストールwgetの# http://cloud.github.com/downloads/libevent/libevent/libevent-2.0.14-stable.tar.gz #zxvf libeventタール-2.0.14-stable.tar.gz -C ../software /#は./configure --prefix =は/ usr / local / libeventメイク2.0.14#は##のwgetのメイクをインストール http://fastdfs.googlecode.com/files/FastDFS_v3.02.tar.gz #タールzxvf FastDFS_v3.02.tar.gz -C ../software/#./make.sh C_INCLUDE_PATH =は/ usr / local / libevent-2.0.14 / LIBRARY_PATH =は/ usr / local / libevent-2.0.14を/含みますlibに#がインストール./make.sh [注:]あなたがウェブをサポートしたいとブーツが自動的に(デフォルトではサポートされていない)スクリプトをfastdfs場合、あなたはmake.shファイル#のWITH_HTTPD = 1#WITH_LINUX_SERVICE = 1点の3つのプロファイルの説明を変更する必要があります。 tracker.conf]#は効果#がバインドするために、空のこのホストのすべてのアドレスをこのホスト#のアドレスをバインド取らない、真のコンフィギュレーション・ファイルは効果、力への虚偽を取るべきかどうか//無効無効= falseのための真の有効#のための偽の#を無効にし、この設定ファイルでありますbind_addr = //バインドIP#トラッカーサーバーポートポート= 22122 //ポート番号は秒#デフォルト値にタイムアウトを接続する30代CONNECT_TIMEOUT = 30 //接続タイムアウト、ソケット秒#デフォルト#のネットワークソケットにタイムアウトがされて指定値は、データを格納したファイルは、以下のようなディレクトリ構造がある、//アドレスディレクトリ= /データ/ fastdfsをBASE_PATHログに記録する30代network_timeout = 60 //トラッカーサーバーのネットワークタイムアウト#ベースのパスです:$ {BASE_PATHを} | __data | | __Storage_groups。DAT:グループ情報を格納| | __storage_servers.dat:ストレージ・サーバリスト| __logs | __trackerd.log:フィールドで区切られた改行(\ n)は、記録storage_servers.datのstorage_groups.dat間のトラッカーサーバーログファイルとデータファイルテキストコンマ(、)の間西を分離しました。1. [グループ名:グループ名2. storage_port:ストレージサーバーのポート番号は、情報ストレージサーバーを記録storage_servers.dat、フィールドは以下の通りであった:1. [グループ名:所属グループ名2. IP_ADDR:IPアドレス順に中storage_groups.datフィールド3.ステータス:ステータス4. sync_src_ip_addr:同期サーバ5 sync_until_timestamp既存のソース・データ・ファイルへのストレージサーバー:既に述べたように、時間同期されたデータファイル(UNIXタイムスタンプ)6. stat.total_upload_count:7のstatファイルのアップロード時間.success_upload_count:正常にアップロードするファイルの数は8。stat.total_set_meta_count:削除されたファイルの数11. stat.success_delete_count:正常に削除されたファイルの数12のstat変更に成功したメタデータ10 stat.total_delete_count数:メタデータ9. stat.success_set_meta_countの数を変更します.total_download_count:ファイルのダウンロードが13 stat.success_download_count:成功したファイルをダウンロードします14 stat.total_get_meta_countの数:取得に成功したメタデータの数16. STAT:メタデータ15 stat.success_get_meta_countの数を取得します。優先度(最小)store_server = 0 //による最初のサーバーの順序は、ストレージサーバのアップロード操作を選択します。ファイルをアップロードした後、ストレージサーバは、ファイルのストレージサーバーのソースに相当し、グループは、ストレージサーバと同期されます。ラウンドロビン#2:0投票、第1、2は、そのパスを選択し、ストレージサーバのファイル#0~#IPアドレスの順序に従って優先順位に従ってソートアップロードする(ディスクまたはマウントポイントを意味する)は、負荷バランス、選択= 0 //ストレージサーバがファイルを保存する複数のベースパスを持つことができ、ディレクトリにアップロードするには、ストレージサーバを選択し、ファイルstore_pathをアップロードする最大の空き領域パス。ラウンドロビン(デフォルト)#1:現在のファイルが= 0 //選択したストレージをdownload_serverにアップロードソースストレージサーバー0投票、2ロードバランシングは、ファイル#0をダウンロードするためのストレージサーバの最大のカタログ#の残りのスペースを選択しますダウンロードサーバなどのサーバ。0 1 [ポーリング元のソースストレージサーバ#は、システムや他のアプリケーションのためのストレージスペースを禁じます。#のいずれかのstoargeサーバーの無料(利用可能)スペースグループ<= reserved_storage_space場合は#、#なしのファイルは、このグループにアップロードすることができます。20]#件のallow_hosts =ホスト[01-08,20-25] .domain.comのallow_hosts = * // IPこのトラッカーサーバーはすべての間隔秒#デフォルト値は10秒ですディスクに接続された許容範囲の#同期ログバフsync_log_buff_interval = 10 //ディスクの時間間隔、トラッカーサーバーのログに同期ログをメモリに書き込まれます。#チェックストレージサーバ生き間隔秒check_active_interval = 120 //、ストレージサーバのキープアライブインターバル#スレッドのスタックサイズを検出し、必要があります> = 64キロバイト#デフォルト値は64キロバイトthread_stack_size = 64キロバイト//スレッドのスタックサイズ#の自動ときにストレージのIPアドレスを調整しますサーバー変更#のデフォルト値が自動的にクラスタを調整するかどうかを、真storage_ip_changed_auto_adjust =真//際にストレージサーバのIPアドレスが変更されます。自動的に再起動#ストレージ同期ファイルの最大遅延秒#デフォルト値を調整するためのストレージサーバを完了するために必要なことは86400秒(1日)V2以来#です。#このパラメータのbind_addr指定すると、有効な#ストレージサーバポートポート= 23000のとき// // client_bind =真このホストの任意のアドレスを結合するための偽ポート番号は#デフォルト値は30代CONNECT_TIMEOUT = 30 //は秒でタイムアウトを接続し、指定しました秒単位の接続時間、秒でタイムアウト#デフォルト値は秒単位でソケット#ネットワーク#ハートビート間隔のための30代network_timeout = 60 //ストレージ・サーバ・ネットワーク・タイムアウトですheart_beat_interval = 30 //ハートビート間隔#ディスクの使用状況のレポート間隔stat_report_interval = 60データを保存するとファイルが//リストのアドレスデータ/ fastdfsをBASE_PATHログに記録するベースパスディスクの残りの部分の大きさを報告する#//ストレージサーバインターバルタイムトラッカーサーバー、ディレクトリ構造= / :. $ {BASE_PATH} | __data | | __ data_init_flag :現在のストレージ・サーバの初期化情報| | __storage_stat.dat:現在のストレージ・サーバーの統計情報| | __sync:保存データの同期関連ファイル| | | __binlog.index:現在のバイナリログファイルのインデックス番号| | | __binlog ### :.ストア更新操作記録(ログ)| | | __ $ {IP_ADDR} _ $ {ポート}。マーク:完全な同期収納ケース| | | | __レベルのディレクトリ:00、次のようなディレクトリ256店舗データファイル、1F | | __二级目录:256个存放数据文件的目录| __logs | __storaged.log:ストレージサーバ日志文件#最大同時接続サーバサポート#のMAX_CONNECTIONSワーカースレッドが起動するときに、このサービスのスタートアップのmax_connections = 256 //最大连接数# /データ#デフォルト値を送るのrecvにバフサイズはV2.00 BUFF_SIZE = 256キロバイト//接收发送数据缓冲区大小#作業スレッドカウント以来64キロバイトの#で、#デフォルト値IOべき<= max_connectionsを#作業スレッドの契約ネットワークは4#以来ですV2.00のwork_threads = 4 //工作线程ディスクが読み取り/書き込み場合#は##混在読み取りのための偽分離し、分離された読み取りのための##の真書き、#デフォルト値を書き込むV2.00は=真disk_rw_separated真#あるので、//磁盘读写是否分离#読み取り/書き込みファイルであれば、直接#trueに設定した場合は、開いているファイルは、ファイルシステムによって、ファイルキャッシュ#を避けるためにO_DIRECTフラグを追加します。このパラメータを設定するように注意してください。すぐに(待つ必要はありません)sync_wait_msec = 50が//ファイルがXミリ秒後に再読み込み、バイナリログから同期されるように読まれていない場合は、ファイルを同期、0は無しを示すときに再び再度お試し用のXミリ秒#0後のbinlog読んでみてくださいすぐにファイル、同期のためにはusleep(ミリ秒)の#0、順次(はusleepを呼び出すことはありません)sync_interval = 0 //終了同期のファイルの後に再び同期後に#を読み取ろうとし、次の再同期間隔0のファイルが連続同期を示して待ちます#ストレージの同期時刻、時間のフォーマット開始:時間:分、0から23までミニッツの#時間を0から59までsync_start_time = 00:00 //ストレージサーバ同期開始時間#ストレージ同期終了時刻、時刻形式:時間:0〜59 sync_end_timeから0から23までの分#の時、分= 23:マーク・ファイルへの59 //、ストレージサーバの同期終了時間#書き込み同期Nファイル番号のデフォルト値は500 write_mark_file_freq = 500 //同期Nになった後ファイルがカウント(ポイントをディスクまたはマウント)ファイル#パスをマークするために書き込まれた後、デフォルト値は1 store_path_count = 1つの//ストレージ・サーバで複数のロードキングをサポートしています 指定ベースパス#1 store_pathの#保存されたファイルの数、0ベース、store_path0が存在しない場合は、それが価値だBASE_PATH#パスが存在しなければならないstore_path0 = /データ/ fastdfs#store_path1 = /データ/ fastdfs2 //データファイルのディレクトリ#のsubdir_countが格納された* subdir_countディレクトリには、各#1 store_path(ディスク)の下に自動作成されます、値は256から1することができ、デフォルト値は256 subdir_count_per_pathある= 256 //ディレクトリのファイルの数が格納されます。二つのディレクトリ番号のtracker_serverを使用してFastdfsストアファイルは、複数回OCURことができ、かつtracker_server形式は#「ホスト:ポート」のとき:22122 //指定されたトラッカーサーバーのアドレス#standard、ホストは、ホスト名またはIPアドレスtracker_server = 192.168.209.121することができsyslogの、大文字と小文字を区別しない、値リストとしてログレベル:###クリティカル###エラーのための緊急警報### ###クリティカルためEMERGは###予告###情報###デバッグLOG_LEVELを警告する警告### =情報//ログレベル#unixグループ名は、このプログラムを実行するには その後、次のパス#デフォルト値に回転させると、100 file_distribute_rotate_count = 100 //ときfile_distribute_to_path = 0、このパラメータに有効です。ディレクトリ内のファイルの数がこの値に達すると、それ以降のアップロードファイルディレクトリへのときの書き込みに大きなファイル#0ディスクに#コールにfsyncに格納されます。他の#をfsyncを呼び出すことはありません:書き込まれたバイトをfsyncを呼び出します> =この#デフォルト値は0(fsyncを呼び出すことはありません)fsync_after_written_bytes =大きなファイルが書き込まれた0 //でバイト、各Nはバイトが書き込まれ、システムがディスクへの関数のfsyncコンテンツゲンロックを呼び出します。0手段はときwrite_to_binlog#このパラメータが有効であるinterval秒毎にディスクにディスク間隔#同期のbinlogバフ/キャッシュにinterval秒毎の#デフォルト値は10秒sync_log_buff_interval = 10 //同期ログでディスクに#同期ログバフfsyncを呼び出すことはありません1#デフォルト値に設定は60秒ですsync_binlog_buff_interval = 10 // binlogの同期ディスクにディスク#同期ストレージのstat情報への間隔は、すべての間隔秒#デフォルト値は300秒ですsync_stat_file_interval = 300 //ディスクにステータス情報ストレージを同期させます時間間隔#スレッドのスタックサイズは、すべき> = 512キロバイト#デフォルト値は、ファイルをアップロードするための送信元サーバーとして512キロバイトthread_stack_size = 512キロバイト//スレッドのスタックサイズ#優先順位である。#低く、この値は、高いそのアップロードの優先順位。#デフォルト値を使用すると、カンマで分割のifconfig -a#マルチ別名でそれを見ることができ、LinuxなどでETHとして、10 upload_priority = 10 //アップロード優先順位、値が小さいほど優先度の高い#NICエイリアスの接頭辞である。空の値#1 yesまたはtrueに設定すると、ファイルのインデックスを格納するのにFastDHTを使用して、OSの種類#デフォルト値で設定されたオート=チェックファイルの重複した場合#空if_alias_prefixであることを意味しません:必要性のチェック#0または全くます。#デフォルト値をチェックしません0ですcheck_file_duplicate = 0 //アップロードされたファイルが既に存在するかどうかを検出します。真の必要性fastdhtに設定した場合。それが存在しない場合は、/ key_namespace = FastDFS //上のファイルインデックス(キーと値のペア)この項目はcheck_file_duplicateがtrueのときに設定する必要があります#を格納するためのディスク領域#名前空間を節約するためにシンボリックリンクを作成するとcheck_file_duplicate = 1、fastdhtで永続的な接続fastDHTサーバ#デフォルト値を有効にするには1に名前空間#セットKEEP_ALIVEはfastdhtサーバと0(短い接続)KEEP_ALIVE = 0 //接続です。0ショート-Fiを、あなたが使用することができます長い接続#」 http://nginx.org/download/nginx-1.0.8.tar.gz #タールzxvfのnginx-1.0.8.tar.gz -C ../software/#wgetコマンド のhttp:// fastdfs-nginxのモジュール。 googlecode.com/files/fastdfs-nginx-module_v1.08.tar.gz #タールzxvf fastdfs-nginxの-module_v1.08.tar.gz -C ../software/#apt-getのインストールのlibpcre3のlibpcre3-devのopensslののlibssl-devの#は./configure --prefix =は/ usr / local / nginxの-1.0 0.8 --user = nginxの--group = nginxの--add-モジュール=は/ usr / local / srcに/ソフトウェア/ fastdfs-nginxのモジュール/ SRC /#/#は#cpをmod_fastdfs.confの/ etc / FDFSをmake installを作ります#VI nginx.conf添加如下内容位置/ M00 {ルート/データ/ fastdfs /データ。ngx_fastdfs_module; }#LN -s /データ/ fastdfs /データ/データ/ fastdfs /データ/ M00#1 VIM mod_fastdfs.conf CONNECT_TIMEOUT = 2 network_timeout = 30 BASE_PATH = /データ/ fastdfs tracker_server = 192.168.1.114:22122 storage_server_port = 23000 GROUP_NAME = GROUP1 url_have_group_name =偽store_path_count = 1 store_path0 = /データ/ fastdfs LOG_LEVEL =デバッグLOG_FILENAME = response_mode =リダイレクトif_alias_prefix = http.need_find_content_type = FALSE#/usr/local/nginx-1.0.8/sbin/nginx -cは/ usr / local / nginx- 1.0.8 / confに/ nginxの。 http://192.168.1.114/group1/M00/00/00/wKgBZU6ii-GamB5eAAALcAZ5KwI.bashrc storage_upload_slave_by_filename GROUP_NAME = GROUP1、remote_filename = M00 / 00/00 / wKgBZU6ii-GamB5eAAALcAZ5KwI_big.bashrc元IPアドレス:192.168.1.101ファイルのタイムスタンプ= 2011 -10-22午後05時24分49秒ファイルサイズ= 2928ファイルのCRC32 = 108604162ファイルURL: http://192.168.1.114/group1/M00/00/00/wKgBZU6ii-GamB5eAAALcAZ5KwI_big.bashrc 八用浏览楽器访问。 のhttp:/ /192.168.1.101/M00/00/00/wKgBZU6ii-GamB5eAAALcAZ5KwI_big.bashrc

ます。https://my.oschina.net/766/blog/211239で再現

おすすめ

転載: blog.csdn.net/weixin_33842328/article/details/91548547