- 1. AWS初心者(一ヶ月)がサーバレス開発 ~ CloudWatch と サービス間の接続周り 編 ~
- 2. AWS初心者(一ヶ月)がサーバレス開発 ~ API Gateway & Lambda & DynamoDB 編 ~
- 3. AWS LambdaでRESTでデータ取得してSplunkに送信してみる
- 4. AWS IoT thing shadowの取得と更新
- 5. Amazon Aurora とは
- 6. Microsoft Edge で AWS の ALB(ELB)にアクセスしたときにスティッキーセッションが効かない?
- 7. 【AWS IoT】AWS IoT Core ルールを使ったデータストアを試してみた(その1)
- 8. マイクロフロントエンド② GitHub ActionsでCI/CDの構築
- 9. AWS CodePipelineでGitHubのソースをS3へデプロイする
- 10. AWS Service Health Dashboardの障害データから学ぶAWS障害
- 11. サービスコントロールポリシー (SCP)について調べてみた
- 12. 【AWS】IAMの概要を5分で理解する
- 13. VScodeに求められたのでAWS SAM CLIの導入
- 14. 【備忘録】Greengrass Core(V1)をOTAアップデートした後に不具合が発生するパターンの検証
- 15. AWS完全未経験がAWS認定クラウドプラクティショナーを28時間でとるまで
- 16. AWS ElastiCache(Redis)に関する考察
- 17. AmazonBraketで学ぶ量子コンピュータ⓪
- 18. HrokuのDB再構築
- 19. EC2からメールを送信する(ポート 25 に対する制限を解除)
- 20. 署名付きURLのリージョン指定を間違えたメモ
AWS初心者(一ヶ月)がサーバレス開発 ~ CloudWatch と サービス間の接続周り 編 ~
[前前回](https://qiita.com/k-mishima/items/94a46d81951d0a4c3f3e)と[前回](https://qiita.com/k-mishima/private/458bf25a8641e3f72cef)に引き続き、AWS を触り始めて一ヶ月強の人間がサーバレス開発します。
# 脳内作戦会議、三度
既にフロント側とバック側は作り終えたわけで。
CloudWatch は、各サービスでログを仕込めば良いわけで。
あとは、フロント側とバック側を繋いであげればオッケーなわけで。
AWS を触り始めて一ヶ月強の僕でも、なんとかなりそうな希望が持てる気がしてくるわけで。|![capture_000022.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1164835/5cf19a63-7b64-8053-9374-51834f7ce531.png)|
|:–|– 作業a : [S3 & CloudFront](https://qiita.com/k-mishi
AWS初心者(一ヶ月)がサーバレス開発 ~ API Gateway & Lambda & DynamoDB 編 ~
[前回](https://qiita.com/k-mishima/items/94a46d81951d0a4c3f3e)に引き続き、AWS を触り始めて一ヶ月強の人間がサーバレス開発します。
# 脳内作戦会議、再び
静的コンテンツの公開までこぎつけたわけですが、
AWS を触り始めて一ヶ月強の僕には荷が重いままなわけで。
シンプルすぎる仕様は減らせない荷物なわけで。
適当な作戦が思いつかぬまま、下手の考え休むに似たり、と感心する頃には半日経過しちゃってるわけで。|![capture_000022.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1164835/5cf19a63-7b64-8053-9374-51834f7ce531.png)|
|:–|– 作業a : [S3 & CloudFront](https://qiita.com/k-mishima/items/94a46d81951d0a4c3f3e)
– 作業b : API Gateway & Lambda & DynamoDB
AWS LambdaでRESTでデータ取得してSplunkに送信してみる
#はじめに
– RESTで取得してSplunk or Splunk Cloudに取り込みたいデータがある
– Add-onがあればいいんだけど、ないものはない
– Add-on作るのめんどい
– ローカルでREST叩くスクリプト動かすとしても24時間稼働するマシン用意するのもコストがかかる
– うーん、、、AWS Lambda試してみるか → **何これすごい!** というお話です#環境
– Lambdaからアクセス可能するためEC2などでグローバルIPを持つSplunk Enterprise、もしくはSplunk Cloud
– AWS Lambda#設定手順の概要
1. SplunkでHEC設定
2. AWS Lambdaで関数作成
3. CloudWatchでLambdaを定期実行化#設定手順
##1. SplunkでHEC設定
まずはAWS Lambdaからデータを受け取るためのHECを設定します。
ここは通常通りです。1. 設定 > データ入力
2. HTTPイベントコレクターの [+ 新規追加] をクリック
3. 名前を適当に入力して [次へ] をクリック
AWS IoT thing shadowの取得と更新
Thing shadowの読み書きを行う方法はいくつかある。それらのまとめ。
## イメージ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/406130/585b2e4a-59ae-057b-399b-035c2779977c.png)
## アプリケーション側 (Eg. Lambda)
### 準備
Lambda関数を作成し`AWS IoT Data`へのアクセス権限を割り当てる。
### 基本動作
“`js
// 初期化
const iotdata = new aws.IotData( { endpoint: <エンドポイント> } );const params = {
thingName:,
payload: <更新内容>
};
// データ更新
/// 非同期で更新する。
const res = iotdata.updateThingShadow(params, (err, data) => {
// 実行後のコールバ
Amazon Aurora とは
## 勉強前イメージ
RDSの中の1つでmysqlとpostgresqlに互換性があるやつ
## 調査
### Amazon Aurora とは
Amazon RDSで利用可能なエンジンのタイプの1つで
マネージド型のリレーショナルデータベースサービスになります。以下はRDSの作成画面ですが、MySQLやPostgreSQLに並んでAuroraがあります。
![1RDS · AWS Console – Google Chrome 2021-03-16 23.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/928f286e-332a-0dea-30d5-e51c02d178f0.png)
AuroraはMySQLに互換性があるバージョン、PostgreSQLに互換性があるバージョンを選ぶことができ
それぞれ数倍高速にアクセスできると言われています。![2RDS · AWS Console – Google Chrome 2021-03-16 23.11.png](h
Microsoft Edge で AWS の ALB(ELB)にアクセスしたときにスティッキーセッションが効かない?
わたしが見つけたわけでも直接解決したわけでもないのですが、身近で表題のトラブルが発生したので、こちらに残しておきます。
※2021/03/18 現在の情報です。今後、Edge や ALB の動作が変更される可能性があります。
# Microsoft Edge のバージョン
これを書いている時点で最新の 89.0.774.54(64 ビット)で確認しています。
![01_edge_version.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/123899/20af32d4-2215-e0d2-24b5-8608a97ae603.png)# ALB 側の設定
ターゲットグループでスティッキーセッションを有効にし、Stickiness type を「lb_cookie」にしている場合に、この事象が発生します。この設定では ALB が「AWSALB」という Cookie を発行して、それをセッションキーにしてアクセスをターゲットサーバに振り分けます。
なお、ここでは Stickiness dura
【AWS IoT】AWS IoT Core ルールを使ったデータストアを試してみた(その1)
IoT 始めたばかり人向けの記事です。
AWS IoT Coreのルール機能で、デバイスから送信したデータをいくつかのストア先に溜めてみました。
ルール機能の概要やストア方法をまとめてみました。#前提
+ [AWS IOT CORE 初級ハンズオン](https://aws-iot-core-for-beginners.workshop.aws/)を参考にしています。
+ 送信元デバイスは NVIDIA Jetson Nano 開発者キット B01 を利用
+ AWS IoT Core のコンパネで「モノ」を作成して、「モノ」用の証明書も作成してデバイスに保存
+ デバイスにはAWS IoT Device SDK をインストール
+ クライアントプログラムは[AWS IOT CORE 初級ハンズオン](https://aws-iot-core-for-beginners.workshop.aws/)のダミーデバイス用プログラム(
device_main.py)を利用
+ デバイスからIoT Coreに向けてMQTTで10秒おきにデータ送信
+ データはこんな感じ“`jso
マイクロフロントエンド② GitHub ActionsでCI/CDの構築
前回の記事でマイクロフロントエンドの基礎を学んだので、今回はReactでマイクロフロントエンドを構築し、GitHub ActionsでCI/CDを組んでみることにしました。
https://qiita.com/suzuki0430/items/b1b7c2d63e1eaf4d2c66
3つのプロジェクト(Marketing, Authentification, Dashboard)で計6つの画面を実装し、Containerでまとめて表示するような構成にします(記事内で作成するのは、Marketingのみになります)。
![スクリーンショット 2021-03-17 21.15.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/569054/55dbe06f-38cb-bc8b-ec6a-d5e2656f7e79.png)#マイクロフロントエンド構築における鉄則
##1. 子プロジェクト同士は疎結合させる
プロジェクト間での関数/オブジェクト/クラスのimportやstateの共有をさせないよう
AWS CodePipelineでGitHubのソースをS3へデプロイする
## はじめに
CodePipeline 設定手順の備忘録。## やりたいこと
– GitHubへのpushをトリガーにして、S3に自動デプロイしたい
– 環境を分けたい(開発、ステージング、本番)
– デプロイ結果をslack通知したい## 構成図
![code1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/917499/0f7e2eff-2c60-6745-3086-084805062e4f.png)
※ ng new コマンドで作成した Angular のサンプルコードをデプロイします。
## 設定手順
### 1. CodePipeline の設定
「パイプラインの作成」から作成を開始します。
![スクリーンショット_2021-03-14_22_17_22(2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/917499/bec52669-6aa0-1bd6-7152-b72951b54b
AWS Service Health Dashboardの障害データから学ぶAWS障害
## はじめに
先日,AWSの東京リージョンで気象庁のサイトがダウンするというインパクトの大きな障害が発生してニュースになりましたが,AWS全体ではどの程度の頻度で障害が発生しているのでしょうか?本稿ではAWSが公開している障害のデータから簡単な分析を行い,AWS障害に対する理解を深めてみます。
## AWSの公式障害情報
大規模なAWS障害は[AWSのこちらのサイト](https://aws.amazon.com/premiumsupport/technology/pes/)にレポートが掲載されています。これを読むだけでお腹いっぱいになりそうですが,レポートの件数は多くはありません。もう少し全体の傾向が見えるデータを探してみましょう。AWSがサービスとして提供している[Personal Health Dashboard](https://docs.aws.amazon.com/ja_jp/health/latest/ug/getting-started-phd.html)にはもう少し規模の小さい障害のレポートも掲載されており,障害のデータを集計したりできそうです。
…
サービスコントロールポリシー (SCP)について調べてみた
# サービスコントロールポリシー (SCP)について調べてみた
AWS Organizationsにおける権限設定で出てくるSCPですが、実は1度も設定したことがないので具体的な挙動がわかっていません。アカウント単位で権限を設定して、その権限に従ってアカウント内のIAMユーザーなどにリソースのアクセス権を付与するみたいなフワッとした理解なので、今回はこのSCPについて理解を深めたいと思います!## いつも通り
ドキュメントからいきましょう!
[サービスコントロールポリシー – AWS Organizations](https://docs.aws.amazon.com/ja_jp/organizations/latest/userguide/orgs_manage_policies_scps.html)より### SCPとは
>サービスコントロールポリシー (SCP) は、組織のアクセス許可の管理に使用できる組織ポリシーの一種です。SCPs では、組織のすべてのアカウントで使用可能な最大アクセス許可を一元的に制御できます。SCPs により、アカウントが組織のアクセスコントロール
【AWS】IAMの概要を5分で理解する
| |
|:-:|
|![IAM (2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1197988/5d94cd0c-4891-f37f-545b-0c6e5adea7fd.png)
|# はじめに
自身の知識の整理も兼ねて、IAMの要点を記事にまとめてみました。概要の解説に留め、詳しい解説はしていません。初学者向けにざっくりとした説明をする際に利用するイメージで執筆してます。# 想定している読者
– AWS(IAM)初学者
– IAMを利用するにあたり重要なポイントをざっくり理解したい方# IAMとは
AWS Identity And Access Management(IAM)はAWSを安全に操作するためのアクセス制御の仕組みです。# 主要なトピック
### IAMポリシー
どのリソースに対してアクセスを許可/拒否するかを定義することができるもの。設定項目
– Effect:許可するの
VScodeに求められたのでAWS SAM CLIの導入
# はじめに
VScodeを起動したところ、AWS拡張機能にAWS SAM CLIを導入を求められた(というかcliないぞとエラーが出た)ので、対応のためインストールしたので備忘録。
環境はwsl2(ubuntu 18.0.4)です。# AWS SAM とは
https://docs.aws.amazon.com/ja_jp/serverless-application-model/latest/developerguide/what-is-sam.html
>- AWS サーバーレスアプリケーションモデル (AWS SAM)は、オープンソースのフレームワークで、 サーバレス・アプリケーション AWS上で。
>サーバーレスアプリケーションは、Lambda 関数、イベントソース、およびその他のリソースを組み合わせたもので、協調して動作することによってタスクを実行します。サーバーレス アプリケーションは
>AWS SAM コマンドラインインターフェイス (AWS SAM CLI)。このツールを使用して、AWS SAM テンプレートによって定義されたサーバーレスアプリケーション
【備忘録】Greengrass Core(V1)をOTAアップデートした後に不具合が発生するパターンの検証
#はじめに
3度目ですが、Greengrass(V1)のOTAアップデートの記事です。
依然として根本的な問題解決ではないものの、問題の再現/回避ができるようになったので備忘録としてまとめておきます。まず、以下の記事でGreengrassのOTAアップデートを実施した際、Lambdaが動かない+グループのデプロイが出てこない問題が発生しました。
参考:[Greengrass(V1)のOTAアップデートを実施する](https://qiita.com/kt-yt/items/b4ceaca58757c5bab225)上記の場合、Greengrassの再起動によってLambda、デプロイ共に問題は解消しました。
そこで、OTAアップデートの後にシェルスクリプトを実行してGreengrassの再起動を行って問題解決しようとしたのが以下の記事です。
参考:[Greengrass(V1)のOTAアップデート前後にシェルスクリプトを実行する](https://qiita.com/kt-yt/items/0626b568d5b4f8d2483d)しかし、前回の記事内で以下を再度試してみる
AWS完全未経験がAWS認定クラウドプラクティショナーを28時間でとるまで
##結論
・[AWS公式のE-ラーニング][link-1]を受講する(10時間)
[link-1]:https://www.aws.training/Details/eLearning?id=66479
・[Udemyの問題集][link-2]をひたすら繰り返す(18時間)
[link-2]:https://www.udemy.com/course/aws-4260/#はじめに
こんにちは
本記事はAWSについて何も知らなかった人がAWS認定クラウドプラクティショナーに合格するまでを記録した記事です![スクリーンショット 2021-03-18 180531.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/596309/9617d50c-dbc6-e17b-f614-929b11d9b8d6.png)
##前提
・文系卒
・新卒Sier1年目
・一応インフラ系の部署に配属されている
・オンプレなのでクラウドは言葉を知っている程度##受験のきっかけ
~~**AWSエンジニアって給料高いやん
AWS ElastiCache(Redis)に関する考察
## 目的
ElastiCache(Memcached)を使用していたが、ElastiCache(Redis)に切り替えることを検討してみたので、
自身の理解向上のために備忘録として残します。## What’s redis
![スクリーンショット 2021-03-18 14.36.42.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/247837/43985a8a-dc0a-5326-fba3-1b3c51a62e64.png)
## What’s AWS ElastiCache(redis)Extension
![スクリーンショット 2021-03-18 14.37.16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/247837/db4e1701-d149-4b90-6c3b-1afaaa8ba7b5.png)
## Cluster Mode Enabled vs Disabled
![スクリーンショット
AmazonBraketで学ぶ量子コンピュータ⓪
# この記事について
量子コンピュータの勉強をはじめて最近一通りAmazonBraketを触り終えました。
最近登場したサービスであることもあり、少し丁寧なドキュメントを残しておくと後続の方が勉強しやすくなったり、参照してわからないところを調べる際に便利かなと思ったので
自分自身の理解向上も兼ねて記事にまとめていっています。
その中で環境構築を今から行うという方もいると思うのでメモ程度に環境構築のやり方を記事にしておこうと思います。また、量子コンピュータ関係の他の記事は、下記で紹介しています。
https://qiita.com/shnchr/items/41fa7fd1284d74007a7c
※本記事は2021年3月に更新している記事です。更新などにより内容が変わっている可能性もあるのでご注意ください。
# 環境構築
## Braketインスタンス作成
1. まずは[ホーム画面](https://ap-northeast-1.console.aws.amazon.com/console/home)にて「braket」を検索してAmazonBraketのコンソールに移動
HrokuのDB再構築
## 下記手順でDB再構築しています。
テスト段階でDBの変更をよくしていたので手順だけ忘れないように残しておきます。## ① DBのリセット
“`
$ heroku pg:reset DATABASE_URL
“`
コマンドを実行すると
>
↑で画面が止まるのでアプリ名を入れる。## ② マイグレーション(再構築)
“`
$ heroku run rake db:migrate
“`## ③ Herokuの再起動
“`
$ heroku restart –app APP_NAME
“`
migrateした後に再起動しないとエラーが出る時があるらしいので下記を実行。[APP_NAME]をアプリ名に変える。## ④ データseeds
“`
$ heroku run rails db:seed
“`
AWSでデプロイしている場合であれば
rake db:seed RAILS_ENV=production
とQiitaに書いてあったが
AWSとPaiza.cloud共に上記で行けたので今はこれで行ってる。
EC2からメールを送信する(ポート 25 に対する制限を解除)
# 概要
最近新規で作成したAWSアカウントで起動したEC2からgmailのメアドへメール送信してみたが、メールが届かなかった。
maillogを見ると、google の メールサーバへの接続が Connection timed out になっていた。メールを送信したEC2のあるSubnetのネットワークACLでは25番ポートのOutboundは許可しているし、SecurityGroupのアウトバウンドルールでも25番ポートは許可している。
調べたら、どうやらこれが原因だとわかった
https://aws.amazon.com/jp/premiumsupport/knowledge-center/ec2-port-25-throttle/# 解除申請 1回目
メールを送信したいEC2があるAWSアカウントにサインインした状態で、次の解除申請フォームへアクセスする。
https://console.aws.amazon.com/support/contacts?#/rdns-limitsフォームの文言は英語だ。。
署名付きURLのリージョン指定を間違えたメモコマンド実行時に正しいリージョン(エンドポイント)を指定できていなかった結果、
署名付きURL…ちゃんと発行できてるのに…なんや301って…
となって若干はまったのでメモ。#### 状況
↓のようにデフォルトで東京リージョンが指定されている状態で、us-east-2にあるオブジェクトに対して署名付きURLを発行。(PowerShellからCLIで実行)“`PowerShell
> aws configure
AWS Access Key ID [********]:
AWS Secret Access Key [********]:
Default region name [ap-northeast-1]:
Default output format [yaml]:
“`“`PowerShell
> aws s3 presign s3://mybucket/test.csv
https://s3.ap-northeast-1.amazonaws.com/mybucket …
“`一見問題なさそう。
#### 結果
ダウンロードできない“`PowerS