s3ql-クラウドストレージに基づくファイルシステム

画像

説明


S3QLを使用すると、OS Linux、FreeBSD、またはMac OS Xの最新バージョンにマウントできるSelectel Storageクラウドストレージに基づいたファイルシステムを作成できます。

特徴


透明性

S3QLは、実際にはローカルファイルシステムと見分けがつきません。 ハードリンク、シンボリックリンク、標準システム許可、拡張属性、および最大2TBのサイズのファイルをサポートします。

動的サイズ

ファイルシステムのサイズに制限はありません。データを保存すると増加し、削除すると減少します。 キャッシュされたデータはローカルドライブに保存されます。

圧縮

クラウドストレージに保存する前に、データを圧縮できます(lzma、bzip2、zlibをサポート)。

暗号化

圧縮後(ただし、ストレージにロードする前)、データは256ビットキーのAES暗号化アルゴリズムで暗号化できます。 オプションのSHA256 HMACチェックサムも、外部操作からデータを保護するために使用されます。

データ重複排除

複数のファイルのコンテンツが同じである場合、重複データは1回だけ記録されるため、最小限の占有ボリュームで多数の類似データを効果的に保存できます。 この機能は、ファイル全体と、異なるファイルで繰り返されるデータブロックの両方で機能します。

コピーオンライト/スナップショット

S3QLは、追加のディスク容量を必要とせずにディレクトリ全体をすばやくコピーできます。 コピーの1つに変更を加えた場合のみ、変更されたデータが追加のスペースを占有します。

変更に対するデータ保護

たとえば、誤って削除されないようにバックアップを保存するために、ディレクトリのデータの変更を禁止できます。

ネットワーク遅延に関係なく高いパフォーマンス

構造の変更(ディレクトリの作成、ファイルの移動、アクセス許可の変更)に関連する操作は、ネットワークとの対話を必要としないため、非常に高速です。

低速リンクのサポート

S3QLは、ファイルのコンテンツを小さなブロックに分割してローカルにキャッシュします。これにより、データの読み取りと書き込みのためのネットワーク呼び出しの回数が減り、変更されたデータブロックのみがネットワークを介して送信されるため、転送されるデータの量も削減されます。

設置


s3qlパッケージはDebian(sid)およびUbuntuリポジトリで利用できます。これらのインストールは、通常apt-get install s3qlの実行に要約されます。
リポジトリにこのパッケージがない場合、またはそのバージョンに満足できない場合は、 手順を使用していつでも手動でインストールできます。

ファイルシステムの作成


mkfs.s3ql swift://auth.selcdn.ru/container
デフォルトでは、すべてのiノードは10 MBのブロックに分割されます。このパラメーターは、-max-obj-sizeファイルシステムの作成時に設定できます。 ファイルシステムの作成後、このパラメーターは変更できません。
また、デフォルトでは、ファイルシステムを作成するときに、データを暗号化するためにパスワードを入力する必要がありますが、暗号化が必要ない場合は、-plainオプションを指定すると、データが暗号化されないため、ファイルシステムのパフォーマンスが向上します。

取り付け


クラウドストレージの接続は非常に簡単です。
mount.s3ql swift://auth.selcdn.ru/container /mnt/container

圧縮


ファイルシステムをマウントするとき、必要なデータ圧縮アルゴリズムを指定できますが、圧縮が強いほど、プロセッサーの負荷が大きくなり、データを保存するときの速度が遅くなることを理解する必要があります。 圧縮アルゴリズムは次のように相互に関連しています。lzmaは低速ですが、bzip2よりも圧縮率が高く、bzip2はzlibよりも圧縮率が高くなりますが、それよりも遅くなります。 ファイルシステムのパフォーマンスを最大にするには、ネットワーク帯域幅に基づいて圧縮アルゴリズムを選択するのが最適です

キャッシング


S3QLはローカルファイルシステムのデータキャッシュをサポートして、アクセスを高速化します。 キャッシュはデータブロックに基づいているため、ファイルの一部のみがキャッシュにある可能性があります。

追加のチーム


s3qladm暗号化のパスワードの変更、ファイルシステムの更新、すべてのデータの削除、およびリポジトリからのメタデータのダウンロードに使用。
fsck.s3qlストレージへのネットワーク接続が失われた後、またはs3qlがクラッシュした後、ファイルシステムを確認する必要がある場合があります。これがないと、さらにマウントする可能性がありません。
s3qlcp同じs3qlファイルシステム内でディレクトリを複製できます。
s3qlctrlマウントされたファイルシステムの現在の設定(キャッシュサイズやログレベルなど)を管理し、 s3qlctrlキャッシュの強制実行とメタデータのリポジトリへのロードも可能にします。
s3qllockフォルダーを不変にします。
s3qlrm -s3qlファイルシステム上のファイルとディレクトリを再帰的に削除します。不変としてマークされたディレクトリも削除できます。
s3qlstatマウントされたファイルシステムの統計を表示します。

アンマウント


umount.s3ql /mnt/container
ファイルシステムをマウント解除できるのは、それをマウントしたユーザーまたはルートのみです。 マウント解除すると、まだ記録されていない追加データがストレージにロードされます-ダウンロードが完了するまでコマンドはブロックされます。

まとめ


長所


短所



PS s3qlの詳細については、そのドキュメントを使用できます

記事のソース

Source: https://habr.com/ru/post/J177661/


All Articles