AWS

ElastiCache
更新について
- セルフサービス更新の適用
https://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/red-ug/applying-updates.html - コンソールから適用する
https://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/mem-ug/applying-updates-console.html#applying-updates-console-memcached-console - コンソール更新に関するQ&A
→ 更新しそびれた場合は次のアップデートで併せて適用になるらしい(サービス更新は常に累積)
https://aws.amazon.com/jp/elasticache/elasticache-maintenance/?nc1=h_ls
※[AWS] ElastiCacheの自動アップデートスケジュールの確認と対策方法
・AWSによる自動更新は、メール or ヘルスダッシュボードで

Personal Health Dashboard

AWSアカウントの終了
終了手順
- コストエクスプローラーを起動し、コストのかかっているモジュールを確認する
請求セキュリティダッシュボード > Cost Explorer > Cost Explorerを起動
→ 「日別の非ブレンドコスト」右端の「コストの確認」をクリックすると、期間指定やインスタンス、リージョン別等で可視化できる
[参考]
- コストのかかっているモジュールに関し、課金体系を確認する
→ 「モジュール名 pricing」(もしくは「モジュール名 料金」)で調べればヒットする
※「モジュール名」は対象のモジュール名に変更すること
[例] EC2 pricing
-
課金体系を参考に、各モジュールの削除手順を検索し、対応する
-
対象モジュールをすべて削除した後、丸1日おいて、コストエクスプローラーから合計コストが0になっていることを確認する
-
アカウントを解約する
[参考]
https://aws.amazon.com/jp/premiumsupport/knowledge-center/close-aws-account/
AWS Organizations
アカウントを閉じる前に、維持するアプリケーションとデータをバックアップし、残りのデータを削除してください。AWSリソースの使用料金を見積もることができます。アカウントに保存されたすべてのリソースおよびデータはすべて失われ、復旧できません。
アカウントを閉じてから 90 日間は (「Post-Closure Period (閉鎖後期間)」)、過去の請求を表示し、AWS Support にアクセスするためにログインできます。
[引用元]
それ以外
アカウントを解約した後も 90 日間はサインインでき、サポートケースの送信、または AWS Support へのお問い合わせが可能です。
90 日経過後、アカウントに残っている全コンテンツが完全に削除され、稼働中の AWS のサービスは終了されます。ただし、サービス属性は、請求および管理を目的として必要である限り保持される場合があります。AWS は、プライバシー規約に記載されている通りにお客様のアカウント情報を保持しています。
[引用元]
アカウントを解約することで、すべてのアクティブなリソースが自動的に終了するわけではありません。アカウントを解約した後でも、アクティブな一部のリソースに対して引き続き料金が発生する可能性があります。解約前に発生した使用料は、すべて請求されます。
アクティブな Marketplace サブスクリプションがある場合、これらのサブスクリプションはアカウント解約時に自動的にキャンセルされません。サブスクリプションでソフトウェアのすべてのインスタンスを終了し、AWS Marketplace コンソールの [サブスクリプションの管理] ページでサブスクリプションをキャンセルする必要があります。
アカウントを解約する前に、アクティブなリソースがあるかどうかを確認し、それらを終了することがベストプラクティスです。
[引用元]
AWS アカウントを閉鎖する際には、すべてのリソースを終了する必要があります。終了しないと、引き続き料金が発生する可能性があります。リソースのオンデマンド請求は、アカウントの閉鎖時に停止します。次のいずれかの理由により、アカウントを閉鎖した後に請求書を受け取る場合があります。
[引用元]
解約後期間を過ぎると、残りのコンテンツは AWS アカウント が削除され、使用中のサービスが終了されます。
アクティブなサブスクリプション (毎月支払うリザーブドインスタンスなど) がある場合は、アカウントの解約後でも、サブスクリプションの有効期限が切れるか、サブスクリプションに適用される条件に従って売却するまで、指定された支払い方法に従って引き続きサブスクリプションに課金される場合があります。これらの請求と払い戻しは、アカウントを閉鎖した後に発生することがあります。
また、アカウントを再開した場合、(アカウントの解約前に終了していなかった) AWS のサービスに対して解約後期間中の実行コストが請求される場合があります。
[引用元]
予想外の料金の回避
補足事項
AWS Organizationsを用いて作成したアカウントでも、それ以外(ルートユーザーとして作成したアカウント)でも、閉鎖から90日以内であれば再開可能

