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

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

aws cliを使用してALBをオリジンとしたCloudFront Distributionを作成する

CLIでCloudFrontを使用する要件なんてなかなかないかなと思いつつも、ネット上に記事が少ないのでここに記します。

# 作成されるリソース
– ALBをオリジンとしたCloudFront Distribution

# CLIで構築
“`shell
aws cloudfront create-distribution –distribution-config file://dist-config.json
“`

“`json:dist-config.json
{
“CallerReference”: “alb-example”,
“Aliases”: {
“Quantity”: 0
},
“DefaultRootObject”: “”,
“Origins”: {
“Quantity”: 1,
“Items”: [
{
“Id”: “alb”,
“DomainName”: “example.reg

元記事を表示

CDKで作るALB+EC2の構成(Typescript)

# はじめに
今回はAWS CDKを使ってAWS上にリソースをデプロイする検証をしたので、その内容をご紹介します。この検証では以下のようなリソースを払い出すCDKアプリケーションを**Typescript**の言語で書いてみました。

![test2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3804767/43241154-074f-a81b-e5c4-ea733241d1d2.jpeg)

使用したコードエディタはVS Codeです。以下から入手することができます。

https://code.visualstudio.com/

# CDKとは
そもそもAWS CDKとはどんなものなのでしょうか。[AWS公式ドキュメント](https://docs.aws.amazon.com/ja_jp/cdk/v2/guide/home.html)には以下の説明が記載されています。
>AWS Cloud Development Kit (AWS CDK) は、 AWS CloudFormationクラウド

元記事を表示

【AWS-SAA勉強記】第4回_Amazon VPC編

この記事は作者本人がAWS-SAAの学習を通じて、曖昧や覚えづらい部分をサービス単位でまとめたものです。
特に、概要だけではイメージがわきづらいので、できるだけユースケースを活用して理解しやすいようにしています。
教材はSHOEISHAの[AWS教科書 AWS認定ソリューションアーキテクトアソシエイト テキスト&問題集](https://www.amazon.co.jp/AWS%E6%95%99%E7%A7%91%E6%9B%B8-AWS%E8%AA%8D%E5%AE%9A%E3%82%BD%E3%83%AA%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%88%E3%82%A2%E3%82%BD%E3%82%B7%E3%82%A8%E3%82%A4%E3%83%88-%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%EF%BC%86%E5%95%8F%E9%A1%8C%E9%9B%86-%E7%85%A4%E7%94%

元記事を表示

CDKPipelineで実装したパイプラインにスナップショットテストの工程を追加する

# 完成物
前回までの記事で書いたパイプラインにスナップショットテストの工程を追加したいと思います

https://qiita.com/hosomatu/items/1afb4c4dc01da1707abd

![Qiita Image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3480176/540dc042-8940-94f2-365d-111c4fb6c7e6.png)

実現させたい動きとしては
1. ローカルでスナップショットを実行して内容に問題がなかったら’npm test — -u’で更新する
2. 変更をmainにプッシュ
3. GitHubActionsによってS3にソースコードをアップロード
4. S3の変更をトリガーとしてパイプライン起動
5. **Buildの部分でテストを実行。1の工程を忘れていたらデプロイさせないようにする**
6. テストが通ったらデプロイ実行

## 実際のコード

公式を見ると「テストステージ」として追加する機能としてはなさそうだったので、既存

元記事を表示

【Lambda】pythonの画像処理ライブラリのPillowをインポートするのに手間取った話

どうもこんにちは。

今回は、AWS Lambdaを使用してPillowをインポートしようとした時につまづいたのでメモしておきます。

# Pillowってなに?

そもそもPillowって何って話ですが、以下の記事にはこのように記載されていました。

> OpenCVのようにコンピュータービジョン系の高度な画像処理(顔検出やオプティカルフローなど)はできないが、リサイズ(拡大・縮小)や回転、トリミング(部分切り出し)のような単純な処理が簡単にできる。

https://note.nkmk.me/python-pillow-basic/

ほうほう…

今回は、base64エンコードされた画像データをバイナリデータに変換し、さらにバイナリデータから画像を読み込んで画像オブジェクトに変換してS3に保存するというなんともめんどくさい処理をする必要があるので、Pillowを使用しています。

“`python
# 画像生成試してます
response = bedrock_runtime.invoke_model(
body=body,
modelId=”amazon.t

元記事を表示

AWS Amplifyで私用の家計管理アプリを開発して運用している話

# はじめに
こんにちは。

この記事では、私がAWS Amplify(以下Amplifyと呼びます)を利用して開発・運用している家計管理アプリを紹介します。
このアプリについては過去に勉強会でネタにしたことがありますが、本記事はこの登壇資料をより詳細に記述したものになります。

:::note warn
このアプリは個人開発アプリであり、商用利用は想定していません。あくまで私と私の家族だけが利用することを想定しています。
:::

# 想定読者
– Webアプリケーションを使って課題解決を行いたい方
– Amplifyについて聞いたことはあるが詳細まで知らない方
– AWSリソースを利用してWebアプリケーションを手軽に開発したい方
– アプリの知識はあるがインフラの知識に自信がない方
# 我が家の家計管理の課題
「我が家の課題:家族間における立替精算のやりとりをなくしたい」

私は妻とよく立替精算の会

元記事を表示

Nitricの機能と利点:クラウドアプリケーション開発を革新する統合フレームワーク

## はじめに

クラウドアプリケーション開発の世界で、効率性と柔軟性を両立させることは常に課題でした。そんな中、Nitricは開発者とオペレーションチームの架け橋となる画期的なソリューションとして登場しました。本記事では、Nitricの特徴や機能、そしてそれがもたらす利点について詳しく解説します。

## Nitricとは

Nitricは、クラウドアプリケーション開発のためのオープンソースフレームワークです。複数の言語に対応し、インフラストラクチャの自動化によってボイラープレートコードを削減し、環境間のドリフトを防止します。さらに、AWS、Google Cloud、Microsoft Azureなど、主要なクラウドプロバイダー間でアプリケーションの移植性を実現します。

## Nitricの主要コンポーネント

Nitricは以下の主要コンポーネントから構成されています:

1. **CLI(コマンドラインインターフェース)**: 新規プロジェクトの作成、ローカル開発環境の実行、クラウドへのデプロイなど、Nitricとのインタラクションの主要ツールです。

2. **Nitricサ

元記事を表示

AWS LambdaでHIPHOPを配信するLINEbotをつくる

AWSの勉強のために、AWS Lambda+LINEのMessaging API+spotifyAPIでおすすめのHIPHOPを配信するLINEbotを作成しました。

AWS、Messaging API、spotifyAPIのいずれも触ったことがない状態からのスタートでしたが、形にすることができたので開発の方法を紹介していきたいと思います。

## 1.完成したもの
まずは今回開発したプロダクト(?)を紹介します。
開発したのはLINEの公式アカウントで、何かしらのテキストを送信すると曲のアーティスト名、曲名、spotifyのURLが返ってくるというものです。

送信される曲は、プレイリストの中からランダムで選択されています。

処理の全体の流れは以下のようになります。
1.ユーザーがLINE公式アカウントにメッセージを

元記事を表示

AWS Lightsailのはじめかた~インスタンスの作成とSSH接続~

# やったこと
AWSのLightsailを使って、UbuntuにSSH接続するところまでやってみました。

# 環境
* Amazon Lightsail
* Ubuntu 22.04 LTS
* RLogin

# 手順
1. AWSにログインしてLightsailを検索する
![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454725/88a051c9-9bc5-bb6f-efef-0a9e5fa12a4b.png)
1. インスタンスの作成をクリック
![2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454725/91557873-2819-10a7-878a-b11577782aa0.png)
1. とりあえずOS(Ubuntu)のみ
![3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454725/5d8d21f7

元記事を表示

Serverless FrameworkのデプロイがAccesDeniedになる時、チェックする点

sls deployを実行するとき、AccessDeniedでつまづく現象をしばしば目撃していたのでチェックするべき点をまとめました。
デプロイに必要なアクションはSls公式に載っているので割愛。

1.Deploymentbucketの名称は適切か
→たまにタイポがあったりする

2.バケットポリシー、IAMロールの権限は適切か
→IAMロールだけでなくS3バケットポリシーの設定も必要。

3.slsコマンドを実行したマシンのロールは適切か
→ローカルならデフォルトのロール、ECSやCode Build等のコンテナならアタッチされたロールに関連したポリシーがついていることを確認する

4.デプロイ先のバケットでKMSキーを使っている場合、キーポリシーは適切か
→デプロイにもキーポリシーが必要

他に思いついたら書き足していく

元記事を表示

CDKPipelineを用いてS3バケットをソースとしたパイプラインを構築する

# 完成物

![Pipeline drawio.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3480176/e8e8f5e9-6513-bc28-a64c-426e85f1616e.png)

下記の記事で左側のOIDC認証のフローを作成したので、今回は右側のパイプラン部分の備忘録となります。

https://qiita.com/hosomatu/items/7f32416048bd3a0e1b99

# CDKPipelineとはざっくり

私の主観を含んだ感じで言うと
**「CodePipelineとCodeBuildなどのパターンを用意してくれたL3のようなコンストラクトライブラリ」**
です

CodePipeline用のモジュールが
aws-cdk-lib.aws_codepipelineという立ち位置にあるモジュールなのに対して

https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_codepipeline-read

元記事を表示

【AWS】Lambdaを使ってRDSのdumpファイルをS3に保存する

以下の手順で、LambdaとRDSを同一VPCに配置し、S3にデータベースのdumpファイルを保存する環境を構築します。

## 前提条件

– AWS CLIがインストールされ、適切に設定されていること(バージョン2.0以上推奨)
– Terraformがインストールされていること(バージョン1.0以上推奨)
– Python 3.8以上がインストールされていること(Lambda関数の開発用)

## 手順

### VPCの設定

既存のVPCを使用するか、新しいVPCを作成します。VPCには少なくとも2つのサブネット(プライベートサブネット)が必要です。

Terraformを使用してVPCを作成する例:

“`
resource “aws_vpc” “main” {
cidr_block = “10.0.0.0/16”

tags = {
Name = “main-vpc”
}
}

resource “aws_subnet” “private_1” {
vpc_id = aws_vpc.main.id
cidr_block = “10

元記事を表示

AWS SESはバウンスレート10%以下 苦情レート0.1%以下に抑えないとアカウントが一時停止される可能性がある

## 概要

SESはSESを使ってイケてないメールをたくさん送ってしまうと一時的に利用停止されたり、ヒアリングが行われることがある。
この「イケてないメール」を送信しているかどうかは下記の情報のどちらかに抵触しているかで判断される

– バウンス(メールが届かない)率がAWSが定めるしきい値に達している場合
– 苦情(ユーザーが迷惑メールと判断してアクションを起こした)率がAWSが定めるしきい値に達している場合

ようは届かない相手にメールをたくさん送ってしまったり(バウンス)、スパムのような内容のメールを送ってしまう(苦情)と利用停止される可能性があるということ。

## 詳細

では、2024年8月現在のバウンスレート・苦情レートはいくつになると一時的に利用停止される可能性があるのだろうか。公式ドキュメントの内容を引用する。

| 項目 | レート(%) |
| — | — |
| バウンス | 10 |
| 苦情 | 0.1 |

内容を引用する

>アカウントのバウンス率が 10% を超えた場合、当社はお客様のアカウントによる E メール送信機能を一時的に停止すること

元記事を表示

【AWS-SAA勉強記】第3回_Amazon FSx編

この記事は作者本人がAWS-SAAの学習を通じて、曖昧や覚えづらい部分をサービス単位でまとめたものです。
特に、概要だけではイメージがわきづらいので、できるだけユースケースを活用して理解しやすいようにしています。
教材はSHOEISHAの[AWS教科書 AWS認定ソリューションアーキテクトアソシエイト テキスト&問題集](https://www.amazon.co.jp/AWS%E6%95%99%E7%A7%91%E6%9B%B8-AWS%E8%AA%8D%E5%AE%9A%E3%82%BD%E3%83%AA%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%88%E3%82%A2%E3%82%BD%E3%82%B7%E3%82%A8%E3%82%A4%E3%83%88-%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%EF%BC%86%E5%95%8F%E9%A1%8C%E9%9B%86-%E7%85%A4%E7%94%

元記事を表示

【AWS-SAA勉強記】第2回_Amazon S3編

この記事は作者本人がAWS-SAAの学習を通じて、曖昧や覚えづらい部分をサービス単位でまとめたものです。
特に、概要だけではイメージがわきづらいので、できるだけユースケースを活用して理解しやすいようにしています。
教材はSHOEISHAの[AWS教科書 AWS認定ソリューションアーキテクトアソシエイト テキスト&問題集](https://www.amazon.co.jp/AWS%E6%95%99%E7%A7%91%E6%9B%B8-AWS%E8%AA%8D%E5%AE%9A%E3%82%BD%E3%83%AA%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%88%E3%82%A2%E3%82%BD%E3%82%B7%E3%82%A8%E3%82%A4%E3%83%88-%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%EF%BC%86%E5%95%8F%E9%A1%8C%E9%9B%86-%E7%85%A4%E7%94%

元記事を表示

S3へのアップロードが無料だと思ってたら意外なところで課金された話

## はじめに
S3へのアップロードって確か無料だよねぇ、EC2のデータを日時バックアップしちゃえ。
と思って構築してたらめっちゃ課金されてしまった話です。

### まずはこちらを・・・
ご覧ください。一目瞭然、やっちまってます・・・。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1980545/50f73365-0a10-26d8-4157-ad521401f1b1.png)

### ザ・原因
すぐに原因調査です。こちらの記事を参考にさせていただきました。(感謝!)
[EC2からS3へアクセスする4つのルートとコスト](https://tech.nri-net.com/entry/access_routes_from_EC2_to_S3)
ざっくりまとめるとこんな感じです↓↓
(1)Internet Gateway→無料
(2)NAT Gateway→有料
(3)VPC Endpoint(Gatewayタイプ)→無料
(4)PrivateLink(Interfaceタイプ)→有料

元記事を表示

元 Azure エンジニア視点で気になった Amazon EKS の特徴

下記の特徴ドキュメントから、Azure Kubernetes Service (AKS) と比較して Amazon Elastic Kubernetes Service (Amazon EKS) について気になった部分を記載します。

https://aws.amazon.com/jp/eks/features/

## AKS と同様の機能

### コントロールプレーンの自動管理

マネージドなクラスタなので当然ではあると思いますが、下記の記載がありましたのでコントロールプレーンは自動管理されます。

> Amazon EKS は、Kubernetes API サーバーと etcd 永続レイヤーの可用性とスケーラビリティを自動的に管理します。

### クラスターのインプレースアップデート

クラスターの Kubernetes のバージョンを上げる手段もあります。

> Amazon EKS は、アップデート作業を管理することなく、実行中のクラスターを、最新バージョンの Kubernetes に簡単にアップデートできます。Kubernetes バージョンのアップデートはインプレース

元記事を表示

超AWS初学者向け Amazon Route 53 ホストゾーン解説

## はじめに
この記事では、AWS初心者の方向けにAmazon Route 53 ホストゾーンの基本的な機能について解説します。
Amazon Route 53 は、AWSが提供するDNSサービスで、ウェブサイトやアプリケーションへのアクセスを管理する重要な役割を担います。

### ドメイン登録と移管

Amazon Route 53では、ドメインの登録や移管が可能です。ドメインの登録には、汎用トップレベルドメイン (例:.com, .net) や地理的トップレベルドメイン (例:.jp, .de) の2種類があります。既存のドメインをAmazon Route 53に移管する場合は、ネームサーバーの変更が必要です。移管の手順は、AWSのドキュメントを参照してください。
![AWS-Black-Belt_2023_AmazonRoute53-hostedZone_0531_V1-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/102361/1a69fae5-8cd4-4553-a810-198c2

元記事を表示

AWS SAA-C03に約2週間で合格しました

– AWSのSAA試験に合格したので、勉強法や参考になりそうな情報をまとめます

## 前提
– 本格的に勉強を始めてから約2週間で合格はできましたが、まだまだ理解不足のところがありますし、ある程度の前提知識があった上でのことでしたので、あくまで受験の参考程度にしていただけたらと思います!

## 自分の知識レベル
– 普段の業務ではサーバーレスアプリケーションを開発しており、AWSのサービスも触ることが多い(経験年数は1年くらい)
– 逆に言うと業務で触っていないサービス(EC2やECS、Route53などなど)への理解は不足していることが多い
– しかし、普段からAWSのサービスについてドキュメントを読んだり、調べたりすることもあるので、利用していないサービスに対してもざっくりとした理解はある(何を実現するサービスか、他のこのサービスに似ているもの、くらいの理解)
– [AWS Certified Cloud Practitioner(CLF-C02)](https://aws.amazon.com/jp/certification/certified-cloud-practiti

元記事を表示

【AWS-SAA勉強記】第1回_EC2/EC2 Auto Scaling編

この記事は作者本人がAWS-SAAの学習を通じて、曖昧や覚えづらい部分をサービス単位でまとめたものです。
特に、概要だけではイメージがわきづらいので、できるだけユースケースを活用して理解しやすいようにしています。
教材はSHOEISHAの[AWS教科書 AWS認定ソリューションアーキテクトアソシエイト テキスト&問題集](https://www.amazon.co.jp/AWS%E6%95%99%E7%A7%91%E6%9B%B8-AWS%E8%AA%8D%E5%AE%9A%E3%82%BD%E3%83%AA%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%88%E3%82%A2%E3%82%BD%E3%82%B7%E3%82%A8%E3%82%A4%E3%83%88-%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%EF%BC%86%E5%95%8F%E9%A1%8C%E9%9B%86-%E7%85%A4%E7%94%

元記事を表示

OTHERカテゴリの最新記事