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

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

AWS ネットワークデザインパターンDeep Diveの整理

# 背景・目的
– AWS Summit Tokyo 2019の「ネットワークデザインパターン Deep Diveの内容を整理する。

# 内容
## Overview
– 歴史を追いながら説明されている。背景などを把握しやすい。

## 歴史
– 2013/12 VPCリリース
– セキュアな空間が利用可能になった
– 2014/3 VPC Peeringリリース
– VPC間で通信可能
– 同一アカウント、別アカウントのVPC間で通信可能になった。
– 1ホップまで通信可能。(2ホップはNG)
– VPCの数が多くなると複雑になる
– 2017/11 Inter-Region Peeringリリース
– 海外のリージョンに接続が可能になる。(リージョン間通信)
– 2017/11 Direct Connect Gatewayをリリース
– Private VIFとVGWが1:1だったものが、DxGWをはさむことで1:Nになり、オンプレ-AWS間のPrivate VIFが1本に集約することが可能になる。
– 同一

元記事を表示

VMware Cloud on AWSお勉強まとめ (初心者向け)

#1. はじめに
VMware Cloud on AWSについて勉強するにあたり、参考にさせていただいたリンクをまとめます。巷ではVMC on AWSと略して呼称されたりするのですが(公式サイトURLもよーく見ると..)、本記事では正式名称VMware Cloud on AWSのままで記載します。

#2. VMware Cloud on AWSって?
オンプレとクラウドのそれぞれに強みを持つ両社が共同開発したクラウドサービスです。Amazon EC2ベアメタルインスタンス上にVMware仮想環境が構築されています。詳しくは両社の公式サイトもどうぞ。

#####[VMware Cloud on AWS (VMware公式サイト)](https://www.vmware.com/jp/products/vmc-on-aws.html)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864151/ffd52e2c-0826-6663-d228-c1e836909d17.png)

###

元記事を表示

【PHP】xDebug.soの読み込みエラーが発生した時の対処法

AWSのCloud9でPHPファイルを実行したときにxDebug.soの読み込みエラーが発生した時の対処法。

PHPのバージョンとxdebugが揃っていない場合などに生じるエラー。

## エラー文

“`
Failed loading /xxxxx/xxxxx/xxxxx/xdebug.so:
/xxxxx/xxxxx/xxxxx/xdebug.so: undefined symbol: gc_globals
“`
xxxxxの部分は`xDebug.so`があるパスです。

## 解決方法

`xdebug`を削除してインストールし直せばエラーが解決されます。

“`
sudo pecl uninstall xdebug
sudo pecl install xdebug
“`

## 参考

https://error-search.com/error-post/detail/168/Failed%2Bloading%2B%252Fusr%252Flib64%252Fphp%252Fmodules%252Fxdebug.so%253A%2B%2B%252Fusr%252

元記事を表示

AWS Site To Site VPN

# 背景・概要
VPNは、ハンズオンの機会が少ないため、Black Beltから知識をインプットする。

# 内容
## オンプレからAWSに接続する種類
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/3508d1db-02e4-1c8a-319c-a17714fb6e1e.png)

以下の3種類がある。

– Client VPN
– Site-to-Site VPN
–  VGW(Virtual Private Gateway)に接続する。
–  VGWは、冗長化済み
–  オンプレから特定のVPCイン接続する。
–  ユーザ側はCGW(Customer Private Gate)に接続する。
– Direct Connect
– TGW(Transit Gateway)に接続する。
– TGWは、冗長化
– 複数のVPCに接続できる。

## Site-to-Site VPNとは?
– CGWと

元記事を表示

表情判定するLINE BOTをつくった(LINE x Amazon Rekognition)

