AWS関連のことを調べてみた2022年01月30日

AWS関連のことを調べてみた2022年01月30日
目次

QuickSightのデータセットの更新をStep Functionsでノーコードで出来なかった話

# はじめに
以下のような経緯で、タイトルのことができなそうなのがわかったので、記事にしました。
(出来ることがわかる方いらっしゃいましたら、教えてください)

## 経緯

1. QuickSightのデータセットの更新を、S3のファイル作成/削除をトリガーにして自動実行する構成を検討していた。
1. データセット更新の際の`CreateIngestion`が、Step Functionsで実行できることを見つけた。
1. ノーコードで構築できると期待して試してみたが、`CreateIngestion`に、一意のIdを生成して渡す必要があった。
1. 「一意のId生成部分をLambdaで実装」とすると、ノーコードにはならない。
1. Lambdaで作るなら、`CreateIngestion`もLambdaで実装すればよいため、Step Functionsも不要と判断。

# (想定していた)構成

赤点線で囲んである部分が、今回の内容です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/

元記事を表示

Lambda Layersで自作モジュールを共通ライブラリ化する [Python,Node.js]

#はじめに
Lambda Layersを用いることで、モジュールを共通ライブラリとして、複数のLambdaで使用できるようなので、PythonとNode.jsのパターンで方法をまとめます。

メリットとして、Lambdaのソースコードの量を減らすことができること、各Lambdaごとにモジュールをアップする手間がなくなることがあげられます。

Lambda Layersについて
>Lambda レイヤーは、追加のコードやデータを含めることができる .zip ファイルアーカイブです。レイヤーには、ライブラリ、 カスタムランタイム 、データ、または設定ファイルを含めることができます。レイヤーを使用すると、コードの共有と責任の分離を促進し、ビジネスロジックの記述をより迅速に繰り返すことができます。

#自作モジュールのディレクトリ構造

Lambda Layersにアップロードされたモジュールは、`/opt`の領域に展開されます。
そのため、指定されたディレクトリ(`下記の表参照`)にPythonモジュールを格納してアップロードすることでLambdaを実行した際にモジュールとして自動的に読み込

元記事を表示

CloudFront + S3 で「This XML file does not appear to have any style information associated with it.」エラー

#はじめに

静的ファイルをS3に保存し、Cloudfront経由で公開しようとした際に、下記のエラーに出くわしました。
![スクリーンショット 2022-01-29 22.19.36.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/afd97479-37e3-2cf2-b4dc-b8f7ac8392c9.png)

“`html
SignatureDoesNotMatch
The request signature we calculated does not match the signature you provided. Check your key and signing method.
*******
“`

