AWS関連のことを調べてみた2023年02月15日

AWS関連のことを調べてみた2023年02月15日
目次

エンドポイントって、一体なにを指している?

## 困っていること
**エンドポイント**って用語が、問題集やドキュメントに散在しています。
意味が抽象すぎることや、使い道が多い、使い勝手がよいなどで正確な意味を理解するのに一苦労しています。
ある程度理解したので、ここでメモしておいて随時更新していきます。
理解を促すための大雑把な説明なので、なんとなく理解できればよいのです。

## 厳密ではない説明
#### ◤ネットワークの話で現れた場合
一般のユーザが使っている端末を指す。つまり、ネットワークにある無数の終点となるパソコンのこと。
対して、ルータなどの中継機器は「ノード」という。

#### ◤VPCエンドポイントの話で現れた場合
上記と意味が似ている。AWSの巨大な内部ネットワーク内の終点となる仮想装置を指す。
ここで仮想NICと似たような感じがするが、憶測では、VPCエンドポイントは、単純なNICではなく、装置として見なしているのかなと。

#### ◤API、ソフトウェア開発の話で現れた場合
APIの接続先の住所を指す。つまり、URI/URLかIPアドレスを指す。

#### 以上

元記事を表示

CloudWatch Logsを監視し、エラーをSlackに通知する

### メトリクスフィルターとサブスクリプションフィルターの違い
https://bftnagoya.hateblo.jp/entry/2022/04/04/131651

1. CloudWatch Logs → メトリクスフィルター → CloudWatch Alarm → SNS → Slack (詳細は通知されない)
https://dev.classmethod.jp/articles/notify-when-a-specific-character-string-was-detected-in-cloudwatch-logs-metric-filtercloudwatch-alarm/

2. CloudWatch Logs → サブスクリプションフィルター → Lambda → Incoming Webhook → Slack (通知内容カスタマイズ可能)
https://dev.classmethod.jp/articles/notification_cloudwatchlogs_subscriptoinfilter/
https://zenn.dev/ushknn/a

元記事を表示

AWS EventBridge Schedulerを簡単に有効化・無効化!(Automationのドキュメント付き)

# はじめに
 定期的な処理をAWS EventBridge Ruleを使って実行していましたが、スケジューリング機能がAWS EventBridge Schedulerとして登場してきました。今後はどんどんAWS EventBridge Schedulerを使っていくと思うので、こっちを使うように進めています。

# やりたいこと
 定期処理をAWS EventBridge Schedulerとして定義し、コストを最小にするためにEC2が起動している間は定期処理を実行、停止している間は定期処理を停止したいです。定期処理=Lambdaで一定間隔で同期処理を行う等。
 今回は人の手を介さず、自動でAWS EventBridge Schedulerの有効化、無効化を行います。(EC2の状態に連動する部分は別途、記事を書こうかと思います。)

# AWSマネジメントコンソールでの有効化、無効化
 AWSマネジメントコンソールだとどんな感じになるでしょう・・・
## スケジュール有効化
 対象のスケジュールを選択し、右上の「有効化」をクリックすることで有効化されます。
![image.png]

元記事を表示

AWS EC2でインスタンスに複数のEBSボリュームをアタッチする

# AWS EC2でインスタンスに複数のEBSボリュームをアタッチする

EC2インスタンスは、仮想マシンの資料するファイルストレージにEBSという仮想ディスクを使用.
柔軟に容量を追加したり、別のディスク(ボリューム)を追加したりできる.

すでに仮想マシンにアタッチ済みボリュームを格納することも可能だが、一時的に容量を追加したい時、格納するデータによって
ディスクを切り分けたい場合など、後から別のEBSボリュームをアタッチするのが割と役立つ.

AWS公式ドキュメント [EBSマルチアタッチ](https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ebs-volumes-multi.html)

## 想定読者

– すでにAWS EC2インスタンスを起動・接続している
– EC2にS3ではなくディスク容量を追加したい方(機械学習など、大容量データを少しずつs3から持ってくると、実装面や速度面でネックとなるのでインスタンスのストレージで完結させたい方)

### ローカルストレージの容量確認
dfコマンドで確認で

元記事を表示

【AWS】Wordpressサイトをほぼ一撃で作成するCloudFormtionを作成した

# 01.はじめに
マネジメントコンソール作業に煩わしさを感じてきたので
wordpressサイトをほぼ一撃で構築できるCloudFormtionを作成した。
WEBサーバがパブリックサブネットにあるとセキュリティ的に不安が残るので
プライベートサブネットから出来るようにした。
なるべくお金をかけない主義でEC2、RDSともに無料利用枠で利用できるスペックを選定している。

