AWS関連のことを調べてみた2020年05月26日

AWS関連のことを調べてみた2020年05月26日

Shopify アプリを AWS に SPA + Serverless 構成でデプロイする – React + Amplify / Node.js + Serverless Framework –

前回の「[Shopify でテーマとアプリを開発する – ThemeKit / Shopify App CLI –](https://www.nri-digital.jp/tech/20200525-2042/)」では、Shopify が提供する公式ツールを使った開発方法を解説しました。Shopify App CLI はとても便利なツールなのですが、2020年5月時点では本番環境は heroku へのデプロイのみ提供しています。AWS / GCP / Azure などのクラウドで稼動させる場合は別途 CICD パイプラインを構築する必要があります。また Shopify App CLI で生成されるアプリは koa / Node.js をベースとしており Web サーバーを必要とします。本記事では AWS に SPA + Serverless 構成でデプロイする方法を解説します。

# アーキテクチャ構成
[Shopify Dev Template](https://github.com/t-kurasawa/shopify_dev_template) のサンプルコードを元に解説します。

元記事を表示

GW明けからSAA合格に向けて学習したが不合格だったので振り返り

4/30まででLinuxの研修が終わり、GW明け5/7~本格的にSAAの学習に入りました。

書籍とUdemyの教材を使いながら学習を進め、教材付属の模擬試験を何度か受験しました。

模擬試験の2週目まで行う時間がなかったのが反省点であり、次回に向けた取り組みでもあります。

4月末に投稿したこちらの記事で、スケジュールや目的は記載してあります。

[コロナウイルスの影響でリモート勤務が長引く為、AWS資格(SAA)取得計画](https://qiita.com/drafts/ebf933d7814d2c407a67)

#結果

不合格でした。(点数はAWSから送られてきたら記載します)

感覚的には、35問目くらいの時点で、受かったと思いましたが…油断は禁物ですね。

実は、前職在籍中(ITとは無縁)1回受験したことがあり、その時とは手応えが全然違いました。

なので、確実に知識・理解は向上しているかと思います。

#SAA学習期間,受験日
5/7~(GW明けから)から本格スタートで、5/25(月)に受験しました。

約2週間強の学習期間でした。

#学習スケジュールの進歩状況

元記事を表示

【AWS】IAMロールとIAMポリシーの違いが分かり難かったのでまとめてみた

SAA受験に向けてAWSについて学習中です。

IT未経験からエンジニアになりましたが、英語多すぎ…カタカナ多すぎ…というのが最初の感想です。

恐らく同じような感想を持たれているIT未経験→エンジニアの方もいらっしゃるのではないでしょうか。

そんな中で、自分なりに噛み砕いて理解していっております。

とても単純で簡単な例なのですがIAMのロールとポリシーが理解し難かったので、まとめてみました!

#IAMとは?(Identify and Access Management)

IAMには4つのサービスが有ります。

・グループ
・ユーザー
・ロール
・ポリシー

今回は、ロールとポリシーについてまとめていこうと思います。

##◆IAMロール

AWSリソースにリソースに付与するもの。
IAMロールにIAMポリシーが付与される。

##◆IAMポリシー

IAMロールに内包されるもの。
AWSリソースにアクセスする為の権限設定であり、AWS側で用意がされているもの。

##図で表してみた

こんな感じです!
IAMロールという大きい入れ物に、IAMポリシーという各リソースへの権

元記事を表示

AWS EC2インスタンスのlocalhostにアクセスする

[この記事](https://qiita.com/jesuissuyaa/items/bd27ad173ecbc4f76ba0)で、AWSのEC2のインスタンスからコードを編集するように環境構築したんですけど
`yarn dev`したときにGoogle Chromeからlocalhostにつながらない問題が発生

同じ人がいたら:arrow_down:をやれば一瞬で解決するのでやってみてください〜

## 手順

:one: AWS EC2のコンソールを開く

:two: localhostに接続したいインスタンスの行の”Security Group”をクリック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/430849/2deac0cd-14dd-b24e-ea52-2f68e7b60517.png)

:three: すでにあるSecurity Groupのinbound rulesを編集する

![image.png](https://qiita-image-store.s3.

元記事を表示

AWSのサービス語句まとめ

###試験で覚えるためのAWSサービスのまとめ

1.API GAteway
2.Aurora
3.Auto Scaling
4.CloudFront
5.CloudTrail
6.CloudWatch
7.Data Pipeline
8.Direct Connect
9.DynamoDB
10.EBS(Elastic Block Store)
11.EC2(Elastic Comppute Cloud)
12.ElasticCache
13.ELB(Elastic Load Balancing)
14.EMR
15.Glacier
16.IAM(Identity and Access Management)
17.Kinesis
18.Kinesis Data Firehose
19.Kinesis Data Streams
20.Lambda
21.RDS(rekational Database Service)
22.RedShift
23.Route 53
24.S3(Simple Storage Service)
25.SNS(Simple Notification Serv

元記事を表示

【AWS】S3(Simple Storage Service)とは?

# はじめに
AWS SAA取得に向けて学習を進めています。
今回はS3とは何か?ということをアウトプットしていきたいと思います。

# S3とは?

**別名:Amazon Simple Storage Service(S3)**

インターネット経由で利用できるオブジェクトストレージサービス

2006年からサービスを開始していて、安価で高い耐久性をもっているAWSの代表的なサービスの一つ。

# S3の特徴

– **イレブンナイン(99.999999999%)の耐久性**
保存されたファイルをリージョン内の3か所以上のアベイラビリティーゾーンにあるデータセンターに自動的に複製して保持している。
イレブンナイン(99.999999999%)というのは、S3に1万個のオブジェクトを保存したとして、そのうちの1つが障害によって失われるのに**平均で1000万年**ほどかかるレベルとのことです。
  

– **結果整合性モデル**
データを更新・削除した際に順次データが更新されていく仕組み。
**「一つの更新はそのうち全体に反映される」**という考え方。
データの更新直後など読み取り

元記事を表示

JAWS-UG CLI専門支部 #154R S3入門参加 まとめ

# S3入門編に参加してみて
JAWS-UG CLI専門支部 #154R S3入門に参加。
S3の操作をAWS CLIを通して学んだ。1時間遅れで参加したけど、なんとか全ての操作をやりきった。
茅場町開催で一度参加したことあるけど、なかなか時間があわずに2回目以降はいけていない。
オンライン開催になってから今のところ毎回参加できているので本当に嬉しい。:relaxed:
運営者の波多野さんありがとうございます!
[★JAWS-UG CLI専門支部 #154R S3入門 イベントページ](https://jawsug-cli.connpass.com/event/173009/)

## できるようになったこと
– S3バケットの構築S3バケットを作成
– S3オブジェクトの操作(確認、アップロード、ダウンロード、移動、削除) 
– S3バケットの同期
– webサイトホスティング
– 署名付きURLの発行

[★教材ページ](http://prototype-handson-cli.s3-website-ap-northeast-1.amazonaws.com/handson_ligh

元記事を表示

1つのALBでWebサーバとAPIサーバをドメインで出し分ける

# やりたいこと
– 図のようにWebサーバとAPIサーバを1つのALBで出し分けてほしい
– 各サーバは負荷分散を行う可能性もあるため複数台登録にも対応してほしい
– IPは固定していないので,IPが変化しても大丈夫なようにする

![Untitled Diagram (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/130670/6908e8f8-6758-b1e5-8f41-9dfba17011b2.png)

# 今回やること
– Route 53でWebサーバとAPIサーバ用のドメインを用意する
– ALBでドメインによってWebサーバ及びAPIサーバのターゲットグループを切り替えるように設定
– 今回は便宜上,Webサーバ用のドメインを**hoge.com**,APIサーバ用のサブドメインを**api.hoge.com**として説明します

![Untitled Diagram.png](https://qiita-image-store.s3.ap-northeast-1.amazon

元記事を表示

【学習メモ】AWS(EC2インスタンスの設置)

##1.目標成果物
スクリーンショット 2020-05-25 21.58.35.png

##EC2とは?
Elastic Compute Cloud、AWSクラウド上の仮想サーバーのこと。EC2インスタンスとも。

特徴
数分で起動し、1時間または秒単位で従量課金
サーバーの追加・削除、マシンスペック変更も数分で可能
OSより上のレイヤーについて自由に設定可能

##2.サーバー構築の作業手順
**1.EC2インスタンスを設置する**←今回はここ
2.Apacheをインストールする
– SSHでサーバーにログイン
– Apacheをインストール
3.ファイアウォールを設定する

##3.EC2インスタンス設置手順の確認
1.AMIの選択
2.インスタンスタイプの選択
3.インスタンスの詳細の設定
4.ストレージ

元記事を表示

ECS Cluster Auto Scalingについて調べたこと

## 使うと何が嬉しいのか
* 今まではECSのタスクとEC2のコンテナインスタンスを別々に管理しないといけなかった
* ECS Cluster Auto Scaling(CAS)を設定すると、ECSでタスクに合わせてASGをスケールイン/アウトしてくれる
– ASGを使うことが前提

## デモ環境構築メモ
参考: https://dev.classmethod.jp/articles/aws-ecs-cluster-auto-scaling/

* ECSで空のクラスタを作成
* ASGを作成
– 起動テンプレートも必要に応じて
– 「スケールインからのインスタンス保護」を有効にすること
* ECSクラスターでキャパシティプロバイダを作成する
– 設定項目について
– `マネージドスケーリング`: 有効になっているとECSがASGのスケールを行ってくれる
– `ターゲットキャパシティー(%)`: ASG内のインスタンスをどのくらい使うか。(20%くらいは空けておきたいという人は80を記入)
– `マネージドターミネーション保護`:

元記事を表示

AWS Elemental MediaPackage とは

#AWS Elemental MediaPackage とは
> MediaPackage は、AWS クラウドで実行されるジャストインタイムビデオパッケージ化および配信サービスです。MediaPackage では、安全性、スケーラビリティ、信頼性に優れたビデオストリームをさまざまな再生デバイスやコンテンツ配信ネットワーク (CDN) に配信できます。

##概念と用語
* ジャストインタイムパッケージング
* 配信サービス
* パッケージャ
* ソースコンテンツ
* ストリーム
* トラック

元記事を表示

AWS Elemental MediaLive とは

#AWS Elemental MediaLive とは
> AWS Elemental MediaLive はリアルタイムの動画サービスで、ブロードキャストおよびストリーミング配信用のライブ出力を簡単に作成できます。

##AWS Elemental MediaLive の詳細
> AWS Elemental MediaLive では、MediaLive を含むライブストリーミングワークフローには 3 つのシステムが含まれています。

* ソースコンテンツの取り込みと変換を行う MediaLive チャネル。
* MediaLive にソースコンテンツ (動画) を提供する 1 つ以上のアップストリームシステム。
* MediaLive が生成する出力の送信先となる 1 つ以上のダウンストリームシステム。

スクリーンショット 2020-05-25 21.24.54.pngCodePipelineを使ってLambdaに自動デプロイ

# 概要
Lambdaの関数が増えてくると修正のたびにコンソールで修正したり、ローカルのPCで修正したソースをzipに固めてコンソールでアップする作業って結構大変ですよね!!
ってことでCodePipelineを使ってgitにpush(merge)されたタイミングでLmabdaにデプロイしたときの話を書いていきます。

## 処理の流れ
1. Lambdaに関数を登録(Hello World)
2. GithubにLambda用のコードをpush
3. CodePipelineのSourceでソースの取得
4. CodePipelineのBuildでテストの実行など(今回はテストの実行はしない)
5. CodePipelineのDeployでLambdaにデプロイ

## Lambdaに関数を登録
##### LambdaにHello Worldの関数を登録
関数の作成ボタンから関数の作成
スクリーンショット 2020-04-02 9.59.43.pngAWS Media connect

#AWS Elemental MediaConnectとは何ですか?
> AWS Elemental MediaConnectは、放送局やその他のプレミアムビデオプロバイダーがAWSクラウドにライブビデオを確実に取り込み、AWSクラウドの内部または外部の複数の宛先に配信することを容易にするサービス

##AWS Elemental MediaConnectの概念と用語
* Contribution encoder
* ライブビデオフィードを受信し、トランスポートまたはアダプティブビットレート(ABR)ストリームへのさらなる処理のために、ストリームを単一の高品質メザニンストリームにエンコードするエンコーダー。
* Distribution
* 地理的に異なる場所にコンテンツを配信する目的で、他のAWSリージョンのAWS Elemental MediaConnectフローを指す出力を作成した結果。
* Entitlement
* AWSアカウントが特定のAWS Elemental MediaConnectフローのコンテンツにアクセスできるようにするために付与されるア

Sansan API + AWSで企業情報のマスターDBを構築する

## 1. 経緯
社内には数多くのシステムがあります。CRM、ERP、経費精算、、、etc…
そして、その各システムには、企業を登録するUIがあり、それぞれのシステムに企業登録を行います。
そこで課題に上がってくることが以下の2点!

#### 社内の課題?
①それぞれのツールに何度も同じような情報を入力しなければならない。
※CRMやERPなど各システムに企業名や担当者など共通する情報を何度も入力。。。

②色々な人が入力するので、【前編】日本語対応!Amazon Transcribeを使用してみた 〜サービス編〜

## Amazon Transcribeってなに?

端的にいうと、音声情報をテキスト情報に変えるサービスです。

> Amazon Transcribe を使用すると、開発者は音声をテキストに変換する機能をアプリケーションに簡単に追加できます。コンピュータでは、音声データを検索および分析することは事実上不可能です。したがって、録音された音声は、アプリケーションで使用する前にテキストに変換する必要があります。

20200130160917.png
https://aws.amazon.com/jp/transcribe/

## 背景
会社の中の人?「ミーティングや勉強会の議事録(発言録)を作成するのが大変

AWS SAA資格取得~EBSとEFS編~

##はじめに
SAA対策のWEB問題集で「EBS」と「EFS」の違いについて理解できていなかったため、
少しまとめたいと思います。

##EBSとは
永続可能なブロックストレージサービス。EC2インスタンスにアタッチすることで利用できる。
※ブロックストレージとはデータを「ブロック」と呼ばれる細かい単位で分割して保管する方式。

##EBS特徴的機能
####複数のストレージタイプ
– **汎用SSD(General Purpose SSD:gp2)**
デフォルトで提供されているストレージタイプ。SSDを安価に利用することができる。
確保した容量に応じてIOPSが設定されており、OSのルート領域や、高性能なI/Oを
要求されないデータ領域で利用される。

– **プロビジョンドIOPS SSD(PIOPS:io1)**
高パフォーマンスを実現できるストレージタイプ。
SSDをベースにユーザが自由にIOPSを設定して利用することができる。
汎用SSDより高いパフォーマンスが求められる場合にも利用され、ストレージ容量に加えて、
指定したIOPSに対しても課金される。

– **スループッ

AWS MediaServicesについて

#AWS Elemetnalとは
まずは一読
[初心者向け] AWS MediaServices の役割をライブ配信ワークフローと照らし合わせながら理解する
https://dev.classmethod.jp/articles/aws-mediaservices-role-with-live/
 
> AWS MediaServices は、主に AWS 上で動画配信を行うために使用されるサービス

* AWS Elemental MediaConnect
* 信頼性と柔軟性が高く、安全なライブビデオの転送
* AWSElemental MediaLive
* ブロードキャストとマルチスクリーンビデオ配信のために入力をライブ出力に変換する
* AWS Elemental MediaPackage
* ライブおよびオンデマンドのビデオコンテンツの作成とパッケージ化
* AWS Elemental MediaStore
* ライブやオンデマンドのメディアワークフロー向けにビデオアセットを作成および保存する
* AWS Elemental MediaTail

AWS S3 Glacier Deep Archive – AWSで一番安いストレージの試し方

# S3 Glacier Deep Archiveとは

S3 Glacier Deep Archiveとは、
AWS S3のストレージクラスの1つで、データの取り出しに12時間くらいかかるけど、[ストレージ費用(データ保管費用)がめっちゃ安い](https://aws.amazon.com/jp/s3/pricing/)というものです。

ストレージ費用は、2020年5月現在最安のリージョン(オハイオなど)では、
「0.00099USD/GB/月≒1GBを1か月あたり約0.11円」なので、

– 1TBのデータを1年間保管した場合
– 11.88USD≒1300円程度

となります。
取り出しには別途費用がかかりますが、めちゃくちゃ安いです。

ビジネス上の帳簿データから個人的なデータまで、あらゆるバックアップに活用できます。

今回は、これをブラウザから簡単に使ってみる方法を紹介します。
※AWSのCLIから利用する方法については、[公式ドキュメント](https://docs.aws.amazon.com/cli/latest/reference/s3/)をご参照ください

AWS EC2にHTMLをアップロードする

#AWS EC2にHTMLをアップロードする
びっくりするほどハマったのでノウハウをシェアします。
AWSの練習というよりはリナックスの練習のようでした。
SESで仕事をしているといきなりリナックスも使うときは使うのでいい練習になりました。

##No1 EC2にSSH接続を行う。
ssh -i “/Users/gina/.ssh/flash-card.pem” ec2-user@9.999.999.999
##No2 入ってない場合はApacheをインストールし、スタートする。
sudo -i (ルート権限に変更する)
yum -y install httpd
service httpd start
systemctl status httpd
##No3 ブラウザでWebサーバーのIPアドレスを入力する。
ブラウザでWebサーバーのIPアドレスを入力し、画面が見えたら正解。
↓ ここまでは下記の記事が参考になります。

【Amazon3時間クッキング】材料費500円でAWSにWordPress環境を構築するレシピ
https://qiita.com/blackriver/items