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

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

Glueで配列を行方向に展開する

# 背景・目的
– jsonファイルでArray&Structになっているデータセットを、Glueで行方向に展開する。

## 前提(はじめに)
– 対象のデータセットは、以下の通り。
– 実際のファイルはJSON lineの形式で一行です。
– ファイルフォーマット
– id:レコード単位に一意に振るID
– actions:Array型。複数のactionをまとめています。
– action:Struct型。locationとtimestampを有しています。

“`
{
“id”: “0123456789”,
“actions”: [
{
“action”: {
“location”: “Kanagawa”,
“timestamp”: “2021-12-28T10:00:00.000+0900”
}
},
{
“action”: {
“location”: “Tokyo”,

元記事を表示

イベントソースとは?

# イベントソースとは?
イベントの発生元となるAWSリソースのことをイベントソースと呼びます。
イベントソースの違いによってファンクション起動時の挙動が変わります。

Pushモデル
イベント発生に応じて直接Lambdaファンクションを起動します。
API Gate WayやAmazon S3など

Pullモデル
AWS Lambdaに対して直接的にイベント発行を行わないようなサービスもあり、その場合はAWS Lambdaがそれらへポーリングを行い自らイベントを取得します。
Amazon DynamoDBとAmazon Kinesis など

# イベントソースを確認する
AWS Lambdaのダッシュボートから「Functions」をクリックします。
![スクリーンショット 2021-12-29 6.52.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/14202/dc960612-b8c6-c555-56b8-46b1234f8239.png)

任意のFunctionをクリックします。
!

元記事を表示

初期費用0円&月額500円未満で個人のWEBサイトを運営する為の環境構築作業メモ

通常、個人ブログやWEBサイトの構築には、開発・運用の容易性の観点から初期費用+月額利用料を支払いレンタルサーバを契約するのが一般的です。
今回は以下の観点から、あえてレンタルサーバではなくAWS環境を利用し、個人ブログ・WEBサイトを公開するまでの構築作業を作業メモがてら記載します。

– 自己学習の要素も含めたい為、個人ブログ・WEBサイト用のレンタルサーバではなく、あえてAWSのサービスを利用。
– 利用しているプラットフォームはAWSサービスであり従量課金の為、利用しなければ停止する事で利用料は抑えられる。(※)
– 通常レンタルサーバの契約時に必要な初期費用も不要。利用状況に応じた、サーバの起動停止により利用料のコントロールも可能。(※)

##### ※注意事項
`以下手順は、「AWS Lightsail」を利用する為、インスタンスを停止していても定額の月額利用料(3.5USD)が掛かります。`
`完全に従量課金(起動・停止で利用料をコントロール)としたい場合は、EC2等で構築する必要があります。`
`またLightsailのインスタンスが不要になったら削除(インスタンス

元記事を表示

AWS DynamoDBの設計に挑戦して苦戦した話

個人開発というと大袈裟ですが、簡単なWeb APIを実装し公開しました。
AWS Lamda + API Gatewayを使ったサーバレス構成で、DBにDynamoDBを採用しました。

実務ではPostgreSQLとSQL Serverを使っており、NoSQLの利用経験がありません。
当然ですが、RDBの知識ではNoSQLのDB設計で苦労する点が多くありました。

実際の設計の過程を交えながら、こちらの[サーバーレスアプリケーション向きの DB 設計ベストプラクティス](https://www.slideshare.net/AmazonWebServicesJapan/db-20190905)を見ていきたいと思います。

開発するAPIは日本の主な山岳一覧を提供するAPI。
詳細は、以下をご確認いただけますと幸いです!

https://dottrail.codemountains.org/lp/mountix-api/

API ドキュメントを完成イメージとして
自分ならこう設計する!と考えならがら、読んでいただくと面白いかと思います。

## サーバーレスアプリケーショ

元記事を表示

青いベンチ診断の結果をひたすらtwitterに投稿するアカウントをつくった

[Zenn](https://zenn.dev/okaponta/articles/d89b8c99458b22)にも投稿したので、好きな方でお読みいただければと思います。

# はじめに
みなさま「青いベンチ」という曲はご存知でしょうか。
「この声が枯れるくらいに 君を好きと言えばよかった」からはじまるサビは聞いてて心地いいですね。

さて、私がこの曲を知ったのは[青いベンチ診断](https://shindanmaker.com/240064)というものです。
これがまた面白くて、1/157464の確率で「青いベンチ/サスケ」という文字列が揃うものになります。
確率からしてだいたい外れるんですが、以下のような診断結果が出力されてクスってきてしまいます。

揃わなかった文字列を言い合うみたいなtogetterもありました。

https://togetter.com/li/452165

2021年の終わりになぜか「ひたすらこの診断結果を投稿するBotを作りたい」と強く

元記事を表示

AWS DBS合格記(2021/12/28投稿)

# はじめに
この度AWS認定のDBSを受験してきましたので、勉強した内容と受験した感想を書いておきます。
これから受験される方の参考になれば幸いです。

今回でAWS認定は8冠を達成しました。やったね!

* [2019-07-04 AWS Certified Cloud Practitioner](https://qiita.com/handy-dd18/items/c2b62ad58206e47f1345)
* [2019-07-24 AWS Certified Solutions Architect – Associate](https://qiita.com/handy-dd18/items/96a9f374a64663b10e24)
* 2021-02-25 AWS Certified Data Analytics – Specialty (DAS)
* [2021-07-23 AWS Certified Developer – Associate (DVA)](https://qiita.com/handy-dd18/items/33ba3e6cfa100903912c)

元記事を表示

【Elastic Beanstalk】Docker Hubに置いているDockerイメージを使用してデプロイする方法

Elastic Beanstalk(以下EB)で、**Docker Hubのプライベートリポジトリ**にホストしているDockerイメージを使用してデプロイするための設定方法をざっくりまとめ

## 1. リポジトリを指定する
Dockerrun.aws.jsonに`Image`キーを追記する

“`json:Dockerrun.aws.json
{
“AWSEBDockerrunVersion”: “1”,
“Image”: {
“Name”: “organization/image-name”,
“Update”: “true”
}
}
“`

– `Name`キーにはDockerリポジトリを指定する
– `Update`キーにはイメージのキャッシュを上書きするかどうか指定します。デフォルトはtrue

? 注意点?
`Dockerfile`がソースバンドルに**含まれている**場合、Dockerrun.aws.jsonのImageを無視し`Dockerfile`を使用してコンテナ構築が行われるため、Dockerfileは含めないようにしましょう

元記事を表示

サーバーレスアプリケーションを作成する

# 事前の準備
WebStormを使って、AWSのサーバレスアプレケーションを作成するための準備作業になります。
[nvmを使って、Node.jsをインストールする](https://qiita.com/hikotaro_san/items/f5ae1962920dcdf847b0)
[AWS SAM CLI をインストールする](https://qiita.com/hikotaro_san/items/ccfbf876aa6b68e322be)
[Dockerをインストールする](https://qiita.com/hikotaro_san/items/fac9d7f215fdf47a3ba6)
[AWS Toolkitをインストールする](https://qiita.com/hikotaro_san/items/b1334b477e19951f7ccc)

# 新規プロジェクトを作成する
WebStormを起動します。
「New Project」をクリックします。
「AWS Serverless Application」をクリックします。
お好きなプロジェクト名を入力し、「Crea

元記事を表示

VMware Cloud on AWS 関連投稿記事のジャンル別まとめ

#1. はじめに
「[VMware](https://www.vmware.com/jp.html)」および「[VMware Cloud on AWS](https://www.vmware.com/jp/products/vmc-on-aws.html)」について投稿した記事が溜まってきたのでジャンル別に分けてあらためてご紹介します。

#2. ジャンル別記事まとめ

##初心者/初学者向け
「VMware」「VMware Cloud on AWS」とはなんぞ?という方向けに投稿した記事です。「VMware」「AWS」などのキーワードを聞いたことがあるもしくは触ったことがある、という方を想定して書いています。

https://qiita.com/sanjushi/items/c62735dd22056b62c00d

https://qiita.com/sanjushi/items/5b97b4a89d8c4e0a84cb

##ハンズオンしたい方向け
製品やサービスについてイメージ湧いたけど実際触ってみたいな、という方向けに書いています。特に「VMware HoL」は無償かつイン

元記事を表示

【AWS】S3からアクセス拒否されてElastic Beanstalkのデプロイが失敗する

## 何が起こった?
Elastic Beanstalk(以下EB)のプラットフォームを[Linux 2ベースへアップグレードするためにGreen環境を用意](https://docs.aws.amazon.com/ja_jp/elasticbeanstalk/latest/dg/using-features.migration-al.html)し、ローカルから`eb deploy`を行ったところデプロイが反映されないという事象が発生しました。
EC2インスタンスに出力されるログを確認したところ、デプロイ途中で**S3へのアクセスが拒否**されてデプロイが失敗していることがわかりました。

“`/var/log/eb-engine.log
2021/10/29 15:51:57.334639 [ERROR] failed to populate deployment meta data with error failed to generate App version manifest file with error AccessDenied: Access Denied
statu

元記事を表示

AWS+DockerコンテナにおけるStreamlit環境構築

# はじめに

WEBアプリケーションを開発するにあたり、AWSに構築したDockerコンテナ上におけるStreamlitの使い方について調査したのでまとめる。

次の手順で環境構築の方法を説明する。

– AWS VPCとEC2インスタンスの構築
– Dockerの構築
– StreamlitによるWEBアプリケーションの構築

# AWS VPCとEC2インスタンスの構築

参照資料をもとに下図のようにAWSのVPCとEC2インスタンスを構築する。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139678/c02c1fc8-07d8-4f60-b39c-d34eb8fb2e95.png)

インバウンドルールは下記のように設定する。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139678/ddb97c7c-ddff-3f22-1977-a88c461c2360.png)

元記事を表示

VPCFlowLogsにCloudWatchLogsのAlarmを設定する(CloudFormation編)

# はじめに
[前回](https://qiita.com/a_b_/items/54252d2ba7944ecefcad)コンソールから作成した、VPCの不正トラフィックを検出する環境を、CloudFormationで記述しました。

# 構成
今回は複数環境の作成を想定して、「共通で使うリソース」と「個別の環境で使うリソース」で分けて作成しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/553680/233457e2-2181-4abc-71f8-1c84e282640d.png)

– 共通で使うリソース
– Log Group
– SNS
– VPCにアタッチする、フローログをLog Groupに送信する用のロール
– 図上では、環境ごとの場所に入っています
– 個別の環境で使うリソース
– VPCとそれに関連するもの
– S3バケット
– メトリクスとアラート
– 監視するロググループは

元記事を表示

AWS Toolkitをインストールする

WebStormを起動します。

メニューから、「Plugins」をクリックします。
![スクリーンショット 2021-12-28 10.49.35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/14202/06a05ed2-e9ae-0185-4500-a178c85700b0.png)

Marketplaceから、AWS Toolkitを探し、「install」をクリックします。
![スクリーンショット 2021-12-28 10.51.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/14202/d4a18aec-eb01-057b-258e-0a53825a0775.png)

WebStormを再起動します。

元記事を表示

AWS ChaliceからLambda Powertoolsを使ってみた

# 1.はじめに
みなさんLambda Powertoolsはご存知でしょうか?Lambda関数用のライブラリで、X-Rayによるトレース、ログ出力、CloudWatchのカスタムメトリクスの作成等々が簡単に実装できる優れモノです。
現在対応している言語はPython、Javaの2つですが、今回はPython向けのサーバレスフレームワークであるChaliceの中でLambda Powertoolsを使う方法を紹介していきたいと思います。
Chalice&Lambda Powertoolsって何やねんという方は、記事の末尾に参考のリンクを貼ってますので興味があればご覧ください。

# 2.ChaliceからLambda Powertoolsを使う方法
以下、ライブラリのインストールも含め手順を書いていきたいと思います。

## 2-1.ライブラリのインストール
まずは事前準備として開発環境にChalice、Lambda Powertoolsをインストールします。
シンプルにpipでインストールできます。

“`
$ pip install chalice
$ pip install

元記事を表示

AWS Certified Cloud Practitioner 合格しました

先日、AWS認定クラウドプラクティショナーの試験を受験し、合格しました!
その記録を残しておきます。

AWSを業務で扱い始めて2年余りです。これまでにアソシエイトとスペシャリティを全部取得しました。残りはクラウドプラクティショナーとプロフェッショナルのみという状況でした。アソシエイトを受ける前に最初にクラウドプラクティショナーを取ればよかったのですが、取りそこねていたので、いまさら受験することにしました。

今回の受験は、前回のネットワークスペシャリティ受験の1時間後です。AWSの認定資格としては10個目、今月(2021年12月)は5個目です。今月はこれで最後です。

2021年12月の受験履歴 (リンク先は合格体験記)

– [データアナリティクス専門知識](https://qiita.com/suzuki-navi/items/936741e02a5869856ad8)
– [SysOpsアドミニストレータアソシエイト](https://qiita.com/suzuki-navi/items/ebfde17bfed3eec97261)
– [セキュリティ専門知識](https:/

元記事を表示

AWS CDK(Python) 環境構築メモ

自分用メモです。
ご参考になれば幸いです。

■ローカル環境(Windows)へのCDK環境構築手順
・git導入(サンプルコードダウンロード用)
https://git-scm.com/download/win

・AWS CLI導入
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-windows.html#install-msi-on-windows

・クレデンシャル登録(AWS Configure実施※対象リージョン分実施)
aws configure
aws configure –profile us-east-1

・Node.js8.0以上導入
https://nodejs.org/ja/

・CDK導入
コマンドプロンプトで下記コマンド実行
npm install -g aws-cdk

・Python3導入
https://www.python.org/downloads/windows/

・エディタ(VisualStudio Code+Python拡張)
https://code.vi

元記事を表示

AWS SAM CLI をインストールする

# インストールする
Homebrewを使って、AWS SAM CLIをインストールします。
以下のコマンドを実行します。

“`
brew tap aws/tap
brew install aws-sam-cli
“`

インストールを確認します。
以下のコマンドを実行します。

“`
sam –version
“`

# アップグーレードする
以下のコマンドを実行します。

“`
brew upgrade aws-sam-cli
“`

# アンインストールする
以下のコマンドを実行します。

“`
brew uninstall aws-sam-cli
“`

元記事を表示

GitHub Checks APIをGitHub Actionsで使う!AWS EventBridgeの結果をGitHub Checksに反映させる!

この記事は[はてなエンジニア Advent Calendar 2021](https://qiita.com/advent-calendar/2021/hatena)の23日目の記事です。

昨日は @polamjag による[DevTools の Web 技術でできている部分を覗き見る](https://polamjag.hatenablog.jp/entry/2021/12/22/100000)でした。

今回は[Github Checks API](https://docs.github.com/ja/rest/guides/getting-started-with-the-checks-api)を活用して、プルリクエスト上でリリースまでに必要なテストを正常に終えているか確認できるようにするレシピを考えてみました!実際に手を動かして動かしてみたいので、モデルケースを想定し、そのケースに登場するプルリクエストで活用することを考えてみます。今回メインに説明したいのは、`GitHub Actions`周りであるのですが、`AWS EventBridge`に絡めると面白いのでその内容に

元記事を表示

MIRACLE LINUX 8.4をAWSでセットアップする

MIRACLE LINUX 8.4が無償化されてだいぶ経ちましたが、先日AWS用のAMIイメージが出てきましたので、セットアップ方法を簡単に説明してみます。AMIの作りがちょっと作りが面白いというか、ガチの日本のSIer向けだなあと思ったりするところもあるので。

* リージョンをアジアパシフィック(東京)、ap-northeast-1 に切り替えます。
北米リージョンなどではAMIを選択できません。

* マネージメントコンソールから「仮想マシンの起動」を選択
![ml-aws-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/654173/02bb8bed-eec6-af8d-060c-67c68b74cd5d.png)

* インスタンスウィザード ステップ 1: Amazon マシンイメージ (AMI) で MIRACLE で検索
![ml-aws-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/654173/

元記事を表示

iPhoneのショートカットに関するポートフォリオを作成しました【Laravel /Vue.js/ Docker / AWS / CircleCI】

## はじめに
### 記事の目的
ポートフォリオとして作成したWEBアプリケーションの紹介記事です。
iPhoneのショートカット機能に関するWEBアプリケーションを作成しました。
https://shortcutrecipe.com/
(↓途中からiPhoneのショートカットアプリに飛んでいます)
Image from Gyazo
### 自己紹介
– WEBエンジニアへの転職活動を開始した未経験エンジニア
– 市役所の情報システム部門配属(事務職採用)
– 好きなものはiPhoneのショートカットとNotion
– 課題解決や便利なものを作ったり伝えたりする仕事がしたいため、エンジニアを目指す

### 目次
[1. 作成したアプリについて【 概要と機能 】](#1-作成したアプ

元記事を表示

OTHERカテゴリの最新記事