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

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

タスク定義をプッシュした最新のイメージに変更するだけのbuildspec ファイル

#概要
CodeBuild 内で、イメージのビルドとECR にプッシュし、タスク定義のコンテナのイメージURIの変更だけをして、サービスにはデプロイしないケースを想定した buildspec ファイルです。

実行に必要なビルドプロジェクトの環境変数

|名前|説明|
|:—|:—|
|AWS_ACCOUNT_ID|AWS アカウントID|
|IMAGE_REPO_NAME|ECRのリポジトリ名|
|TASK_DEFINITION|タスク定義名|

実行に必要なIAM ポリシー

“`json
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Effect”: “Allow”,
“Action”: [
“ecs:*”
],
“Resource”: “*”
},
{
“Action”: “iam:PassRole”,

元記事を表示

CloudWatchアラームで設定した請求金額を超えたらメール通知する

# はじめに

個人開発でAWSを利用している方やサーバー周りの経費を削減したい会社さんは少なからずいらっしゃると思います。
あらかじめアラートを受けることができたらサーバーをサイズダウンするなどして対策が取れるかと思います。
請求金額を超えたらメールでアラート通知がほしいといった方のためにぜひ参考にしていただけたらです。

## 目次

– AWS SNSでトピックを作成する(通知を受け取るメールアドレスの登録)
– AWS SNSでサブスクリプションを作成する
– 請求設定の請求アラートを有効化する
– CloudWatchアラーム設定をする

## AWS SNSでトピックを作成する(通知を受け取るメールアドレスの登録)

– Amazon SNS>左のメニュー トピック>トピックの作成を押下
– タイプはスタンダードを選択
– 名前を入
– トピックの作成を押下

![スクリーンショット 2022-02-14 23.26.36.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1138611/

元記事を表示

TerraformのAWS Provider v4メジャーアップデートは破壊的変更あり

# この記事の要約
2022/02/10に、TerraformからAWS Provider v4.0.0がリリースされました。このメジャーアップデートには__破壊的変更__が含まれおり、今まで利用していたTerraformのソースコードが動かなくなる恐れがあります。安易にAWS Provider
のバージョンを上げてしまうと今までのソースコードがエラーを吐くようになります。特にS3に関する破壊的変更は影響範囲が大きいと思われます。情報をまとめておければと思います。

# S3に関する破壊的変更
[v4.0.0の変更点の全容](https://github.com/hashicorp/terraform-provider-aws/releases/tag/v4.0.0)
リリースノート中にdeprecatedと書かれていますが[破壊的変更です](https://github.com/hashicorp/terraform-provider-aws/issues/23103#issuecomment-1035350658)。ご注意を。

## 暫定対応
AWS Providerの最新リリー

元記事を表示

Kinesis Data Analytics概要

# 背景・目的
仕事で触る機会があるので、Kinesis Data Analytics(以降、KDAと呼ぶ。)とFlinkを学ぶ。
本ページでは、KDAについて学ぶ。

# 内容
## 概要

– AWSのページを見ると「サーバーレスでフルマネージドな Apache Flink でストリーミングデータから実用的なインサイトを取得」とある。
– ユースケースは、以下の通り。
– ストリーミングデータを数秒で配信。OpenSearchやS3などに配信
– インタラクティブにクエリを実行し分析する。
– 長時間実行されるステートフルな計算を使用して、過去のデータトレンドに基づく異常検出などのリアルタイムアクションをトリガーする。

## 特徴
### サーバレス
– 継続処理するためのインフラの自動プロビジョニング

### 自律的な伸縮性と従量課金
– 着信データストリームに含まれる任意の量のデータに対応するために、アプリケーションを伸縮自在にスケールする。
– ストリーミングアプリケーションの実行に使用されるリソースに対してのみ料金が発生する。

### ミリ秒

元記事を表示

AWSの学習をするうえでわからなかった横文字をひたすらまとめておく

# はじめに
はじめにもなにも題名の通り。ひたすら書いていく。

## ダウンタイム
常に使用できることが期待されているシステムとかサービスが停止・中断してしまっている時間のこと。

## レイテンシー
データの転送に関しての指標のひとつ。データの転送を要求してから実際にデータが送られてくるまでに生じる通信の遅延時間のこと。

## マネージド型
通信サービスやITサービスなどで、そのサービスの利用に必要な機器やソフトウェアの導入や管理、運用などの業務もすべて請け負うサービスのこと。

## スパイク
何かが急激に増加すること。

## スティッキーセッション
ロードバランサーの機能の1つ。セッションがつづいている間は同じクライアントを同じサーバーに誘導すること。

## スナップショット
ある時点(瞬間)でのソースコードやファイル、データベースファイルなどの情報(状態)を保存したもののこと。

## シーケンス
あらかじめ決められた順序で処理を行うこと。

## スループット
一定時間にどれだけの処理ができるのか、そのデータ量のこと。

元記事を表示

Everything (It’s you)をComprehendしてみた

Mr.Childrenの言わずと知れた名曲をComprehendに投入してみました。
ミスチル好きなものでして。

# Amazon Comprehendとは

テキストを分析し、感情の判定やキーフレーズ検出などを行うことができる、機械学習を利用した自然言語処理(NLP)サービスです。コンソールから1分もかからずに分析できてしまいます。

解析されるインサイトは以下の6つ。

– エンティティ
– キーフレーズ
– PII
– 言語
– 感情
– 構文

https://docs.aws.amazon.com/ja_jp/comprehend/latest/dg/what-is.html

# リアルタイム解析を実行

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/119864/2dba5629-3bc1-6569-0f46-5f5073291757.png)

![スクリーンショット 2022-02-14 14.33.47.png](https://qiita-image-stor

元記事を表示

AWSのチュートリアルでハマった話

## チュートリアルなのにハマる
AWSは一年ほど前に少しだけ勉強したことがあったので、簡単って言ってるlambdaなら楽勝でしょ?
から、数時間ハマったので備忘録として投稿

## 試したチュートリアル
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/with-s3-example.html

## テストでエラー
チュートリアル通りに進めて行って、「コンソールでテストする」の箇所でエラー。
公式のチュートリアルなんだから手順通りにやっていれば必ず上手くいくはずと思って、何度もチュートリアルを見直して初めからやったりしたがダメ
An error occurred (AccessDenied) when calling the GetObject operation: Access Denied
![スクリーンショット 2022-02-14 20.16.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2528516/b5209839-9305-c

元記事を表示

AWS App Runner に ECR をトリガーに自動デプロイをしてみた

# はじめに

[前回の記事](https://qiita.com/sugimount-a)では、ECR に Push したコンテナイメージを App Runner にデプロイする方法を紹介しました。

今回の記事では、ECR に新しいバージョンのコンテナイメージを Push することで、自動でバージョンアップ(Blue Green デプロイ)されることを確認します。

デプロイの詳細な流れは、下記の App Runner 入門動画に公開されています。

![image-20220214202835660.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/fcda1ff6-ba4d-c5bf-cef9-bfefbb3b2a2a.png)

# 前提条件

App Runner の Service を構成するときに、Deployment settings を Automatic に設定していることが条

元記事を表示

静的WEB via CloudFrontにRUMを入れてモニタリングしてみる

# TL;DR
re:Invent 2021で発表されたCloudWatchの新機能[「CloudWatch RUM(Real-User Monitoring)」](https://aws.amazon.com/jp/blogs/aws/cloudwatch-rum/)を使ってCloudFrontで配信中のNext.js製WEBをモニタリングしてみました。

# CloudWatch RUM is 何?

以下、[公式ドキュメント](https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) より引用。

> CloudWatch RUM を使用すると、現実的なユーザーモニタリングを実行できます。ウェブアプリケーションのパフォーマンスに関するクライアント側のデータを、ほぼリアルタイムで実際のユーザーセッションから収集し、それを表示できます。ページの読み込み時間、クライアント側のエラー、およびユーザーの活動などのデータを、視覚化および分析することが可能です。この表示機

元記事を表示

AWS Lambda (Node.js) 上で discord.js を使おうとしてつまずいた

# 何につまずいたのか
ざっくり言うと、 Node.js で記載した AWS Lambda の関数上で最新版の [discord.js](https://discord.js.org/) を使おうとしたら使えなかった。

# なぜ使えなかったのか
[AWS Lambda で使える Node.js のバージョン](https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/lambda-runtimes.html)が現状 v14 系までなのに対し、[最新版の discord.js は v16.6.0 以上でしか動かない](https://discord.js.org/#/docs/discord.js/stable/general/welcome)。

# 現状の打開策
どうしても使いたいなら古いバージョンの discord.js ( [12.5.3](https://www.npmjs.com/package/discord.js/v/12.5.3) がギリギリ Node.js v14 系に対応している模様)を使うしかない。ただし、**非推奨に

元記事を表示

AWS CLIの振り返り ~CloudFront入門編~

#本記事の目的
JAWS-UG CLI オンラインハンズオンの復習として、ハンズオンで取り上げられたAWSサービスに関する用語と、使用したAWS CLI コマンドを箇条書きでまとめる。
今回はCloudFront入門編を取り上げる。

#主なAWSサービス用語
####オリジンサーバー
オリジナルとして定めたオブジェクトを保存するコンテンツサーバ。リージョンに存在するS3バケット等を設定できる。

####エッジサーバ
オリジンサーバのオブジェクトをコピーし、様々な場所から配信するキャッシュサーバ。エッジロケーションに存在する。

####ディストリビューション
オリジンサーバ及びエッジサーバにおけるコンテンツ配信設定の単位。

####デフォルトルートオブジェクト
ディストリビューションのルートURLにアクセスした際に表示されるオブジェクト。

####ETag
HTTPにおけるレスポンスヘッダの1つ。ETagを使用する事で、HTTPにおけるキャッシュの有効性を確認できる。

#主なAWS CLI コマンド一覧
####CloudFrontディストリビューションの作成
“`
aw

