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

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

terraformでcloudfrontにAlarmを設定する

今回はterraformでCloudFrontにAlarmを設定してみます。
対象として、[前回の記事](https://qiita.com/Lycaony/items/3d7a800073ba8f5e0b7d)で作成したCloudFront+S3の環境に対して設定してみます。

#providerのaliasの設定
今回CloudFrontにAlarmを設定しますが、注意点としてCloudFrontのメトリクスは”us-east-1″のリージョンにしか送信されません。
このため、Alarmやその送信先のSNS Topicについてもus-east-1で作成を行う必要があります。

terraformではaliasのパラメータを付けることで、別の設定を持つProviderを設定できるのでus-east-1のProviderを作成しておきます。

“`tf
provider “aws” {
alias = “global”
access_key = var.aws_access_key
secret_key = var.aws_secret_key
region

元記事を表示

爆速でモックAPIを構築する

AWS Chalice を使って爆速でモックAPIを作ってみました。

AWS Chalice は Python 製のフレームワークで API Gateway と Lambda をサクッと構築できます。(詳細は[公式](https://aws.github.io/chalice/index)を参照ください。)

### 構成

構築する環境はAPI Gateway + Lambdaとなります。

![composition.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1167819/7fb64117-dfd2-937f-800d-f705428feb73.png)

今回は以下前提にて構築します。

– pythonインストール済み
– Lambdaに付与するロールは事前作成済み(ロールの自動生成は使わない)
– AWS CLIの設定済み

### 構築
何はともあれ作っていきます。

1. chalice インストール

“`
pip install chalice

元記事を表示

AWS Dev Day Online Japanを視聴したので、その記録

https://aws.amazon.com/jp/about-aws/events/2021/devday/

AWS Dev Day の 9/28, 29 の資料寄せ集めです。ちょっとしたメモだったりが混ざっており、ごった煮です。

## Day2 General Session

### Customer Obsession
https://www.amazon.co.jp/b?ie=UTF8&node=4967768051

### PR FAQs for Product Documents
https://medium.com/agileinsider/press-releases-for-product-managers-everything-you-need-to-know-942485961e31

### Weekly Business Review
https://medium.com/@samirlakhani/things-i-lik

元記事を表示

Cloud9で利用しているEC2の空き容量不足を解決する

### 背景

Cloud9でEC2環境を立ち上げAWS CDKでAWSリソースをデプロイしようと試していたところ、以下のようなエラーが。

“`shell
$ yarn cdk list

# (略)
latest: Pulling from xxxxxxx
xxxxxxxxxxxx: Extracting [==================================================>] 507.2MB/507.2MB
failed to register layer: Error processing tar file(exit status 1): write /usr/bin/xxx : no space left on device
“`

どうやら環境にアタッチされたボリュームの空き容量が足りないとのことです。
この時選択していたEC2のインスタンスタイプは `t2.micro` でしたが、インスタンスタイプを変更してもアタッチされるEBSのボリューム(10GiB)は変わりませんでした。

### 解決

調べたところ、Cloud9のEC2にア

元記事を表示

PCIDSS関連の記事

https://dev.classmethod.jp/articles/fin-jaws-13-report/

https://dev.classmethod.jp/articles/pci-dss-compliance-on-aws/

https://dev.classmethod.jp/articles/pcidss_aws_azure/

https://dev.classmethod.jp/articles/pci-dss-auth-by-iam/

https://dev.classmethod.jp/articles/security-hub-launches-security-checks-aligned-to-the-pcidss/

https://dev.classmethod.jp/articles/security-engineering-on-aws-links/

https://dev.classmethod.jp/articles/aws-security-operation-with-guardduty-2021/

http

元記事を表示

ハンズオン3_スケーラビリティのあるブログサービスを構築する

この記事を書いている私について

インフラ系PMO歴半年でAWSクラウドプラクティショナーを取ったばかりの私が
AWS CloudTechという動画学習サービスに参加し、AWSエンジニアを目指すための備忘録です:fire:
AWSを使った運用から開発まで極めるため日々精進:fire:

この記事を書こうと思った経緯

前回の記事[ハンズオン2_冗長性のあるブログサービスを構築する(冗長構成)](https://qiita.com/zetzetn/items/ee50683b39f56658b586 “ハンズオン2_冗長性のあるブログサービスを構築する(冗長構成)”)の続きです。

本記事の目標

前回の構成ではエンドユーザーから大量の通信があっても、ELBを配置しているため、
2台のEC2インスタンスに対しては通信を分散して振り分けてくれる構成でした。

しかし、2台のEC2が処理しきれないほどの通信が大量発生することも想定し、
Auto Scalingを設定してEC2を条件に合わせて増減してくれるように構成したいと思います。

具体的には、ELBの配下にAuto Scal

元記事を表示

AWS CLIのインストールからLambda作成までの流れ

# はじめに
GCP好きですが、わけあってAWSを使う必要がでてきました。
そんなAWS初心者のメモです。

# AWS CLIインストール
macOSの手順は以下にまとめられています。
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2-mac.html

色々書いていますがユーザーインターフェースを使用したインストールが楽そうだったので、最新バージョンのAWS CLIをダウンロードしてインストールしました。

## インストールの検証
以下のコマンドで確かめます。

“`shell
$ which aws
/usr/local/bin/aws
$ aws –version
aws-cli/2.1.29 Python/3.7.4 Darwin/18.7.0 botocore/2.0.0
“`

# AWS CLIのセットアップ
手順は以下にまとめられています。
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-configu

元記事を表示

EmbulkでRDSからS3へテーブル単位でデータを転送

## これは何

Embulkでプラグインを入れて、RDSからS3へテーブル単位でデータを転送してみました。メモです。

## やってみた

**EmbulkはJavaが必要なので、インストール**

“`
/// Java8 install (runtime)
yum install java-1.8.0-openjdk
“`

**embulkインストール**

“`
/// embulk install
curl –create-dirs -o ~/.embulk/bin/embulk -L “https://dl.embulk.org/embulk-latest.jar”
chmod +x ~/.embulk/bin/embulk
echo ‘export PATH=”$HOME/.embulk/bin:$PATH”‘ >> ~/.bashrc
source ~/.bashrc
“`

**embulk-input-mysql インストール**

“`
/// embulk input install
embulk gem install embulk-input-

元記事を表示

CloudFormationの更新なしでLambdaをデプロイする

特にCIでのテストをスムーズにするのに使いたいですね。

# Serverless Flamework
`serverless deploy function -f Lambda名`
https://dev.classmethod.jp/articles/serverless-deploy-aws-whats-going-on/`
https://www.serverless.com/framework/docs/providers/aws/cli-reference/deploy
# CDK
`cdk deploy –hotswap`
https://github.com/aws/aws-cdk/blob/master/packages/aws-cdk/README.md

ほかは見つけたら随時更新

元記事を表示

EmbulkでRDSからS3へカラム単位でデータを転送

## これは何

Embulkでプラグインを入れて、RDSからS3へカラム単位でデータを転送してみました。メモです。

## やってみた

**EmbulkはJavaが必要なので、インストール**

“`
/// Java8 install (runtime)
yum install java-1.8.0-openjdk
“`

**embulkインストール**

“`
/// embulk install
curl –create-dirs -o ~/.embulk/bin/embulk -L “https://dl.embulk.org/embulk-latest.jar”
chmod +x ~/.embulk/bin/embulk
echo ‘export PATH=”$HOME/.embulk/bin:$PATH”‘ >> ~/.bashrc
source ~/.bashrc
“`

**embulk-input-mysql インストール**

“`
/// embulk input install
embulk gem install embulk-input-m

元記事を表示

【AWS】EC2,RockyLinux8の初期ユーザ名

# AWS EC2で作成したRockyLinux8インスタンスへの初回SSH方法

インスタンス作成したはいいもののユーザ名が分からなかったのでメモ

## rockyユーザが作成されているのでそれでSSHする

結論から書くと rocky ユーザでログインできる

“`
$ ssh -i aws-ssh-key.pem rocky@54.xxx.xxx.xxx
The authenticity of host ’54.xxx.xxx.xxx (54.xxx.xxx.xxx)’ can’t be established.
ECDSA key fingerprint is SHA256:
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added ‘54.95.165.106’ (ECDSA) to the list of known hosts.
Activate the web console with: systemctl enable —

元記事を表示

AWS導入からEC2 LAMP環境でCodePipelineによる自動ビルドまでざっくり手順書

自分用です。間違っている部分があるかも。わからないところは検索してね。

// 導入

注: 様々な名称にはシステムが付けるものに似た名称を付けないこと。sg-で始まるセキュリティグループを作成しようとしてエラーになったことがある。

1. AWS アカウントを作成する。

2. コンソールにルートユーザ(1で作ったアカウント)でサインイン

3. 料金発生アラームを設定する
billingで検索→「請求情報とコスト管理ダッシュボード」を開く
「請求設定」メニューを開く
「無料利用枠の使用アラートを受信する」「請求アラートを受け取る」にチェック。前者にメールアドレスを入力。
「設定の保存」ボタンを押す

4. CloudWatchを設定する
サービス一覧>ガバナンスにあるCloudWatchをクリック
リージョンを「米国東部(バージニア北部)」に変更。
アラーム>アラーム状態を選択。
「アラームの作成」を押す。
「メトリクスの選択」を押す。
「メトリクス」から「請求」を押す。
「概算合計請求額」を押す。
「USD」にチェックを入れ、「メトリクスの選択」を押す。

元記事を表示

【AWS】手動作成した既存のVPCをCloudFormationスタックにインポートする + EC2作成【CloudFormation】

# CloudFormation – 既存リソースのインポート方法メモ

## 概要

– すでに手動で作成してあるVPCをyamlファイル化(?)する
– CloudFormationを使って新たにEC2インスタンスをVPC上に構築する

## 参考

[ドキュメント](https://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/resource-import.html)
[インポートがサポートされているリソース](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html)

## 検証用に用意したもの

– 手動作成リソース
– VPC
– インターネットゲートウェイ
– サブネット
– ルートテーブル
– セキュリティグループ

– 各リソースの識別子(ID)をメモしておく(インポート実行時に指定することになる)
– VPC : v

元記事を表示

[初投稿]AWS上でブログサービスを構築する

##はじめに
 この記事はAWS初学者を導く体系的な動画学習サービス「AWS CloudTech」の課題カリキュラムで作成しました。
 https://aws-cloud-tech.com

##概要
 AWS主要サービスとして以下を学習、おさらいとしてハンズオンをこなす形で身体に染み込ませています。
 ・AWS講座
 ・VPC講座
 ・EC2講座
 ・IAM講座
 ・RDS講座
 ハンズオン1(基本的なブログサービスを構築する(シングル構成))
  ・AWS上にVPCを作成、中にPublicSubnetを2つ、PrivateSubnetを2つ。
  ・PublicSubnet1にEC2を設置、それにWordPressをインストールさせブログサイトを立ち上げる。
  ・EC2はインターネット側からアクセスさせるので、VPCにInternetGatewayを設置。
  ・WordPress用のDB(MySQL)はインターネット側からアクセスさせないので、PrivateSubnetに設置。
  ・DBへのアクセスはセキュリティグループで絞っている。

![hands-on1r2.png](

元記事を表示

【ハンズオン/初学者でも簡単!】Nuxt.jsをFargateでデプロイを行う

## はじめに
以前こちらのアプリを作成しました。

https://qiita.com/Ryo9597/items/8e34de4eb0af5a9d0cf3

**「デプロイを何でしようかな〜」**と思いました。

選択肢は2つです。
**①EC2でデプロイ**
**②Fargateでデプロイ**

今回は②のFargateを採用しました。

EC2でも良かったのですが以下の理由から却下しました。
**①継続的にソフトウェアのバージョンが形骸化しないようにアップデート、パッチを当てる必要がある。**
**②多少コストは上がるが、サーバーレスにする方が開発効率向上に繋がる。**

ということで、Fargateを使っていきましょう!

## アーキテクチャ

![arch1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/838372/05e690da-9795-d03e-87a7-8c037005ca11.png)

## 前提
以下のインストールと作業が済んでいることが前提です。

・Node.js

元記事を表示

Amazon FSx for NetApp ONTAP を Terraformでデプロイしてみる

# Amazon FSx for NetApp ONTAP を Terraformで試してみる
NetAppが提供するOntapの技術を採用したフルマネージドな ストレージサービスが発表されました。
NetAppのONTAPという高機能なストレージOSを採用し、NFS/CIFS/iSCSIプロトコルに対応しデータ重複排除・圧縮などの効率化機能やデータ転送機能なども利用可能なサービスです。Amazon FSx for NetApp ONTAPの紹介は[こちらのブログ](https://www.storage-channel.jp/blog/amazon-fsx-for-netapp-ontap.html)が参考になるかと思いますので興味がありましたらどうぞ。

Amazon FSx for NetApp ONTAPは、AWSコンソールから簡単に利用開始が可能ですが、NetAppのCloudManagerからデプロイしたり、Terraformからデプロイして 利用開始することも可能です。

実際に試してみたので、Terraformを利用してデプロイする手順をご紹介します。

# Terr

元記事を表示

【AWS認定試験】SCS-C01取得しました

# はじめに
先日、SCS-C01に合格しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/675893/3d0fa8f3-37e8-cbf5-92c7-b6a1aac20555.png)

合格するまでやったことを記載します。

## これまでのAWS認定受験歴
|年月|試験|点数(合格点)|合否|
|—|—|—|—|
|2020/08|[AWS認定クラウドプラクティショナー(CLF)][link-2]|809/1000(700)|〇|
|2020/11|[AWS認定ソリューションアーキテクトアソシエイト(SAA)][link-3]|753/1000(720)|〇|
|2021/01|[AWS認定デベロッパーアソシエイト(DVA)][link-4]|862/1000(720)|〇|
|2021/02|[AWS認定SysOpsアドミニストレータアソシエイト(SOA)(C01)][link-5]|731/1000(720)|〇|
|2021/04|[AWS認定ソリ

元記事を表示

AWS Transcribeでリージョン違いでエラー

#AWS Transcribe使おうとしたらエラー出た…

表題の通りの出オチなんですが、
https://dotnet-developer-dojo.workshop.aws/lab7-ai-ml/transcribe.html

上記のURLを参考にしながら、
音声ファイルをS3にアップして、アップしたファイルをTranscribeでテキスト化するというのをやってたんですが
実行すると以下のエラーが出て困っておりました。

####エラー内容

> 要求した名前は有効ですが、要求された種類のデータは見つかりませんでした。

このエラーだけ見るとなんかファイルの形式が違うとか、アクセス権が無いとかと思ってしまい
その点で色々調べていたんですが解決せず:sweat:

“`transcribe.cs
using (var transcribeClient = new AmazonTranscribeServiceClient(
“IDだよ”,
“アクセスキーだよ”,
Amazon.RegionEndpoint.APNortheast3))
{
var

元記事を表示

Amazon Linux2におけるsystemdのバージョンは古め

Amazon Linux2がサポートしているsystemdのバージョンはかなり古いよという話。

## Amazon Linux2におけるsystemdバージョン
Azmazon Linux2 の systemd で `RuntimeMaxSec` オプションを利用しようとしたら
サポートされていないよとエラーになったことで気付いた。

[Amazon Linux2のリリースノート](https://aws.amazon.com/jp/amazon-linux-2/release-notes/)を確認したところ
Amazon Linux 2.0.20210617.0 更新のバージョンで systemd-219だった。
これは[systemdのChangeLogs](https://github.com/systemd/systemd/blob/main/NEWS)を見る限りでは 2015-02-16 リリースのバージョンなのでかなり古い。

“`
$ rpm -q systmed
systemd-219-78.amzn2.0.14.x86_64
“`

## その他のOSにおけるs

元記事を表示

AWSでのLaravelプロジェクト作成時のエラー

composer コマンドでLaravelのプロジェクト作成時に何かしらの理由で、正常に作成されていなくてエラーが出てしまった時。

“`$ cd ~/environment
$ rm -rf (プロジェクト名)
$ sudo yum -y install php73 php73-mbstring php73-pdo php73-mysqlnd
$ sudo alternatives –set php /usr/bin/php-7.3
$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/bin/composer
“`

上記コマンドで1回プロジェクトを消す。
再度プロジェクト作成する。

元記事を表示

OTHERカテゴリの最新記事