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

AWS関連のことを調べてみた2020年08月16日
目次

AWS SAP(ソリューションアーキテクトプロフェッショナル)に合格したので学習方法を公開します

## SAP合格
この度、2020/08にAWSソリューションアーキテクトプロフェッショナルに合格しました。
同じく受験を検討している方に向けて、参考になれば幸いです。

## AWS利用歴

中小企業(中小プロジェクト)にて業務で約2年ほどAWSの構築や運用に携わりました。
AWS SAA(アソシエイト)には2019/08に合格しており、約1年経過しての挑戦となりました。

### 業務で使用したことのあるサービス
主に、この2年の間に本番ワークフローで運用実績のあるサービスを挙げております。
筆者の前知識の目安としてください。

– IAM
– ACM
– VPC(サブネット、ルートテーブル、インターネットゲートウェイ、NATゲートウェイ etc..)
– S3
– EC2, ALB, NLB
– ECS(Fargate), ECR
– SystemsManager(Parameter Store), SecretsManager
– Lambda
– RDS(MySQL), Aurora(MySQL)
– DynamoDB
– QLDB
– ElastiCache(Redis)

元記事を表示

AWS EC2のGPUインスタンスの料金表(2020年8月時点)

#これは何?
AWSの料金表 https://aws.amazon.com/jp/ec2/pricing/on-demand/ と スペック表 https://aws.amazon.com/jp/ec2/instance-types/ をいつもにらめっこするのが面倒なので、自分がよく使うGPUインスタンスだけまとめました。(2020年8月時点のものです)

g4インスタンスのCPU情報は掲載されていなかったので、 `cat /proc/cpuinfo` で調べています。

#GPUインスタンス スペック・価格 一覧表(画像)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/57626/15757e82-c306-948d-b9b6-618003373ecc.png)

#GPUインスタンス スペック・価格 一覧表(テキスト)
※価格の単位は USD/時間

| GPU インスタンス | CPU | #CPU core | GPU

元記事を表示

AWS CLI で使用するプロファイルの追加方法

AWS CLIではconfigファイルとcredentialsファイルに保存された複数の名前付きプロファイルを使い分けることができます。

複数のAWS案件に同時に参画したり、異なる権限のIAMとユーザーを使い分けたり何かと便利なので、今回はその設定方法と確認方法についてまとめます。

※本記事はすでにAWS CLIを導入済みという前提に立って書かれています。

## プロファイルの認証情報の確認方法

プロファイルの認証情報は下記に保存されています。

– ~/.aws/credentials(Linux系OS と Mac)
– %USERPROFILE%\.aws\credentials(Windows OS)

Macだと下記のコマンドをiTermなりTerminalなりに打ち込めばプロファイル情報が出力されます。
伏せ字にしていますが、実際にはランダムな文字列が表示されます。