元記事を表示

AWS App Runner で、VPC Connector を使って Amazon RDS に接続してみた

# はじめに

2022年2月8日(米国時間)に、AWS App Runner にて Amazon VPC 接続用の機能が追加されました。アップデート前は、VPC 内にホストされている Amazon RDS などのサービスに接続することが出来ませんでした。このアップデートにより、VPC 内にホストされている RDS をはじめとした、各種サービスと連携ができるようになりました!

AWS では、VPC 内でホストされているサービスがあるため、ユースケースが広がるアップデートとなります。詳細は次のブログを参照してください。

https://aws.amazon.com/jp/blogs/news/new-for-app-runner-vpc-support/

また、このアップデートの留意点としては、App Runner にアクセスする経路は変わらずインターネットをつかったアクセスが必要です。アクセス元 → App Runner 方向のインバウンドトラフィックは、インターネットを経由した接続が必要で、App Runner → なにか 方向のアウトバウンドトラフィックは、自分たちが管

元記事を表示

AWS Amplifyの公開設定を色々とためしてみた

![img](https://day-journal.com/memo/images/logo/aws/amplify.png)

### AWS Amplifyの公開設定を色々とためしてみました :tada:

AWS Amplifyには主に3パターンの公開方法があります。

1. AWSコンソールから利用するAmplify Consoleで公開
2. Amplify CLIから利用するAmplify Consoleで公開
3. Amplify CLIから利用するカスタム公開

詳細として下記について説明します。

– [Amplify Consoleで公開](https://qiita.com/dayjournal/items/c6e4ca20887a093560a0#amplify-console%E3%81%A7%E5%85%AC%E9%96%8B)
– [Amplify ConsoleでBasic認証公開](https://qiita.com/dayjournal/items/c6e4ca20887a093560a0#amplify-console

元記事を表示

【個人的メモ】 EC2からSageMakerを扱う

# EC2(Linux) controls SageMaker instances
– AWSのEC2インスタンスからSageMakerを操作して無駄遣い防止などをするためのメモ
– シェルスクリプト作るときの参考用

### 前提
– AWS Cli(v2) がLinux上にインストールされていること
– aws configureでアクセスキーなどが設定済みであること

### 基本
“`
$ aws sagemaker <サブコマンド> <パラメータ>
“`

### サブコマンド一覧を表示(ヘルプ)
“`
$ aws sagemaker help
“`

### インスタンスの状態を確認する(json)
“`
$ aws sagemaker list-notebook-instances
“`
– 下記形式のjsonを得られる

“`
{
“NotebookInstances”: [
{
“NotebookInstanceName”: “<インスタンス名>“,
“Noteboo

元記事を表示

【Unity】AWS S3から色々な方法でデータを取得するソースコード例

# はじめに
AWSのS3に格納したファイルの取得方法を色々試したのでメモを残します。

# 事前準備
1. S3バケットを作成し、ファイルを格納しておく。
1. Unity側で使用するIAMユーザーを作成し、S3に対してRead可能なロールを割り当てておく。
※シークレットキーは一度画面遷移すると確認できなくなるのでメモっておくこと。
1. [Nuget](https://www.nuget.org/)から次のdllを取得し、Assets/pluginsディレクトリに格納する。
* AWSSDK.Core.dll
* AWSSDK.S3.dll
1. 上記dllが依存しているdllもNugetから取得し、同ディレクトリに格納する。
  (NugetのDependenciesタブから.NETStandard2.0の依存dllを追跡する。)

# ソースコード例
適当なゲームオブジェクトにアタッチし、Inspectorのフィールドを埋めると動作する。
* 以下のコードで、テキストの取得・Jsonの取得およびデシリアライズ・ファイルのダウンロードが可能です。
* そ

元記事を表示

【AWSコスト削減の道 for ステージング環境】 Fargate編

# 【AWSコスト削減の道 for 開発環境】 Fargate編

## 結論
* FargateをFargate Spotに変更及び使用していない時間に自動停止処理を設定することで、通常料金の **約70%** を低下

## 前提
* 本記事で記載している料金については、2022/02/13時点の料金を表示している
* 料金は「東京リージョン」の料金を表示している
* Fargateのリソース構築についてはTerraformを用いてリソース構築をしている
* Fagateについてある程度理解している
* Fargate Spotについてある程度理解している
* 詳細は[参考URL](#参考URL)を参照
* Fargateのスペックは以下としている
* vCPU: 2
* メモリ(GB): 4
* 本記事内ではタスク数を**1**としている

## 目次
[前提](#前提)
[概要](#概要)
[背景](#背景)
[本記事内の利用技術について](#本記事内の利用技術について)
[料金について](#料金について)
[Fargate Spotの指定方法について]

元記事を表示

ECSでコンテナ実行メモ その3

## 概要

[前回の記事](https://qiita.com/dmikita/items/c170b2a5b69077c7744e)の段階ではうまくいかなかったのがどうにかECS上でコンテナを動かすことができたのでその流れをまとめます。

## Dockerimageの準備
Dockerのイメージを準備します。

* resize.shを実行します。[こちら](https://docs.aws.amazon.com/ja_jp/cloud9/latest/user-guide/move-environment.html)から取得します。引数でサイズを指定します。今回は20GiBで実施しました。

* サンプルとするアプリを取得します

“`sh
git clone https://github.com/docker/getting-started.git
“`

* Dockerfileを作成します。

“`sh
pushd getting-started/app
touch Dockerfile
vi Dockerfile
“`

* Dockerfileの中身は以下のよ

元記事を表示

AWS認定デベロッパーアソシエイト(DVA)合格までにしたこと

## はじめに

AWS認定デベロッパーアソシエイト試験(以下”DVA”)に合格するまでにしたことをまとめます。

DVA試験を受験する前に2つのAWS認定試験に合格しております。
その記事はこちら。

– [【AWS未経験から】AWS認定クラウドプラクティショナー合格までにしたこと](https://qiita.com/tukky/items/b06da92c4ae63fed493b)
– [【一発合格】AWS認定ソリューションアーキテクトアソシエイト合格までにしたこと
](https://qiita.com/tukky/items/81167bfdb7816df6a5a7)

自分自信「ソリューションアーキテクトアソシエイト(以下”SAA”)に比べて学習資料が少ない…」と思いながら学習を進めていました。
これから受験を検討している方の参考になれば幸いです。

## 合格までにしたこと & 学習時間
– 試験日
– 2022年2月13日
– 学習期間
– 2022年1月1日 ~ 2022年2月12日
– 学習時間
– 1日平均1~2時間
– 学習内容
– [

元記事を表示

AWS Cloud9 に PHP 開発環境構築 (moodle)

moodle のお勉強とプラグイン開発のための環境として
AWS Cloud9 に開発環境を構築しましたので手順を残しておきます。

:::note
moodle を例に環境構築していますが、PHPの汎用的な開発・デバッグ環境として利用できると思います。
:::

# 利用環境
– [AWS Cloud9](https://aws.amazon.com/jp/cloud9/) (t3.small + Amazon Linux2)
– [PHP 8.0](https://www.php.net/)
– [MariaDB 10.5](https://mariadb.org/)
– [Moodle v3.11.5](https://docs.moodle.org/3x/ja/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8)

# 環境構築

AWS CloudShell で下記コマンドを実行し、Cloud9 環境を作成する。

“`
aws cloud9 create-environment-ec2 \
–name Mood

元記事を表示

有名なコンテナレジストリの認証コマンドとイメージ名規則まとめ

[コンテナレジストリ](https://www.redhat.com/ja/topics/cloud-native-apps/what-is-a-container-registry “コンテナレジストリとは”) は、コンテナイメージを保存するためのレポジトリのことで、サービスとして提供している会社がいくつもあります。ただ、それぞれイメージ名の規則やコンテナクライアントの認証方法が異なるため、調べ直すことは多いのではないでしょうか?

この記事では、以下のコンテナレジストリの **認証コマンド** と **イメージ名の規則** を紹介します。コンテナクライアントとして **[docker](https://docs.docker.com/get-docker/ “Docker is an open platform for developing, shipping, and running applications.”)** を想定しています。

– [Docker Hub](https://hub.docker.com/ “Docker Hub is the world’s eas

元記事を表示

OTHERカテゴリの最新記事