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

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

Nuxt.js + JavaScriptでエクスポネンシャルバックオフを実装する

## エクスポネンシャルバックオフとは?

アルゴリズムの一つです。
直訳すると「指数関数的後退」で、いわゆるリトライ処理の間隔を指数関数的に増加させる方式のことです。

リトライ間隔例:1秒、2秒、4秒、8秒・・・

[AWS でのエラー再試行とエクスポネンシャルバックオフ](https://docs.aws.amazon.com/ja_jp/general/latest/gr/api-retries.html)

## ユースケース

主にネットワークエラーに対しての再試行の方式として使用します。
一時的な負荷のエラーに関してはリトライで成功する可能性が高いですが、一般的な「n秒後にリトライ」を実施する方式だとn秒ごとに同じ量の負荷がかかり続けることが懸念されます。
エクスポネンシャルバックオフ方式を使用して指数関数的にリトライ間隔を増加させることで、効率的に負荷分散を行えます。

## やること

– リトライボタンを押すたびに指数関数的にリトライ処理までの間隔を増加させる

## 本題

Nuxt.js + Vuetifyを使用して作っていきます。

###

元記事を表示

AWS KMSの対称キー(と非対称キーについてAWS CLIで学ぶ

KMSについては[優れた記事](https://dev.classmethod.jp/articles/10minutes-kms/)があるのですが、KMSの「対称キー」と「非対称キー」について理解していなかった点があるのでその話を書きます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/618258/e14ee2e6-fa14-c60b-9fc2-90ce11eb6d71.png)

なお、以下でいう「対称キー」はKMSが生成したもの(外部からインポートしたものではなく)、「非対称キー」はRSA 4096ビットのもののみを考えます(ECCについては除外します)。

# KMSの対称キーは非対称キーの上位互換である
KMSの対称キーは次のような用途に利用できます。

* S3のサーバーサイド暗号化
* EBSの暗号化
* RDSのストレージ暗号化
* SNSのメッセージ暗号化
* ……
* **非対称キーの生成**
* キーの自動ローテーション

# 非対称鍵では公開鍵と秘密鍵が固定さ

元記事を表示

AWSソリューションアーキテクトアソシエイト 復習2

##AWS 小テストシリーズ

ルーティン的に小テスト形式

引用
>https://www.amazon.co.jp/%E5%BE%B9%E5%BA%95%E6%94%BB%E7%95%A5-AWS%E8%AA%8D%E5%AE%9A-%E3%82%BD%E3%83%AA%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%88-%E3%82%A2%E3%82%BD%E3%82%B7%E3%82%A8%E3%82%A4%E3%83%88%E6%95%99%E7%A7%91%E6%9B%B8-%E5%BE%B9%E5%BA%95%E6%94%BB%E7%95%A5%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-ebook/dp/B07M7S9GDL

####AWS CLIやAWS SDKを利用するために必要な認証情報は次のうちとれか。
– IAMユーザーのログイン名とパスワード
– IAMユーザーに付与されたIAMポリシ

元記事を表示

[技術メモ]AWSとは何か?裏側ではどのような技術が動いているのか?

##Amazon Web Servicesの略
Amazonが提供するクラウド型Webサービスの総称。
Webエンジニアが利用する代表的なものはEC2。
EC2はクラウドサーバといって、自社にサーバ本体を置く必要がなくなります。
他にもS3など。

元記事を表示

AWS Certified Solutions Architect Associate – Section2

# regionとAZとedge location
– 19 regions 57 availability zones
– 1 region = 2~ availability zones
– availability center = data center
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/534442/e14590ea-c8ba-da2b-a7fd-3e42818cca40.png)
– 150 Edge location = キャッシュしたコンテントを保持する場所
– CloudFront, CDNからなる
– Edge locations > AZ
– S3パートで詳しく見る

# 備考
– 数は正確でない(TODO: 更新)

元記事を表示

Amazon linux 2でのphpの更新方法

# 症状
WordPressの管理者画面のサイトヘルスにphpのバージョンを7.3以上に上げてよ、という「おすすめの改善」が出てしまった。

# 環境
– AWS
– Amazon linux 2 t2.micro
– php7.2.30
– WordPress

# やりたいこと
phpをバージョンアップする。なんかよく分かんないし、最新にしちゃえ。

# やったこと
## 現在のバージョンを確認する
“`
$ php -v
PHP 7.2.30 (cli) (built: May 5 2020 18:04:45) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
“`
WordPressで怒られたとおり。古い。

## SSHを使用して、AWS EC2 Linuxインスタンスに接続
いつもの方法で。macのターミナルを使いました。
参考:[Connecting to your Linux instance us

元記事を表示

AWSソリューションアーキテクトアソシエイト の復習1

##AWS認定資格を利用してAWSを理解してみる
今、AWSもちょこちょこと勉強中なのですが、
復習の意味も込めて、
ルーティン的に小テスト形式で
演習問題を使用した解説を纏めてみます。
私はこちらの書籍を使用して絶賛勉強中です。

>https://www.amazon.co.jp/%E5%BE%B9%E5%BA%95%E6%94%BB%E7%95%A5-AWS%E8%AA%8D%E5%AE%9A-%E3%82%BD%E3%83%AA%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%88-%E3%82%A2%E3%82%BD%E3%82%B7%E3%82%A8%E3%82%A4%E3%83%88%E6%95%99%E7%A7%91%E6%9B%B8-%E5%BE%B9%E5%BA%95%E6%94%BB%E7%95%A5%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-ebook/dp/B07M7S9GDL

####

元記事を表示

AWS LightSailにサーバー環境構築してVSCodeで開発①

# TL;DR
AWS Lightsailインスタンスの立ち上げ~VSCodeでssh接続してみるだけ。画像多めでお送りします。
環境構築系は沼りやすいので、似たような記事は他にもありますが自分用に記録。
なお、Lightsailに限らずEC2などでも(接続の部分に関しては)同様の手順になります。[こちら](https://qiita.com/dairappa/items/8347fe7faf89b6ba364e)や[こちら](https://qiita.com/hystking/items/c1b23ff0c7cc727e7385)も参照。

# 環境
Windows10

# ブラウザでの作業

## Lightsailを開く
アカウントは作成してある前提です。まずログインして、赤丸クリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/602411/aa93509a-89f4-d432-283e-291919359fbe.png)

## ガイドに従ってインスタンスを作成する

元記事を表示

【小ネタ】AWSのMFAを設定する前に、IAMユーザのサインインリンクをカスタマイズするとちょっと幸せ

# はじめに
AWSのMFA、設定してますか?

MFAってなーに?
という方は、超丁寧に説明している記事があったので、設定してない人はこれを見て設定してください!
[AWSでMFA(二段階認証)を有効にする方法を超丁寧に説明するよ – Qiita](https://qiita.com/viptakechan/items/6d19aee635b2ab189e47)

最近、MFAを設定していて、タイトルの通りちょっと幸せになったのでまとめます。

# IAMユーザのカスタムリンク
IAMユーザがログインするときのリンク。デフォルトだとAWSアカウント(12桁の数字)。任意の文字列でカスタマイズできる。
アカウントエイリアスとも。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62601/811aecbc-a0f7-ef5d-0383-47f4c4d38dde.png)

**MFAを設定する前に、これをわかりやすい文字列にカスタマイズしましょう。**

# カスタマイズしない場合
pi

元記事を表示

FlutterとAWSで始めるサービス開発 (3)AWS Cognito連携

#はじめに
AWSでモバイルアプリ開発といえば、Amplifyというのが今のAWSの押しであることは以前にも述べました。Amplifyを選択するとJavaScriptベースなのでReact Nativeを使ったモバイルアプリ開発に進むのが王道になります。
Flutterでモバイルアプリを作りたいという要求がベースにあって、そこからスタートしていない限りはなかなかこの組み合わせにたどり着くことはないのかなという気がします。また、AWSの公式にはDart版のAWS SDKがないので、その部分も敷居が高く、レアな組み合わせになってしまうのかなと思います。

公式ではなくても、https://pub.dev/packages?q=cognito で見たところ、いくつか十分実用的なAWS用パッケージが公開されており、それらパッケージを活用すればそこまで苦労せずにアプリケーションの構築は進められそうです。
以下、パッケージを探して気になったの2個のライブラリになります。
[Amazon Cognito Identity SDK for Dart](https://pub.dev/packages/

元記事を表示

AWSで遊んでみたいときにかかる費用

#AWS使ってみたい
自作のポートフォリオなどでWebアプリケーションをHerokuにデプロイしたことはあるけど、
AWSは敷居が高い気がして使ったことがないという方は多いのではないでしょうか。
しかもそこそこ料金がかかるらしいし、一見すると料金がわかりにくいので躊躇してしまいますよね。

私も使ってみるまではそう思っていたのですが、
結果的にはネットワークの勉強にもなるし、汎用性の観点からも早く使ってみれば良かったなと思っています。

とはいえ、構成次第では稼働させっぱなしにすると多少費用がかかってしまいますので、
2020年6月現在の費用をお伝えします。

#WordPressが動くようにするといくらかかるのか

AWS初学者のために心底丁寧に解説されているこちらの本では、

[Amazon Web Services 基礎からのネットワーク&サーバー構築 改訂3版](https://amzn.to/3cqAcX2)

AWSを使ってWordPressを動かすまでがハンズオン形式で書かれています。
ただし、実際に構築した場合のAWSに支払う費用までは書かれていませんでした。

この本

元記事を表示

【AWS】ECSで使用するECRのURLをマルチステージ対応にする

ECRのImage URLにアカウントIDを直接ハードコーディングしてしまうと
本番環境とステージング環境でアカウントIDが別れている場合などにdocker-compose.ymlが共通にできません。
この問題を環境変数で解決します。

# docker-composeファイル
“`docker-compose.yml
image: ${AWS_ACCOUNT_ID}.dkr.ecr.ap-northeast-1.amazonaws.com/xxx:latest
“`
アカウントIDを環境変数から参照するようにします。

参考URL
Compose における環境変数 | Docker Documentation
https://matsuand.github.io/docs.docker.jp.onthefly/compose/environment-variables/

# シェル上からの実行

## プロファイル、アカウントID指定版(面倒)

“`bash
AWS_PROFILE=xxx AWS_ACCOUNT_ID=xxx ecs-cli compose up —

元記事を表示

AWS: アプリケーションサービス

#アプリケーションサービス
##AWSのアプリケーションサービス
###アプリケーションサービスに共通する基本的な考え方
AWSのアプリケーションサービスはAWSのサーバーリソース上に構築されており、サーバーとアプリケーションのメンテナンスはAWSにまかせている。
そのため、コスト面でも安定性の面でも、自身で構築するより優れていることが多い。

##SQS(Simple Queue Service)
AWSが提供するフルマネージドなメッセージキューイングサービス。

– キュー
– メッセージを管理するための入れ物
– 利用開始時に作成すれば管理する必要なく、エンドポイントと呼ばれるURLを介して利用する
– キューの管理機能
– キューの作成・削除・動作属性などの詳細な設定もあり
– メッセージ機能
– キューに対するメッセージの送信・取得と処理済みのメッセージの削除がある
– 複数のキューをまとめて処理するバッチ用のAPI
– 処理中に他のプロセスから取得できなくするための可視性制御のAPI

### StandardキューとFIF

元記事を表示

[AWS] Amazon Redshift クラスターがわからないから調べた

#Amazon Redshiftとは
クラウド内のフルマネージド、ペタバイト規模の**データウェアハウスサービス**。
Amazon Redshiftクラスターと呼ばれる一連のノードを起動することで作成できる。

#クラスターって?
リーダーノードと、1つ以上のコンピューティングノードから構成される一連のノードのこと(AWS公式サイトより)。

コンピューティングノードって言葉は要はコンピュータのことで、そのコンピュータ同士が連携してつながっている時にノードって言葉がつきます。
リーダーノードは読んで字の如く、そのコンピューターたちの親玉です。図で見るとこんなかんじ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/605944/6cbfef47-d987-42da-ddee-14d211c8bb22.png)
図で見るとわかりやすいですね。

まとめるとクラスターは、ノード(コンピュータ)が集まった集合体のことです。

#最後に
学習始めたばかりなので間違っていたり、意見があればコメントお

元記事を表示

クラウドのVMインスタンスを定期的に停止させる方法(AWS&GCP)

業務で夜間に開発系のサーバを停止させて翌朝起動させたかったり、GPUインスタンスの停止漏れを防ぐために毎日夜間に停止させたりと、ニーズが高まったので方法を調べた結果を残しておきます。

この記事に画面キャプチャを載せて一から手順を書くよりも公式のヘルプページの方が確実ですので、概要は以下を御覧ください。そこまで難しい手順は無く、特にGCPについてはgcloudコマンドをコピペで実行していくだけで、ほぼほぼできあがります。

[AWSはこちら](https://aws.amazon.com/jp/premiumsupport/knowledge-center/start-stop-lambda-cloudwatch/)
[GCPはこちら](https://cloud.google.com/scheduler/docs/start-and-stop-compute-engine-instances-on-a-schedule?hl=ja)

ただし、AWSについてはインスタンスIDを直接指定ではなく、GCPのようにタグを使った方式にしたかったのと、PythonではなくRubyで実装したかっ

元記事を表示

Node.js の Lambda 関数を ローカルでテストする

Node.js の AWS Lambda 関数をローカルでテストする方法です。

テストで使う Lambda 関数

“`js:iot_aa.js
// —————————————————————
// iot_aa.js
//
// Dec/08/2017
//
// —————————————————————
‘use strict’

// —————————————————————
console.log(‘Loading function’)

exports.iot_aa_handler = (event, context, callback) => {
//console.log(‘Received event:’, JSON.stringify(event, null, 2))
console.log

元記事を表示

【AWS SAP】S3エトセトラ【頻出】

##S3にまつわるエトセトラ
AWS SAP取得にあたり、憶えて良かったエトセトラをまとめる。

##EC2とS3とCloudFrontと

例えば、
WEBサーバとしてEC2を利用。
静的コンテンツをS3で提供。
静的コンテンツへのアクセスが集中するたびにHTTPエラーが発生。
といったケースがあるとする。

そんな時に回避策として利用すると良いのが、CloudFront。(CDN)
CloudFrontで静的コンテンツをキャッシュすることでS3の負荷を軽減し、アクセス集中に対応。

##S3に個人情報を保存する
S3に個人情報を保存するのはいいが、安全性が不安。通信は暗号化したい場合にどうするか。

大丈夫です。S3の通信はデフォルトでSSL暗号化されます。

##S3の保存期間
S3のライフサイクルで、有効期限を決めることで保存したデータを任意の期間保管したら削除といったことができる。

追加で、任意の期間経過したらデータをGLACIERに移行するといったこともできる。

利用イメージとしては、
・ログ保存のためにS3を利用する。
・半年間のログは頻繁に利用するが、半年以上経過し

元記事を表示

アウトプット勉強始めます。第0回

#自己紹介
初めまして!
未経験から第二新卒(当時23歳)でこの業界に飛び込み現在インフラエンジニアとして3年目に突入しました。
現在はネットワークのオンプレ運用を中心にエンジニアとして揉まれる日々を過ごしています。

保有する資格
CCNP
LinuC 2
VBA basic
ITパスポート
TOEIC 780
AWS SAA(6月に頑張って取得予定)

##この二年間の経歴
未経験でこの業界に入り、最初は24H365Dの監視現場に配属されました。そこでITエンジニアの洗礼とでもいうのでしょうか?
職人気質な先輩に怒られ、なじられ、かつこのままずっとここにいるのは嫌だと思い、必死にLinuC201を取得し、CCENT(※1)を勉強し、前向きな姿勢が認められて、日勤のNW運用現場へ異動となりました。そこから約1年半、日々勉強し資格を取得し”とにかく早く構築へ”このマインド一本でがむしゃらに頑張りました。その頑張りが実を結び入社して1年半後、構築現場へキャリアアップを果たしました!!と
ここまでは順調だったのですが。。。。。

※1 CCENT
現在のCCNAより前に存在した資格。旧C

元記事を表示

【AWS SAP】ELBの3タイプ【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第19弾
以下の違いについて覚えておいて損はありません。

ELBの3つのタイプ
・Classic Load Balancer
・Application Load balancer
・Network Load Balancer

##Classic Load Balancerとは

トランスポートレイヤー (TCP/SSL) またはアプリケーションレイヤー (HTTP/HTTPS) のいずれかでルーティングを決定する。

リバースプロキシのため、行きも帰りもロードバランサを経由する。

##Application Load balancerとは
HTTP / HTTPS トラフィックの負荷分散を行う。アプリケーションレイヤーでルーティングを決定する。

リバースプロキシのため、行きも帰りもロードバランサを経由する。

##Network Load Balancerとは
TCPトラフィックなどネットワーク系の負荷分散
を行う。トランスポートレイヤー (TCP/SSL) でルーティングを決定する。
行きだけロードバランサーを経由

元記事を表示

【AWS SAP】EC2のインスタンス課金タイプ【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第18弾
以下の違いについて覚えておいて損はありません。

・オンデマンドインスタンス
・リザーブドインスタンス
・スポットインスタンス

##オンデマンドインスタンスとは
従量課金。使った分だけ支払うタイプ。

##リザーブドインスタンスとは
事前に予約して利用。(1年契約か3年契約)
オンデマンドインスタンスに比べて、最大72%安くなる。
当分使うことが想定される場合などはリザーブドインスタンスを利用することでコスト削減が可能。ただ、一度購入すると途中で利用しなくなってもコストは同じ。

##スポットインスタンスとは
AWSで使われていないEC2を入札制で利用する。
サーバー価格が入札金額を上回ると、サーバーを利用できなくなる。
突然停止するリスクを許容しても安く使いたい!という場合に利用する。

元記事を表示

OTHERカテゴリの最新記事