harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

AWS infra 運用

[AWS]s3fsの最新版を試してみた(s3fs-1.70)

投稿日:2013年6月13日

Last Updated on 2021年7月4日 by かんりにん

[pukiwiki]
以前バックアップテストにCentOS6.3のAMIを使用したが、s3fsをインストールする際、RPM版fuseのバージョンが2.8.3と古く、これに合わせてs3fsのバージョンも1.19と古いバージョンをインストールして使ってみた。
しかし、S3のバケットをマウントすると通信エラーがよく発生する。
このため、トラブルシュートの一環と比較対象として、s3fsの最新バージョンをインストールして試してみることに。
今回はAMIには最新のパッケージの提供が期待できるAmazon Linux AMIを使用。
S3は東京、シンガポールにそれぞれバケットを作成してマウント、コピーを試してみる。

*1)パッケージのインストール

公式ドキュメントには、以下のパッケージのインストールが必要との
情報があるので、これを参考にしつつ、現在足りていないものを追加。
※EC2 AMIもyumでのパッケージ管理だったので、ひとまずFedora / CentOSのドキュメントを参考に。

-[公式ドキュメントからの抜粋]
http://code.google.com/p/s3fs/wiki/InstallationNotes
yum install gcc
yum install libstdc++-devel
yum install gcc-c++
yum install fuse
yum install fuse-devel
yum install curl-devel
yum install libxml2-devel
yum install openssl-devel
yum install mailcap

-インストールログ
# yum install fuse fuse-devel fuse-libs
 
— 中略 —
 
Installed:
fuse.x86_64 0:2.9.2-1.13.amzn1
fuse-devel.x86_64 0:2.9.2-1.13.amzn1
fuse-libs.x86_64 0:2.9.2-1.13.amzn1
 
 
# yum install gcc-c++
# yum install curl-devel libxml2-devel openssl-devel

まとめて一行で片づけてもOK。
# yum -y install gcc libstdc++-devel gcc-c++ fuse fuse-devel curl-devel libxml2-devel openssl-devel mailcap

*2)s3fsのダウンロードとインストール

$ wget https://s3fs.googlecode.com/files/s3fs-1.70.tar.gz
$ file s3fs-1.70.tar.gz
s3fs-1.70.tar.gz: gzip compressed data, from Unix, last modified: Sun Jun 2 00:57:25 2013, max compression
$ gzip -d s3fs-1.70.tar.gz
$ tar -xvf s3fs-1.70.tar
$ cd s3fs-1.70
$ ./configure
$ make
$ sudo make install
※Amazon Linux AMIはec2-userでsudoができるので、上のような感じに。
rootにsu -した場合はそのままmake installで。

以降は、[[s3fs-1.19の初期設定>https://www.harumaki.net/2013/03/25/aws-s3fs/]]と同じ。

*3)s3fsでのエラーの調査と転送ファイルサイズの検証

S3に作成したバケットをマウントしてテスト。

*バケット
バックアップファイルの転送先として東京、シンガポールにそれぞれバケットを作成。
-”東京”
”s3-backup-db1-tokyo”
→マウント先:/mnt/s3-backup-db1-tokyo/
-”シンガポール”
”s3-backup-db2-singapore”
→マウント先:/mnt/s3-backup-db2-singapore/

**s3fs-1.19の転送エラー時のメッセージ

ファイルの転送中(ローカル上でcp -aを使っている状態)にエラーが出てしまい
その後、以下のようなエラーメッセージが出る。

-東京リージョンの場合
# ll /mnt/s3-backup-db1-tokyo/
ls: reading directory /mnt/s3-backup-db1-tokyo/: ソフトウェアが接続を中断しました
合計 0
# ll /mnt/s3-backup-db1-tokyo/
ls: cannot access /mnt/s3-backup-db1-tokyo/: 通信端点が接続されていません

-シンガポールリージョンの場合
# ll /mnt/s3-backup-db2-singapore/
ls: reading directory /mnt/s3-backup-db2-singapore/: 入力/出力エラーです
合計 0

**s3fsの最新版1.70を試す

-DBダンプファイルの保管ディレクトリ
/home/ec2-user/db-s3test/
-転送対象のDBダンプファイル
backup_db.sql.gz

***3-1)EC2東京→S3東京

$ cd /home/ec2-user/db-s3test/
$ time cp backup_db.sql.gz /mnt/s3-backup-db1-tokyo/
 
real 11m47.757s
user 0m0.436s
sys 0m26.350s

”→所要時間11:48(小数以下切り捨て)”

**1-2)EC2東京→S3シンガポール

$ time cp backup_db.sql.gz /mnt/s3-backup-db2-singapore/
 
real 81m33.119s
user 0m0.360s
sys 0m26.342s

”→所要時間81:33(小数以下切り捨て)”

→最新版でファイルの転送、マウントをガリガリ試したが、ファイルサイズの上限の課題も含めて
””通信端点が接続されていません”エラー”が出ていないので、今のところ問題なし。

[追記]このあと2日後(06/15)にs3fs-1.71がリリースされていたので、バージョンアップ済み。
[/pukiwiki]
 

 

-AWS, infra, 運用
-,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

no image

[Linux]statコマンド

ファイル、および当該ファイルのファイルシステムのステータスを表示する。 実際には、指定したファイルのinode情報を表示するコマンドの様子。 -参考にしたサイト お世話になっております! Linux …

nagios NRPEインストール

  [pukiwiki] *NRPEインストールログ [#udb00d6c] 作業日:2010-11-22 -参考ページ お世話になっています!! –NRPE (Nagios Remote …

nagios​/plugin​/Recurring schedule

  [pukiwiki] *nagios ダウンタイムの定期スケジューリング nagios標準のダウンタイム機能は一回限りのスケジュール設定のみが可能で、 “毎晩03時~05時は非通知&# …

no image

lsyncdのエラー修正(監視対象ファイル数の上限値変更)

lsyncdでのバックアップファイルの同期がうまくいってないな~、と思って調べたら、カーネルパラメータ”max_user_watches”の上限値を超えたためlsyncdのプロ …

[AWS] EC2からS3へのファイル転送時間をコマンド別に軽くレポート

  本日までに試した、EC2→S3へのファイル転送時間をコマンド別にそれぞれ簡単に比較・テストしてみたので、以下にまとめ。 それぞれ5回試してみたうちの、速度がもっとも速かったものを以下に記載。今後の …