“`
$ cat ~/.aws/credentials

[default]
aws_access_key_id = **********************
aws_secret_access

元記事を表示

AWSリソースをTerraform管理下から外す方法

私はAWSの構成管理にTerraformを日常利用しています。

AWSリソースをTerraformでコード化し、ある程度の期間管理していくとこんな思いを抱く時があります。

「作成済みのリソースは残したまま、Terraformの管理下からは外したい」

というわけで、今回は上記の手順を記録しておきます。

## 作成済みリソースをTerraform管理下から外す

下記コマンドを実行すればOKです。

“`
$ terraform state rm <リソースタイプ>.<リソース名>
“`

以上です。

上記コマンドを実行すると、destroy を実行したり、Terraformコードから該当リソースの定義を削除した状態で apply を実行しても、該当するリソースはAWS環境上に残り続けます。

## Terraformで管理しているリソースの一覧と状態を確認

`state rm` コマンドの実行しに指定するリソースタイプとリソース名は、terraform.tfstate というファイルに記録されています。

上記ファイルの管理方法には2種類

元記事を表示

[AWS初心者向け]LambdaでDynamoDBクライアントのインスタンス化コストを検証してみた

# クライアントのインスタンス化コストってどれぐらい?

AWS公式ドキュメントの[Lambda を使用する際のベストプラクティス](https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/best-practices.html)には以下のように記述されています。

> AWS のサービスのクライアントは、ハンドラではなく初期化コードでインスタンス化する必要があります。これにより、AWS Lambda コンテナは、コンテナの有効期間中は既存の接続を再利用することができます。

DynamoDBやS3などのクライアントはLambdaの初期化処理でインスタンス化しましょう、ということですね。

私はこのドキュメントから、クライアントのインスタンス化にどれぐらい時間が掛かるのか気になりました。ベストプラクティスに沿って開発していれば要らないトリビアです。

この記事ではDynamoDBクライアントを対象に、インスタンス化のコスト検証と、実際にありそうなgoodとbadのケースを用意してパフォーマンス検証を実施しました。

### インスタンス化の

元記事を表示

Amazon Braketで無料の量子コンピュータ・シミュレータを使う

# Amazon Braketには、無料の量子コンピュータ・シミュレータがある

Amazon Braketでは量子コンピュータを利用できますが、料金表のページに記載があるように有料です。

– Amazon Braket Pricing
https://aws.amazon.com/jp/braket/pricing/

Amazon Braketには無料枠がないため、「量子コンピュータのことはよく分からないが、お試しで雰囲気を知りたい」という人には、ちょっとハードルが高いです。

Amazonがクラウド上で提供しているSV1というシミュレータは4.50ドル/時なので、本物の量子コンピュータと比べるとかなり安く実行できますが、「1円たりとも課金されたくない」「Amazonのアカウントを持っていないが試してみたい」という人はローカルのPC上で動作するシミュレータを使うのがよいと思います。

本記事では、ローカルのシミュレータ(以下、「LocalSimulator」と呼びます)を動かすまでの流れを紹介します。
(2020/08/16時点の情報にもとづいています)

# インストー

元記事を表示

[AWS] Step Functionsで遊んでみる(SAM + Lambda) Part.1

# Step Functionsとは
AWS Step Functionsとは、マイクロサービスコンポーネントをワークフロー化するためのサービスです。

## 状態
Step Functionsでは、状態によって様々な動作を制御できます。
状態には、以下のようなものがあります。

| 状態 | 制御 |
|—|—|
| Task | ステートマシンで何らかの作業をする |
| Choice | 実行の選択肢間で選択する |
| Fail or Succeed | 失敗または成功で実行を停止する |
| Pass | 入力を単純に出力に渡す、または一部の固定データを出力する |
| Wait | 一定時間または指定された時刻/日付まで遅延を提供する |
| Parallel | 実行の並列ブランチを開始する |
| Map | ステップを動的に反復する |

## Taskで利用可能なサービス
Step FunctionsのTaskには、以下のサービスを指定できます。

– Lambda
– Batch
– DynamoDB
– ECS
– Fargate
– SNS
– SQS

元記事を表示

ポートフォリオ(Toretomo)解説

#アプリ概要
自分の住んでいる地域(現時点では大阪市内の区のみ)やカテゴリーなどから自分の理想のジムを探すことができ、それと同時にそれぞれのジムに契約または活動しているトレーナーを探せるアプリです。

下記ページで公開中です!
http://toretomo.work/

#制作背景
**筆者自身が困った経験、トレーナーとして勤務していた時の悩み、そして「一人でも多くの人にトレーニングの楽しさを伝えたい」という思い**が制作背景にあります。

具体的には

“`
1. ジムとフリーのフリーのパーソナルトレーナーをまとめて見れるサイトがない
2. そもそもフリーのパーソナルトレーナーの認知度が低い
3. より多くの人にトレーニングの楽しさを知って欲しい
“`

#1. ジムとフリーのパーソナルトレーナーをまとめて見れるサイトがない

筆者自身、大学生の時にボディビルの大会に出場するにあたって、**フリーのパーソナルトレーナーを探すのに苦労しました。**なぜならフリーのパーソナルトレーナーを探せるサービスと各地域にあるジムをまとめているサービスが別々だったからです。

トレーナーと連

元記事を表示

Udemyを使いAWSソリューションアーキテクトアソシエイトを取得しました。

2020/3に個人ブログに書いた記事の移植になります。下にも書きましたが現在はバージョンが変わり若干内容が異なります。ただ勉強法にはあまり影響はないかと。

はじめに結果

勉強している方は間に合わせたほうが良いでしょう。(画像にマークしてるのは

元記事を表示

『AWS初学者向けハンズオン』VPCとEC2を使ってWebサーバの構築編

#はじめに
この記事はAWS初学者が書いているAWS初学者の方や未経験の方向けの記事になります。
内容や説明が間違っていた場合はコメントいただけるとありがたいです。
###投稿者のレベル
AWS CLF持ってるレベル
AWS実務経験無し
AWS使用経験(個人用+会社作成アカウント使用):約2ヶ月
使用したことがあるサービス:IAM、EC2、EIP、VPC、RDS、CloudWatch(もしかしたら他にも使ったような気がする...)
最近本格的にAWSの勉強を始めたインフラエンジニアです。
#今回の目的
AWSのサービスの中で重要度で言ったら1位2位になるレベル(投稿者個人の感想です。他にも重要なサービスがあるかもしれません)のVPCと、クラウドの良さが詰まったEC2を理解を深める事が目的となります。
また自分自身インフラエンジニアをやっていて初めて触れたAWSのサービスで、皆さんに良さを知っていただきたいというのも目的になります。
#使用するサービス
###・VPC
 Virtual Private Cloud の略です。
 VPCはAWS内にプライベートなネットワーク環境を作成するこ

元記事を表示

AWSとGCPの違いで一瞬「んっ?」となったポイント

もともとAWSを使っていてGCPを勉強し始めた際、
AWSとの違いで一瞬「んっ?」っとなったポイントの備忘録

注意)あくまで2020年8月時点(+自身の知識範囲)

#[1] Cloud IAM

###①Policyはホワイトリストベース(DENYがない)

– AWSのPolicyはカオス化しやすいので、個人的には逆にわかりやすい
– 逆に、”基本ALL OKで、1つだけ拒否したい” とかの場合は煩雑に

###②上層のポリシーが下層に継承。許可は個々の設定の総和。

– 基本的には「必要最小限の許可をつけましょう」
– Organization/Folder/Project/Resourceの階層順で継承
– 下層で拒否とかできない

https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy?hl=ja

###③サービスアカウント

– ユーザ以外のアプリやGCPリソース(VMなど)からの認証・認可用はサービスアカウントを利用
– サービスアカウント自体もGCPリソースの

元記事を表示

【今日から始めるAWS】Serverless Frameworkを使ってLINEのbotをつくる

#はじめに
30代未経験からエンジニア転職をめざすコーディング初学者のYNと申します。お読みいただきありがとうございます。
[前に作ったLINEのオウム返しbot](https://qiita.com/theFirstPenguin/items/8168e8ba3d65e34c24e0)を少しだけ発展させた内容でbotを作りましたので学習ログとして投稿させていただきました。

#Bot内容
下記のように、ユーザーが送ったタンパク質摂取量を記録できるbotをつくりました。
↓一応友達登録もできます。(思いついたタイミングで勝手に消去する可能性があります。)
![スクリーンショット 2020-08-14 20.27.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/572098/852d404a-644b-254c-f1e3-24b1181bc842.png)

![スクリーンショット 2020-08-14 19.17.13.png](https://qiita-image-store.s3.ap-n

元記事を表示

AWS認定 SysOpsアドミニストレーター アソシエイトの勉強メモ

#1. はじめに
– 受験に向けて勉強した時のメモです。

#2. 教材
– [参考書(AWS認定アソシエイト3資格対策)](http://www.ric.co.jp/book/contents/book_1199.html)には、合格後に実務で活用するために「AWSを正確に理解する」考え方が書かれています。例えば、①たくさんあるサービスもEC2もしくはS3と関連していること、②手を動かすハンズオンが有効、③似ている者は関連して覚えると良い(IAMポリシー・バケットポリシー・CloudFormationのテンプレート)などなど。

– [オンライントレーニング(Exam Readiness: AWS Certified SysOps Administrator – Associate (Japanese))](https://www.aws.training/Details/Video?id=41299)は試験対策に役立ちました。

– [旧サンプル問題](https://blog.trainocate.co.jp/blog/280)はトレノケートさんが解説されてます。

– [新サン

元記事を表示

AWS EC2 AmazonLinux2 peclコマンドを使用できる様にする

# 目的

– AWSのEC2のインスタンスでpeclコマンドを実行できる様にする方法を紹介する。

# 実施環境

– ハードウェア環境

| 項目 | 情報 |
| — | — |
| OS | macOS Catalina(10.15.5) |
| ハードウェア | MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports) |
| プロセッサ | 2 GHz クアッドコアIntel Core i5 |
| メモリ | 32 GB 3733 MHz LPDDR4 |
| グラフィックス | Intel Iris Plus Graphics 1536 MB |

– ソフトウェア環境(下記の環境をEC2に構築した)

| 名前 | バージョン | 備考 |
| — | — | — |
| PHP | 7.4.7 | こちらの方法で構築→[AWS EC2 AmazonLinux2 PHPをインストールする](https://qiita.c

元記事を表示

【GithubActions】Dockerイメージの脆弱性を診断してECRへpushする

# 概要
GithubActionsのワークフローで、Dockerイメージのセキュリティチェックを行う設定をメモとして残しておきます。
設定全容は以下となります。

ソースコード全容

“`yaml:ci.yaml
name: Check / Build / Push Docker Image

