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

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

旧世代のDB インスタンスが廃止されるようです

# こんなタイトルのメール届いていませんか?
`[通知] RDS MySQL、MariaDB、および PostgreSQL 上の M4、R4、T2 DB インスタンスの廃止予定について`
– メールタイトルを一部抜粋していますが、こんなタイトルのメールが数通届きました

# メールを読んでみる
– メールのタイトル通りですが、M4/R4/T2 の旧DB インスタンスが2024/5/31 で廃止され、6/1 以降でM5/R5/T5 へそれぞれDB インスタンスタイプが変更されるようです
– 正確な移行日はわからないようですが、おそらく6/1 以降の次のメンテナンスウィンドウで移行されるのではと考えています
– 対象DB エンジン:
– Amazon RDS for MySQL
– Amazon RDS for MariaDB
– Amazon RDS for PostgreSQL
* Aurora などは対象外のようです
– 移行先:
– M4 -> M5
– R4 -> R5
– T2 -> T3
– 移行先にDB インス

元記事を表示

AWS Step Functions で人による承諾まで待機する方法を試してみた

# はじめに
この記事では AWS Step Functions 内で他のサービスと統合し、人による承諾までワークフローを待機させる方法を紹介します。

# ワークフローの待機について
AWS Step Functions内で `.waitForTaskToken` を使用することでコールバックが返されるまでワークフローを待機させることができます[^1]。