前回の記事で、LINEで画像を飛ばしてS3に保存する機能を実装しました。
[LINEで送った画像をS3に保存する(LINE Messaging API x AWS)
](https://qiita.com/ted-17/items/0e3e4956a19ad183e739)
# やること
・LINEで画像を飛ばしてAmazon Rekognitionに食わせる
・判定結果をLINEに返す
をしてみようと思います。

# 構成図
![line_to_rekognition.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1989761/d9549338-cc7f-6c39-e130-99a1219a3329.png)
[前回](https://qiita.com/ted-17/items/0e3e4956a19ad183e739)からAmazon Rekognitionが増えただけ。
今回はLINEで送ってLINEに返すという気持ちを込めて双方向⇄にしています。
前回同様AWS Lambdaに

元記事を表示

Linuxの学習のための環境をAWSで作る

##はじめに
Linuxのコマンドってよくわからない。
とりあえずググってコピペしてなんとか凌いでる。
そんな状態を脱するために本を買ってきてLinuxの学習を始めました。

本を読むだけでは身にならないと思い、AWSで実際にLinuxを扱いながら学習できるようにしました。

##さっそく作る
AWSのユーザー登録については飛ばします。

まずは「サービス」から「EC2」を探してクリックします。
右上にある「インスタンスを起動」というオレンジ色のボタンを押して、「Amazon Linux 2 」を選択します。
ちなみにスクロールしていけば他にも無料枠対象のLinuxサーバがあるので、お好みで選んでください。
次の場面でスペックを選ぶことができるので、無料枠の対象のものを選びましょう。
「確認と作成」を押して、修正が必要なければ「作成」を押しましょう。

次はSSH接続で使うキーペアを作成します。
任意の名前をつけてダウンロードし、「インスタンスの作成」を押します。
EC2ダッシュボードに戻ってしばらく待つと、インスタンスの作成が完了します。

##接続する
作成されたインスタンスを選択

元記事を表示

ElastiCache接続不可の場合の切り分け

アプリから接続エラーのExceptionが出てしまった時の切り分け方法について。

##1.イベントログを確認する

AWSマネージメントコンソールでElasticacheのページから「イベント」を確認。
例えばフェイルオーバー発生の場合下記のように表示される。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/469267/830b8630-0bba-c47a-aa61-3c9814e498ac.png)

##2.Personal Health Dashboardを確認
ここから
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/469267/ecbcbb28-2a02-82e1-8e72-295da99d5dfd.png)
**Personal Health Dashboardで表示されるのは下記のみ**
・サービス系で一定時間継続している障害で復旧目処が経っていないもの
・計画メンテ(短期

元記事を表示

Athenaを使ってCloudTrailログを検索する〜パーティション追加

#1、Athenaテーブルを作成する

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/236892/191af266-c872-b44d-4b0b-fcfde2749f72.png)

ここで場所を指定して直接作成するか、SQLをコピーしてAthenaで作成する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/236892/c06e44c6-b311-7a09-cebd-41ec3cbc95e2.png)

今回はパーティションを追加するため、SQLをコピーして、パーティションを追加してAthenaで作成する

