AWS関連のことを調べてみた

AWS関連のことを調べてみた
目次

AWS EventBridge での失敗と教訓

やらかしを教訓として残します

# 機能概要

– 契約しているクライアントさんに対して、メールを送信するAPIを作成
– そのAPIのエンドポイントをAPI送信先として登録
– EventBridge で毎月1日の8時に、登録したAPI送信先に対してリクエストを送信

# 起こったこと

該当のAPI送信先に10分間隔でリクエストが発生しており、クライアントさんに対してメールを送信し続ける事例が発生

## 無駄だった対応

デフォルトから設定変更をしていなかったため
再試行ポリシーの再試行回数が185に設定されていたのを0に変更

![スクリーンショット 2024-05-01 120159.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/76272/a6dc92ce-a0dc-a102-53cf-9a854779bd72.png)

どうやら設定変更前に発生したイベントに対して、新しい設定は反映されないようですね…

## 適切だった対応

該当の EventBridge を無効化して、登録していたA

元記事を表示

【AWS】AWSクラウドプラクティショナーに2ヶ月で合格した方法

# 初めに
2月半ばから2ヶ月ほどAWSクラウドプラクティショナーの勉強をして無事合格することができました。今回は備忘録としてどのように勉強したのかを書きます。

## 自己紹介
* エンジニア歴2年目
* 普段はフロントエンドメインの業務。たまにSQLやLinuxを触る
* AWSは勉強目的で自分のアカウントを持っている
* 昨年のアドベントカレンダーでAWSについて書く
* ただし実践経験は無く、AWSはほぼ未経験者

## 今回受験しようと決めた理由
AWSでの開発が増えてきていること、勉強することで今後携われる業務の幅が広がると思ったから

## 結果
先に結果を書くと800前半の点数を取ることができました。問題の感触としては4割はudemy等で見た(似たような)問題・5割は自分の知識で解ける問題・1割は少し考えさせられる問題だったと思います。

# 勉強方法
私は以下の順番で勉強を進めていきました。

1. インプット
2. 問題を解く
3. 実践する

## インプット
インプットに時間をかけすぎると知識が定着しにくいため、インプットはアドベントカレンダーと勉強始めた2週間

元記事を表示

AWS Amplifyで接続しているレポジトリを変更する方法

# はじめに

タイトル通りのことをやろうと思ってもなかなか実現したいことにたどり着かなかったので備忘録として書き留めておきます。

# レポジトリの接続を切り替える

コンソールからは現時点(2024/05/01)では変更できません。AWS CLIを使えば一発で変更できます。

## CodeCommitの場合

変更に必要なのは、Amplfyの `appId` と `レポジトリURL` の2つです。
appIDを取得するには次のコマンドを実行します。

“`sh
aws amplify list-apps
“`

あとは変更先のレポジトリURLを指定すれば変更完了します。appIdとレポジトリURLをhttpsで指定すればOK。

“`sh
aws amplify update-app –app-id [取得したappId] –repository https://git-codecommit.xxx.amazonaws.com/xxxx
“`

## Githubの場合

下記のサイトを参考にされるとよいでしょう。

https://zenn.dev/itoudium

元記事を表示

追加検証: VMware Cloud on AWS M7i インスタンス & FSxN (VPC Peering) ウォークスルー

# 1. はじめに

とうとうVMware Cloud on AWS M7iインスタンスが提供開始されたということで、デプロイしてみました。
仮想マシンの作成、HCXのデプロイ、FSxNの別SDDCへの付け替えなども追加で試してみました。

https://aws.amazon.com/jp/about-aws/whats-new/2024/02/amazon-ec2-m7i-metal-24xl-instance-vmware-cloud-aws/

VMware Cloud on AWS M7i インスタンスをデプロイしたので、コンソールから見えてきた様子などを備忘録として残します。

![Arch_M7i_FSxN_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864151/12478c6a-3726-4615-19c2-988156a8b37d.png)

:::note warn
2024年4月1日現在、VMware Cloud on AWS M7iインスタンスを利用できるのは、米国東部

元記事を表示

MFA必須化を機に、AWSアカウントを閉鎖(解約)した

# はじめに
2024年より、ルートユーザーからAWSアカウントへログインする場合、MFAの設定が必須となりました。
そもそも、利用しないAWSアカウントが存在したため、これを機に閉鎖(解約)を実施しました。
https://aws.amazon.com/jp/blogs/security/security-by-design-aws-to-enhance-mfa-requirements-in-2024/

# 解約方法
– 「アカウント」をクリック

