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

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

Slack連携による生産性向上の施策(その2)〜Slack App編〜

# はじめに
こちらの記事は三部構成になっております。
– [Slack連携による生産性向上の施策(その1)〜Workflow Builder編〜](https://qiita.com/oc-arimura/items/ff4c194c617a9d309d9c)
– Slack連携による生産性向上の施策(その2)〜Slack App編〜
– Slack連携による生産性向上の施策(その3)〜AWS Lambda編〜

また、全ての記事の内容を含んだ動画も用意しております。
動画で確認したい方は[コチラ](https://www.youtube.com/watch?v=JE7ZVJ9yE9Q)まで。
※動画開始50分頃からの内容になります。

# Slack App登録の前に
Slack Appから呼び出されるAPIの準備をします。
## Lambda関数作成
1. AWSのコンソール画面でサービス名に `lambda` と入力し、サービス一覧から【Lambda】をクリック
![スクリーンショット 2024-04-11 17.41.10.png](https://qiita-image-s

元記事を表示

【HULFT Square 】ファイルの先入れ先出し、FIFOをやってみた。

## はじめに

本記事では “ゆる~く” HULFT Squareのご紹介をします。
HULFT Squareについてはこちらの[公式HP](https://www.hulft.com/service/hulft-square)、[公式マニュアル](https://www.hulft.com/help/ja-jp/HULFTSquare/homeindex.htm)へ。
以下内容はご参考となりますので、実際にご検証、マニュアルのご参照をお願い致します。

## 今回の内容
受発注業務でよくある。。。先入れ先出し。。。FIFOをHULFT Square単体で
やってみます。

:::note info
【先入れ先出し(FIFO)に使用する時刻】
HULFT Squareストレージに格納されているファイルの最終更新日時を用いて、
ファイルの順序制御を行います。
S3に保存された日時を使う方法も実装できると思っていますが、
今回は見逃してください。
:::

$\huge{↓やることイメージ↓}$

S3に保存されているデータを取得し、HULFT Squareスト

元記事を表示

【AWS】Amazon Security Lakeの概要とアクセス管理の検証

# はじめに
2023年5月に一般提供を開始したAmazon Security Lake(以後Security Lakeと記載)についてサービスの概要と特徴であるアクセス管理(データアクセス,クエリアクセス)に焦点をあてて記載します。

https://aws.amazon.com/jp/about-aws/whats-new/2023/05/amazon-security-lake-generally-available/

## 今回解説を行わない内容
Security Lake 環境構築の諸設定解説
Security Lake に蓄積したデータの可視化

# 目次
・Security Lakeとは
・メリット
・システム構成図とアクセス管理の検証箇所
・導入ステップ
・アクセス管理動作検証
・どのような活用が期待されるか
・注意点

# Security Lakeとは
Security Lakeは、**フルマネージド型のセキュリティデータレイクサービス**です。
AWS環境・SaaSプロバイダー・オンプレミス・クラウドソースからのセキュリティデータ(ログ・イベントデータ)を、

元記事を表示

AWS Lamda関数作成入門してみます。 Part.2

# 前回のおさらい
[前回投稿した記事](https://qiita.com/keitootiek/items/344926115355acb33934)の続きです。

前回はPracticeLamdaという名前のLambda関数をPythonを選択肢して作成、
コードは特に変更せずデプロイ+テストの挙動を確認しただけでした。
それだけでは何も身につかないので実際にAPI作成へチャレンジしてみます。

## 日本の祝日取得APIを作成してみる
前回の続きから作業していきます。
![スクリーンショット 2024-04-15 18.04.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3511203/fa77158d-992b-e9c0-2779-68f3cc9013a8.png)

テストのタブを選択→新しいイベントを作成へ
「PracticeLamdaEventTst」という名前のイベントを作成します。
![スクリーンショット 2024-04-15 18.27.08.png](https://qii

元記事を表示

net::ERR_SSL_PROTOCOL_ERROR の原因

# はじめに
私は2023年10月より、内定直結型エンジニア学習プログラム「アプレンティス」に2期生として参加しています。

https://apprentice.jp/lp

現在、アプレンティスの課題としてオリジナルプロダクトの開発を行っています。
その中で、AWS の S3 にアップロードした画像を、CloudFront を経由してブラウザで表示していたのですが、何度も表題のエラーが発生しました。

![スクリーンショット 2024-04-15 23.58.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3070527/6ec691e5-4623-15c0-0175-36a55defae62.png)
今回は、そのエラーの原因が判明したので、まとめようと思います。

参考までに、インフラ構成は以下の通りです。
![VegEvery.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3070527/77562f2d-

元記事を表示

Aurora DB インスタンスの削除

– クラウドを普段触っていく中での作業を、メモベースですが書いて行こうと思います
– あまりこらずに書いていく予定です

# ゴール
– 最近お客さんがaws 費用を気にし始めたため、不要なaws リソースを削除していく作業が発生

# 現在のRDS の構成
![名称未設定3.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3551379/020ecfa7-f7e9-c920-691c-dbef063aa610.jpeg)
– インスタンスサイズも小さいので、まぁいいやでこの構成に

– ステージング環境でAurora の複数台構成はやはり不要となり、リードレプリカを削除することに

# アプリケーション構成
– ALB -> ECS(Fargate) -> RDS
– Fargate にはPHP が動いていて、Laravel で書かれている

# 削除までに対応したこと
– 画面にユーザ・管理画面があり、それぞれのLarabel でどのようにDB を参照しているか確認
– ユーザ画面
– リー

元記事を表示

諦めるな!AWS-SAPの合格を目指そう!

# 概要
先日AWS-SAPを何とか取得できました。
SAPというと、問題文や選択肢がとても長いうえに
3時間という長丁場で嫌になる人も多いのでは・・

本記事ではそんなSAPを少しでも効率的に合格を目指すことの
助けになればという願いを込めて投稿してみました!

SAPがだるいあなた、途中で挫折してしまったあなた。。
この記事を見てもう一度挑戦してみませんか?

## 注意書き
本記事で紹介するサービスには有料なものも含まれております。

またあくまで本記事はAWS-SAPを効率良く取得することをメインに記載しておりますので、
それでも問題なければご参考になればと思います。

## AWS-SAPについておさらい
・75%以上のスコア(750点以上)の取得で合格
・問題は全部で75問
・制限時間は180分
→長文の割に、1問あたり2分ちょいしかかけられない

:::note warn
2024年4月からAWSのプロフェッショナル試験は
3万円から4万円(税別)に値上げしています。
:::

記事を記載した時点では、以下のような再受験無料キャンペーンを
やっていました↓
※このようなキ

元記事を表示

AWS Cognito ID Pool 設定

【第2弾】AWS駆け出しエンジニアとして
前回作成した User Pool に対して ID Pool を設定するところまでを記述します。

## 前回の User Pool の設定はこちら
https://qiita.com/trhgwr0/items/8505f3309194f77a7109

## ID Poolの初期設定
1.画面右の「ユーザープールを作成」を選択
![IDプール1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/483720/f050e472-7cb0-f7fd-c7e7-1ab50c4b6d9c.png)

2.画面右の「IDプールを作成」を選択
![IDプール2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/483720/bd471dd0-f2d1-6745-0fb0-38384b4bc03e.png)

3.「認証された ID ソース」から「Amazon Cognito ユーザープール」を選

元記事を表示

test terraform state

”’
import json

# 替换这里的路径为你的tfstate文件的实际路径
tfstate_path = ‘path_to_your_tfstate_file.tfstate’

# 要寻找的子网名字
subnet_name_to_find = ‘dev-s4-vpc-sbnt-cmp1’

# 读取tfstate文件
with open(tfstate_path) as file:
tfstate = json.load(file)

# 初始化subnet_id为None,这样我们就可以检查是否找到了子网ID
subnet_id = None

# 遍历tfstate文件中的资源
for resource in tfstate[‘resources’]:
if resource[‘type’] == ‘aws_subnet’ and resource[‘mode’] == ‘managed’:
for instance in resource[‘instances’]:
if instance[‘attribute

元記事を表示

ローカルのdocker-compose内でX-Ray Daemonを実行

DevContainerをdocker-composeを利用して構築しています。

localstack等でローカルでも本番に近い環境を整備しているのですが、今回新たにX-Ray Daemonを導入したので書いておきます。

## Dockerfile

最初は公式のイメージをそのまま利用しようと思ったのですが、xrayプログラムを起動する `xray` ユーザのUIDが10001となっていて、 `~/.aws` 配下のファイルのバインドなどでPermissionが扱いにくく、参考URLの通りに自身でDockerfile作りました。

“`dockerfile
FROM amazonlinux

ARG AWS_REGION=ap-northeast-1

RUN yum install -y unzip
RUN curl -o daemon.zip https://s3.A⁢W⁢SR⁢E⁢G⁢I⁢O⁢N.a⁢m⁢a⁢z⁢o⁢n⁢a⁢w⁢s.c⁢o⁢m/a⁢w⁢s−x⁢r⁢a⁢y−a⁢s⁢s⁢e⁢t⁢s.{AWS_REGION}/xray-daemon/aws-xray-daemo

元記事を表示

SOA対策まとめ2

ただのメモです。随時更新していきます

・A レコード
A(Address Record)レコードは、ドメイン名をIPv4アドレスにマッピングします。
例: example.com -> 192.168.0.1

・CNAME レコード
CNAME(Canonical Name)レコードは、一つのドメイン名を別のドメイン名にマッピングします。
例: www.example.com -> example.com

・組織独自のタグを生成したい場合
ユーザー定義のコスト配分タグとしてアクティブにします。
※AWS 生成コスト配分タグは、AWS が自動的に割り当てるタグです

・Amazon Detective とは
Amazon Detective は、AWS 環境における セキュリティ問題や不審なアクティビティ を 分析 し 調査 するためのサービスです。

従来、セキュリティ問題の調査には、ログの分析 や ネットワークトラフィックの監視 などの手動作業が必要でした。しかし、Amazon Detective を使用すると、これらの作業

元記事を表示

CDKでBatchを構築したら Resource handler returned message: “Resource of type ‘AWS::Batch::ComputeEnvironment’ with identifier ‘MY_ARN’ d id not stabilize.” (RequestToken: XXX, HandlerErrorCode: NotStabilized)

AWS CDKでBatch環境を構築しようとしたところ、以下のエラーでハマりました。

“`
Resource handler returned message: “Resource of type ‘AWS::Batch::ComputeEnvironment’ with identifier ‘MY_ARN’ d
id not stabilize.” (RequestToken: XXX, HandlerErrorCode: NotStabilized)
“`

コンピューティング環境の作成に失敗しています。

根本的な原因としては、 `cdk.context.json` に記述されているネットワーク設定が古かったせいでした。
VPCの作成もCDKで行っていて、設定を変えたので元々あったcdk.context.jsonと実際の環境に差が出てしまったのが、よくなかったようです。
`cdk.context.json`を削除して実行したところ、最新の情報を反映した`cdk.context.json`が作成され、無事に構築することができました。

参考
https://stackov

元記事を表示

#AWS S3にアップロードされたZIPファイル自動解凍

# S3にアップロードされたZIPファイル自動解凍について:
Cloudfrontに繋いでいるS3へのファイルアップロードを簡素化するため、Zipファイル格納用S3に新しいZipファイルのアップロードが検知されたら、対象Lambdaが有効化され、Zipファイル格納用S3からZipファイルをダウンロードして解凍し、Cloudfront用S3にアップロードします。

本記事はそれを実現するlambdaを紹介いたします。

# 処理フロー:
1. Zip格納用S3にZipファイルのアップロードが検知された

2. 自動解凍&アップロードLambdaを呼び出す

3. (Lambda) Zip格納用S3から対象Zipファイルをダウンロードする

4. (Lambda) 対象Zipファイルを解凍する

5. (Lambda) 解凍した資材一式をCloudfront用S3にアップロードする

終了

# Lambda作成:
以下の手順を踏んで作成します

1. AWSコンソール画面の上部にある検索欄から「Lambda」を入力し、検索する
2. Lambda詳細画面の左メニューの「関数」を

元記事を表示

#AWS Lambdaを使用してメールとTeamsにアラーム通知を飛ばす

# Lambdaを使用したアラーム通知について:
本記事はアラーム通知の必要性からlambdaの構築、サンプルlambdaの紹介の流れで説明したいと思います。

AWSを運用する際にアラームやエラーログをメールやTeamsに通知する必要があります:

● 障害迅速な対応:アラームやエラーログをメールで受け取ることで、問題が発生したことを即座に把握し、迅速に対応できます。特にシステムの可用性に重要な影響を与えるエラーの場合、即座の通知は早期な障害復旧に大きく影響します。

● リアルタイムな監視:エラーログの自動通知はリアルタイムでシステムの健全性を監視する手段の一つです。通知を受けることで、運用チームは問題が発生しているかどうかをすぐに把握できます。

● ユーザーへの影響最小化:エラーが発生した際にユーザーに影響がある場合、それに早急に対応することで、ユーザーエクスペリエンスの損失を最小限に抑えることができます。

● トラブルシューティング:エラーログを通知メールとして受け取ることで、運用チームは迅速に問題の原因を特定し、解決策を見つけることができます。これはサービスの安定性やパフ

元記事を表示

Lambdaで実装するIotトピックのSubscriberとPublisher

# はじめに
最近、過去に業務で設計・実装したAWS IotトピックのSubscriberとPublisherのインフラコードを整理してみました。これを機に、アーキテクチャや実装した内容について記事で紹介しようと思います。

ソースコードは下記repoをご参照ください。
※今回紹介する内容は汎用的なものであり、実際業務で実装したアーキテクチャやアプリのロジックの記載はありません。

https://github.com/to-fmak/iot-topic-subscriber-publisher-demo

# やりたいこと
– Iotデバイス等からIotトピックに送られたメッセージをsubscribeし、DynamoDBに書き込みたい
– 特定のDynamoDBにアイテムが作成or更新or削除された際に、そのイベントの詳細をIotトピックにpublishし、Iotデバイス等で受信したい

# アーキテクチャ
## Subscriber
![iot-demo-subscriber.png](https://qiita-image-store.s3.ap-northeast-1.am

元記事を表示

【AWS】Terraformを簡単に動かしてみる

前回はTerraformを動かす事前の環境構築を実施しました。
今回は実際にTerraformを動かし、AWSにEC2インスタンスを作成してみます。

# 目次
1.概要
2.tfファイル作成
3.Terraform実行
4.AWSリソースの削除

# 1.概要
・Terraformを利用し、AWS環境にEC2インスタンスを作成します。
・事前の環境構築は完了済みとします。
・参考:https://developer.hashicorp.com/terraform/tutorials/aws-get-started/aws-build

# 2.tfファイル作成
### 【前提】
・tfファイルはHCLと呼ばれる、HashiCorp社開発の独自記法となる。
・基本的な構文は以下となります。
“`ruby
resource “リソースの種類” “リソース名” {
設定項目1 = 値1
設定項目2 = 値2
設定項目3 = 値3
}
“`
・リソースの種類、設定項目はTerraformで定義されている名前にする必要あり。(任意の名前ではNG)
・リソ

元記事を表示

LambdaからEventBridge Schedulerを作成してみた

# 背景・目的
EventBridgeをアプリケーションから作成する機会がありましたので、簡単に試してみます。

# 概要
## Amazon EventBridge スケジューラとは
[Amazon EventBridge スケジューラとは](https://docs.aws.amazon.com/ja_jp/scheduler/latest/UserGuide/what-is-scheduler.html)を元に整理します

> Amazon EventBridge スケジューラはサーバーレススケジューラで、一元化されたマネージドサービスからタスクを作成、実行、管理できます。EventBridge スケジューラは拡張性が高く、270 を超える AWS サービスと 6,000 を超える API オペレーションを呼び出すことができる何百万ものタスクをスケジュールできます。EventBridge スケジューラでは、インフラストラクチャをプロビジョニングして管理したり、複数のサービスと統合したりすることなく、スケジュールを大規模に配信してメンテナンスコストを削減できます。

– マネージド

元記事を表示

【AWS】Terraformを始める前の準備をする。

経験浅いながら、Terraformを実際に動かしてみたので参考になればと思いTerraformを使う環境構築から書いてみることとします。

# 自己紹介
・年齢は25歳、エンジニア歴3年です。
・都内のSier企業でエンジニアをやっています。
・主にSASE基盤、Azureを触っております。
・パブリッククラウドとセキュリティに興味あり。

# 目次
1.概要
2.IAMユーザーのアクセスキー作成
3.AWS CLIのインストール
4.AWS CLI認証情報の設定
5.Terraformのインストール

# 1.概要
Terraformを利用して、設定ファイルからインフラ構築、変更、管理を行う為、まずはTerraformを実行できる環境を作ります。

環境
・AWS
・EC2インスタンス(Linux):Amazon Linux2
・インスタンスサイズ:t2.micr

前提
・IAMユーザーは作成済みで、「AdministratorAccess」ポリシーが適応されています。

準備の流れ
①IAMユーザーのアクセスキー作成
②AWS CLIのインストール
③AWS CLI認証情報の設

元記事を表示

CloudFront+S3でブログに使う画像を配信したい

こんにちは、駆け出し12冠エンジニアのアスカです。今回は自前ブログのための画像配信環境をセットアップしていきます。
# 画像配信用のS3とCloudFrontをセットアップする
s3とCloudFrontディストリビューション、アクセス制御に使うOACを作成していきます。
OACとはOrigin Access Controlの略でCloudFrontからS3へのアクセスを制御します。従来はOrigin Access Identity(OAI)が利用されていた部分ですね。
CDKで作成していきます。
## インフラコード(CDK)作成とデプロイ
以下のブログを参考にさせていただきました。
https://qiita.com/ta__k0/items/bd700a074c394aa4d6f4

“`ruby:backend-stack.ts
import * as cdk from ‘aws-cdk-lib’;
import { Construct } from ‘constructs’;

export class BackendStack extends cdk.Stack {

元記事を表示

AWS Lambda関数作成入門してみます。

# FaaS(Function as a Service):Lambdaとは
![Arch_AWS-Lambda_64.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3511203/1557e3c9-6f10-7eda-a726-f4dbc0d15978.png)

Lambda(ラムダ)とは、AWSのサービスの1つです。
小さな計算をサーバーなしで実行するためのサービスで、サーバレスなコンピューティングサービスなどと言う紹介のされ方が一般的です。関数の種類としては所謂イベントドリブン型と言われるやつで、特定のイベントでトリガーされ、関数が動くという仕組みです。ざっくり過ぎてすみません。

## Lamdaの料金体系
無料枠について。
アカウント作成時はLambdaの場合「1,000,000リクエスト/月」無料で使用可能です。個人開発の範囲であれば越えることはまずないと思います。

## 関数の作成

![スクリーンショット 2024-04-12 19.26.37.png](https://qiita

元記事を表示

OTHERカテゴリの最新記事