“`SQL:create_table.sql
CREATE EXTERNAL TABLE cloudtrail_logs_aws_service_log (
eventVersion STRING,
userIdentity STRUCT< type

元記事を表示

【初心者】AWS Wavelengthを使ってみる #4 (Janus によるWebRTC ビデオ通信)

# 1. 目的
– AWS Wavelengthのメリットは低遅延での通信が可能となること。「低遅延」がイメージできるようなサンプルアプリケーションとして、WebRTCでのビデオ通信などを実現できるソフトウェアである「Janus」をインストールし動作を確認する。
– 無償でWebRTCが試せるソフトウェアを探していたところ、「[仕事で WebRTC](https://gist.github.com/voluntas/379e48807635ed18ebdbcedd5f3beefa)」というサイトがあり、有償/無償版のソフトウェアの一覧が掲載されていた。無償版のおすすめは「Janus」ということで、それを信じてやってみることとした。

# 2. やったこと
– AWS Wavelength 上に EC2 インスタンスを作成し、Janus をインストールする。
– 複数のPCやスマホから Janus サーバに接続し、相互にビデオ通信ができることを確認する。
– 単純にEC2インスタンスにJanusをインストールしただけのため、この記事の内容はAWS Wavelengthではなく、AWSの通

元記事を表示

【AWS SAP】S3

#はじめに
このページはAWS Solution Architect Professional(SAP)の資格を取得するため、重要ポイントを絞って記載していきます。分かりづらいところ、間違っているところがあれば是非ご指摘ください。

#今回の説明対象
S3(Simple Storage Service)

# サービスの内容

## 機能説明

## 主な利用方法
S3はAWSの**非常に安価で大容量を保管できるオブジェクトストレージサービス**。簡単に言えばファイル(オブジェクト)を保管する場所のこと。**EC2のディスクとしては使えないことに注意**。注意点にも書いたがS3は機能が非常に多くあるため、様々な問題で問われやすい。まずは以下の標準的な機能を抑えておこう。

– データ耐久率(データが破損して無くならない)は99.999999999%
– データ容量は気にせず保存できる。移行元のデータ保存やデータレイク(とにかくデータを集める場所)として有能
– 安い(1GBあたり0.025ドル)

## 類似サービス
S3はストレージサービスとしてよく引き合いに出されるため、EBS、

元記事を表示

IAM権限のトラブルシュートが少しだけ楽になりそうな話

# はじめに
昨日ネットサーフィンしていたら以下のようなリリースを見つけました。

* [AWS ID とアクセス管理により、AWS でアクセス拒否エラーのトラブルシューティングを行う方が効率的になりました。](https://aws.amazon.com/jp/about-aws/whats-new/2021/11/aws-identity-access-management-efficient-troubleshoot-error/)

以下を見る限り拒否されたときのメッセージがより詳細になったということかなと思いました。
業務でIAMの権限作っていてどの権限が足りないとか毎回全部調査していたので、どの程度詳細に出るようになったのか確認してみます。

>Amazon ウェブサービス (AWS)でのアクセス権限のトラブルシューティングを迅速に行う手助けをするために、AWS アイデンティティおよびアクセス管理 (IAM) に、アクセス拒否エラーメッセージで拒否されたアクセス権限を担当するポリシータイプが含まれるようになりました。

尚、最初は以下の3つのサービスのみで、それ以外のサービ

元記事を表示

AWS IAM実験記。aws-cloud-tech課題

私はIAMがわかっていない。
I am not friendly with IAM.
ということで実験しよう。

くろかわさんのIAM講座でなんとなくイメージはできてるぞよ。

# 1. IAMユーザの巻
– 1.1 ユーザAを作成し、S3のAll権限付与
– 1.2 ユーザBを作成し、S3の読み込み権限付与
– 1.3 ユーザAでログインしてS3バケット作成&アップロード
– 1.4 ユーザBでログインしてS3バケット作成できないこと&アップロードできないことを確認

### 1.1 ユーザAを作成し、S3のAll権限付与
まずはとりあえず ユーザAを作成してみよう。
tech-testA で作成。
![スクリーンショット 2021-11-17 12.55.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/82730/3833e8a0-de70-e19f-6494-52109dd5b0e2.png)

次、付与する権限はAmazonS3FullAccessでGOGO
![スクリーンショット 20

元記事を表示

【AWS】CloudWatchでログ監視し、アラーム状態となったらメール送信を行う

#■はじめに
CloudWatch、SNSトピックを利用してログに特定文字列が出力されたらアラーム発報し、メールを送信するところまで試しに構築してみたので手順をまとめました。

#■対象者
本記事は以下のような方を対象として記述しました
– AWSの勉強始めたてでとりあえず何か作ってみようかなという人
– 自分用の手順メモ

#■構成図
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1864204/9d6b1cb5-9c74-a065-c1cb-75240dc59a4d.png)

EC2からCloudWatch logsへ/var/log/messagesを送信し監視対象とする。
CloudWatchは”ERROR”文字列を検知した場合、アラーム発報する。
アラーム発報すると関連付けられたSNSトピックは指定の宛先にメール通知を行う。

#■作業内容
大まかに以下。

1. EC2にCloudWatchエージェントのインストール
2. EC2にCloudWatch logsへログを送信

元記事を表示

LINEで送った画像をS3に保存する(LINE Messaging API x AWS )

LINEで送った画像をS3に保存したい。
# 動機
・AWS rekognitionでいろいろ遊べたら良いなあ
・そのためにはまず画像を用意せねばなあ
・一番使いやすいプラットフォーム(⊃LINE)でできたら良いなあ

# LINE公式アカウントとAWSの連携
LINE公式アカウントの登録、およびLINEとAWSとの紐付けに関しては以下の記事を参考にさせていただきました。
[API GatewayとLambda(Python)でLINE BOT(Messaging API)開発 [前編]](https://qiita.com/w2or3w/items/1b80bfbae59fe19e2015)

構成は下記の通りです。
![line_to_s3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1989761/5b3ff3c6-edd3-19a7-39d9-a67ba8d16bea.png)

# S3に画像を保存するLambda
実際に、S3に画像を保存するためのコード(python)をAWS Lambd

元記事を表示

DatabricksにおけるAmazon Kinesisの活用

[Amazon Kinesis \| Databricks on AWS](https://docs.databricks.com/spark/latest/structured-streaming/kinesis.html) [2021/4/29時点]の翻訳です。

構造化ストリーミングにおけるKinesisコネクターがDatabricksランタイムに含まれています。

# Amazon Kinesisの認証

Kinesisの認証を行うためには、デフォルトでは[Amazonのデフォルトクレデンシャルプロバイダーチェーン](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html#credentials-default)を使用します。Kinesisにアクセスできるインスタンスプロファイルが設定されたDatabricksクラスターを起動することをお勧めします。アクセスのためにキーを使いたいのであれば、オプション`awsAccessKey`と`awsSecretKey`を指定することができます

元記事を表示

【AWS】EC2とRDSを冗長化しALBで通信を振り分ける

#■はじめに
AWSでEC2(wordpress),RDSシングル構成を構築したので、そこから冗長化する際の手順をまとめました
AMIによるEC2複製手順、MultiAZ機能によるRDS冗長化手順、ALB作成手順となります。

#■対象者
本記事は以下のような方を対象として記述しました
– AWSの勉強始めたてでとりあえず何か作ってみようかなという人
– 自分用の手順メモ

#■構成図
冗長前.JPG

まず、冗長化していない構成図は上記。
userはブラウザからIPを入力しhttp通信でEC2にアクセスする。
EC2にはmysql、wordpressをインストールし、SQL発行でRDSにアクセス、データを取得し画面表示を行う。
ssh接続はteratermでEC2に接続する際に利用する。

EC2は外部

元記事を表示

【AWS SAP】Direct Connect

#はじめに
このページはAWS Solution Architect Professional(SAP)の資格を取得するため、重要ポイントを絞って記載していきます。分かりづらいところ、間違っているところがあれば是非ご指摘ください。
#今回の説明対象
Direct Connect

# サービスの内容

## 機能説明
Dicrect Connectはオンプレミス環境とAWSの**VPC**を繋ぐ専用線サービス

## 主な利用方法
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2262212/f0efb9dd-7910-9918-2eda-9531722fbaba.png)

Direct Connectは**1Gもしくは10Gbps**の専用線サービス。以下の流れで接続される
① オンプレミス環境のルータと**Direct Connectロケーション**と呼ばれるAWS側環境と**物理的に結線する**
② 仮想インターフェイス(VIF)と呼ばれる仮想NICを作成
③ VirtualP

元記事を表示

Amazon SES バウンスメール対策(通知、収集、監視)

# 概要
Amazon SES のバウンスメールについて、インフラ観点の対策を3つ取り上げ、設定方法を紹介します。
また、AWS 側で実施している対策についても軽く紹介します。

<目次>

* 前提情報
* 実施したバウンス対策
* Slack 通知
* DynamoDB ログ格納
* Datadog モニター
* AWS による対策
* サプレッションリストによるバウンス抑制
* ブラックリスト (DNSBL) 対策

# 前提情報
前提情報が不要な方はスキップしてください。

### バウンスとは
> バウンスメールとは、何らかの原因でメールが相手まで到達できなかったメールのことです。 バウンスメールには以下の2種類があります。
一時的なエラーによるソフトバウンス(例:メールボックスの容量がいっぱいだったなど)
恒久的なエラーによるハードバウンス(例:メールアドレスが存在しないなど)
https://tech.connehito.com/entry/2020/09/17/152126

### AWSによる送信停止
> 最良の結果を得るには、バウンス率を 2%

元記事を表示

CircleCIを使ってコンテナイメージをAWS LambdaへデプロイするCI/CD環境を構築してみた

# 1.はじめに
2020年12月にAWS Lambda はコンテナイメージのサポート開始を発表しました。
ECSやEKSといったコンテナ系のサービスだけでなく、Lambdaでもコンテナネイティブな開発環境を作ることができます。

これまでのLambda関数のデプロイ方法は下記の通りです。

– マネージメントコンソールからソースコードを編集する
– ZIPファイルをアップロードする
– Amazon S3に配置したZIPファイルをデプロイする

上記の3つに加えてECRに配置したコンテナイメージをデプロイする方式が利用可能になりましたので、
こちらを利用した開発ワークフローをCI/CD環境をCircleCIで構築してみました。

# 2.本記事の対象者
– CircleCIを利用したい方
– コンテナイメージをLambdaにデプロイしたい方

# 3.CircleCIとは
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2295139/97c71d13-8ce

元記事を表示

AWS環境設定(料金アラート設定)

# AWSで料金発生時に通知を出す方法
###### 今更感はありますが私が最近AWSの勉強を始めたので許してください。

まずはAWS公式サイトを見ていただくのがいいかと思います。

https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html

では、実際に作業した工程を画面キャプチャと一緒にお見せします。
###### ステップ1:まずはルートユーザーもしくは請求情報の設定権限のあるユーザーでAWSマネジメントコンソールにログイン

###### ステップ2:マイ請求ダッシュボードを開く

  • OTHERカテゴリの最新記事