AWS関連のことを調べてみた2021年12月03日

AWS関連のことを調べてみた2021年12月03日
目次

AWSSSO 属性とユーザープロファイルの対応

https://docs.aws.amazon.com/ja_jp/singlesignon/latest/userguide/attributemappingsconcept.html

| AWSSSO 属性 | SSO ユーザープロファイル |
|:———–|:————|
| ${user:AD_GUID} | ユーザー ID |
| ${user:email} | プライマリ E メール |
| ${user:familyName} | 姓 |
| ${user:givenName} | 名 |
| ${user:middleName} | |
| ${user:name} | 表示名 |
| ${user:preferredUsername} | 表示名 |
| ${user:subject} | ユーザー名 |

ミドルネームはおそらく設定すると対応すると思われる。
name と preferredUsername が同じだったのでどちらかは姓、名をくっつけた文字列ではないか、ニックネームを設定するとどちらかが対応するのではないか、など疑っ

元記事を表示

Amazon S3 新ストレージクラスが追加されたので比較してみた

AWS re:Invent 2021にて、S3の新たなストレージクラスの追加が発表されました。

# Amazon S3 新規ストレージクラス
* **Glacier Instant Retrieval** ストレージクラスが追加
* S3 Glacier → S3 Glacier Flexible Retrieval に名称変更

https://aws.amazon.com/jp/blogs/aws/amazon-s3-glacier-is-the-best-place-to-archive-your-data-introducing-the-s3-glacier-instant-retrieval-storage-class/

# 新規ストレージクラス(Glacier Instant Retrieval)の特徴
* アーカイブ向け(四半期に一度程度のアクセス頻度)
* スタンダードや標準-IAと同様ミリ秒単位のアクセス
* 標準-IAと比べ最大68%のストレージコスト削減

# ストレージクラス比較
今回追加されたストレージは、標準 – IA と Glacier Flexibl

元記事を表示

AWSのVPC周りを整理する(VPC、Subnet、InternetGateway、RouteTable、SecurityGroup・・・)

# はじめに

