作成日
2022/07/27最終更新
2024/12/28記事区分
一般公開EBS
- Amazon EBS volume types
- SSD の gp2/gp3, io1/io2 は Boot volume として利用できます。
- HDD の st1, sc1 は Boot volume として利用できません。
- Snapshot
- incremental なバックアップとなっており、複数回取得した際は、差分のみが追加で保存されます。
- 取得する際は EBS の IO を消費します。
- AWS が管理する S3 に保存されます。
- リージョンを跨いで取得できます。DR 対策として活用できます。
- Snapshot をもとに AMI を作成できます。
- Snapshot から EBS をリストアした直後は、pre-warm するとパフォーマンスが出ます。
- Fast Snapshot Restore (FSR) 機能を利用、または
- fio/dd コマンドで volume 全体を read します。
- Amazon Data Lifecycle Manager を利用して、取得を自動化できます。
- Attach a volume to multiple instances with Amazon EBS Multi-Attach
- 同じ AZ 内の、複数 EC2 インスタンスにアタッチできます。
- 注意: EBS は、リージョンではなく、AZ 内で動作します。Amazon EBS volumes
- io1/io2 で利用できます。
- アプリ側で concurrent write を管理する必要があります。
- ext4 といったファイルシステムではなく、clustered file system で利用します。
- 同じ AZ 内の、複数 EC2 インスタンスにアタッチできます。
EFS
- 複数の EC2 インスタンスにマウントできます。
- 異なる AZ であってもマウントできます。
- アタッチできる VPC は一つです。
- AZ 毎に ENI が一つ作成されます。
- オンプレミス上のサーバからもマウントできます。
- 異なる AZ であってもマウントできます。
- 利用したサイズ GB に応じて料金が発生します。
- 自動でサイズがスケーリングします。
- Security Group を設定してでアクセス制御します。
- KMS で暗号化します。
- POSIX (Linux) ファイルシステムに対応します。
- NFS プロトコルを利用します。
- モード Amazon EFS performance
- Performance mode
- Throughput mode
- EFS storage classes
- 一定期間アクセスがなければ EFS Standard から Infrequent Access (EFS-IA) に変更する機能が利用できます。Amazon EFS lifecycle management
- Regional (Multi-AZ) と One Zone が選択できます。
- Working with Amazon EFS access points
- NFS の特定のディレクトリ毎にアクセスを管理できます。
- アクセス時の root ディレクトリを変更することもできます。
- アクセスポイントへのアクセス可否
- POSIX user/group ID で管理できます。
- IAM Policy でも管理できます。
- NFS の特定のディレクトリ毎にアクセスを管理できます。
- Resource-based policies
- S3 バケットポリシーと同様に、EFS も resource-based policy に対応しています。
S3
- Amazon S3 Storage Classes
- S3 Intelligent-Tiering
- アクセスパターンが不明なデータのコストを自動的に最適化します。
- S3 Standard
- アクセス頻度が高いデータ。
- S3 Standard-Infrequent Access (S3 Standard-IA)
- アクセス頻度が低いデータ。
- S3 One Zone-Infrequent Access (S3 One Zone-IA)
- アクセス頻度が低いデータ。
- S3 Glacier Instant Retrieval
- アクセスが想定されないが、即時アクセスが必要なデータ。
- S3 Glacier Flexible Retrieval (formerly S3 Glacier)
- アクセスが想定されないデータ。
- S3 Glacier Deep Archive
- アクセスが想定されないデータ。
- S3 Intelligent-Tiering
- いずれのストレージクラスも durability (耐久性) は 99.999999999% (11 9's) です。
- オブジェクトが壊れて消失する可能性がほぼ 0 であることを意味します。
- availability (可用性) はストレージクラスによって異なります。
- Storage duration
- S3 Standard および S3 Intelligent-Tiering を除き、Storage duration が存在します。
- Storage duration 期間内は、オブジェクトを削除したとしても料金が発生します。
- S3 Lifecycle policy
- S3 Intelligent-Tiering が登場する以前から存在する機能です。
- アクセスパターンに応じて、オブジェクトを削除したり、ストレージクラスを変更する機能です。
- S3 Outposts What is Amazon S3 on Outposts?
- オンプレミスに設置可能なラックが AWS から貸し出されます。
- パブリッククラウド S3 と同様の機能を、オンプレミスのサーバで実現します。
- Replicating objects
- Cross Region Replication (CRR)
- Same Region Replication (SRR)
- S3 バケットバージョニングの有効化が必須です。
- オブジェクトが変更される際に、過去のバージョンとして保存しておきます。Using versioning in S3 buckets
- S3 Event Notifications
- 例: Snowflake / Snowpipe
- Best practices design patterns: optimizing Amazon S3 performance
- 1 秒あたりのリクエスト数の上限は、prefix 毎に存在します。バケット毎ではないことに注意します。
- Uploading and copying objects using multipart upload
- サイズの大きいオブジェクトを分割して並列にアップロードする機能です。
- 通信障害等でアップロードが完了せず、オブジェクトの一部が残存してしまった場合。
- AWS CLI の s3api list-multipart-uploads で存在の有無を確認できます。
- Lifecycle policy で X 日経過したら削除、といった処理を実現できます。
- S3 Transfer Acceleration (S3TA)
- CloudFront の Edge Location を利用します。
- インターネットの経路を短縮することで、S3 へのデータアップロードまたはダウンロードを高速化します。Configuring fast, secure file transfers using Amazon S3 Transfer Acceleration
- 料金について
- インターネットから S3TA を利用した IN および OUT はどちらも料金が発生します。
- ただし、アップロード(IN) については S3TA を利用しても高速化されないと判定された場合は、S3TA はバイパスされ、通常の S3 アップロードとなります。
- S3 アップロード(IN) は料金が発生しないため、結果として、その場合の S3TA の料金は無料となります。S3 Transfer Acceleration pricing
- クライアント側のみの設定では利用できず、事前に S3 バケット側でも Transfer Acceleration を有効化しておく必要があります。Getting started with Amazon S3 Transfer Acceleration
- Use Byte-Range Fetches
- バイト範囲を指定して、S3 オブジェクトの一部のみを GET する機能です。
- サイズの大きいオブジェクトを分割して並列ダウンロードする、といった使い方もできます。
- S3 Select and Glacier Select – Retrieving Subsets of Objects
- S3 サーバ側で SQL によって抽出した結果のみをダウンロードする機能です。
- 例えば CSV ファイル全体をダウンロードして、必要なデータをクライアント側で抽出する場合と比較して、ダウンロードするデータサイズは小さくなります。
ScanRange
パラメータを指定することで、CSV や JSON ファイルの一部のバイト範囲のみを SQL の対象とできます。Filtering and retrieving data using Amazon S3 Select- Glacier Select は gzip 等で圧縮されたファイルをサポートしません。Querying Archives with S3 Glacier Select
- S3 Select はサポートします。
- S3 はオブジェクトの検索には不向きです。
- S3 にオブジェクトをアップロードした際に Lambda を起動し、検索用のメタデータを DynamoDB Table に保存しておく、という構成が考えられます。
- S3 static website
- SSE-KMS 暗号化されたオブジェクトは static website でホステイングできません。
- KMS 側の仕様として、anonymous なアクセスをサポートしていないためです。
- SSE-S3 による暗号化はサポートされます。
- I'm using the Amazon S3 static website feature but getting an Access Denied error. Why is this happening?
- SSE-KMS 暗号化されたオブジェクトは static website でホステイングできません。
FSx
- サードパーティのファイルシステムを AWS で利用するためのサービスです。(補足: EFS は Linux 向けです。)
- VPN または Direct Connect 接続された、オンプレミス環境からも利用できます。
- FSx for Windows File Server What is FSx for Windows File Server?
- SMB をサポートします。
- NTFS をサポートします。
- マイクロソフト AD と統合できます。
- Linux EC2 インスタンスでもマウントできます。
- Multi-AZ 構成が可能です。
- S3 への日次バックアップがなされます。
- FSx for Lustre What is Amazon FSx for Lustre?
- 分散型のファイルシステムです。
- Lustre → Linux + Cluster
- S3 との統合が可能です。Enhanced Amazon S3 Integration for Amazon FSx for Lustre
- Deployment options for FSx for Lustre file systems
- Scratch file systems
- Persistent file systems
DataSync
- AWS (S3、EFS、FSx 等) へデータを同期するためのサービスです。What is AWS DataSync?
- 同期元の環境において、DataSync エージェントを稼働させます。
- オンプレミスから AWS へのデータ同期に限らず、EFS から EFS へのデータ同期でも活用できます。
Transfer Family
- S3/EFS へのデータ転送、または S3/EFS からのデータ取得を FTP で実現するためのサービスです。
- AWS Transfer for FTP
- AWS Transfer for FTPS
- AWS Transfer for SFTP
- 認証システム (LDAP、AD、Okta、Cognito 等) との統合が可能です。
- サービス内でユーザ管理することも可能です。Working with service-managed users
- エンドポイント
- Public → インターネット経由でアクセスします。
- VPCE → VPC 経由でアクセスします。EIP を付与して、インターネット経由でアクセスさせることもできます。
関連記事
- AWS EC2 インスタンスの選定方法準仮想化と完全仮想化 AWS のインスタンスタイプが準仮想化と完全仮想化のどちらの仮想化技術を採用したハードウェアであるかによって、使用できる AMI (OS) が異なるのは以下の理由によります。 準仮想化 ParaVirtualization (PV) において OS は自分が仮想化用のハードウェア上で動作していることを知っています。つまり仮想化用にカスタマイズされた専用の OS が必要になりま...
- OpenVPN で二つの VPC をつなぐための設定インターネット VPN (Virtual Private Network) には二拠点間の通信を暗号化する方式によって IPsec-VPN や SSL-VPN などがあります。OpenVPN は SSL-VPN の実装のひとつです。AWS VPC を二つ用意してそれらを OpenVPN で接続してみます。 VPC の構成 myvpc-1 (10.1.0.0/16) mysubnet-1-1 (10...
- Windows Server EC2 インスタンスへの CAL インストールWindows サーバを AWS EC2 インスタンスとして起動した後は、RDP 接続が必要となります。RDP 接続を行なうためには Remote Desktop Services (RDS) ライセンスが必要となります。 Windows Server のライセンスは、管理用途の RDS 接続を許可しています。その際に RDS ライセンスは不要です。ただし、同時接続数が 2 という制限があります。...
- AWS Lambda の基本的な使い方AWS Lambda はイベントドリブンな「関数」を登録できるサービスです。例えば S3 に画像がアップロードされたときにサムネイル用のサイズに加工する処理が記述された関数を登録できます。基本的な使い方をまとめます。 事前準備 関数の登録はブラウザで AWS コンソールにログインして行うこともできますが、本ページでは AWS CLI コマンドで行うことにします。専用の IAM を新規に登録して、A...
- AWS 落穂拾い (Data Engineering)Kinesis Kinesis Streams データは 3 AZ にレプリケーションされます。Amazon Kinesis Data Streams FAQs 24 時間 (既定値) から 1 年までデータ保持できます。Changing the Data Retention Period SQS と異なり、ストリームのデータを再処理できます。 クライアント処理時にデータ削除されません。 データ削...
- Windows Server EC2 インスタンスによって Active Directory を構築する設定例本ページでは Windows Server 自体の設定で AD を構築する例を記載します。 AD の Domain Service (DS) および DNS 役割のインストール 注意 RDS CAL に関連して、AD DC と同じサーバに RDS セッションホストをインストールする場合は、最初に DC をインストールしてから、その後に RDS セッションホストをインストールします。 If you ...
- AWS Lambda 関数から VPC 内の RDS を利用するための設定Lambda 関数が VPC 内のリソースにアクセスするためには create-function 時に --vpc-config でサブネットに所属させる必要があります。リソースの具体例として RDS にアクセスするために必要な設定方法をまとめます。 RDS の構築 AmazonRDSFullAccess が付与された IAM を用いて以下の create-db-instance コマンドで RD...
- AWS 落穂拾い (オンプレからの移行)6R 6 Strategies for Migrating Applications to the Cloud Rehosting (lift and shift) → オンプレサーバから EC2 インスタンスに移行する場合など。 Replatforming → DB を RDS に移行する場合など。 Repurchasing → 金額的にはコストがかかりますが、短期間で完了します。オンプレの C...
- AWS 落穂拾い (Deployment)Beanstalk EC2、Auto Scaling Group、ELB、RDS 等が組み合わせられて、一つのサービスのようにまとめています。beanstalk what is それぞれのサービスの設定は隠蔽されておらず、通常のサービス利用時と変わりません。 Beanstalk 自体は無料で利用できます。 Tomcat (Java)、IIS (.NET)、Docker といった技術スタックのアプリ...
- AWS 落穂拾い (Identity & Federation)Access Advisor と Access Analyzer 最小権限の原則に関連する、名称が似た機能です。 Access Advisor IAM 権限について、使用状況を確認できます。 Viewing last accessed information for IAM Access Analyzer アカウントまたは組織の外部に共有されているリソースを調査できます。CloudTrail ログ...