NANIGE BLOG
2023.11.12
2024.07.28

ローカルPCからAWSにバックアップする方法

今回はローカルPCからAWS環境にバックアップを自動でする方法についてお伝えします。

全体図

今回のアーキテクト図です。

画像ファイル5

簡単に説明しますと、

s3というAWSのストレージサービスにローカルPCからファイルをアップロードする

これだけです。

ただ、何でもかんでも簡単にアップロードやダウンロードができてしまえばセキュリティ的に問題ですよね。

ということでそれに対するいくつかの設定がある、

そういう認識を持ってください。

s3の設定

まずs3の設定ですがバケットを作成したらアクセス制限をしましょう。

具体的な設定ですが、今回はアクセスすることができるユーザーを指定してそのユーザーのみ操作が行えるというバケットポリシーを設定します。

バケットポリシーの設定に関しては以下の記事で紹介しています。

あわせて読みたい

完全ガイド:AWS S3バケットポリシーでセキュリティを強化

これでs3にセキュアにアクセスできるようになりました。

でも、まだAWSサービス(EC2など)からしかアクセスができません。今回はローカルPCからアクセスしたいのに…

アクセスキーとシークレットアクセスキーを発行する

今回のポイントはローカルPCからs3にアクセスする時にそのアクセスが指定したユーザーであるものだという証明が必要になります。

そこで必要となるのがアクセスキーシークレットアクセスキーになります。

アクセスキーは公開鍵として使用され、シークレットアクセスキーはアクセスキーに関連づけられた秘密鍵になります。発行したキーは漏洩がないように厳重に管理しましょう。

具体的なキーの発行方法は以下の記事にまとめています。

あわせて読みたい

記事が削除されました。

これを踏まえて以下のような手順を踏んでアクセスしていきましょう。

  1. ローカルPCにAWS CLIをインストールする
  2. IAMユーザーのアクセスキーとシークレットアクセスキーをローカルPC内に記述
  3. IAMユーザーとしてs3にアクセスする

AWS CLI

順を追って説明していきます。

まず、AWS CLIというのはコマンドラインでAWSのサービスを操作できるサービスです。

これによってローカルPCからAWSサービスへの操作が可能になるわけです。

AWS CLIのインストールが終わったら、コマンドプロンプトで以下のコマンドを入力しましょう。

aws configure

ここでアクセスキーとシークレットアクセスキーを聞かれますので先ほど作成したものを入力しましょう。

s3にアクセス

これで準備がそろったので実際にs3にアクセスしていきましょう。

s3バケットと同期

まずはローカルPCのフォルダからs3に同期を行ってみましょう。

初めてs3に同期を行う場合はただのアップロードと同じだと思ってください。

コマンドは以下の通りです。

aws s3 sync /同期元のフォルダ s3://バケット名

もし、2回目以降同じフォルダに同期した場合は以下のようなイメージとなります。

画像ファイル6

s3からダウンロード

バックアップしたファイルやフォルダを復元したいときにダウンロードします。

ファイル単体をダウンロード

ファイル単体をダウンロードする場合は以下のようなコマンドを入力しましょう。

aws s3 cp s3://backetname/example/example.txt ダウンロード先

フォルダをダウンロード

フォルダごとダウンロードする場合は --recursiveをつけてダウンロードしましょう。

aws s3 cp s3://backetname/example ダウンロード先 --recursive

バッチ処理を行う

定期的にバックアップを行う場合、手動で行うよりバッチファイルを作成して定期的に実行させる方が確実です。

※ただし、バッチファイルを起動させるときはPCも起動させておかないといけないことに注意しましょう。

画像ファイル7

まとめ

以上で、AWSサービスへのバックアップとなります。

今回はバックアップをするという限定的なものとなりましたが、

使い方はいくらでもあります。

応用して便利に使ってみましょう。

ABOUT ME
たけし
元教育業界で講師を務め

未経験で転職を成功。

現在はWEBを中心に

SEとして活躍中

djangoやlaravelを主に扱う

保有資格:

・ AWS SAA(ソリューションアーキテクトアソシエイト)

・統計検定2級

・日商簿記2級