Cent6環境でCloud Strageをマウントしてちょっと試験したかったのでやりました。
Cent6環境ではPython2.6なのでまずは2.7へアップする必要があります。
(Cloud SDKが使えるのPyhton2.7からなので)
Pythonのアプデ
sudo yum install centos-release-scl-rh sudo yum install python27 scl enable python27 bash
#python -V Python 2.7.16
Cloud SDKのインストール
Cloud SDK のインストール | Cloud SDK のドキュメント | Google Cloud
ここの通り
curl https://sdk.cloud.google.com | bash exec -l $SHELL gcloud init
gcloud initしたあとは認証のため表示されたURLに遷移して認証コードをコピーする
GCSマウント用のgcsfuseをインストール
Cloud strageをマウントするためのツールを入れます
1.Token作成
URLが発行されるのでそちらにアクセスして内容をコピーしたのちコンソールにペースト
gcloud auth application-default login
2.リポジトリの登録
cat /etc/yum.repos.d/gcsfuse.repo > /dev/null <<EOF [gcsfuse] name=gcsfuse (packages.cloud.google.com) baseurl=https://packages.cloud.google.com/yum/repos/gcsfuse-el7-x86_64 enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOF
3.インストール
yum install gcsfuse
4.ログインして認証
またURL発行されるのでログインします
gcloud auth login
ここまででgsutilコマンドで操作できるようになりました
5.バケットの作成
東京リージョンに何かしらバケット作成
gsutil mb -c regional -l asia-northeast1 gs://hogehogefugafuga
6.サーバからマウントしてみる
マウントポイントの作成
mkdir /mnt/gcs
マウント
gcsfuse hogehogefugafuga /mnt/gcs
dfで見てみるとDiskサイズ 8Pがマウントされてます。
やりたいこと
GCSに対して「gsutil」コマンドと「gcsfuse」でのアクセスとで速度的にどれほど違うか確認です。
想定として小さめのサイズである5Gくらいの圧縮データをポンポン置きたいと考えていたのでそれくらいのサイズ感で計測します。
結果
ファイルサイズ | gsutil | gcsfuse |
---|---|---|
2GB | 0m54.341s | 1m8.846s |
3GB | 1m20.080s | 1m44.196s |
5GB | 2m17.638s | 3m0.197s |
gsutilでの転送が30%程早いですね。
これならわざわざgcsfuseを入れなくていいですね。
以上