# 02.構成図
下記の通りである。
![dev構成図.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1050566/a62f6dff-4384-b47e-426e-92b7152514a9.png)

EC2のユーザデータを利用してNATGW経由で
`・httpdパッケージ等のyumで取得できるものをS3から取得`
`・wordpressパッケージをwgetでインターネットから取得`
する構成にしている。

インストール後はwordpressの初期設定を実施する必要がある。
実施方法はSSHポートフォワーディングを利用してパブリ

元記事を表示

InfraCostでAWS ECS Clusterのコストを見積もり

1. Install Infracost VSCode Extension https://marketplace.visualstudio.com/items?itemName=Infracost.infracost
2. Connect VSCode to Infracost.
3. Open Terraform main.tf, then you can see AWS monthly cost.
![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3126935/c01d9440-d23a-4839-acb8-e166423342cb.png)
4. Click the link to see the details.
![2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3126935/a3f5e1a7-82c2-4126-c6cc-994b5417a0de.png)

元記事を表示

特定システムに限定する運用者向けIAMユーザの最小権限について

## はじめに
「**最小特権アクセス許可を適用する**」
AWSでは[IAM でのセキュリティのベストプラクティス](https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/best-practices.html#grant-least-privilege)として、
このように定義されているためこの考えは一般的かと思います。

したがって、
アカウント内にシステムが混在している状況にて特定システムを対象にIAM権限を設定する状況では、
「ARN」や「リソースタグ」にてアクション対象を絞るといった検討になるのではないでしょうか。

本記事では最小特権というルールに準拠して、
管理者へIAM権限の払い出しを行う際の考慮(手順/注意点)に関する記事となります。

## 結論
全サービス全アクションを「リソースタグ」や「ARN」にて制限することは不可能であり、
特定のアクション実行を検知する方法の検討、もしくはアクションの実行をDenyする必要がある。

## 背景
今回はAWSアカウント内に複数のシステムが混在している中、
特定システム

元記事を表示

‘AmplifySignOut’ was not found in ‘@aws-amplify/ui-react’のエラーを解消する

## 対象読者
[フルスタック React アプリケーションを構築する](https://aws.amazon.com/jp/getting-started/hands-on/build-react-app-amplify-graphql/)
– Step4「API とデータベースを追加する」
– Step3「APIと対話するためのフロントエンドコードを記述する」の以下のエラーで詰んだ方

“`
export ‘AmplifySignOut’ (imported as ‘AmplifySignOut’) was not found in ‘@aws-amplify/ui-react’
“`

## 本記事を読んでできること

[フルスタック React アプリケーションを構築する](https://aws.amazon.com/jp/getting-started/hands-on/build-react-app-amplify-graphql/)
– Step4「API とデータベースを追加する」
– Step3「APIと対話するためのフロントエンドコー

元記事を表示

【CloudWatch】comparison_operator

## 概要
AWSのCloudWatch metricsをterraformで書く際、指定する`comparison_operator`についてまとめる

### comparison_operatorとは
指定された統計としきい値を比較するときの算術演算

|設定値|意味|使える要件|
|-|-|-|
|GreaterThanOrEqualToThreshold|<=|通常使用| |GreaterThanThreshold|<|通常使用| |LessThanThreshold|>|通常使用|
|LessThanOrEqualToThreshold|>=|通常使用|
|LessThanLowerOrGreaterThanUpperThreshold|>= or <=|Anomaly detectionを使う時に使える| |LessThanLowerThreshold|>|Anomaly detectionを使う時に使える|
|GreaterThanUpperThreshold|<|Anomaly detectionを使う時に使える| ## 資料 [[公式] terraform con

元記事を表示

Amazon SESで発生したバウンスや苦情を任意のメールアドレスへ通知する仕組みを構築する

## はじめに

AWSでシステムを構築している場合、メールの送信を行う場合は [Amazon Simple Email Service](https://aws.amazon.com/jp/ses) (以降 `Amazon SES` と記載)を使用するケースが多いかと思います。
* 構成例:
![ses構成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2698523/b877d72d-1432-789f-b90d-3454c922d42c.png)
※Hoge Service はEC2やAmazon Lambdaなど、様々なサービスが設定可能

Amazon SESでは、メールアドレス誤り等による不達(バウンス)や、届いたメールのスパム報告(苦情)が一定数以上となると、メール送信機能が停止される恐れがある為、バウンス率は5%未満、苦情率は0.1%未満を維持することが勧められています。

参考:[評価ダッシュボードを使用して、Amazon SES 返送率が高いタイミングを知るにはどうすればよいですか?

元記事を表示

ChatGPTで「Lambdaにて15分以上の処理を行いたい」場合の解決策を聞いてみた【メモ】

## 質問
AWS Lambdaで15分以上時間のかかる処理を解決するには?

## 回答
AWS Lambdaは、最大実行時間が15分まで制限されています。15分以上かかる処理を実行する場合は、以下のような方法が考えられます。

AWS Step Functionsを使用する:AWS Step Functionsを使用して、Lambda関数を複数のステップに分割し、ステップごとに異なるLambda関数を実行することができます。

AWS Fargateを使用する:AWS Fargateを使用して、コンテナベースのアプリケーションを実行できます。AWS Lambdaと同様に、Fargateもイベント駆動型であり、必要に応じてスケールアップ/ダウンすることができます。

別のサービスに処理をオフロードする:処理をAWS Lambdaから別のサービスにオフロードすることで、処理時間を短縮できる場合があります。たとえば、長時間のバッチ処理を実行する場合は、AWS Batchを使用することができます。

処理を分割する:処理を小さなタスクに分割して、それぞれを別々のLambda関数で処理するこ

元記事を表示

How I passed AWS Certified Machine Learning – Specialty (合格体験記)

*I decided to keep this article in Japanese. If you were expecting this to be English, you may go with the Google Translate extension on Chrome. Please feel free to reach me out via [LinkedIn](https://www.linkedin.com/in/norifumi-irie-9bbb0388/) as well for any inquiries.

# 概要
2023年2月にAWS Certified Machine Learning – Specialty(MLS-C01)を受験しました。合格できましたが、AWSの最近のサービスに関することなど全くわからない問題もありました。今回は自分の試験勉強を振り返りつつ、ベストな対策方法や今回の試験で初めて見た問題に関する資料を紹介します。
自分は英語で勉強・受験したため、この記事で使う用語等も誤訳がないようなるべく英語のまま紹介します。

# 勉強

元記事を表示

クラウドのセキュリティ対策について

# はじめに
こんにちは!株式会社80&Companyの技術広報です。
弊社の開発部署では毎週火曜日の朝9:30から社内勉強会を行なっています。

今回の記事はバックエンド開発業務を行なっているエンジニアが社内勉強会でクラウドのセキュリティ対策について発表したものを紹介します。クラウドのセキュリティ対策について、興味のある方は参考にしてみて下さい♪

# 読者の対象
* クラウドのセキュリティ対策に興味がある方

# 責任分界点を確認しよう
国内企業のクラウドサービスの利用割合は、年々増加傾向にあります。
総務省のクラウドサービス提供事業者向けの情報セキュリティガイドラインというものがあり、下記の画像のような責任分界点を定義しています。境界はデータ、アプリ、ミドルウェア、OS、仮想環境、ハードウェア、ネットワーク、施設・電源といったクラウド基盤に分解しています。クラウドサービスを提供している事業者と利用企業の各々が、責任をクラウド基盤のどの範囲担当するか定めた境界を責任分解点といいます。

![スクリーンショット 2023-02-10 11.18.26.png](https://qii

元記事を表示

Glue Data Quality(プレビュー版)について①

## はじめに
こんにちは。株式会社ジールの@Shin-Nakamura224です。
先日、Glue Data Quality(プレビュー版)が発表されたので、
概要と簡単な検証を紹介したいと思います。
今回の記事はGlue Data Qualityの概要について紹介いたします。

検証 ↓
[Glue Data Quality(プレビュー版)について②](https://qiita.com/Shin-Nakamura224/private/2bf8fdf5cea311811b03)
***
## 概要
### Glue Data Qualityとは
AWS Glueでデータの品質をモニタリング・問題の検出を簡単に実施できる機能になります。
(2022年11月30日​発表)
ユーザは品質評価のルール(DQDL)を設定して、データの品質検査を実施することが可能​です。
Amazonが開発したOSSのDeequを使用してルールを評価します。
image.pngGlue Data Quality(プレビュー版)について②

## はじめに
こんにちは。株式会社ジールの@Shin-Nakamura224です。
先日、Glue Data Quality(プレビュー版)が発表されたので、
概要と簡単な検証を紹介したいと思います。
今回の記事では、Glue Data Qualityを使った簡単な検証を紹介したいと思います。

概要↓
[Glue Data Quality(プレビュー版)について①](https://qiita.com/Shin-Nakamura224/private/984d7d4b83dc65d3fdc1)
***

## 前提条件
・Glue Data Qualityを扱うために、**Glue3.0**を使用しております。
・データソースはテストデータ(**CSV**ファイル)を使用しております。
## 検証内容
以下の2つをテーマとして、検証を実施しました。

① ELTジョブ内でData Qualityの品質検査の実施と
 Data Qualityのルール違反をAWS CloudWatchで通知
② Python処理との実行時間の比較
***
## アーキテクチャ
①の検証では、
AWS

元記事を表示

Cloud9のリサイズ

# No space left on device エラー
Cloud9のディスクサイズのデフォルトは10GBしかなく、少しファイルサイズの大きいものを扱うと下記のようなエラーが発生してしまう。
“`
ERROR: Could not install packages due to an EnvironmentError: [Errno 28] No space left on device
“`

# リサイズスクリプト
下記のスクリプトを作成し、引数に変更したい容量を指定する。
“`
#!/bin/bash

# Specify the desired volume size in GiB as a command-line argument. If not specified, default to 20 GiB.
SIZE=${1:-20}

# Get the ID of the environment host Amazon EC2 instance.
INSTANCEID=$(curl http://169.254.169.254/latest/meta-data

元記事を表示

[RDS][Aurora] Reader 2台構成でインスタンスタイプ変更にかかるダウンタイムを調査してみた

## 目的
– Aurora ClusterのWriter/Readerのインスタンスタイプの変更を実施するにあたり、ダウンタイムが最小化できる方法を検討。
– アプリのアクセスがWriter/Reader双方に対してあったため、Readerをもう一台追加してオンラインでサイズ変更を行う方法を検証。

## 検証手順
– 以下手順における、踏み台サーバからのアクセスにおけるダウンタイム時間を調べてみる。
1. Readerインスタンスを1台追加
1. Reader1のインスタンスタイプ変更(db.t3.medium -> db.t3.large)
1. Reader2のインスタンスタイプ変更(db.t3.medium -> db.t3.large)
1. WriterのFailover
1. Writerのインスタンスタイプ変更(db.t3.medium -> db.t3.large)

## 検証構成
– 以下の構成でWriter/Readerのインスタンスタイプをt3.mediumからt3.large変更する。

| インスタンス台数

元記事を表示

AWS WAFにタグ設定する方法

AWS WAFのリソース(Web ACL, Rule Group, IP Set)のタグ操作をする場合、
マネジメントコンソール上からではなくCLIからするっぽいので備忘録として残します。

#### AWS WAFv2のCLIドキュメント

https://docs.aws.amazon.com/cli/latest/reference/wafv2/index.html#cli-aws-wafv2

実際にやる時はCloud Shellで実行するのが良さそう。

## タグ操作

“`bash:タグ設定
aws wafv2 tag-resource –resource-arn –tags
“`

“`bash:–tagsの指定例
Key=,Value=
“`

https://docs.aws.amazon.com/cli/latest/reference/waf/tag-resource.html

– 既に登録されているタグの一覧を取得

“`bash
aws wafv2 list-tags-for-re

元記事を表示

【Wordpress】PHP Update Requiredの対応方法について(EC2に接続してアップグレードする)

# 前提
* AWSのEC2インスタンスで稼働しているお手製HTMLホームページを、Wordpressに移行した後に発生したエラーについて記載します。
* WordPressインストールするまでの流れを解説した前回の記事はこちら:[WordpressをEC2インスタンスにインストールする方法(Apacheのバーチャルホスト設定方法・Wordpress用DB作成方法も解説)](https://qiita.com/Ryo-0131/items/a6dab55ea5b54b6e10b7)

## PHP Update Requiredの警告
* PHP7.0であることに対して警告が表示されていることを確認

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2710373/c0f92aa3-2a66-7faa-3d89-026e39280a0c.png)

* WordPressがインストールされているEC2インスタンスへ接続。
* 以下を実施して、PHP7.4にupgrade

“`

元記事を表示

Amazon Kinesis Data Streams (KDS)とAWS Glue Streaming ETLを用いたVantageへのデータストリーミング

次のアーキテクチャは、Amazon Kinesisからのデータの流れを示しており、AWS Glueによってストリーミングされ、Teradata Vantageで分析され、最後にAmazon QuickSightで表示されるようになっています。このチュートリアルでは、シンプルなLambda関数を使用して、ストリーミングソースを実行することにします。

![画像1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2742714/0893c9ed-eb77-6a5f-c3e3-a02bbc2b08d0.png)

# 前提条件

AWS Glue Streaming ETLをTeradata Vantageで使用するには、まず、以下の前提条件を満たしていることを確認してください:

・仮想マシンにログインするためには、[Amazon Elastic Compute Cloud](https://aws.amazon.com/ec2/) (Amazon EC2)のキーペアが必要です。まだお持ちでない場合は、[新規

元記事を表示

OTHERカテゴリの最新記事