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

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

クロスAWSアカウントでS3オブジェクトにアクセスする

## やりたいこと

AWSアカウントA:
・S3バケットにVPCエンドポイントしかアクセスできないように制限をかけています
・S3バケットにはRefererアクセス制限をかけています

AWSアカウントB:
EC2などからAWSアカウントAのS3バケットへアクセスしたい

## おまかの流れ
AWS記事に書いているとおり
https://repost.aws/ja/knowledge-center/s3-instance-access-bucket

## 大変なところ
S3バケットのポリシーを書く

この記事にはだいたい書いています

## 実際にどうやって書くのか
“`
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Sid”: “Deny get requests not through vpc endpoint”,

元記事を表示

Amazon EC2へのInstanaエージェント導入&セットアップ

# はじめに
IBM Instana Observability(以下、Instana)は、アプリケーションパフォーマンス管理(**A**pplication **P**erformance **M**anagement | APM)を実現する監視ソフトウェア/SaaSです。

Instanaを利用するには、監視対象のアプリケーションがデプロイされているホストに
エージェントを導入する必要があります。今回は、Amazon EC2にエージェントを導入する方法をまとめます。
(2024/2/21時点)

公式ドキュメントはこちらです。併せてご確認ください。
https://www.ibm.com/docs/ja/instana-observability/current?topic=agents-amazon-web-services-aws

# Amazon EC2にInstanaエージェントを導入する
## 1. エージェント導入先のEC2インスタンスを構築する
1. AWSコンソールにログインし、検索ボックスで”EC2″と入力/検索し、EC2の画面を開きます。
2. “Launch

元記事を表示

AWS CLF入門 – ストレージ編

## はじめに
AWS CLF (AWS Certified Cloud Practitioner) を取得した際の学習記録をアウトプットとして以下に記す。

## リンク
[ネットワーク](https://qiita.com/yashiuri/items/31b2c9c3c49c2584cd01)
[セキュリティ](https://qiita.com/yashiuri01/items/73e5310b09ff41912862)
[コンピューティング](https://qiita.com/yashiuri01/items/9eaf71a1590e7815f9ef)
[コンテナ]()
[スケーリング]()
[ストレージ]() ←今ここ
[データベース]()
[メッセージ]()
[モニタリング]()
[デプロイ]()
[コストとサポート]()
[移行とイノーベーション]()
[AWS製品群一覧]()

## **ブロックストレージ、オブジェクトストレージ、ファイルストレージ**

| | ブロックストレージ | オブジェクトストレージ | ファイルストレージ |
| — | —

元記事を表示

Amazon LightsailのDNS Zoneを使用している場合のAmazon SESのドメイン認証の手順

# 当記事の概要
Amazon Lightsailは、月額数ドル〜でAWS上に簡単にサーバ・Webアプリケーションを構築できるサービスです。

このAmazon LightsailでRedmineサーバを構築した際、Redmineからのメール通知用に Amazon SES も一緒に利用したのですが、SESのドメイン認証が当初うまくいかなかったので、その解決方法を記載します。

# ハマったポイント
Amazon SESからメールを送信するためには、送信元のメールアドレス、または、ドメインを事前に検証する必要があります。

このうち、ドメイン検証では、例えばAWSのRoute 53でドメインを取得し、Route 53でDNSを管理している場合、SESの設定の中で容易にドメイン検証を行うことができます。ただ、**LightsailでDNS Zoneを作成している場合、SESの設定で完結せず、LightsailでのDNS設定が必要**になります。

整理すると、当記事の対象とするケースは以下になります。

– ドメインはRoute 53で取得済み
– LightsailでDNS Zoneを作

元記事を表示

EC2ブートストラップ

EC2ブートストラップとは
Amazon EC2 インスタンスを起動するとき、インスタンスにユーザーデータを渡すオプションがあります。インスタンスの起動時に、データを使って、一般的な自動設定タスクを実行したり、スクリプトを実行したりできます。

Amazon EC2を起動する際に、インスタンスにユーザーデータを渡すオプションになります。
具体的には、EC2>インスタンス起動>高度な詳細で設定をする流れになります。

以下をユーザーデータとして渡すことができ、組み合わせることもできます
・シェルスクリプト
・cloud-init
・AWS CLI
・PowerShell
・Batch

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3146038/520425b2-cf66-ebd3-0faa-7731a1fab1ec.png)

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

元記事を表示

AWS CDK integ-testsを活用した「データ境界」S3アクセステストの自動化

# はじめに

2024年2月14日に、Security JAWS【第32回】で以下を発表しました。

[](https://speakerdeck.com/mhrtech/secjaws32)

上記では、AWS CDK integ-tests を使ったデータ境界のアクセステストについて、終盤に少しだけ紹介しました。アイデンティティベースポリシーやリソースベースポリシーなどを複雑に組み合わせた場合、机上でアクセス可否を正確に把握するのは難しいです。そこで、データ境界におけるアクセステストで integ-test を活用できないか検討しました。

本記事では、本テーマを深堀して解説し

元記事を表示

AWS ALBからのリクエストだけ許可したい場合のEC2に設定するセキュリティグループのインバウンドルールの設定

## 概要

下記のような構成の場合、星1と星2の部分にセキュリティグループを設定することが一般的である。

![Cursor_と_work__Visual_Workspace_for_Innovation.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/306417/824187d9-06da-5578-2cea-c1d33b70e15c.png)

この場合、言わずもがなプライベートサブネット内部のEC2にはALBを通して接続してほしい。(ブラウザからのアクセスの場合)
その要望に答えるには星2のセキュリティグループを設定して「ALBからのインバウンドルールのみ許可」してあげれば良い。

「ALBからのインバウンドルールのみ許可」について 簡単にまとめる。

## 方法

実は非常に簡単である。
「星2のセキュリティグループのインバウンドルールのHTTPSの設定のソース(リクエスト送信元)を星1のセキュリティグループに設定する」だけである。

参考文献でも紹介されているのでぜひご確認いただきたい。

元記事を表示

構築したWebサービスのレスポンスが異常に遅い問題を突き止めるまでの奇跡

## 概要

構築したWebサービスのレスポンスがエラーにはならないもの、1分近くかかる事があり、原因がわからず先輩エンジニアさんに泣きついたところ、突き止め方を教えてもらえたので経験としてまとめておく。
この場を借り先輩エンジニアさん方には改めてお礼申し上げます。本当にお力添え感謝致します。ありがとうございます。

また、本記事は奇跡を記したもので、解決方法は一切記載していない。

## 症状

ブラウザからの当該Webサービス上での継続リクエストでは特段問題ないものの、数分ブラウザを放置し、その後リクエストを送るとレスポンスが帰るまで約1分くらいかかる。
エラーは出ないものの(最初は別件でエラーが出ていたのでこちらで解決した→https://qiita.com/miriwo/items/a681350ba37164f5c3ea)

## 構成概略図

本当はもっと複雑だが簡単に図にしておく。矢印がクライアントからのリクエストを表す。もちろんレスポンスはこの矢印とは逆の方向でクライアントに戻る。

![Cursor_と_work__Visual_Workspace_for_Innov

元記事を表示

EC2の中のNginxのログの場所

## 概要

自身の環境の場合のEC2の中のNginxログの出力場所を簡単にまとめる。

## 場所

自身の環境の場合、下記ディレクトリにログが存在した。

“`
/var/log/nginx
“`

元記事を表示

EC2の中のApacheのログの場所

## 概要

自身の環境の場合のEC2の中のApacheログの出力場所を簡単にまとめる。

## 場所

自身の環境の場合、下記ディレクトリにログが存在した。

“`
/var/log/httpd
“`

元記事を表示

Route53 DNSクエリログを出力するように設定する

## 概要

Route53にて DNSクエリログを出力するように設定する方法を簡単に説明する。
ちなみにログはバージニア北部リージョンのCloudWatchに出力される。
また詳細なログの内容の説明は本記事では行わない。

## 方法

1. ログを出力したいドメインが管理されているホストゾーンの詳細画面を開く。

![Cursor_と_miriwo_work_-_詳細.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/306417/d06bede6-f9b9-bff9-ef53-99e2fc168ca3.png)

1. 「クエリログの設定」を開く。

![Cursor_と_miriwo_work_-_詳細.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/306417/407ec537-d30f-ec70-9d48-266e1cebd642.png)

1. 「アクセス許可なし」と表示されていたら「アクセス

元記事を表示

ALB アクセスログと接続ログをS3に出力するように設定する

## 概要

ALBにリクエストが来たことをログに出力する方法を簡単にまとめる。
また出力されるログの内容も本当に簡単にだけ説明する。(「こんな情報が出ます」レベルの共有です。)細かい項目に関しては別途ご自身でお調べいただきたい。

## ALBで出力できるログ

ALBでは主に「アクセスログ」と「接続ログ」の出力をする事ができる。
ログはファイルとしてS3に出力される。

### アクセスログ(Access Log)

「どのようなリクエストがきてどのくらい処理に時間がかかったか」が詳細に書いてあるログ
いっぱい情報が書かれてるから一行がながーい

### 接続ログ(Connection Log)

「誰が接続したか」が書いてあるログ
日時情報、IPアドレス、接続結果ステータスが書いてある
シンプル

## ALBでログを出力させる方法

### 概要

先にも記載したがALBのログはS3にファイル形式で出力される。(たしかリクエストがあった場合5分刻みに区切ってファイルが出力されたはず。)
なのでバケットを用意するか、既存バケットにフォルダを作成しておこう。
筆者はログ単体のバケッ

元記事を表示

AWS認定クラウドプラクティショナー試験対策(コンピューティング)


AWS認定クラウドプラクティショナー試験対策(コンピューティング)

**コンピューティングとは**

 AWSのコンピューティングは、インターネットを介して利用できるクラウドベースのコンピュータリソースとサービスを提供します。

 これには、仮想サーバー(EC2)、オートスケーリング、ロードバランシング(ELB)などが含まれ、ユーザーは必要に応じてこれらのリソースを簡単に設定、使用することができます。

 AWSを使用することで、企業や開発者は物理的なハードウェアを自前で用意することなく、アプリケーションやサービスを迅速に構築して展開できます。

 AWSのコンピューティングサービスは、柔軟性とスケーラビリティを提供し、コスト効率の良い方法でコンピューティングリソースを利用できるように設計されています。

**コンピューティング分類**

| サービス | 名前の由来 | 具体例

元記事を表示

AWSを極めたい人のための1秒で読める最初の最初の最初の最初の最初の1記事

# 謝罪

嘘をつき、
申し訳ありませんでした。

1秒では読めませんでした。4.23秒で読めます。

# AWS とは

Amazon社が、だいぶ前から開発を行い、そこそこ前から世の中に提供を開始した、サービスで、

200を超えるサービスがあるので、全部は言えない。

調べてください。

代表的なものは、

・Webサーバー:EC2
・APサーバー:EC2(Webサーバと同じものを使います:同じサービスで、両方できちゃうなんてしゅごいっっっっ!)
・データベースサーバー:RDS
・ストレージ:S3
・仮想的なネットワークを構築できんぜ。と言う要望に応えてくれるサービスをクラウドに自分の手で構築したい人のためのサービス:VPC
・サーバーレス(名前の由来はよくわからないが、トリガーを設定しておくと、自動でイベントを実行してくれるサービス):Lambda
・DNSサービス:route53(名前がかっこいい:私が愛知に住んでた時、彼女とよく行っていたカフェの名前でもある)
・コンテナ(Dockerを構築したい!な場合):ECR
・ブロックチェーンのネットワークを作成できる(俺は本当は

元記事を表示

AWSの試験履歴が表示されなくなった話

# はじめに

AWS試験の申込内容や履歴を確認できる[AWS認定サイト](https://www.aws.training/Certification)にて、**過去の試験情報やバウチャー等が一切表示されなくなった**件について、事象および解決策を書いてみようと思います。

## 何が起きたのか
以前はAmazonアカウントでログインしていたのですが、2024年2月からAmazonアカウントでのログインが不可となり、AWS Builderのアカウントでのログインが必要となりました。

そうと知った2024年1月ごろに、以下のことを行いました。

①AWS Builderを登録(あいうえお@gmail.com)
②Amazonアカウントのメルアド変更
 (かきくけこ@yahoo.co.jp → あいうえお@gmail.com)

1月中は、試験履歴等が表示され、試験の登録も行っていたのですが、**2月になってから表示されなくなりました。**

## 複数アカウントが作成されていた
[

元記事を表示

プライベートサブネットに配置しているDBにローカルのDBクライアントからセキュアに接続する方法

プライベートサブネットに配置しているAuroraなどのDBに、ローカルのDBクライアント(DBeaverやA5:SQL Mk2など)からセキュアに接続する方法を紹介します。
## 従来の接続方法
以前は、プライベートサブネット上のDBに接続する際、パブリックサブネット上に設置された踏み台ホストを経由して接続する方法が一般的でした。
しかし、この方法は一時的にパブリックサブネットを作成する必要があり、セキュリティ面での不安がありました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3694674/d81161bd-8e72-b69a-5ee5-30d4ff57e5d5.png)
## 今回構築する接続方法
System Managerの機能を活用し、プライベートサブネット上の踏み台ホスト経由で、DBに接続したいと思います。
この構成の場合、パブリックサブネットが無くてもプライベートサブネット上のDBに接続可能です。
![image.png](https://qiita-image-sto

元記事を表示

AWS CloudWatchのLiveTailがLambdaデバッグに便利

最近、でもないけど半年ほど前?に追加されたLiveTailがLambdaのデバッグにめちゃ便利だった話。

## 前置き
直接環境にアクセスできるときはTailコマンドを使ってアプリケーションのログをリアルタイムで見ることはよくあります。それのクラウド版です。
ELB配下で複数台動くマシンのログをリアルタイムで確認するのに少しだけ使っていました。
これはこれで強力です。だって特定のマシンに乗り込んじゃうとロードバランスされた後でどこにログが落ちるかわからないので。
と言ってもそこまでありがたみを感じることなくあんまり使ってませんでした。

## 環境
AWS CloudWatch Logs – LiveTail
Lambda python3.12

## Lambdaのデバッグ
初期のDebugにはprintを使ってResultに表示されるログを確認しながら作業します。
VisualStudioを使ってやるという人、ごめんなさい。ローテクでお話が進みます。
ほとんどこれで事足りるぐらいの比較的軽い処理しか乗せないので大丈夫です。

![スクリーンショット 2024-02-20 1516

元記事を表示

複数のクロスアカウントでS3イベント通知を構築するCfnテンプレート

# はじめに
S3バケットにオブジェクトを配置・更新した時に、複数の別のアカウントのLambdaから当該オブジェクトを取得してゴニョゴニョしたい、といったことがありました。
一部、S3の制約に引っかかるなどして手戻りもあったので作業の記録として記事に残します。

# 本文
## S3イベント通知
S3バケットのオブジェクト配置・更新をトリガーにLambdaなどをキックしたい場合、S3のイベント通知を使用することが有効です。

S3オブジェクトのイベントタイプを指定することで、オブジェクトが作成された時・削除された時など、必要に応じてイベントを指定することができます。
また、イベント通知のフィルターを活用することで、特定のファイルに絞り込むことが可能です。
大量のファイルを扱うバケットでも、特定のファイルの特定オブジェクトイベントのみLambdaをキックする、といったことが可能です。

## 制約
ただ、この通知設定において、フィルターのプレフィックスとサフィックスを指定している、かつ同じイベントタイプを設定しようとすると、エラーとなります。

例えば、「はじめに」に書いたように、特定オ

元記事を表示

【Node.js】LambdaからDynamoDBのデータを取得する方法

## はじめに
Lambdaを使用してDynamoDBのデータを取得する方法について紹介します:point_up_tone1:
データ取得までの流れは 画面 → API Gateway → Lambda → DynamoDB となっていますが、画面からLambdaを呼び出すところまでは割愛します。

## ソースコード
userIdを条件にして、データを取得するという例を紹介します。

“`javascript
const { DynamoDBClient } = require(‘@aws-sdk/client-dynamodb’);
const { QueryCommand, DynamoDBDocumentClient } = require(‘@aws-sdk/lib-dynamodb’);

const client = new DynamoDBClient({});
const docClient = DynamoDBDocumentClient.from(client);

exports.handler = async(event) => {
// Cloud

元記事を表示

AWS Certified Cloud Practitioner 合格体験記

# 概要
AWS Certified Cloud Practitioner (CLF-C02) に知識ゼロの状態から合格したので、合格までの道のりやもっとこうしておけばよかったと感じていることを記録します。

# 受験までの勉強
– インプット
– 書籍
『AWS認定資格試験テキスト AWS認定 クラウドプラクティショナー』(https://www.sbcr.jp/product/4797397406/)
定番書籍。受験を決めてからすぐに購入しましたが、個人的にはあまり使用しませんでした…
マネジメントコンソールの画像なども使用して細かな部分まで解説されているため、詳細まで理解したい人にはお勧めです。
合格さえできればいいという方は購入しなくてもいいかなと思います。
– 動画
– AWS Skill Builder(公式)
https://explore.skillbuilder.aws/learn/course/external/view/elearning/1875/AWS-Cloud-Practi

元記事を表示

OTHERカテゴリの最新記事