こんにちは!ガジュマル育ててる人です。
今日はAWS EC2とS3を連携させる方法について簡単に説明します。
準備
EC2 とS3を準備していきます。
IAMロールはAmazonS3FullAccessを利用しますので、今回は割愛します。
EC2をたててIAMロールをアタッチしておきます。
Amazon Linux以外のOSイメージを利用されている方は
AWS CLIを実施するために公式のインストールガイドを参照ください。
Linux OSのものは下記を実行するとインストール可能です。
$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
$ unzip awscliv2.zip
$ sudo ./aws/install
AWS EC2からS3にファイルをアップロードする方法
AWS EC2からS3にファイルをアップロードしてみます。
1. EC2インスタンスにSSHで接続し、必要なファイルをアップロードするディレクトリに移動します。
2. AWS CLIを使用して、以下のコマンドを実行します:
aws s3 cp <ファイル名> s3://<バケット名>/<ディレクトリ名>/
3. ファイルが正常にアップロードされたことを確認します。
これで、AWS EC2からS3にファイルをアップロードすることができます。
S3からEC2にファイルをダウンロードする方法
S3からEC2にファイルをダウンロードするには、以下の手順を実行します:
1. AWS Management Consoleにログインし、S3のバケットを作成します。
2. EC2インスタンスにSSHで接続し、必要なファイルをダウンロードするディレクトリに移動します。
3. AWS CLIを使用して、以下のコマンドを実行します:(アップロードと逆にするだけ)
aws s3 cp s3://<バケット名>/<ファイル名> <ローカルディレクトリ名>/
4. ファイルが正常にダウンロードされたことを確認します。
これで、S3からEC2にファイルをダウンロードすることができます。
最後に
簡単にS3にアップロードやダウンロードが可能なので、ぜひ皆さんも試してみてください。
今回はIAMロールをFullAccessのものを利用しましたが、ベストプラクティスに従ってバケットややりたいことのみを許可するようにしてもらうことで、実務レベルでも利用してもらえるかと思います!
それではまた!