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

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

ELB(ALB,NLB,CLB)アクセスログを、CloudWatch Logsに出力させてみた(Lambda)

# はじめに
こんにちは、はやぴー(@HayaP)です。
日々のログ監視、皆さんはどうされていますか?

– とりあえず、ログをS3に出力している
– CloudWatchで見たいな、、と思いつつ諦めている

なんて人は、少なくないはずです。

そこで、今回は
ELBアクセスログを、CloudWatch Logsに出力した
経験を記したいと思います。

## 対象読者
– ログ監視設計者
– CloudWatch Logsに、ログを集めたい
– 毎回S3に、ログを見に行くのがしんどい

この記事が、クライドネイティブな運用の参考になれればと願っています。

# 概要
## ELB(ALB,NLB,CLB)アクセスログとは
ロードバランサーに送信されるリクエストの、詳細情報が記されているログです。

– リクエストを受け取った時刻
– クライアントの IP アドレス
– サーバーレスポンス
などの情報が含まれます。

https://docs.aws.amazon.com/ja_jp/elasticloadbalancing/latest/application/load-balance

元記事を表示

初めてのAWS-備忘録-

# AWSを初めてつかってみたので、便利な情報を備忘録でまとめる

随時更新中

## リンク集

– [リージョン一覧](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html)
 みんな使ってる東京は、**ap-northeast-1**