![スクリーンショット 2022-01-29 22.17.31.png](https://qiita-image-store.s

元記事を表示

Golangはじめて物語(第10話: RDS Proxy+Aurora(PostgreSQL互換)とうまく付き合う方法)

# はじめに
[以前の記事](https://qiita.com/neruneruo/items/6346c655045a153ba458)では、GolangでAurora(MySQL互換)のエンドポイントに直接接続する方法を書いたが、今回はRDS Proxyを経由する方法を考察する。

GolangでRDS Proxy+Aurora(PostgreSQL)互換を使う場合、以下を考慮する必要がある。

なお、本考察においては、[この記事](https://qiita.com/neruneruo/items/15d6c5c50cf225bcd1fc)の構成を元にして実験をしている。
Aurora(PostgreSQL互換)のエンジンバージョンは12.7だ。

# 何を気を付けなければいけないのか
色々動作を検証していると、RDS Proxyの仕様とGolangの言語仕様の合わせ技でかなりややこしいことになった。
詳細は↓このような感じだ。

– RDS Proxyは特性上、Prepared Statementのように接続時に設定を行うようなことをするとピン留めが発生する(参考:[公式ドキ

元記事を表示

EC2のプロセスを監視してみた。(EC2 + CloudWatch + SSM + SNS)

#はじめに
こんにちは、山田です。
今回はEC2のプロセス監視を実装してみました。

#前提条件
今回は、SystemManagerとCloudWatchAlarmの構築をメインに記載していきます。
また、今回は監視するプロセスはApacheとし、プロセスが終了したらSNSにて通知が行くように実装していきます。

#全体構成図
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1096361/13b5f076-decd-cfa2-2bd8-f1de06b09911.png)

**①:プロセスを監視するためのパラメータの作成
②:RunCommandにて、パラメータを実行
③:CloudWatchにプロセスのメトリクスを送信
④:プロセス終了をきっかけに、CloudWatchAlarm発動
⑤:SNSにて通知**

#パラメータの作成
①:AWS管理コンソール -> AWS Systems Manager -> パラメータストア -> パラメータの作成をクリックする。
②:名前は`test-

元記事を表示

【自動返信メール】送信処理の手順(WordPress/Amazon SES)

aws lightsailでWordPressサイトを構築した際に、自動返信メールの送信処理につまずきました、、。

AmazonSESのダッシュボード画面が最近変更されており、ややこしかったので資料にまとめてみました。

![【自動返信メール】送信処理の手順書_page-0001.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1899983/c3737dd2-034f-9261-9406-fcab93481cd4.jpeg)
![【自動返信メール】送信処理の手順書_page-0002.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1899983/1832a26a-46d0-657f-e7ed-d4e8517d021a.jpeg)
![【自動返信メール】送信処理の手順書_page-0003.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1

元記事を表示

Windows環境のVSCodeでcfn-lintを使えるようにする手順。

# はじめに

windows環境かつ、VS Codeでのcfn-lintのセットアップ手順を取り扱った記事が少ないように感じたので、実際に私が行った手順をまとめてみました。

https://github.com/aws-cloudformation/cfn-lint

**筆者の環境**
・VS Codeインストール済み
・OSはWindows10

手順は以下となります。

|順番|内容|
|:—|:–|
|1.|拡張機能でCloudFormation Linterをインストール|
|2.|Pythonをインストール|
|3.|pipでcfn-lintをインストール|
|4.|CloudFormation Linter configurationで絶対パスを指定|

# 1. 拡張機能でCloudFormation Linterをインストール

VS Codeの拡張機能からCloudFormation Linterをインストールします。

![cfn-lint install.png](https://qiita-image-store.s3.ap-northeast-

元記事を表示

SESメール配信時のイベントをKinesis Data Firehose経由でS3へ保存(Terraform)

# なんのために

メールをトラッキングするため。

# “トラッキング” is 何

メールが送信対象者に届いたかや、届いた後にメールが開封されたのか等を追跡すること。

# トラッキングすると何が良い

– メールの送信時トラブル(リジェクト、バウンスなど)の検知ができる
– 開封率などのデータ収集が行え、マーケティングに使える

# Solution

– Kinesis Data Firehose + Open Search
– Kinesis Data Firehose + Redshift
– Kinesis Data Firehose + S3 ← 今回はこちらを採用

# 全体像

– iam周り作る
– S3のバケットリソース作る
– sesの構成リソースを作成
– eventの宛先リソースを作成
– Kinesis Data Firehoseを作る
– 諸々つなぎこむ

手始めにiam(role)を作りましょう。ざっくりと、

– kinesisへイベントを流すためのses用のロール
– eventを受け取りS3へputしてくれるkinesis用のロール

の2つの

元記事を表示

Cloud9からSession ManagerでEC2へ接続する

Cloud9からAWS Session Managerを使いたくなって試してみたら少々ハマったのでメモ。

#### ■AWS CLI 用の Session Manager プラグインをインストールする
https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html#install-plugin-linux

“`
curl “https://s3.amazonaws.com/session-manager-downloads/plugin/latest/linux_64bit/session-manager-plugin.rpm” -o “session-manager-plugin.rpm”
sudo yum install -y session-manager-plugin.rpm
“`
Session Manager プラグインのインストールを検証

“`
session-manager-plugin

元記事を表示

AWS認定試験をオンラインで受ける際はテストプロバイダ選択に注意

# はじめに
この度AWS Certified Solutions Architect – Associate(SAA)認定試験に合格しました。
AWS認定試験は現在テストセンター、自宅受験ともに対応しているのですが、今回自宅受験しようとしたところ一筋縄ではいかなかったので共有します。
**※完全に自分が注意書きをよく読んでいなかったことが原因です!!**

# AWS SAA
試験概要については以下をご覧ください。

https://aws.amazon.com/jp/certification/certified-solutions-architect-associate/

## 受験方法
– テストセンター
– オンライン試験(自宅受験)

## テストプロバイダ
AWS認定試験を受ける際、以下の2種類のテストプロバイダ(実施業者)を選択できます。

– ピアソンVUE
– PSI

いずれのプロバイダもテストセンター、オンライン試験の両方に対応しています。

# 失敗談
ここから実際に自分が失敗したことを踏まえ、注意点を挙げます。

### PSIでオンライン試験を申し込んだ

元記事を表示

AWS クラウドプラティクショナー 流し見用 part3

●VPC peering
VPCピアリング接続は、2つのVPC間でプライベートなトラフィックのルーティングを可能にするネットワーキング接続
どちらのVPCのインスタンスも、同じネットワーク内に存在しているかのように、相互に通信できる
VPCピアリング接続は、自分のVPC間、別のAWSアカウントのVPCとの間、または別のAWSリージョンのVPCとの間に作成できる
リージョン間VPCピア接続を利用すると、シンプルで費用対効果のたかい方法により、リージョン間でリソースを共有したり、地理的な冗長性のためにデータをレプリケートしたりできる
しかし、中国リージョンでは利用できない

●ElasticCache
完全マネージド型のRedisおよびMemcachedを利用することができる
普及しているオープンソース互換のインメモリデータストアを、シームレスにデプロイ、運用、スケールできる
高速にリアルタイム処理が必要な場合はインメモリキャッシュを利用してデータ処理を高速化することが推奨されている

●ルーティングポリシーを設定方法
Route53では、複雑なルーティングはトラフィックフローを用いて順序

元記事を表示

ASG内のEC2をスタンバイへ移行→デタッチする際のノード補充オプションが分かりにくい件

# TL;DR
AutoScalingグループ内で稼働しているEC2のうち1台をスタンバイ状態へ変更し、さらにデタッチする際、**いずれの操作においても「代替ノード補充」オプションを有効にしていないと稼働台数が減ってしまう**ため注意!

# どういうケースでの話?
商用環境で常時2台のEC2インスタンスが稼働するAutoScalingグループがあったとする。
このうち1台の調子が悪いので、一時的に「スタンバイに設定」する。
![スクリーンショット 2022-01-29 17.20.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1633856/ce65953c-6501-f133-0ea0-66e240483c88.png)

このとき、サービス影響を出したくないため代替ノードを補充する。
スタンバイ移行時に「新しいインスタンスを追加」オプションを有効にして実行する。
![スクリーンショット 2022-01-29 17.20.45.png](https://qiita-image-store.s3

元記事を表示

【EC2温故知新】AutoScalingグループの挙動をマネコンで観察してみる

みんな大好きAutoScallingグループ。
商用利用時に特定のインスタンスの調子が悪いときなど、**一定の稼働台数を維持したまま**不良ノードを止めたいケースは割と発生しそうなので、有事に慌てないようオペレーション手順や実際の挙動を検証してみる。

# 想定ケース
`2dai-kotei`という名前のAutoScallingグループが稼働中。
EC2インスタンスが常時2台アクティブになるよう構成されている。
![スクリーンショット 2022-01-29 15.07.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1633856/1336a73f-a817-aad1-13cd-3dd9915459a6.png)

# その1:調子が悪いEC2を手動で停止する
リスト1番目のインスタンスを手動でシャットダウンしてみる。
インスタンスの状態操作はEC2コンソールから実施する必要がある。
![スクリーンショット 2022-01-29 16.02.03.png](https://qiita-image-s

元記事を表示

AWS Lambdaから別Lambdaを呼び出す際にPickle形式でデータをやりとりする

Lambdaから別Lambdaを実行するのはアンチパターンにも載っている方法ですが、やってみたので書いておきます。

https://aws.amazon.com/jp/blogs/news/compute-operating-lambda-anti-patterns-in-event-driven-architectures-part-3/

# 呼び出し元

FooのdataclassをいくつかリストにしてPickle形式にシリアライズして送信先のLambdaに送信しています。
返り値もPickleで返ってくるので読み込んでプリントします。

“`py
import json
import pickle
from typing import List
from dataclasses import dataclass
from datetime import datetime
from base64 import b85decode, b85encode

import boto3

@dataclass
class Foo:
i: int
d: datetim

元記事を表示

S3のアクセスコントロール

S3のアクセスコントロールが難解なので再勉強したときの自分用メモ

[(参考)何が嬉しい?S3 Object ACL無効化 – 聞いた後、速攻で忘れていい知識をお届けします \-](https://speakerdeck.com/takashi_toyosaki/he-gaxi-sii-s3-object-aclwu-xiao-hua-wen-itahou-su-gong-dewang-reteiizhi-shi-woojie-kesimasu)
[(参考)S3のアクセスコントロールリスト(ACL)の基礎を学ぼう](https://dev.classmethod.jp/articles/amazon-s3-acl-basics/)
[(参考)S3バケットポリシーの具体例で学ぶAWSのPolicyドキュメント](https://dev.classmethod.jp/articles/learn-aws-policy-documents-with-examples/)
[(参考)S3のバケットポリシーでハマったので、S3へのアクセスを許可するPrincipalの設定を整理する](https

元記事を表示

TerraformでAmazon Auroraクラスタを自動構築する(PostgreSQL互換編)

# はじめに
[以前の記事](https://qiita.com/neruneruo/items/a7c5f7fa80fbf9d6a828)ではAuroraのMySQL互換の基本を書いてみた。
今回は、PostgreSQL互換のAuroraクラスタ・インスタンスを作ってみよう。

前提知識についても前回同様、以下があれば良い。

– [Amazon AuroraのBlack Beltの資料](https://d1.awsstatic.com/webinars/jp/pdf/services/20200929_BlackBelt_HowToScale_Aurora_MySQL_pub.pdf)はざっと目を通して概要を理解している
– TerraformでのAWSサービスの構築経験がある

構成についても前回同様、Publicなサブネット上にライター・リーダーインスタンスを構築する。

![public_image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111314/46a2548a-c1de-22

元記事を表示

re:Invent 2021 セキュリティ関連の新サービス、アップデートまとめ

re:Invent2021で発表されたセキュリティ関連サービスのアップデートをまとめてみました。

1/29 20:00 から [JAWS-UG横浜 #43 AWS re:Invent 2021 Recap Security](https://jawsug-yokohama.connpass.com/event/237168/) でこのあたりをキャッチアップしますので是非ご参加ください

## Amaozn Inspector の刷新を発表
https://aws.amazon.com/jp/blogs/news/improved-automated-vulnerability-management-for-cloud-workloads-with-a-new-amazon-inspector/

– **継続的な自動評価スキャン** – 定期的な手動スキャンに取って代わります。

– **自動リソース検出** – 有効にすると、新しい Amazon Inspector は、実行中のすべての Amazon Elastic Compute Cloud (Amazon EC2) インス

元記事を表示

スケーラビリティのあるブログサービスを構築する

この記事はAWS初学者を導く体系的な動画学習サービス
「CloudTech」の課題カリキュラムで作成しました。
https://kws-cloud-tech.com

## 前回までの環境
前回までのハンズオンでは、以下の図のような冗長構成のブログサービスを作成しました。方法については前回の記事をご覧ください。
https://qiita.com/pd1/items/cf17af9641503e7c1916
![スクリーンショット 2021-10-21 23.34.15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1006791/153f7d30-cde0-fc58-77f6-2a89eae460a7.png)

## はじめに
 前回の構成の目的は、冗長化をすることで耐障害性を高め、負荷分散をしていくことになります。しかし、この状態では、キャンペーンなど突然大量の接続があった場合に、準備しておいたEC2以上の対処ができなくなってしまいます。
 そこで今回の目的は、前回の弱点を補う

元記事を表示

Amazon Virtual Private Cloud (VPC) は AWS での IP アドレス管理を簡素化する IP Address Manager (IPAM) を発表

# はじめに

https://aws.amazon.com/jp/about-aws/whats-new/2021/12/amazon-virtual-private-cloud-vpc-announces-ip-address-manager-ipam/

> Amazon VPC IP Address Manager (IPAM) は AWS ワークロードの IP アドレスの計画、追跡、モニタリングを簡単にする新しい機能です。IPAM の自動ワークフローにより、ネットワーク管理者はより効率的に IP アドレスを管理することができます。
>
> VPC IPAM により、ルーティングやセキュリティーのニーズに基づいて **IP アドレスを簡単に整理**し、**IP の割り当てを管理するためのシンプルなビジネスルールを設定することができます。**IPAM を使って、VPC への IP アドレスの割り当てを自動化することにより、保守が困難で時間のかかるスプレッドシートベースのアプリケーションや自社開発の IP プランニングアプリケーションを使用する必要がなくなります。このオートメーシ

元記事を表示

AWS認定11冠達成したので振り返りと個人的ロードマップを考えてみた

# はじめに
今月未取得だった残りのAWS認定試験に合格して、無事に11冠を達成したので振り返りと個人的なロードマップを考えてみました。
この記事がどなたかのご参考になれば幸いです。

# 謝辞
自分が合格できたのは、他の方の合格記や出版された対策本、練習問題をまとめて公開してくださっている方々のおかげだと思っています。
まずはその方々に感謝させていただきます。ありがとうございました。

# 事前情報
* AWS経験は2年と半年程度
* 普段はデータ分析系のサービスを使うことが多い
* 最近は業務でセキュリティ周りのこともやる機会が増えてきた

# 注意
* 本記事に書いてあるのはあくまで個人の意見です。
* 受験される方の性格や所有スキルによってこの勉強法が合わない可能性があります。
* 自分は資格試験を必要なスキルの知識を手っ取り早く体系的に学ぶための手法の1つとして考えています。

# 受験履歴
AWS認定試験は以下の順番で受験していきました。SAAは旧試験で、それ以外は新試験で受験しています。
SAAの後にDASを受験しているのは普段データ分析系のサービスをよく使っていたこ

元記事を表示

OTHERカテゴリの最新記事