あいしんくいっと

ありきたりだけど、少しだけ役に立つことをありのままに書こうと思う。

centos7にawscliをインストールしてS3へデータアップロードする方法

time 2016/05/20

ども。あいしんくいっと(@ithinkitnet)です。

システム運用を考えた時、バックアップは非常に重要です。
障害によって大事なデータが失われたとしても、バックアップがあれば復旧させる事が出来るからです。

ですが、バックアップでいつも問題になるのは「保存先」です。
バックアップするにもそれなりの領域が必要になりますから、用意するのも大変です。

そんな時に選択肢として検討したいのが、AWSのS3と呼ばれるサービスです。

S3の魅力は「SLA99.999999999%、使い放題」という点に尽きます。
ただし、従量課金なので使ったら使った分だけお金はかかりますが・・・。

というワケで、今回はCentOS7にawscliを導入し、AWSのS3へデータアップロードする方法について書いておきたいと思います。

sponsored link

S3にバックアップフォルダを作成

バックアップ用フォルダ作成

AWSコンソールにログインし、データアップロード用のフォルダを作成します。
32176a9e-e6e1-4113-9140-15c1b734e198
バケット名はユニークなものでないといけません。
c2090000-e63f-4460-9ba7-6ad4154c938b

IAMユーザ作成

S3アップロード用のIAMユーザを作成します。

s3upload
アクセスキー ID:<アクセスキー>
シークレットアクセス:<シークレットキー>

aws-centos7-awscli-s3-upload-4
作成にあたり、アクセスキー及びシークレットキーは忘れずに控えておきます。
(awscliで使います)

作成したIAMユーザには最低限必要なアクセス権を付与しておきます。

IAMポリシー例)

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1463545899000",
            "Effect": "Allow",
            "Action": [
                "s3:DeleteObject",
                "s3:GetObject",
                "s3:ListBucket",
                "s3:ListBucketMultipartUploads",
                "s3:PutObject"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

centos7にawscliをセットアップ

awscliインストール

EPELリポジトリ追加

# yum install epel-release

python-pipモジュール追加

# yum -y install python-pip

awscliインストール

# pip install awscli

awscliインストール確認

# aws --version
aws-cli/1.10.29 Python/2.7.5 Linux/3.10.0-123.el7.x86_64 botocore/1.4.20

これでインストールは完了です。

awscliにアクセスキー、シークレットキーを設定

IAMユーザ作成時に取得したアクセスキー、シークレットキーを設定します。

# aws configure
AWS Access Key ID [None]: <アクセスキー>
AWS Secret Access Key [None]: <シークレットキー>
Default region name [None]: ap-northeast-1
Default output format [None]:

awscliコマンド動作確認

# aws s3 ls
2016-05-14 13:24:50 ithinkitnet

S3へデータアップロード

では、S3にテストデータをアップロードしてみたいと思います。

# aws s3 cp test.dat s3://ithinkitnet/
upload: ./test.dat to s3://ithinkitnet/test.dat

無事にアップロード出来ました。

# aws s3 ls ithinkitnet
2016-05-18 13:48:14 512000000 test.dat

AWSコンソールからS3を見てもアップロードされています。
2673e6da-fee2-4782-a975-9db917e4e187
いかがですか。
awscliを使えば、アップロード以外にもS3上のデータを扱う事が可能になります。
スクリプトを作成してCRON登録しておくと、定期的にS3へのバックアップも可能となります。

以上、あいしんくいっとでした( ´Д`)y━・~~

sponsored link

down

コメントする




*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

Author

あいしんくいっと

あいしんくいっと

あいしんくいっとの中の人。

ありきたりだけど、自分なりの視点で少しでも人の役に立つ記事をありのままに書くをモットーに。 たまには役立つことが書けると良いかな。

サイトポリシーはこちら

聞きたいことがあれば、気軽にツイートください♪可能な範囲でお答えします。
follow us in feedly

Twitter

オススメ記事

アーカイブ