見出し画像

楽天クラウド オブジェクトストレージにバックアップしてみた

今村 健一郎 クラウドプラットフォーム技術部 クラウド技術グループ

この記事では、CentOS 6の仮想マシンのバックアップを取得し、「楽天クラウド オブジェクトストレージ」に転送する手順を紹介します。

1.データのエクスポート

CentOS 6の仮想マシンのrootディスク(/dev/xvda)をエクスポートします。

例外事項
本記事では仮想マシンにアタッチしているブロックストレージのエクスポートは扱いません。

仮想マシンへログインし、dumpコマンドをインストールします。

# yum install -y dump

移行対象仮想マシンのrootボリュームをバックアップします。

dump -f - / | gzip > target.xvda.dump.gz

2.s3cmdのインストール

dumpを実行した仮想マシン上に、s3cmdコマンドをインストールします。

$ sudo yum install epel-release
$ sudo yum install -y s3cmd

3.s3cmdの設定

管理ポータルにて、以下の値を取得してください。
・エンドポイントのURL(objectstorage.copse.jp)
・アクセスキー
・シークレットキー

オブジェクトストレージ 管理ポータル
https://console.objectstorage.rakuten-cloud.net/objst/login.htm

管理ポータルより、「セキュリティ証明書」画面へ移動します。

画像1

アクセスキーIDを確認し、記録します。

画像2

「シークレットキーを見る」をクリックし、シークレットキーを記録します。

画像3

s3cmdのコンフィグに必要情報を登録します。

$ s3cmd --configure

Enter new values or accept defaults in brackets with Enter.
Refer to user manual for detailed description of all options.

Access key and Secret key are your identifiers for Amazon S3. Leave them empty for using the env variables.
Access Key: [アクセスキーを入力]
Secret Key: [シークレットキーを入力]
Default Region [US]:   <= デフォルトのままエンター

Use "s3.amazonaws.com" for S3 Endpoint and not modify it to the target Amazon S3.
S3 Endpoint [s3.amazonaws.com]: s3.jp3.objectstorage.rakuten-cloud.net   <= エンドポイントを入力

Use "%(bucket)s.s3.amazonaws.com" to the target Amazon S3. "%(bucket)s" and "%(location)s" vars can be used
if the target S3 system supports dns based buckets.
DNS-style bucket+hostname:port template for accessing a bucket [%(bucket)s.s3.amazonaws.com]: %(bucket)s.s3.jp3.objectstorage.rakuten-cloud.net   <= %(bucket)s.エンドポイントを入力

Encryption password is used to protect your files from reading
by unauthorized persons while in transfer to S3
Encryption password:   <= デフォルトのままエンター
Path to GPG program [/usr/bin/gpg]:   <= デフォルトのままエンター

When using secure HTTPS protocol all communication with Amazon S3
servers is protected from 3rd party eavesdropping. This method is
slower than plain HTTP, and can only be proxied with Python 2.7 or newer
Use HTTPS protocol [Yes]:   <= デフォルトのままエンター

New settings:
 Access Key: **** access key ****
 Secret Key: **** secret key ****
 Default Region: US
 S3 Endpoint: s3.jp3.objectstorage.rakuten-cloud.net
 DNS-style bucket+hostname:port template for accessing a bucket: %(bucket)s.s3.jp3.objectstorage.rakuten-cloud.net
 Encryption password:
 Path to GPG program: /usr/bin/gpg
 Use HTTPS protocol: True
 HTTP Proxy server name:
 HTTP Proxy server port: 0

Test access with supplied credentials? [Y/n] Y
Please wait, attempting to list all buckets...
Success. Your access key and secret key worked fine :-)

Now verifying that encryption works...
Not configured. Never mind.

Save settings? [y/N] y
Configuration saved to '/home/f-user/.s3cfg'

4.バケットの作成

s3cmdでバケット ”blog-backup” を新規作成します。

$ s3cmd mb s3://blog-backup
Bucket 's3://blog-backup/' created

5.ファイルのアップロード

s3cmdでバケット ”blog-backup” へdumpファイルをアップロードします。

$ s3cmd put target.xvda.dump.gz s3://blog-backup
upload: 'target.xvda.dump.gz' -> 's3://blog-backup/target.xvda.dump.gz'  [part 1 of 36, 15MB] [1 of 1]
15728640 of 15728640   100% in    0s    18.30 MB/s  done
upload: 'target.xvda.dump.gz' -> 's3://blog-backup/target.xvda.dump.gz'  [part 2 of 36, 15MB] [1 of 1]
・
・
・
upload: 'target.xvda.dump.gz' -> 's3://blog-backup/target.xvda.dump.gz'  [part 35 of 36, 15MB] [1 of 1]
15728640 of 15728640   100% in    0s    21.67 MB/s  done
upload: 'target.xvda.dump.gz' -> 's3://blog-backup/target.xvda.dump.gz'  [part 36 of 36, 7MB] [1 of 1]
7447485 of 7447485   100% in    0s    21.79 MB/s  done

管理ポータルでファイルがアップロードされていることを確認することも可能です。

画像4

まとめ

今回はCentOSのデータを圧縮し、楽天クラウド オブジェクトストレージへのバックアップを実施しました。
s3cmdを利用することでバケットの操作を行うことが可能になり、だれでも簡単に扱えるようになったと思います。
現在S3を利用している方は違和感なく利用できると思いますので、ぜひ楽天クラウドをご利用いただけると嬉しいです。

楽天クラウド:https://cloud.rakuten.co.jp/

画像1

今村 健一郎
国内ユーザー系SI企業に入社後、グループ内のシステム再編などに従事。その後、新規のクラウド事業をサポートするため現職に。自社が展開するIaaS、SaaS、PaaSを含めた幅広いプロジェクトに参画し、営業部隊と運用部隊がスムーズに連携できるようなバランサーとして業務を行っている。
国内情勢により外出が難しくなってきたため、思い付きでウクレレを購入。初めての弦楽器に四苦八苦しながら勉強している。


みんなにも読んでほしいですか?

オススメした記事はフォロワーのタイムラインに表示されます!