どーも、のぶこふです。
この記事は[GFAMアドベントカレンダー2021](https://qiita.com/advent-calendar/2021/gfam)の3日目の記事です。

前回、アカウントを作成したので、お次はVPC(仮想ネットワーク)ですね。
このVPC内で、ほとんどの様々なリソースを起動していきます。

# 今回のサービス一覧

|Service名とか|概要|
|–|–|
|VPC|ネットワーク空間|
|Subnet|VPCを論理的に分割|
|リージョン|データセンタの場所(国とかの単位)|
|AZ|リージョンを物理的に分割|
|Internet Gateway|インターネットからアクセスできるようにするよ|
|NAT Gateway|PrivateSubnetからインターネットアクセスしたい|
|Route Table|ネットワーク経路が記載されたテーブル|
|Security Group|インスタンス単位でのファイアウォール|

### 関係性
名前とか文章だけだと分かりづらいので、図にしてまとめると、こんな感じです。

![image.pn

元記事を表示

Pulumi (TypeScript) で Elastic Load Balancing account ID を取得する

## はじめに
AWS の Elastic Load Balancing (以外、 LB) にはアクセスログを S3 に出力する機能があり、出力先となる S3 の bucket policy の設定に Elastic Load Balancing account ID を利用します。
Elastic Load Balancing account ID はそう変更されることがないため、べた書きしてしまうこともあると思いますが、 Pulumi の AWS Provider から取得する方法があるためその方法を記載します。

ちなみに、 Elastic Load Balancing account ID はリージョンごと異なるため、複数リージョンにリソースを配置する際は注意が必要です。

## Elastic Load Balancing account ID について

各リージョンの Elastic Load Balancing account ID については公式ドキュメントを参照してください

https://docs.aws.amazon.com/elasticloadbalan

元記事を表示

CDKを使ってGitHub Actions OpenID Connect (OIDC) で多段 AssumeRoleする

この記事は ハンズラボ [AdventCalendar2021](https://qiita.com/advent-calendar/2021/handslab) 3日目の記事です。

#はじめに
今回は、こちらの記事のCDK化(Python)を行っていきます。
構成やcfnテンプレートなど詳細はこちらをご参照ください。

https://qiita.com/daisukeArk/items/a985bf6d2f03e9bd0306

# 前提条件
– [GitHub Actions OpenID Connect (OIDC) で多段 AssumeRole する](https://qiita.com/daisukeArk/items/a985bf6d2f03e9bd0306)を読み構成を理解していること
– CDKがインストールされ実行環境が準備されていること

# 実装
ではさっそくやっていきます。

#### 初期設定
ディレクトリを作成し、`cdk init`を実行してプロジェクトを立ち上げます。

“`terminal
$ mkdir github_oicd
$ cd git

元記事を表示

AWS CLIで Web サイトを構築、管理、運用する(3日目)

[2日目](https://qiita.com/hirosys/private/1d15cbd778635cf9820d)ではアクセスロギングの設定を入れて、記録が取れるようにしました。

Web サイトは公開したら終わりじゃないですよね?定期的に更新しますよね。
というわけで、更新時にひっかかる問題を解決していきましょう。

# 3日目の要約
記事更新時のちょっとひと手間を解消していくよ!

# AWS CLI の準備
このあたりをみて、好きなバージョンとお使いのOSにあった環境設定をしてくださいね。
なんなら、 AWS CloudShell で実行するのも楽でよいと思います。
この記事シリーズは、AWS CloudShell で実行し、実行例を載せています。

バージョン1
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv1.html

バージョン2
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2.html

元記事を表示

AWS DevOps – CloudWatchのダッシュボードをAuto Scalingに追従して自動で設定する

# はじめに
Auto Scaling グループの各インスタンスのCPU使用率を一目で確認したい場合、CloudWatchのダッシュボードを作成して各インスタンスのCPU使用率を表示するウィジェットを追加することで実現可能です。
しかし、スケールアウト、スケールインに合わせてダッシュボードの内容を動的に変更する機能は本記事の投稿日の時点では存在しないため、スケールアウト、スケールインの度にダッシュボードの対象インスタンスを追加、削除する必要があります。これを手動で実施するのは手間なので、Lambda関数で自動化する方法を紹介します。
なお、今回紹介する方法はCPU使用率のみでなく、ディスクI/Oや、ネットワークI/O、メモリ使用率、ディスク使用率といったメトリクスを確認したい場合にも応用可能ですので参考にしていただければと思います[^1]。

# 課題
下図のようなAuto Scaling グループを管理しているとします。
![1_problem_asg.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2

元記事を表示

【AWS】利用料金の詳細通知&自動化

# はじめに
この記事は NTT テクノクロス Advent Calendar 2021 の 3日目の記事です。

NTT テクノクロスの井上です。
普段は AWS 関連の業務をしています。

この記事では、
**AWS の利用料金通知システム** の作成についてご紹介します。

元々、AWS の利用料金を通知する Lambda を動かしていたのですが、
「今月の費用、予算内におさまりそう?」と尋ねられたり、
「どのサービスにいくら費用がかかっているのかも通知してほしい!」
などの要望があり、拡張機能を作成しました。

また、
最近 AWS へ移行するプロジェクトも増えてきたので、
これを機に料金通知システム作成の **自動化** を含めて、記事にまとめることにしました。

# 概要
通知内容は下記の4つです。
・ 今月1日から前日までの請求額
・ 今月1日から前日までの請求額の内訳(サービスごとの請求額)
・ 今月の予測請求額
・ 前日1日分の利用額

通知内容は、**今月1日から前日までの請求額** をデフォルトとして、
他3つは必要に応じて拡張ができるよう作成します。

拡張

元記事を表示

AWSの各サービス名と内容がいつまで経っても覚えられないので書き出す

[Ateam Lifestyle Inc. Advent Calendar 2021](https://qiita.com/advent-calendar/2021/ateam-lifestyle)の3日目は株式会社エイチームライフスタイル @engabesi が担当します。

# 動機
AmazonWebServices。通称AWS。
この業界では使ったことはなくても聞いたことがない人はいないであろう存在。
なんとサービス数は執筆時点で200以上(↓を手で数えたので間違えていたらごめんなさい)
https://docs.aws.amazon.com/

そんなAWSですが、頭文字から作られた英数字3文字程度の略称だったり名前が直感的ではないものが多く(個人の感想)、恥ずかしながら名前を聞いた時に「それ何のサービスだっけ…」となることがままあります。

これを期によく耳にするサービスの省略しない形の名前と一言レベルの概要を書き出して頭の中で紐付けます。

# 本題

グループは先述の[document](https://docs.aws.amazon.com/)準拠で書きます。

##

元記事を表示

CloudWatch Syntheticsでシステム監視する

[パーソンリンク アドベントカレンダー](https://qiita.com/advent-calendar/2021/personlink) 3日目です?
案件で外部監視のために調査したAWSの機能紹介をします。

## 概要

CloudWatch Syntheticsとは、CloudWatchの機能の一つで外部監査を実現するサービスです。
外部監視とは外部から見た接続状況の監視です。

CloudWatch Syntheticsを利用するためにまずCanaryを作成します。
Canaryとはスケジュールに沿って実行されるスクリプトであり、実態はLambdaレイヤです。
Canaryの設計図に**GUIワークフロービルダー**を選ぶと、フォーム形式で検証するためのアクションを指定できます。
要素のクリックや存在確認などを行えるため、死活監視だけでなく簡単なE2Eテストもできます。
セレクタは**Xpath**指定です。

![スクリーンショット 2021-11-19 14.10.14.png](https://qiita-image-store.s3.ap-northeast-1.

元記事を表示

EC2をぶっ飛ばしてデータが全部消えてしまった話

こんにちは。[もぐめっと](https://mogmet.com)です。
![mogmet.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/42234/29751975-4cfb-cb86-6ffb-6ac16c5aef79.jpeg)
旅に出るとこのI love ****シリーズのシャツを買うのが割と好きです。

最近、久々にAWS触ったらまるっとデータをふっとばしてしまったので戒めのために原因と対策を記しておこうと思います。

この記事は[本番環境でやらかしちゃった人 Advent Calendar2021](https://qiita.com/advent-calendar/2021/yarakashi-production)の3日目の記事になります。

## なぜデータが吹っ飛んだのか
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/42234/5db05780-491a-f1bb-93e0-a513

元記事を表示

振り返り②(これいる?作っとく?の会話記録)

振り返り2回目です。
今回もどうしようね?って3人で話した結果の記録です。

#決まったこと
######サーバーのお金、どうする?
→会社の人に要相談(AWS1年間無料プランがあったけど…)
→後日菊池さんに聞いたところ、お金は気にしなくていいよとイケメンな回答された

######toolとfrontいる?
→stgとprodいる?金銭的な問題のため自分たちでは決められないねえ。。。
→菊池さん「dev環境だけ作ればいいよ」

######アカウント制限どうする?いる?
→必要ないかと思ったけど、Laravelでアカウントの権限のところを作るのは調べたところ、
 容易そうなので、やってみたいかもってことで作ることに

######マスター権限だけでできることって何かある!?
→アカウント削除とかユーザー一覧が見られるくらいになりそう
→とりあえず作っておこ!

######画面仕様書とかテーブル設計書とかワイヤー作る?
→そのほうが管理しやすいと思われる
→個人的にドキュメント作るのはいい経験だと思うので、作っておきたい
→菊池さん「簡易的なシステム構成図とか書くと整

元記事を表示

文系卒の新人が伝えたいエンジニアへの道 社内新人研修編

# はじめに
ここでは僕が新人研修で学んだことを伝えたいと思います。研修期間は3ヶ月です。会社としては上流工程から下流工程までの案件を引き受けている SIer 企業です。その企業がどのような新人研修をしたかというのを参考にしていただけたらなと思います。

# 新人研修新人研修で行ったことは以下の通りです。

– 基本的な知識のインプット(SQL, Java, Git, etc..)
– 社内サービス改善
– 社内サービス作成

そしてここでは3つ目の社内サービスの作成について話していきたいと思います。

# サービス概要
– サービスの内容
– 社内向け書籍購入ウェブアプリケーション
– 使用用途
– 社員が読んだ書籍のレビューをし書籍の情報共有をしあう
– 使用した言語
– JavaScript
– フロントエンド:React
– バックエンド:Node.js
– インフラ環境
– AWS

この開発は新人8人(フロントエンド:4人、バックエンド:4人)で行いました。僕はバックエンド側の担当していたためバックエンド側の話

元記事を表示

Amplify APIのfunctionディレクティブでLambdaを呼び出す

![Amplify-v4.3.2](https://img.shields.io/badge/Amplify-v4.3.2-brightgreen)

# はじめに
例えば認証付きでAWS上で関数を実行したい時に、Amplify APIのfunctionディレクティブがとても便利でした。
今回はフロントエンドから特定のLambdaを呼び出す流れについてまとめさせていただきたいと思います。
https://docs.amplify.aws/cli/graphql-transformer/function/

# 実装
## API導入
“`
amplify add api
“`
`amplify add api`で追加します。
設定の詳細は省きますが、今回はfunctionディレクティブを利用するのでGraphQLにしてください。

## schema.graphql
`amplify/backend/api/gqllambda/schema.graphql`が生成されているので、こちらのファイルを編集して定義していきます。

“`graphql:schema.graphql
ty

元記事を表示

Github Webhookからlambda経由でkintoneにrecord登録する効率化ツールを作ったよ

この記事は[kintone Advent calender 2021](https://qiita.com/advent-calendar/2021/kintone)の12/3を担当します!?

## kintoneで全てを管理したい…
弊社しいては僕らのチームでは、kintone上でタスク管理・コミュニケーションをしています。
しかしコードの管理はGithub、ビデオ会議ではzoomというように、kintoneだけでなくさまざまなwebサービスを使って業務が成り立っています。

今まではGithubで自分たちが管理しているプロジェクトのコードにissueが登録されたり、dependabotによるPull Requestが行われた際は、手動でTaskとしてkintoneに登録していました。これが非常にめんどくさい…ヒューマンエラーも出てしまう…

今回これを、Github Webhook をトリガーにしてAWS経由でkintoneにrecord登録することで、従来手動で行っていた作業を自動化したのでシェアします!

## で、どんなの作った?
基本的には以下の流れです。
1. Git

元記事を表示

受験談 AWS Certified SysOps Administrator – Associate 認定

3度目の正直でSOAに合格しました!
この記事は以下アドベントカレンダー2 12/3(金)の記事でもあります。

https://qiita.com/advent-calendar/2021/udemy

# 対象者
– これからSOA他、AWS認定資格の受験をしようとしている方
– Udemyが好きな方
– Udemyって何?なんて読むの?おいしいの?と思われた方

# 結論 Udemy活用しまくり

SAAを最初に受験しましたが、その時の受験談は以下をご覧ください。自分の受験前のAWS知識レベルも記載してありますのでご参考までに。この時もUdemyをめちゃ活用しまくりました。SAA対策講座は比較的多く揃っているのでお勧めです!

https://qiita.com/h2m_kinoko/items/5179bcb73b6773771f79

上記触れていますが、SAA受験時は参考書やBlack Beltなどは一切触れずUdemy講座に絞って勉強しまくりました。セールもいい感じのタイミングでやってるので、どういう講座があるかをあらかじめチェックしておいて、購入はセール期間中にという

元記事を表示

AWS CloudWatch Logs Agentに埋め込みメトリクスを(力技で)導入する

# TL; DR

CloudWatch Agentが使えたら、そちらを使いましょう。

# はじめに

CloudWatch Logsには、埋め込みメトリクス (Embedded Metric) という機能が存在します。
こちらを利用すると、CloudWatch Logsに含まれる情報を、自動でCloudWatch Metricsへ転送してくれます。
ログファイルの構造とメトリクス抽出の設定を二重管理する必要がなくなるため、非常に便利な機能です。

> [高カーディナリティログの取り込みと CloudWatch 埋め込みメトリクスフォーマットによるメトリクスの生成 – Amazon CloudWatch](https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/CloudWatch_Embedded_Metric_Format.html)

現在ではCloudWatch Agentを使用することが一般的ですが、かつては、CloudWatch Logs Agentというツールを使ってログファイルをCl

元記事を表示

boto3からの解放。python3の標準ライブラリのみでAWSサービスを取り扱うには

# 概要
こんにちは! KDDIアジャイル開発センターの小板橋です。
今回の記事は、KDDI Engineer & Designer Advent Calendar 2021の3日目の記事となります。

ある日、こんな要望が舞い降りてきました。
「python3の標準ライブラリのみでAWSサービスに対して操作(今回は、S3に対するCRUD操作-GetとPostに限定)できるようにして欲しいな。」

そんな時に、どうやってあの便利なboto3を使用せずにこの要件を満たせるかを検証してみたというものです。

# boto3のDEBUGログ
* boto3依存をやめるとなると、まずやらなければならないのはboto3が何を隠蔽してくれているのかを確認する必要があります。
* まあ、単純に言えば[Boto3がどんなREST APIのリクエスト](https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/RESTAPI.html)を投げているのかを確認すればよいのです。
* そこで、Boto3でDEBUGログを出力してあげると簡単にRE

元記事を表示

Laravel Docker AWS EC2デプロイ②

前回のEC2デプロイ①に続き、今回はRDSの作成についてご紹介していきます!

https://qiita.com/yyy752/items/b9d7674fc349f669e801

##RDSを作成
1.サービス画面から「RDS」で検索し、RDSコンソール画面にアクセス。
2.左メニューバーの「データベース」にアクセス→「データベースを作成」で各項目入力。
※注意点は、バージョンをポートフォリオのバージョンに合わせることと、テンプレートを「無料利用枠」にすること。
![スクリーンショット 2021-12-03 2.01.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/601015/14a4640a-2beb-e12a-7884-cbdb97e32b89.png)
![スクリーンショット 2021-12-03 2.02.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/601015/bc91100d-3fea-

元記事を表示

Lambdaの計算を簡単に説明してみます

#計算概要

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/969819/1a32804d-1946-52ef-b157-0b80e12e3951.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/969819/fd14cb78-15e8-6228-e6af-a4559a05b6cf.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/969819/a7df581f-8ff9-e10b-e1f7-e5a2a12c0085.png)
#実行時間とリクエスト

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/969819/885a8fd1-b10f-afba-28b4-1a294

元記事を表示

OTHERカテゴリの最新記事