各種AWSモジュールの終了
EC2
ElastiCache
RDS
S3
①バケットの削除
②オブジェクトの削除ALB
①削除保護の解除
②Application Load Balancer の削除Config
①レコーダーを無効にする
※ルール数でなく、記録されたルール評価数に基づいて課金されるため、レコーダーをOFFにできればOK
②S3バケットの削除
レコードを保管していたS3バケットを削除する

CloudTrail
概要
- AWS アカウントのガバナンス、コンプライアンス、および運用とリスクの監査を行えるように支援する AWS のサービス
- ユーザー、ロール、または AWS のサービスによって実行されたアクションは、CloudTrail にイベントとして記録される
- ベントには、AWS Management Console、AWS Command Line Interface、および AWS SDK と API で実行されたアクションが含まれる
[参考]
TOP
ドキュメント

AWS Config
TOP
開始方法
→ 記録するリソースタイプや配信方法(配信先のS3バケット)などは左ペインの「設定」を選択すると見られる

S3
(1) EC2→S3のアクセス
最低限やること
①IAMへの作成とEC2へのアタッチ
- とりあえず「AmazonS3FullAccess」のロールを作成してアタッチしておく
[参考]
https://agohack.com/file-transfer-ec2-to-s3-via-vpc-endpoints/
→ ポリシーは設定しなくても、とりあえずアクセス&操作できる
(2) 特定のユーザーを使ってS3にアクセスする
①バケットポリシーの作成
- 1つのバケットに対するユーザーポリシーの作成方法
https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/example-policies-s3.html
②使用するユーザーにアタッチ
- 必要に応じて新規作成
③aws cliのインストールと設定
※Linuxへのaws cli2のインストール手順は以下の通り
→ インストール3番目のコマンドについて、必要に応じてupdateフラグをつける
$ sudo ./aws/install --update
[参考]
→ 日本で使うなら、以下のような感じかな?
$ aws configure
AWS Access Key ID [None]: [使用するユーザーのAccess Key ID ]
AWS Secret Access Key [None]: [使用するユーザーのSecret Access Key ]
Default region name [None]: ap-northeast-1
Default output format [None]: json
④S3バケットへのアクセス確認
→ テストファイルを1,2個アップロードしてから実行
$ aws s3 ls s3://[バケット名]/
※aws cli × S3でよく使うコマンド
(3) AthenaでS3のオブジェクトからデータを取り出す
- (2) に引き続いて実施
①チュートリアル?
②create tableの例
※csvの形式
※テーブルは作成されるが、0件の場合に確認したいこと
(4) AWSSDK for PHPで操作する
①PHPのインストール
→ remiを使用する場合は以下を参照
②composerのインストール
→ 今回、composerを使う
$ sudo composer require aws/aws-sdk-php
# もしくは
$ sudo php -d memory_limit=-1 composer require aws/aws-sdk-php
# aws sdk for phpのバージョン確認: 上記コマンドの実行場所にて
$ php composer show | grep "AWS SDK"
aws/aws-sdk-php 3.33.4 AWS SDK for PHP - Use Amazon Web Services in your PHP project
→ PHPのバージョンが5系だと、aws sdkは2系、8系だとaws sdkは3系が入るっぽい
aws sdkのバージョンが違うと以下のようなエラーになる
※AWS CLIで、複数アカウントのバケット操作をする場合は以下を参照
→ ~/.aws/credentials と ~/.aws/config への設定値書き込み & exportコマンドで設定変更する

CodeDeploy
appspec.ymlの書き方
パーミッション系

EC2のCPUクレジットについて