[^1]: [タスクトークンのコールバックまで待機する](https://docs.aws.amazon.com/ja_jp/step-functions/latest/dg/connect-to-resource.html#connect-wait-token)

# 試してみる
公式ドキュメントに [人間による承諾プロジェクト例をデプロイする](https://docs.aws.amazon.com/ja_jp/step-functions/latest/dg/tutorial-human-approval.html) があるので実施してみます。開発者ガイドに実行可能なテンプレートが整備されているのは便利ですね。

##

元記事を表示

Terraform importを利用してAWSリソース(AWS Config)を削除してみた

# はじめに
terraform importコマンドを使ったことがなかったので、使ってみます。

マネジメントコンソール上で作成したリソースを、import後、destroyしてみようとおもいます。

## やってみた

### 1. 作業ディレクトリとtfファイルを準備する
tfファイルのセットアップを行います。

“`
import-test/
├── main.tf
├── config.tf
└── variables.tf
“`

main.tfを適当に用意します。

“`main.tf
############################################################################
## terraformブロック
############################################################################
terraform {
# Terraformのバージョン指定
required_version = “~> 1.7.0”

# Te

元記事を表示

CloudFront を利用して AWS のパブリック IPv4 アドレス課金を回避する…のは今のところ無理だった

:::note alert
2024年4月時点では、この方法でパブリック IPv4 アドレス課金を**回避することはできない。**
ただし、将来この方法が使えるようになる可能性はある。
:::

:::note warn
記事中の情報は執筆時点のものである。
重要な決定や操作を行う前は、最新情報を確認することを推奨する。
:::

2024年2月、AWS におけるパブリック IPv4 アドレスが無条件で有料化された。

[新着情報 – パブリック IPv4 アドレスの利用に対する新しい料金体系を発表 / Amazon VPC IP Address Manager が Public IP Insights の提供を開始 | Amazon Web Services ブログ](https://aws.amazon.com/jp/blogs/news/new-aws-public-ipv4-address-charge-public-ip-insights/)

そこで、EC2 でインスタンスにパブリック IPv4 アドレスを割り当てない状態でのWebサーバーの公開を試みた。

以下、AWS

元記事を表示

DevelopersIO AWS入門ブログリレー2024

[Developers IO](https://dev.classmethod.jp/)の[AWS入門ブログリレー2024](https://dev.classmethod.jp/search?q=AWS%E5%85%A5%E9%96%80%E3%83%96%E3%83%AD%E3%82%B0%E3%83%AA%E3%83%AC%E3%83%BC2024&page=1)があまりにもよいので、自分のメモ代わりにリンク集作りました。ありがとうございます。

| Day | Title |
|—–|————————————————————————————————–

元記事を表示

本当のAWS基礎 昭和~平成~令和の時代の変遷システムの変化と今昔物語

# 内容
社内でAWS知らない人でもこれだけは覚えていてほしいという動画を作成して欲しいとリクエストあり。その内容を資料化したものです。小学生の子供に説明してみましたがになんとなくAWSが分かったと言っていたので今回は結構分かりやすくまとめられたと思います。

# システムを構築する時
システムを構築する際、サーバやネットワークなどのインフラが必要になります。昭和の時代は物理サーバを買ってきてラックマウントしてネットワークに接続してと物理的な作業が多く発生していました。

![スライド4.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2523652/8691da4f-0d5c-07e0-4b7c-97a9eee70ce0.png)

その後、物理サーバの上に仮想的なサーバを作成できる仮想化技術の発展により、仮想サーバが主流となりました。最初に物理サーバを用意して、仮想化基盤を構築する必要があります。仮想化基盤構築後は、新しいシステムを作りたい場合はすぐに仮想サーバの準備を行うことができ、物理環境の時と

元記事を表示

AWS Configをサクッと試してみた

# 1. はじめに
運用も楽しく自動化できるといいなーと言うことで、
AWSの代表的な構成管理サービスであるAWS Configを軽く触ってみました。

https://docs.aws.amazon.com/ja_jp/config/latest/developerguide/WhatIsConfig.html

## 1.1. 【補足】AWS Configとは
AWS上に作成した各種リソースをまとめて構成管理してくれるサービスです。
リソース構成の変更を継続的に評価、モニタリング、記録してくれます。

また、AWS Config マネージドルールやカスタムルールを設定することで、リソースが所定のベストプラクティス、業界規制、独自ポリシーに準拠しているかを評価できます。PublicIPがEC2に付与されていないか、S3がパブリックアクセス可能になっていないか、など。。。

今回は触っていないのですが、ルールを守れていないリソースを、Config側から設定変更することもできます。

# 2. 設

元記事を表示

AWSにDjangoの環境を整えていく03(ALB)

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

今回は前回作成したEC2+RDSにALBを追加していき、EC2に負荷分散的なことをしていきたいと思います。

他の記事は以下の記事で別途管理しております為、適宜ご覧ください。

https://qiita.com/ohtsuka-shota/items/4b80538569b81f8c19a6

# 環境イメージ
前回構築した環境にpublic-subnetをもう1つ作成し、そこにDjangoをインストールしたEC2を1つ用意します。このEC2はRDSに繋げています。
このあと、それぞれのpublic-subnetにALB(Application Load Balancer)をデプロイします。
最後にALBをターゲットにWebブラウジングが出来るかを確認していきたいと思います。
![aws-django01-ページ3.drawio.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/3338c08a-5999-705

元記事を表示

AWSにDjangoの環境を整えていく_目次

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

この記事は自分が連載(?)している『AWSにDjango環境を様々なAWSサービスを使ってデプロイする』という記事をまとめた記事となります。

# 目次
## 1)AWSにDjangoの環境を整えていく01(VPC/subnet/IGW/RouteTable/SG/EC2)
### 記事

https://qiita.com/ohtsuka-shota/items/347bf23fdfeafb542255

### 関連
CloudFormation用のyamlは以下のGitHubにあります。

https://github.com/ohtsuka-shota/aws-django/blob/main/django01_all.yaml

## 2)AWSにDjangoの環境を整えていく02(RDS)
### 記事

https://qiita.com/ohtsuka-shota/items/3395d70488cf777ac7a7

### 関連
GitHub作成予定

## 3)AWSにDjangoの環境

元記事を表示

AWSにDjango環境を整えていく_CloudFormation編

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

今回はAWSのCloudFormationについてとなります。
2024年4月現在、AWSにDjango環境を作るという名目でAWSのサービスを鋭意触っております。
折角なら手動で作成した環境をCloudFormationを使って、一発でデプロイできるようにしよう、という事で用意したコードをここにまとめておきます。

# CloudFormationを使った環境デプロイ手順
まず、AWS管理コンソールからCloudFormation管理画面に移動指定下さい。
スタックタブを押下するとデフォルトだとスタック無しという表示がされているかと思います。スタックの作成を押下してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3219385/cec77824-b590-7fb7-4da1-e3b59ca199bd.png)

以下の画面に遷移します。
– テンプレートの準備:既存のテンプレートを選択
– テンプレ

元記事を表示

[忘備録]Amplify Gen2 Workshopの詰まり所

どうも駆け出し12冠エンジニアのアスカです。今回はAmplify Gen2のWorkshopを行ったので、その所感を記しておきます。
結果的に最後まで出来ていないです。別のドキュメント見ながら理解を深めていきたいと思います。

# そもそもAmplifyとは…
こんな事が出来るAWSのサービスです。
– AWSのクラウドサービス上にモバイルアプリケーションを構築するための最も速く、簡単な方法。
– 利用者はクラウドサービスのバックエンドの構築をツールに任せ、アプリケーション実装に集中できる。
– ポピュラーなバックエンドの構成とそれを利用するためのフロントエンドの統合を自動で構築できる。
参考: https://qiita.com/laha/items/1e0805edacce111e9332

## Amplify Gen2とは…
バックエンドリソースのデプロイ方法が、従来の CLI から CDK に変更されたそうです。CDKと統合される事によって拡張性が高まったと思われます。
参考: https://zenn.dev/ototrip/articles/tech-nextjs

元記事を表示

AWS SAP合格報告と大規模移行PJを通して感じたこと

今年度初投稿となります!(もう新卒1年目の肩書きはつかえないです、、)

2024/04/20、AWS SAPに合格しました。
4月以降PJがちょいと忙しかったのでテスト勉強をする時間は10時間くらいしかなかったのですが、記事を書くことでいろいろと振り返りをしたいと思います。

#### 1.PJについて
現在大規模AWS移行プロジェクトに参画しています。
私はインフラの部署にいるので、アプリ側に引き渡すまでが主な仕事になります。

4月から始まったのですが、中小規模のシステムに関しては
現行調査・方式設計・詳細設計・構築・テストなどすべての工程を担当させていただくことになりました。

そのためLinuxやWindowsの知識も積み上げていく必要があり、4月からなかなかハードな20日を過ごしました😎
だいぶ成長しているので、この調子でPJと向き合っていきたいと思います。

プロジェクトをすすめていく中で感じたことがあるので頭の整理をするためにこの記事を書こうと思います。

#### 2.PJを通して感じたこと

##### 2.1 現行調査
まずは**現行調査**についてです。

今回

元記事を表示

【AWS】統合版・JAVA版クロスプレイ可能なMinecraftのHubサーバーを立てる方法【1.20.4】【Velocity, GeyserMC, Fabric】

## はじめに

![スクリーンショット 2024-04-04 18.09.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3123772/76a72e43-d9ff-a052-9572-d5bd72abf09b.png)
先日ソリューションアーキテクト アソシエイト試験に合格しました。
取得してからだいぶ間が開いていてアレですが、せっかくなので習得した知識を使いつつサーバー構築をしてみようと思います。

:::note warn
今回構築するサービスは請求が発生します(約100円/日)。
サービスの削除し忘れにご注意ください。
:::

## 対象読者

– 友人間やサークル内で利用するゲームサーバーを立てたい人
– 数時間~数日程度の短い期間、お試し感覚でサーバーを立ててみたい人
– AWSに興味があるが、使ったことがない、使い方がイマイチわからない人
– コスパの良いサーバーの構築方法を知りたい人

## 取り扱う内容

– Amazon Lightsailの特徴・利用方法
– プロキシサーバ

元記事を表示

【Lambda】手動実行する際、意図せず2重実行される事象について

## 発生事象
EC2インスタンスのイメージバックアップを取得するLambda関数をLambda コンソールの [テスト] 画面にて関数のテストを実行した際に、1 度のテスト実行操作に対して関数が 2 回呼び出されました。
⇒バックアップ処理自体は問題なく完了したが、CloudWatchアラームにてエラーとして検知されてしまいました。

■Lambda実行時、CloudWatchに出力されたログ
![Lambda.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3691986/42606099-c306-b525-e53e-33f86025ab8e.png)
同時刻に2つのログストリームが生成され、片方のログは成功、もう片方は失敗という内容でした。

Lambdaの仕様として、同期呼び出しとしてLambdaを実行すれば多重実行を防げるといったような情報も確認しましたが、同期実行(CloudShellからの実行)でも2重実行されてしまいました。
※参考
https://docs.aws.amazon.com

元記事を表示

AWS 認定資格Solutions Architect – Associate について

– SAA を受けてきたのでそのまとめです

# なぜ資格を取ろうとしたか?
– 元々認定資格への興味がなかったが、周りに認定資格を持っているエンジニアも多く、同じ視点で会話したいと考え始めたのがきっかけです

# これまでの戦績
| 資格名 | 受験日 | 合否 | スコア |
| — | — | — | — |
| CLF-C02 | 2024/1/27 | 合格 | 769 |
| SAA-C03 | 2024/4/5 | 不合格 | 706 |
| SAA-C03 | 2024/4/19 | 合格 | 735 |

# SAA を受けてみて
– 2024 年4 月 〜 受験料が値上がるので、勢いで3/31 に受験申し込み
– 保険のため、再受験無料のパウチャーを使う
– 数時間程度(5 時間以下) の勉強で4/5 に受験するも撃沈
– ギリギリ落ちる
– 2 週間のインターバルを置き再受験
– 2 週間の間は、Udemy で問題を解き、正解/不正解関係なく解説に目をと押す
– この繰り返しです
– 4/19 に再受験するもギリギリで合格

元記事を表示

ぼっちでもControl Tower連載[3/3]~Security Hubの設定~

どうも駆け出し12冠エンジニアのアスカです、今日はControl TowerのでSecurity Hubの設定をしていきます。
※この投稿は連載の3本目になっています。
1. [ぼっちでもControl Tower連載[1/3]~とりあえず作ってみた~](https://qiita.com/asuka0708japan/items/f508564635096e0b1444)
1. [ぼっちでもControl Tower連載[2/3]~予防的ガードレールの確認~](https://qiita.com/asuka0708japan/items/21db5687f52772c879cd)
# 背景
Control Towerを設定してから、開発用アカウントを作成してこれから作業を行っていく訳ですが、自分でSecurityの脆弱性を確認出来るようにしたい!!
そのため今回はSecurity Hubを有効化していきます。
手順は以下の通りです。
1. 管理アカウントでSecurity Hubを有効化
1. 管理アカウントで権限の委譲を設定
1. 監査アカウントで有効化
1. ダッシュボードを確認

元記事を表示

EC2のWebサーバーのIPアドレスを固定せず、起動時にRoute53のレコードを自動更新(自作DDNS?)

# 作業の経緯

実験用のAWSのEC2上のWebサーバーでhttpsを有効化するため、固定IPアドレス(Elastic IP)を使用しています。
サーバーは使用する時だけ起動してコスト削減を図っているのですが、ElasticIPはずっと課金されてしまうため、これを節約したいというのが今回の経緯です。

:::note
この記事で使用したEC2インスタンスはかなり古いモノですので、メタデータのバージョンがIMDSv1です。
IMDSv1は現在非推奨となっており、今年中には新しいインスタンスでIMDSv2が強制されるようになるはずですが、IMDSv2ではパブリックIPアドレスの取得方法が変わっています。
この手順は今後確かめて、改めて掲載しようと思います。
:::

## 作業前の状態

– EC2インスタンスでWebサーバーを構築
– ElasticIPを確保して上記インスタンスに割り当て
– お名前.comで独自ドメインを取得してRoute53サービスに権限を移譲
– Route53のホストゾーンにサーバー名を登録
– Let’s Encryptで上記サーバー名の証明書を作成

##

元記事を表示

AWSにDjangoの環境を整えていく02(RDS)

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

前回AWS上にVPC/subnet及びEC2をデプロイしました。
今回はこの続きです。EC2にDjango環境を作り、またDjangoで使うDBをRDSを使って整備していきます。

他の記事は以下の記事で別途管理しております為、適宜ご覧ください。

https://qiita.com/ohtsuka-shota/items/4b80538569b81f8c19a6

# 環境イメージ
今回構築する環境は以下となります。
RDS用のsubnetを3つ、VPC上に作成します。
そのVPCをsubnetグループとして取りまとめ、RDSデプロイ時に指定してあげます。
イメージ図では3つのRDSをそれぞれのsubnetに記載しておりますが、これはマルチAZでデプロイしている場合自動でフェールオーバしたり、読み取り可能なスタンバイDBがあることを示しています。

EC2にDjangoの環境セットアップを行い、RDSデプロイ時に自動で生成されるEndpointを使ってDBと連携します。
![aws-django01-ページ

元記事を表示

【Amazon S3】Glacier Flexible Retrievalと Glacier Deep Archive では静的ウェブサイトホスティングはできない

## 結論

ストレージクラスGlacier Flexible Retrievalと Glacier Deep Archive では、静的ウェブサイトホスティングをしてHTTPで単純に取得を試みてもエラーになります。

なお、これは静的ウェブサイトホスティングでなくCloudFront経由でのアクセスにしても結果は変わりません。

## 状況設定
あんまり見ないけどちょっとしたときに参照したいドキュメントを、Webサイトホスティングで簡易にブラウザからアクセスできるようにすることを考えます。
このときどのS3ストレージクラスを選択するのがよいでしょうか。

## 検討
### 候補となるストレージクラス

各ストレージクラスのなお、名称はS3料金[^1]から”S3″を省いたものを、識別子はAWS CLI[^2]のものを使います。

| 名称 | 識別子 | 特徴 | 注意点 |
|:————————–|:————|:————|:————|
| 標準

元記事を表示

EC2インスタンスが何度も起動・停止を繰り返す

最近、相談されたことを備忘録として、記事化します。

## 発生している事象
– 身に覚えのないEC2インスタンスが大量に起動・停止を繰り返している

## 背景
– 開発環境として、EC2のスポットインスタンスを利用
– 管理ツールとして、CloudFormationを利用
– EBSは暗号化しており、KMSを利用
– 前日、EC2を更新するため、CloudFormationで指定しているAMIIDを変更

## 結論から
– スポットインスタンスを利用する場合、
スポットフリートロールにKMSの権限を付与する必要あり

https://docs.aws.amazon.com/ja_jp/batch/latest/userguide/spot_fleet_IAM_role.html

– 不要になった、スポットインスタンスは、スポットリクエストをキャンセルする
– 今回は、CloudFormationで展開しており、裏でリクエストが行われている
– キャンセルは手動で行う必要があった

## 調査内容
#### EC2が大量に起動/停止をしているエラーについて

元記事を表示

OTHERカテゴリの最新記事