🤳

【AWS】画像データについて

2023/12/09に公開

今回、ネットワーク環境を作成していた中で遭遇したトラブルについて簡単にメモしていこうと思います。

起きたこと

新規にEC2インスタンスを作成しネットワーク構築を行いました。その際に以前作成したEC2で使用していたRDSのVPCの移行を行い作成したところ前回の本番環境上でテスト用に投稿した画像のみ表示されなくなりました。

原因

原因はActive Storageを使用し投稿した画像のデータのみ前回使用していたEC2に取り残されているということでした。Active Storageは画像データをカラムに保存するわけではないので発生したトラブルでした。
https://zenn.dev/sudoukky/articles/a73a651c762230

対策

対策としてはデータ保存にS3やEFCを使用する。

S3

S3は、Simple Storage Serviceの略称です。またオブジェクトストレージのサービスで、インターネット上で使える大容量のデータストレージです。

  • データはオブジェクトとして保存され、それぞれのオブジェクトには一意のキーが割り当てられます。
  • スケーラブルで耐久性が高く、データの信頼性が保証されています。
  • 世界中のAWSのリージョンにデータを格納できるため、地理的な近さによる高速なアクセスが可能です。

一般的な用途として、バックアップ、データアーカイブ、静的なウェブサイトホスティングなどに利用されます。また、他のAWSサービスと連携することもでき、S3に保存したデータをEC2インスタンスやLambda関数から利用することができます。

EFC

EFCとは、Entity Framework Coreの略称、スケーラブルなネットワークファイルシステムを提供するフルマネージドNFSサービスで、AWS上のEC2等のサービスだけでなく、ネットワークを経由してオンプレミスの環境のサーバーからも利用することができます。

どちらもまだ使用したことはありませんがメンターさんいわく、開発現場ではS3の使用が多いとのこと。触れる機会があればその際に詳しく調べられればと思います。

参考

https://qiita.com/shinpei-hattori/items/166606073690f8e326bf
https://railsguides.jp/v6.0/active_storage_overview.html
https://qiita.com/miyuki_samitani/items/4585f28931f2187da43c

Discussion