2&>1

AWSとかGCPとかGolangとかとか

Cent6のPythonをアプデしてGCSをマウントした

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を入れなくていいですね。

以上