on:
push:
branches:
– master
pull_request:

jobs:
scan:
name: Scan Image By Azure/container-scan
runs-on: ubuntu-18.04
steps:
– name: Checkout code
id: checkout
uses: actions/checkout@v2

– name: Build image from Dockerfile
id: build
run: |

元記事を表示

Amazon ElastiCache for Redisのエンドポイントを確認してみる

# TL;DR

* Amazon ElastiCache for Redisにおいて利用すべきエンドポイントは、ノードの数やクラスターモードが有効かどうかで異なる
* シングルノードの場合
* ノードのエンドポイント(Endpoint)を読み書きのオペレーションに使う
* PrimaryEndpointでもいい気も
* クラスター構成の場合
* クラスターモードが有効の場合は、ConfigurationEndpointを使う
* クラスターモードが無効の場合は、書き込みにはPrimaryEndpointを、読み込みにはReaderEndpointを使う

Amazon ElastiCache for Redisのドキュメントをさらっと読んでみても、どういう時にどのエンドポイントを使うのかがよくわからなかったので、ちゃんと読み込んでみようかなと。

で、その情報を整理するのが、このエントリの目的です。

# Amazon ElastiCache for Redisの構成パターン

[TL;DR](#tldr)に書いた、「シングルノードの場合」「

元記事を表示

外気の体感温度を教えてくれるLINEbotをAWS LambdaとSORACOMデバイスで作ってみた。

# はじめに
* 先日[SORACOMのデバイスとArduinoを用いて省エネIoT機器を作った](https://qiita.com/M1YamA00/items/7fea788f93abad5f30e8)を書いた。
* ハッカソンでこういうモノ作ったよという記事。

* 完成したのがハッカソン終了の2日前とかだったので、残り時間でできることをやろうとLINE botを作ってみた。
![IMG_20200814_215613.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/475530/e257b14b-b0ce-0c55-b057-0792f6220d56.jpeg)
* 話しかけると外の体感温度を教えてくれる。かわいい。アイコンをクール系美少女にしたい。
* GPS情報とかとも組み合わせられるのでは?とこれを書きながらも拡張性を感じる作品である。
* 前提として、[GPS マルチユニット SORACOM Edition](https://soracom.jp/products/kit

元記事を表示

『AWS初学者向けハンズオン』 請求アラームの設定編

#はじめに
この記事はAWS初学者が書いているAWS初学者の方や未経験の方向けの記事になります。
内容や説明が間違っていた場合はコメントいただけるとありがたいです。
###投稿者のレベル
AWS CLF持ってるレベル
AWS実務経験無し
AWS使用経験(個人用+会社作成アカウント使用):約2ヶ月
使用したことがあるサービス:IAM、EC2、EIP、VPC、RDS、CloudWatch(もしかしたら他にも使ったような気がする...)
#今回の目的
AWSのアカウントを初めて作成すると1年間無料でサービス(有料のものもあります)を使用することが出来ます。
1年間無料枠を使い切った際やサービスを停止せず利用料金が発生し続けていることで、気が付いたら想定していた利用料金より多くなっていたというのを防ぐためメールで通知することを目的としています。
実際にTwitterで想定していた請求額を大幅に超えてしまい嘆いている方を見かけました・・・
~~給料が少ないので請求額が多いと辛い...~~
#使用するサービス
###・CloudWatch
 AWSのリソースを監視やログの収集をしてくれるサービスに

元記事を表示

自宅でAWS 認定デベロッパー アソシエイト取得しました

AWS認定デベロッパー アソシエイト(DVA)を自宅で受験し無事合格しました。
資格取得までに参考にしたものを投稿します。

![スクリーンショット 2020-08-14 20.25.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/290588/50562df6-c286-aa7c-b7f7-83c612313f39.png)

## 私のAWSの知識

半年前にソリューションアーキテクトに合格しました。
https://qiita.com/gdtypk/items/52d96a5af0a05f06ebc4

業務では、EC2,RDS,Lambda,S3を薄く触っている程度になります。

あとは、私が所属している班でCI/CDに最近取り組み始めたため、Code兄弟に関しても少し知識がありました。

## やったこと
大体、2週間毎日1~2時間程度、勉強していました。

### 試験範囲の確認
https://aws.amazon.com/jp/certification/certified-deve

元記事を表示

AWS Lambdaで外部モジュールを読み込めるようにする方法

– 普通にLambdaをアップロードしただけではAWSにデフォルトでインストールされているライブラリ(AWS SDKとか)以外は使用できないみたい
– “`Cannot find module“`と言われてしまいます
– 言語はNode.js
– AWS CDKを使っている

## 方法① LambdaのZipファイルに外部モジュールを含める
– AWSコンソールを使えば、LambdaファイルをZip圧縮したものをアップロードすることができるため、このZip内にnode_moduleディレクトリを含めて外部モジュールごとアップロードしてしまえば良いです
– ただし、AWS CDKを使用してアップロードする場合、この方法は使えません(/_;)

## 方法② 外部モジュールのZipファイルをLambda Layersへ登録する
– node_modulesディレクトリをZip圧縮して、AWSコンソールからLambda Layersにアップロードすれば良いです
– ただし、せっかくLambdaのアップロードをAWS CDKで自動化しているのに、別の手作業が発生してしまうのは悲し

元記事を表示

OTHERカテゴリの最新記事