![スクリーンショット 2024-05-01 9.05.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263017/e3835be3-5c93-c07f-0b1f-8246f405453b.png)

– 「アカウントを閉鎖」をクリック

![スクリーンショット 2024-05-01 9.09.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/263017/

元記事を表示

【バージョンマネージャ】asdfが便利すぎる

## はじめに
**asdf**というバージョンマネージャがめちゃくちゃ便利なので紹介します。

https://asdf-vm.com/

**`pyenv`とか`nodenv`とか、言語ごとのバージョンマネージャ入れるの面倒だよ〜〜ん**
って人におすすめです。
asdf単体でさまざまなパッケージのインストール〜バージョン管理が行えます。

asdfの使った感じ

“`sh
$ asdf plugin add python
$ asdf install python latest
$ asdf local python latest
$ python -V
Python 3.12.3

$ asdf install python 3.9.9
$ asdf local python 3.9.9
$ python -V
Python 3.9.9

$ asdf list python
3.12.3
*3.9.9
“`

## 目次
[1. インストール](#1-インストール)
[2. pluginの追加

元記事を表示

21日目 Lambdaについてまとめてみる社畜S

## 🎏はじめに
こんにちは、ローテが一巡して順番が回ってきました、三週間ぶりの社畜Sです。
現在、私たち社畜SMLの3人は
#### 「AWS Certified Solutions Architect – Associate(通称SAA)」
の合格を目指して勉強を続けています。
というわけで、今回のローテではSAAの学習成果のアウトプットも兼ねて
#### 「AWSのサービスを初心者目線でまとめてみた。」
をテーマに書いていこうと思います!
まずは私、社畜Sが初回を飾り **AWS Lambda** についてまとめていきます!
初心者の視点からの解説ですので、間違いなどがあればコメントで指摘していただけると幸いです。
それではやっていきましょう!


## 🎏そもそもLambdaって何?

公式の開発者ガイドでは
>AWS Lambda はサーバーのプロビジョニングや管理をする必要がなく、コードを実行できるコンピューティングサービスです。
>>Lambda は可用性の高いコンピューティングインフラストラクチャでコードを実行し、コンピューティン

元記事を表示

AWS Lambda/SNSを連携し、メール通知を行ってみる[01]

こんにちは。
株式会社クラスアクト インフラストラクチャ事業部の大塚です。

今回はAWS LambdaとSNS(Simple Notification Service)を使ってメール通知機能を実装してみたいと思います。

# 最終的に構築するイメージ
何回かに分けて、以下の環境をつくっていきたいと考えております。
Cloud9で作ったDjango環境でS3にアップロードするようなWebページを作成。
ユーザはそれを使ってS3にデータをアップロードすると、S3がイベント通知をSQSに行い、SQSがLambdaをキック。LambdaがSNSを呼び出して登録したメールアドレスにメールを送付します。
![aws-django01-ページ6.drawio.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/426843a2-5d28-7283-96dc-22fb1cbe3e34.png)

この記事ではLambdaとSNSだけ環境を構築していきます。

# 構築
## SNS
AWS管理コンソールにロ

元記事を表示

AWSでNATゲートウェイがこんなにも高額だと思っていなくて涙目

会社や組織でAWSを運用して、使っている人は多いと思いますが個人でシンプルな踏み台だけを設置して運用している人もいるかと思います。

私もその一人なのですが、「最近なんかAWSの請求が高いな?」と思って請求書をみたのですが

1.1万円!さすがに円安とはいえ、t2.microしか使ってないのに、なんでこんなに高いの?
たしかにt2.microの無料期間は終わっているとは思うけど高すぎじゃね?

| 私の24年3月の請求額|
| :–:|
| |

使っているインスタンスは以下の1つのみ

| key | value|
| :–:|:–:|
| instance | t2.micro |
| disk | 30 GiB (gp2) |

なのに、そんなに高いはずはない!
というので、ちゃんと`Billing and Cost

元記事を表示

Agents for Amazon Bedrock の「Return of Control」機能の可能性を考察する

# はじめに
2024/4/23のAmazon Bedrock (AWSの生成AIプラットフォームサービス) のアップデートでは「Agents for Amazon Bedrock」の新機能として **「Return of control」(ROC)** が発表されました。

当記事は、このROCの本質を紐解き、有益な活用法を導くことを目的として執筆したものです。

なお、ROCを理解するために、以前の記事で紹介したAgentsの実装例との動作の違いに着目しています。
以下の記事は、最も簡単なAgentsの実装例として比較的容易に理解できると思われますので、まず目を通していただくことを推奨します。

**「Agents for Amazon BedrockでWeb上のブログやニュースを要約する」**
https://qiita.com/nasuvitz/items/c34419150eaee78544cc

# Return of controlとは?
ROCを理解するために、まずは公式の解説を紐解いていきます。

## 原文
> Return of control – You ca

元記事を表示

Amazon ECRのプライベートレジストリのDockerイメージのローカルでのPull/Push

## 概要
CodeBuildでビルドされているDockerイメージをローカルにPULLしたかった時の備忘録です。

## 結論
これだけです。ECRでログイン用のTokenを発行できます。12時間有効です。

“`shell
$ aws ecr get-login-password –region region | docker login –username AWS –password-stdin aws_account_id.dkr.ecr.region.amazonaws.com
$ docker pull aws_account_id.dkr.ecr.us-west-2.amazonaws.com/repository:tag
“`

https://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/sample-docker-section.html

ちなみに、CodeBuild で Docker Image をビルドする手順にもありますね。

“`yml
version: 0.2

phases:

元記事を表示

.aws/configと.aws/credentials確認しつつ、AssumeRoleを理解する

# 概要
今の会社ではAzureADでのSSOをIDプロバイダーとして利用してAWSを利用しています。その際、AdminやDeveloper権限を選択してコンソールにログインしています。
ここら辺があんまりきちんと理解できていないと感じたので、ドキュメントを読んで理解しようがモチベーションです。

今回見ていくページ

https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-configure-files.html

# 認証方法
## IAM Identity Center (SSO)

“`.aws/config
[default]
sso_session = my-sso
sso_account_id = 111122223333
sso_role_name = readOnly
region = us-west-2
output = text

[profile user1]
sso_session = my-sso
sso_account_id = 444455556666
sso_role_name = rea

元記事を表示

AWS CodeBuild でローカルビルドを通すようにした

## TL;DR

ひとまずこれで疎通できるようなイメージを作り、ビルダーイメージを差し替えてビルドする。
根本解決はAmazon様の`codebuild/local-builds`のイメージ更新待ち。

“`Dockerfile filename: Dockerfile
FROM public.ecr.aws/codebuild/local-builds:latest

RUN <

元記事を表示

Python 3.12で増えた並列処理と、これまでの並列処理の挙動を比べてみる

# この記事ですることを3行で

– Pythonの標準ライブラリでできる並列実行を、あらためて総当たりで速度比較しよう
– ウォーターフォールチャートで、それぞれの並列処理の処理時間の特徴を可視化しよう
– boto3の実行をモデルケースにして、どの並列処理が一番早いのかを調べよう

# この記事の結論を先に

– **Python 3.12から本格的に使えるようになったサブインタープリターは、CPUで実行する処理について言えば、従来のサブプロセスよりも高速**
 
– **boto3の実行は、サブインタープリターよりも署名付きURLの非同期実行のほうが速い**
→ S3からの10ファイルの取得であれば、実行時間を90%削減できます
→ Bedrockの3回実行であれば、実行時間を60%削減できます

今回使ったソースコードはこちらに置いています。
お手持ちの環境で再実行できるようにしていますので、気になる方はぜひ。

https://github.com/ShotaOki/speedtest-python

# どうしてこの記事を書くのか

2020年の10月に、「Fast

元記事を表示

AWS EventBridgeスケジューラが便利すぎた!

## 概要

AWSを使っていたら、いつの間にかEventBridgeにスケジューラという機能が追加されていたので、使ってみたら便利すぎたって話!

2022年末にリリースされていたみたいです。

## EventBridgeスケジューラとは

EventBridgeスケジューラとは、定期的なイベントを、自動的にトリガーするためのサービスです。「毎日」「何時間ごと」など、時間に依存したタスクを事前にスケジューリングすることで、タスクを自動で管理することができます。スケジュールは、cron式、あるいはレート式を使用しておこなします。スケジューラを使用することで、手動でタスクを管理するときに生じる人為的なミスを防ぎ、簡単にタスクを管理することができます。

## EventBridgeルールとの違い

EventBridgeルールは、イベントパターンやスケジュールに基づいてタスクを管理する機能です。EventBridgeスケジューラは、EventBridgeの機能のひとつで、スケジュールに基づくタスク管理に特化しています。

EventBridgeルールと比較して、扱えるAWSリソースが多

元記事を表示

【AWS】CLIでスイッチロールする際MFA認証を強制する方法

## 前置き
コンソールからログインする際、MFA認証をするよう設定しているのですが、
CLIからアクセスする際、コンソールに合わせてMFA認証を強制した場合、
スイッチロールする時のコマンド分からなかったので調べてみました。

## 前提条件
・IAMの多要素認証(MFA)でデバイスの割り当てが完了していること
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3522793/92a04597-05df-1bc0-63c7-bdcbf4b69c63.png)
・AWS CLIがローカルPCにインストール済みであること
(以下のコマンドで確認。バージョンが表示されればインストール済み。)
“`ターミナル
aws –version
“`

## 設定方法
1. まずはスイッチロールの設定から。スイッチロール先(アカウントBとする)のIAMで
ロールを作成します。許可ポリシーは任意で設定してください。
![image.png](https://qiita-image-store.s3.ap

元記事を表示

【AWS】デフォルトセキュリティグループのインバウンドトラフィックとアウトバウンドトラフィックを許可しないようにする対応[EC2.2]

# はじめに
[**AWS Foundational Technical Review (FTR)**](https://aws.amazon.com/jp/partners/foundational-technical-review/)の評価の一つに、

**[EC2.2] VPC のデフォルトのセキュリティグループでは、インバウンドトラフィックとアウトバウンドトラフィックを許可しないようにする必要があります**

という項目があり、その対応を行ったのでやったことをまとめてみました。

参考

https://docs.aws.amazon.com/ja_jp/securityhub/latest/userguide/ec2-controls.html#ec2-2

https://dev.classmethod.jp/articles/securityhub-fsbp-remediation-ec2-2/

## 今回の記事の対象者
– 同じ対応を行いたい方
– セキュリティ強化をベストプラクティスに沿って進めたい方

# ざっくりと
ここで全体の流れを書いておきます

1.

元記事を表示

サンプルコードで理解する Agents for Amazon Bedrock の Return of Control

## はじめに
Agents for Amazon Bedrock の Return of Control は 2024/4/23 のアップデートで新たに利用できるようになった機能です。

https://aws.amazon.com/jp/about-aws/whats-new/2024/04/amazon-bedrock-agents-agent-creation-return-control-capability/

https://aws.amazon.com/jp/blogs/aws/agents-for-amazon-bedrock-introducing-a-simplified-creation-and-configuration-experience/

Return of Control は AWS Lambda 関数の使用をスキップし、エージェントを呼び出すアプリケーションに制御を返すことができる機能です。これにより Lambda 関数を使用しなくとも外部との連携ができるエージェントを作成できます。

非同期に並列処理を行いたい場合や Lambda 関数の 15

元記事を表示

複数のEBSボリュームをEC2にアタッチした結果、消し忘れで7ドル課金されました

### はじめに
本記事は、AWSでEBSを消し忘れて無料枠を超えてしまい、7ドルも課金されてしまった失敗談です。
EBSの消し忘れで課金させるのは、AWS初心者あるあるだと思いますが、今回はEC2に複数のEBSをアタッチしたパターンなので、記事にします。

![AWSを学ぶ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1851421/e27f1c64-c69f-3468-34b8-2e01de28b4ce.png)

### よくある失敗
まずは、AWSのEBSの課金体系とそれにまつわる失敗について簡単に解説しておきます。EBSは、EC2のストレージです。EC2起動時にEBSをアタッチすると思いますが、EBSにも課金されます。また、EC2を停止しているとき、EC2には課金されませんが、EBSは課金対象となります(EBSは削除するまで、課金されます)
詳しくは、AWSの公式ドキュメントを参照してください。
https://repost.aws/ja/knowledge-center/ebs-vol

元記事を表示

【Amazon S3】ライフサイクルルールの更新タイミングには注意しよう

## きっかけ
ライフサイクルルールの動作確認をしていた際、あれれと思ったことがあったので後学のために書き残します。

## ライフサイクルルールとは
Amazon S3 がオブジェクトのグループに適用するアクションを定義するルールのセットです。具体的には、次の 2 種類のアクションがあります。
* 移行アクション
別のストレージクラスにオブジェクトを移行するタイミングを定義します。
>ex.作成から30 日後に S3 標準 – IA ストレージクラスにオブジェクトを移行し、作成から 1 年後に S3 Glacier Deep Archiveストレージクラスにオブジェクトをアーカイブする
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3691986/bebb60bf-b890-7058-87d8-363b24b33a97.png)
![image.png](https://qiita-image-store.s3.ap-northea

元記事を表示

OTHERカテゴリの最新記事