– [AWS環境の設定 入門ガイド](https://aws.amazon.com/jp/getting-started/guides/setup-environment/)
– Cloud9の作成コマンドを適当に叩いてみたら、AWSのコンソールでも作成ちゃんと作成されてた。
“`aws:bash
aws cloud9 create-environment-ec2 –name getting-started –description “Getting started with AWS Cloud9.” –instance-type t3.micro –automatic-sto

元記事を表示

AWSのcloudFormaitonでのkinesis firehose作成でエラーログが出力されないとき

cloudformationでkinesis firehoseのエラーログを出力するよう設定したがcloud watchにログが出力されない問題を調査した。

## 結論
cloud watchのlogGroupだけじゃなく、logStreamも作成しなければならなかった。
“`yaml: cloudwatch
Resources:
FirehoseErrLogGroup:
Type: AWS::Logs::LogGroup
Properties:
LogGroupName: “aws/kinesisfirehose/errLogGroup”
FirehoseErrLogStream:
Type: AWS::Logs::LogStream
Properties:
LogGroupName: !Ref FirehoseErrLogGroup
LogStreamName: “ErrorLogStream”
“`

firehoseのエラ

元記事を表示

React 18 + Javascript版Amplify v5環境で手動configureする方法

# 検証環境
* React: 18.2.0
* aws-amplify: 5.0.7
* aws-amplify/ui: 5.3.0
* aws-amplify/ui-react: 4.2.0

# 注意事項

Amplify SDKのモジュールのうち、AuthとGeoでは設定が可能なことを検証していますが、
それ以外のモジュールでは未検証です。

また、マニュアル未記載の方法につき自己責任でお願いします。

# 結論

Amplify関連のリソースを表示する前に、App.tsx等で以下のようにconfigureする。

* Amplify v4以前の設定方法
“`Typescript:App.tsx
import { Amplify } from ‘aws-amplify’;

Amplify.configure({
Auth: {
// REQUIRED only for Federated Authentication – Amazon Cognito Identity Pool ID
identityPo

元記事を表示

【AWS/お名前.com】お名前.comでドメイン取得&AWSでSSL証明書発行し、既存ELBに紐づける方法(新規ELBパターン・サブドメイン発行パターンも)

# お名前.comでドメインを取得し、AWSでSSL証明書を発行、AWSの既存ELBで使用する方法

## 前提
* サーバーは顧客Aが利用しているステージング環境を利用する
* 「HTTPS:443ポート」からのトラフィックを受けるELBが既にある(SSL登録済)
* ない場合は【補足1】に新規作成するパターンを記載しています
* 参考記事:[お名前.com管理のドメインをAWSのALBで使用する](https://shigeo-t.hatenablog.com/entry/2021/07/09/050000)

## 実施内容
1. お名前.com:ドメイン取得
2. AWS(ACM):SSL証明書取得
3. お名前.com:DNSレコード設定
4. AWS(ELB):既存ELBへのSSL追加

## 設定手順
### 1. ドメイン取得手順
* お名前.comでドメイン取得
* レンタルサーバーとのパックになっている契約もあります。今回は前提で記載したように顧客Aのサーバーを利用するので、ドメインのみの取得になりますが、サーバーも一緒に契約する場合は「[ドメインと

元記事を表示

AWS CLIで現在のAWSアカウントIDを取得する

# 記事の目的
いろんなAWSアカウントの環境をプロファイルを切り替えながら操作していて、うっかり想定外の環境を操作していたなんてことが無いように、現在操作対象となっているAWSアカウントをこのコマンドでマメに確認する

# 前提
AWS CLIバージョン `1.10.18` 以降が使えること

# コマンド

“`shell:shell
aws sts get-caller-identity
“`

“`json:実行結果の例
{
“UserId”: “XXXXXXXXXXXXXXXXXXXXXX”,
“Account”: “123456789012”,
“Arn”: “arn:aws:iam::123456789012:user/hoge”
}
“`

## アカウントIDのみを取得したい場合
“`shell:shell
aws sts get-caller-identity –query ‘Account’ –output text
“`

“`text:実行結果の例
123456789012
“`

元記事を表示

ECR のレジストリとリポジトリの違い

# レジストリとリポジトリって何が違うの?
AWS の学習を進めていて ECR についての情報を集めていると出てくる単語
* レジストリ
* リポジトリ

最初は同じ意味なのかと、表記がブレているのかと思っていたが違った。

https://docs.aws.amazon.com/ja_jp/AmazonECR/latest/userguide/what-is-ecr.html

上記のドキュメントを見ると以下のように説明がある

> レジストリ
Amazon ECR プライベートレジストリは各 AWS アカウントに 1 つ提供され、レジストリ内に 1 つ、または複数のイメージリポジトリを作成して、それらにイメージを保存することができます。

> リポジトリ
Amazon ECR リポジトリには、Docker イメージ、Open Container Initiative (OCI) イメージ、および OCI 互換アーティファクトが含まれます。

つまりこんな感じ

AWS アカウント
└ レジストリ (1個)
  └ リポジトリ (複数)
    └ イメージ (複数)

ちなみにレジ

元記事を表示

AWS SAMでJavaScript v3のLambdaをデプロイする(Node16以下)

この記事は Lambda の Runtime が Node16 以下で`SDK for JavaScript v3`を AWS SAM でデプロイする方法について記述しています。

:::note info
Node18以降はv3に対応しているので、v3で書かれたソースだけをデプロイしても動きます。代わりに、Node18以降でv2で書いている場合はv2のSDKをソースに含めてデプロイする必要があります。
:::

プロジェクトを`sam init`で作成した場合、ルートパスでデプロイすると`template.yaml`や`__tests__`などのファイルもアップロードされてしまい見た目が悪いです。そのため`template.yaml`で`CodeUri`を指定すると思います。

“`yaml:template.yaml
SampleFanction:
Type: AWS::Serverless::Function
CodeUri: src/
“`

このようにすると、v3のSDKが`sam build`の対象に含まれなってしまいます。この場合は`package

元記事を表示

re:Invent 2022 サーバーレス関連の新サービス、アップデートまとめ

# re:Invent 2022で発表されたサーバーレス関連のアップデートをまとめました
## AWS Lambda SnapStart
https://aws.amazon.com/jp/blogs/news/new-accelerate-your-lambda-functions-with-lambda-snapstart/
– Lambda ファンクションのコールドスタート時のレイテンシを大幅に短縮する新機能
– Corretto ( ランタイムのファンクションをサポートし、最大 90% のレイテンシを削減
– Firecracker のスナップショット機能と、その他いくつかの機能改善によって実現。実行環境
の初期化終了時点のスナップショットを使うことで、初期化時間を削減
– 東京を始めはじめ 9 リージョンで一般利用開始に

### 試してみました
上記のブログの通り、[springboot2のサンプルアプリケーション](https://github.com/awslabs/aws-serverless-java-container/tree/main/samples

元記事を表示

CloudWatchとAWS Lambdaを用いてAmazon EFSのスループットモード変更を自動化してみた

# はじめに

業務で使用している`Amazon EFS`の`BurstCreditBalance`が2週間程度で枯渇するため、これまではその都度手動でスループットモードを変更するという対応を取っていたのですが、`CloudWatch`と`AWS Lambda`を用いて対応を自動化してみましたのでその際に設定した内容を記します。

## 注意事項
– この記事の内容は執筆時点のものであるため、最新の設定方法とは異なっている可能性があります。
– 入力が任意の設定項目については記載を割愛している場合があります。
– 自身の備忘録も兼ねて記載しているので内容の誤りや、より効率的に実現する方法がある可能性があります。気になる点などがありましたらお気軽にコメントいただけますと幸いです。。。!

# やったこと

1. Amazon SNS – トピック作成
1. CloudWatch – アラーム作成
1. AWS Lambda – 関数作成
1. IAM – 許可ポリシー追加

## Amazon SNS

Lambda関数を実行させるトリガとしてトピックを2つ作成しました。

| トピック

元記事を表示

AWSロードバランサー(ALB)のアクセスログをS3に保存する

EC2で運用しているALB(Application Load Balancer)のアクセスログを確認したい事態が発生したが、そもそもログを設定していなかったので設定する。

1. 予めS3にログ保存用のバケットを作成しておく。
これはこれからログを取得したいALBの設定されているEC2と同じリージョンに作成すること。
2. AWSコンソールで`EC2` →`ロードバランサー`→対象のロードバランサー名をクリックする。
3. ロードバランサーの`説明`タブ内`属性`セクションにある`アクセスログ`を確認。
→`無効`になっていれば未設定なので`アクセスログを設定`ボタンをクリックする。
4. ダイアログ`アクセスログを設定`で、以下を設定する。
* `アクセスログの有効化`チェックボックスをON
* `間隔`5分か60分かのどちらかを選択します。トラフィックが比較的多い場合は5分を選択した方がファイル内で目的のログを探すのが容易になるでしょう。
* 手順1で予め作成しておいたログ保存用のバケットを指定します。
* `この場所の作成`チェックボックスをON

![F8B00B7D-

元記事を表示

AWSのEC2でDNSに関するログを取得する方法

# はじめに
本記事はAWSのEC2使用時に、DNSに関するログを取得する方法について記載しています。

セキュリティインシデント発生時に、調査を行うために重要になってくるのが**証跡**です。
例えばインシデント対応で、DNSのクエリが行われたかどうかについて確認したい場合、リアルタイムならEC2インスタンスにログインして、tcpdumpコマンドなどを用いて通信をキャプチャすることは容易です。

しかし、事後検証の場合はOS及びMWでログを取得していない限り、立証が難しくなります。

本記事では、AWSで利用可能なDNSに関するログを取得する方法と、留意点についてまとめています。

## VPCフローログ
**VPCフローログ**は、VPCのネットワークインターフェイス間のIPトラフィックに関する情報をキャプチャすることができるVPCの機能です。

VPC、サブネット、またはネットワークインターフェイス毎にフローログを作成することができます。
また取得したVPCフローログをCloudWatch Logsに送信することもできます。

**留意点**としては、フローログに関する全てのIP

元記事を表示

【合格の近道!】AWS ソリューションアーキテクトプロフェッショナルに合格するための勉強法とコツ

### 1.はじめに
***

こんにちは!株式会社ジールの@Tsubasa_Tazakiです。
先日、AWS認定資格のソリューションアーキテクトプロフェッショナル(以下SAP)
に合格致しましたので、実際の試験を受けるまでの勉強法や、
実際の試験で活用できるテクニック等をまとめさせて頂きたいと思います。

SAPでなくても、アソシエイト(SAA)・クラウドプラクティショナー(CLF)でも
活用できる情報になると思いますので、
これから受験を考えている人のお力になれたら幸いです。

### 筆者について

職種:データエンジニア
AWS歴:1年半程度
データ分析基盤構築でよく登場するサービス(S3, Redshift, Glue, IAM等)は実務で触る機会が多いが、
その他サービスは実務経験ほぼ無し。
その他資格:応用情報技術者・AWSソリューションアーキテクトアソシエイト・クラウドプラクティショナー、etc.

### 2.勉強時間と結果について
***

勉強時間

元記事を表示

AWS My First Setup – 自分流初期設定の忘備録

# 目的
– コンソールで作業するための前準備を完了させる
– Terraformで作業するための前準備を完了させる

の2点です。アカウント開設直後はrootユーザーのみですが、rootユーザーで作業したくないですね。そのためアカウント開設から作業できる状態にするまでの下準備が結構あるのですが、毎回忘れがちなので記録しておきます。

# Assume Roleを活用する
安全な作業(デプロイ)に向けて、AssumeRoleを活用します。AssumeRoleの概念は以下の動画がわかりやすいです。

動画では
– `スイッチロール用ユーザー`→`デプロイRole(Cloud Formationでデプロイするポリシーのみ)`→`CloudFormation Role(デプロイのためのポリシー全てを持つ)`

の順で権限が移っていきますが、Terrafromの場合は

– `スイッチロール用ユーザー`→`デプロイRole(デプロイのためのポリシー全てを持つ)`

の順で権限移動で十分かと思います。

#

元記事を表示

AWS WAF と CloudWatch だけで国別の BLOCK 数を可視化する

# 注意事項
今回の構成は、カスタムメトリクス料金が高騰する可能性があります。
AWS WAF ログなどの JSON 形式のログと、メトリクスフィルターを組み合わせると、柔軟にメトリクス作成ができる、という参考程度にご覧ください。

# CloudWatch Logs メトリクスフィルターで AWS WAF の国別 BLOCK 数をメトリクス化する
## 構成
AWS WAF のログを CloudWatch Logs に送信し、メトリクスフィルターを設定します。
緑の枠内を Terraform で構築しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412686/d2fcb268-49f9-5e51-9725-23f99de7778a.png)

WAF 保護対象のリソース (今回は API Gateway) 構築と、AWS WAF (Web ACL) との関連付けは別途行っています。ここでは割愛します。

## Terraform
“`terraform:variables

元記事を表示

AWSについて簡単に解説してみた①(学習まとめ)

今回は、(珍しく)時流に乗って、「Amazon-Web-Service」=「AWS」について解説していきます。
早速、行ってみましょう!~~。

AWSを利用するにはまずアカウントを作成しなければなりませんが、その際、ルートユーザーが設定されます。
ルートユーザーとは、AWSを利用するための最上位のアクセス&利用権限を伴ったロールのことです。
※通常はIAMと呼ばれる仕組みに則ってアクセス&利用権限をユーザーごとに設定しなければならない。
※ルートのロールが悪意ある者に乗っ取られると、当然、不正にサーヴィスが利用されて料金が発生してしまう。
※また、AWS上で稼働・運用しているアプリやシステムが持つ全ユーザーの個人情報なども窃取・破壊されてしまう。

AWSには4つの利用プランが用意されており、ユーザーのニーズや目的に合わせてプランを選択できます。
利用プランには、「ベーシック」「ディヴェロッパー」「ビジネス」「エンタープライズ」の4つがあります。
※ベーシックのみ無料。有料プランでは技術的サポートを受けられる。

AWSを利用するにはブラウザーを用いてアクセスする方法と、AWS-CL

元記事を表示

Cloud9 の環境複製手順

# はじめに
どうも、初めましての人は初めまして!見覚えがある方はお久しぶりです!ミツクマです?
業務で、Cloud9を使用しており、この開発環境を配布できるようにしてほしいと依頼されました。
何を調べても「共有環境」の方法はあっても、環境の複製や配布が見当たらなかったので(自分の調べ方が悪かった)
備忘録として、解決の手順を共有したいと思っています。
今回は、全てプライベートサブネットで開発したかったため、EBSを基に複製する手順を書いていきます。
AMIでも複製ができるとありました。しかし、試したりしていないので
そちらの方が知りたい方はこの記事がおすすめです!
https://qiita.com/shyle/items/112bfbbf0ee479393229

# Cloud9の開発環境の複製手順

## 複製元のEBSを作成する。
複製したいCloud9のEC2インスタンスをまず停止します。
停止の確認ができたら、スナップショットを作成します。
スナップショットからEBSを作成します。

## 新規でCloud9を作成する。
新規でCloud9を作成する手順として
a. En

元記事を表示

NetApp BlueXPを使って、AWS上のNetApp Cloud Volumes ONTAPをcross-regionでAmazon FSx for NetApp ONTAPにレプリケーションしてみた

# はじめに
前回はこちらの記事[「BlueXPのGUIから、AWS上のNetApp Cloud Volumes ONTAPをAmazon FSx for NetApp ONTAPにレプリケーションしてみた」](https://qiita.com/heyanxia/private/47772e6de946d9c87705)で同じリージョン(CVOとFSxN)、と[「NetApp BlueXPを使って、AWS上のNetApp Cloud Volumes ONTAPをcross-regionでレプリケーションしてみた」](https://qiita.com/heyanxia/private/4f66b9b0ebbcaec276f5)の記事で`cross-region`(CVOとCVO)のONTAPのレプリケーションをご紹介しました。今回は`cross-region`でのCVOとFSxNのレプリケーションを検証したいと思います。FSxNは現在`Tokyoリージョン`しか作成できないので、`Osakaリージョン`のCVOをご利用されている方は、AWS full-managed FSxNを体験し

元記事を表示

NetApp BlueXPを使って、AWS上のNetApp Cloud Volumes ONTAPをcross-regionでレプリケーションしてみた

# はじめに
前回はこちらの記事[「BlueXPのGUIから、AWS上のNetApp Cloud Volumes ONTAPをAmazon FSx for NetApp ONTAPにレプリケーションしてみた」](https://qiita.com/heyanxia/private/47772e6de946d9c87705)で同じリージョンのONTAP(CVOとFSxN)のレプリケーションをご紹介しました。今回は`cross-region`(Tokyo-Osaka)でONTAPのレプリケーションを検証したいと思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991583/b2fd17d1-e1fc-3d58-e11d-e227962a245a.png)

# いきなりまとめ
結果から言うと、NetApp BlueXPのGUIから簡単な操作で、AWS上のNetApp Cloud Volumes ONTAPをcross-regionでレプリケーションすることができます。

# Key

元記事を表示

機能テストとは?定義/種類/事例/方法を紹介

機能テストは、ソフトウェアが事前に定義された要件に従って動作しているかどうかをQAスタッフが評価するプロセスです。この記事では機能テストの定義、種類、事例、および方法を見ていきましょう。

1. 機能テストとは?
認知症 機能テスト
機能テストはブラックボックステストの一種で、アプリケーションやシステムの機能が期待通りに動作しているかどうかを確認するために実施されます。このテストでは、テスト対象アプリケーションのユーザーインターフェース、API、データベース、クライアント/サーバー通信、セキュリティ、その他の機能をチェックします。テストは、手動または自動化ツールを使用して実行されます。

2. 機能テストの種類
最も一般的な機能テストの種類を以下で簡単に紹介します。
Read more: https://bit.ly/3vG0TTA

元記事を表示

OTHERカテゴリの最新記事