AWS関連のことを調べてみた2022年07月24日

AWS関連のことを調べてみた2022年07月24日
目次

【AWS API Gateway】WebSocket を使用した双方向通信

# WebSocket とは

Webサーバとクライアントの間で双方向通信できるようにする技術です。通常はクライアントがリクエストをWebサーバに送り、それに応じてWebサーバがレスポンスを返しますが、WebSocketではサーバ側が任意のタイミングでクライアントにメッセージを送ることができます。

# WebSocket API を作成する

バックエンドを Lambda 関数とする WebSocket API を作成します。先に [Lambda 関数を作成する](#Lambda関数を作成する) をやってもやらなくてもどちらでも構いません。

「WebSocket API」の「構築」をクリックします。

![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621414/563db56f-4af7-71c8-cd44-739ca480c3fc.png)

API 名、ルート選択式を入力します。ルート選択式とはルートキーを指定するための JSON パスです。ルートキーとは、ルートの名前です。ルートとは、

元記事を表示

ECSタスク起動時のstandard_init_linux.go:228: exec user process caused: exec format errorへの対処法

# はじめに
コンテナ初心者の自分がM1 Macを使ってDockerイメージ作成からECSデプロイまで行なった際に発生したエラーとその対処法についてまとめます

# 結論
“`
standard_init_linux.go:228: exec user process caused: exec format error
“`
ECSのタスク起動時に上のエラーが出て、かつDockerイメージ作成の際にM1 Macを使っているなら`docker build`コマンドにオプションとして`–platform amd64`を追加してあげると解決します。
“`
docker build ./ –platform amd64
“`

# 経緯

Next.jsをECS Fargateにデプロイしようと思い以下のような手順を取りました
– ローカルでDockerfileからイメージビルド
– ECRのリポジトリにイメージをpush
– pushしたイメージをもとにECS Fargateでタスク起動

### 使用したDockerfile
“`Dockerfile:Dockerfile
F

元記事を表示

RIEを使ってLambdaコンテナイメージをローカルでエミュレートする

# はじめに
前回Lambdaコンテナイメージを、AWS以外のベースイメージから作る方法を記事にしました。

https://qiita.com/a_b_/items/337c4afee2e330efefe1

作成する際AWS Lambda Runtime Interface Emulator (RIE) を使って、ローカルでLambdaをエミュレートする方法を試しましたので記事にしました。

# 参考

https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/images-test.html

https://aws.amazon.com/jp/blogs/news/new-for-aws-lambda-container-image-support/

# やったこと
前回同様に、プロジェクトのディレクトリを作成し、Pythonのファイルを作成します。
Dockerfileは、エミュレータを含めるかどうかで記述が変わりますので、ここではファイルを作成するだけです。
“`bash
# プロジェクトディレクトリ作成
mkdir sam

元記事を表示

AWS 認定ソリューションアーキテクト プロフェッショナルに合格した

# 受験動機
* アソシエイト三冠は達成したので次のステップとして
* 今の職場(所属)だとAWS触る機会がないので、やっぱり転職するしかないかな…となんとなく考えていた
* クラウド業務を志望するならSAPぐらい持ってないとアピールにならない気がした

# 使用した機材について
* AWS WEB問題集で学習しよう
* おなじみkoiwaclubのオンライン問題集
* 本試験よりもやや長文問題が多いので、これで長文問題に慣れておくのがよい
* 全体的な難易度は本試験とほぼ同じか、少し易しいぐらい
* ところどころ日本語が分かりづらいところも本試験と同じ、AWS用語でコスト/性能/耐障害のどれを問われているか?を判別できる事が重要
* 新しく「学習記録」機能が追加されていて、後から間違ったところを再確認できるようになり、苦手な分野を把握するためにはとても役にたった
* 質問フォーラムが閉鎖されたりして若干運営方針に疑問は感じるが、そもそも「AWS試験対策」としてならこれも納得できなくもない
* 本試験も日本語の怪しさは似たり寄った

元記事を表示

【第1回】AWS上に仮想ネットワークを構築する【VPC/サブネット編】

## 【はじめに】

– 自分のブログをAWS上で構築して運営してみたい
– AWS上にネットワーク環境を構築したいけど、構築方法がわからない

AWSのサービスに対する理解度を加速度的に上げるには実際にAWSのサービスを利用してみることが重要です。

AWS初学者の方に向けて「仮想ネットワークの構築方法」を4回に分けて解説していきます。

第1回目の今回は、**VPCとサブネットを作成する**方法です。

### 本記事の内容

– 構築するネットワーク構成図
– 実際にVPCとサブネットを作成してみる

## 【構築するネットワーク構成図】

第1回から第4回にかけて構築するネットワーク構成図は以下となります。

– リージョン:東京リージョン
– VPC:リージョン内に1つ
– アベイラビリティゾーン:東京リージョンに2つ
– プライベートサブネット:各アベイラビリティゾーンに1つずつ
– パブリックサブネット:各アベイラビリティゾーンに1つずつ
– Internet Gateway:VPCにアタッチ
– NAT Gateway:各プライベートサブネットにアタッチ
– ルートテ

元記事を表示

AWSクラウドプラクティショナー合格体験記

## はじめに

2022年7月にAWS CLFに合格しました。CLFの合格を目指されてる方の参考になれば幸いです。

## CLFの概要

以下の範囲と割合で出題されます。
出題範囲の高いテクノロジーのところを中心に勉強しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2608548/a12c5cdb-cb1c-b645-5e12-28992635b0bf.png)

## 学習教材

[AWS認定クラウドプラクティショナー緑本](https://www.amazon.co.jp/AWS%E8%AA%8D%E5%AE%9A%E8%B3%87%E6%A0%BC%E8%A9%A6%E9%A8%93%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88-AWS%E8%AA%8D%E5%AE%9A-%E3%82%AF%E3%83%A9%E3%82%A6%E3%83%89%E3%83%97%E3%83%A9%E3%82%AF%E3%83%86%E3%82

元記事を表示

Lambdaでpythonの外部ライブラリをレイヤーで使用する方法

# この記事で出来るようになること
#### 結論:外部ライブラリをAWS Lambdaのレイヤーに追加することで、インラインコード編集をできるようにする。

pythonを使用する際に、外部ライブラリを使用することはよくあります。
しかし、Lambda関数自体にローカルでpipしたライブラリファイルをアップロードすると
`Lambda 関数「***」のデプロイパッケージが大きすぎて、インラインコード編集を有効にできません。ただし、関数を呼び出すことはできます。`
と出てしまう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/748917/23335e1f-2df6-2cce-8154-60eea8e17667.png)
すると、インラインコード編集が出来なくなってしまう。
インラインコード編集を使用しない人にとっては問題はないが、便利であるので使える状態にしておきたい。

# ローカルで外部ライブラリをzip化する
本記事の例ではLINE APIで使用する`line-bot-sdk`を

元記事を表示

秒でWebページ~EC2~

事前準備
セキュリティグループで10280ポートフルオープンで空けとく
ディレクトリ移動しないでね

“`
sudo yum -y install nmap-ncat
sudo vi index.html.sh
—–以下の点線内ををそのまま貼ってね——

#!/bin/bash
echo -e “HTTP/1.1 200 OK\r\n$(date)\r\nContent-Type: text/html; charset=utf-8\r\n\r\n”
echo “

Hello world

—————————————-
sudo chmod 777 index.html.sh
nc -l 10280 -k -e index.html.sh

“`

ハイ終了^^

ブラウザで以下入力してアクセス

サーバーのIP:10280

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

元記事を表示

QuickSight のデータセットに紐づく Athena のテーブルを再作成したらどうなるのか検証してみた

# はじめに

QuickSight と Athena を連携しているときに、Athena 側のテーブルを再作成したいときがあります。例えば、Athena で CTAS (CREATE TABLE AS SELECT) でデータ加工を行うとき、テーブルを DROP TABLE した後に、再度全体のデータを使って CREATE TABLE したいタイミングがあります。

QuickSight と Athena が連携しているときに、DROP TABLE, CREATE TABLE をしても問題ないのか気になったので検証してみました。QuickSight のデータ定義からやり直しになるのは大変そうなので、設定上にどのような影響があるのか調べてみます。

# 結論

同じテーブル名で再作成すると、QuickSight 側は何も設定変更せずとも、そのまま利用できる。

データ可視化の観点では、DROP TABLE と CREATE TABLE の間はデータが無いので、エラーになる。

# 新しいテーブルを作成

Athena で適当に新しいテーブルを作ります。テーブルを再作成したときに

元記事を表示

Glue DataBrew で、一度出力した S3 に、再度データの追加をやってみる

# はじめに

Glue DataBrew をつかってデータ加工を行い、Athena でクエリー出来る環境を作成できます。

初期構築時に入れたデータのクエリーを行えますが、日々データは生まれていきます。どのように DataBrew を動かして Athena としてデータを追加できるか不明だったので、検証した手順を載せておきます。

# 用意するデータ

以下の 3 種類の csv データを準備します。

sales-01.csv

– 1月~3月のデータ

“`
date,shiten_code,revenue
20100101,0001,100000
20100101,0002,200000
20100101,0003,300000
20100101,0004,400000
20100101,0005,500000
20100201,0001,100000
20100201,0002,200000
20100201,0003,300000
20100201,0004,400000
20100201,0005,500000
20100301,0001,100000
2010

元記事を表示

LightsailでWordpressを後からMultisite化する手順まとめ

AWS Lightsailで WordPressブログを一つ運営していたのですが
色々あってサブドメインでマルチサイト化したいと思い、やってみています。

あちこちのサイト様を参考にさせていただいたのを、まとめています。

# ⓪ FTPソフトをインストールしておく

私はMacの「ForkLift」を使ってます。
「SFTP」接続してください。SSHキーの権限に注意です。

https://qiita.com/tomokei5634/items/9f76ae3a5e2f004f27ef

# ① wp-config.phpを書きかえ

https://help.colorfulbox.jp/manual/wp-multisite-use/

WordPressをインストールしたディレクトリ直下にある「wp-config.php」に下記の設定を追記します。

“`
define(‘WP_ALLOW_MULTISITE’, true);
“`
書くべき場所はよくわからなかったんですが90行目近辺に書きました。。

# ② httpd-app.confを書き換えて,「.htacce

元記事を表示

AWS: Route53 で CNAME を定義して出たエラーの対策

Route53 で CloudFront に CNAME を定義した時に次のエラーが出た時の対策です。
CloudFront に直接アクセスした時は、エラーが出ないことが前提です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/179446/29cd37fa-02f0-b448-19da-359657c50a92.png)

CloudFront の設定を変更します。

一般 -> 設定 -> 編集

次の2つを設定します。
>代替ドメイン名 (CNAME) – オプション
>カスタム SSL 証明書 – オプション

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/179446/06e97a3a-c69d-2188-dbaf-b23a469dd3a8.png)

元記事を表示

フロントエンドエンジニアが「AWS クイックスタート」を受講してみた

## 概要

現在企画中の[個人開発プロジェクト](https://note.com/npower_creative/n/n48dc5182423b)について、Firebaseをインフラに据えて実装したプロトタイプから機能の見直しを図って、バックエンドとインフラの再構築を検討しているところです。

完全に個人では網羅できない範囲の選定になるので実際の案件や技術フォーラムを通じて

そんな中先日の7/14(木)、[AWS Builders Online Series(AWS クイックスタート)](https://aws.amazon.com/jp/events/builders-online-series/#agenda)に参加できる機会があり、個人的に近しいフロントエンド向けのセッションがあったので自分なりにまとめたものをシェアしようと思います。

## AWSの学び方

一概にAWSと言ってもサービスの種類やコンテンツが膨大にあるので、進め方次第で学習コストがかなり変わってくる印象があります。
基本的にAWSはインフラのポジションなイメージがありますが、それだけでなくサービスの組み

元記事を表示

【入門】Figmaで作ったデザインをReactアプリに連携する

## はじめに

今回は[AWS Amplify Studio](https://aws.amazon.com/jp/blogs/news/announcing-the-general-availability-of-aws-amplify-studio/)を利用してFigmaで作成したデザインをReactアプリに連携する方法について解説します。

「**AWSなんて触ったことないよ!**」「**Reactも触ったことないでやんす!**」って人でもサクッとできるような内容なので読んでいただければなと思います。

## 目標成果物

– Figmaで作成したカードコンポーネントのデザインをReactアプリ上で表示させる
– Figmaで作成したボタンコンポーネントでクリックイベントを試す

![スクリーンショット 2022-07-23 13.00.13.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2695521/51f9c6eb-380b-16c1-21fd-00a7d3202ab0.jpeg)

![

元記事を表示

mysql2/promise を使用し、VPC内のLambdaから RDS Ploxy 経由で RDSに接続してみた [Node.js]

# はじめに
RDS Ploxy 経由で MySQL にアクセスするLambdaをVPC内で実行させましたので、手順をまとめます。

以前、`mysql`モジュールを使用して同様の処理をしましたが、`mysql2`モジュールの方がコード量が少ないため、今回は`mysql2`を使用してみます。

https://qiita.com/hirai-11/items/b0b9abc25e8f49c3815b

![スクリーンショット 2022-06-23 22.00.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/6391a70c-3d26-f29d-2a5c-a8db47bbb6c3.png)

# RDS Ploxyの作成
RDS Ploxyは、以前作成した記事がありますので、こちらを参考にしてください。

https://qiita.com/hirai-11/items/07b25f81f1a983e0191c

# private subnetにLambdaを作成

## 設定

元記事を表示

AWSのEC2でjenkinsの環境構築_自力でインストールしてみよう

# 目次
1. 前置き
2. 環境
3. EC2の操作
4. jenkinsの準備&動作確認
5. まとめ
6. 余談

# 1. 前置き
この記事ではEC2にjenkinsをインストールしてhello worldの確認をする。
Linuxの勉強を兼ねてるので無駄に自力で環境構築するが、手っ取り早く環境構築したいだけなら「6.余談」を参照すること。
AWS・jenkinsの用語や知識は解説しないので他の記事を参照すること。

# 2. 環境
今回構築したEC2の環境は以下

“`
OS : Ubuntu 22.04
インスタンスタイプ : t2.micro
java : 11.0.15
jenkins : 2.332.3
“`

途中でコマンドラインからEC2のサーバーにアクセスしますが、その環境はWindows 10です。

# 3. EC2の操作

以下の3ステップでクラウド上にUbuntuの仮想環境を構築する。

## 3-1. AWSのアカウントを作成

アカウントの作成は特段難しいことはないと思うので割愛。IAMユーザーは今回使用しないので、ルートユーザーでログインする。

元記事を表示

AWSをUiPathで動かしてみたい_第3話(AWSスコープに変数を入れる)

## はじめに

①この記事はUiPathブログ発信チャレンジ2022サマーの23日目の記事です。
続々とUiPath記事が登場しますので、ぜひ投稿&閲覧&LGTMをしてくださいね!
参加方法は以下のブログを参照ください。
https://note.com/shumpei_w/n/n19383ce5abb1

②今回紹介するUiPathの情報は以下の通りです。
■Community Edition 2022.4

③この内容は、2022/7時点の情報です。
(バージョンやライセンス等の事情で内容が変更になる可能性があります)

③AWS環境はご自身で用意頂くなどの対応をお願いします。

④この記事は一応連載(?)しています。
よろしければご覧ください。
第2話:https://qiita.com/saosao885/items/ac5478b771c77dc26642
第1話:https://qiita.com/saosao885/items/ad0cb508eed33d93fbaa

## 前回(第2回)のおさらい

前回は、AWSのスコープで設定が必要なプロパティについて説明してい

元記事を表示

AWS S3 ストレージクラスを料金含めて比較してみた!

## 概要

AWS S3のストレージクラスは、種類がたくさんあるので、どれ選んだらいいか迷うことも多いのではないでしょうか?
そこで各ストレージクラスの特徴と料金を一覧表にまとめてみました。
S3ストレージクラスの選定の材料にして頂ければ幸いです。

## 比較

|クラス名 |主な用途 |詳細 |料金(東京リージョン、 10GB/月あたり) |
| — | — | — | — |
| S3 標準 | アクセス頻度が高いデータ向け | 標準的なストレージクラス。
複数のアベイラビリティゾーン (AZ)に保存されるため、安全性が高い。 | 約15円 |
| S3 Intelligent-Tiering | アクセス頻度が高いデータと低いデータが混在 | アクセス頻度が時期によって変化する、もしくはアクセス頻度が高いデータと低いデータが混在している場合、自動的に最適化を行う。 | 約33円 |
| S3 標準 – IA | アクセス頻度が低いデータ向け | アクセス頻度が低いが、必要に応じてすぐ取り出す必要があるデータ向け。
複数のアベイラビリティゾ

元記事を表示

お名前.comで取得したドメイン名を使って、AWS Route53でDNSを設定する

# ホストゾーンを作成する
Route53のダッシュボードを表示してください。
「ホストゾーンの作成」をクリックしてください。
ホストゾーンの作成画面が表示されます。
お名前.comで取得したドメイン名を入力し、「ホストゾーンの作成」をクリックしてください。
![スクリーンショット 2022-07-23 9.31.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/14202/6010d714-adc1-e3a7-b6ad-d1516eedb785.png)

# DNSの情報を調べる
EC2インスタンスにログインし、以下のコマンドを実行してください。
お名前.comのネームサーバが表示されます。

この時点では、お名前.comで取得したドメインはお名前.comのネームサーバーとなっています。
お名前.comのネームサーバにRoute53のネームサーバーを設定することで、hikotaro.work -> お名前.com -> Route53というルートに変わり、Route53からEC2インスタンスに割り

元記事を表示

【AWS】S3の特徴まとめ

# イレブンナイン
カタカナだといまいちピンとこない。。。Eleven Nine (99.999999999%)の**耐久性**。
可用性に関しては99.99%とのこと。

これも英語で考えよう。。。。
耐久性は「durability」で **「データを失わないことを保証するレベル」** のこと。
可用性は「availability」で **「システムが稼働し続けることを保証するレベル」** のこと。

# Webサイトホスティングとしての活用
S3自体は元々クラウドのストレージサービス(ファイル置き場)だが、静的ファイル(htmlや画像など)であればレンタルサーバーのようにウェブサイトを公開することが可能。従量課金性だがそんじゃそこらへんのレンタルサーバーよりも料金を低く抑えることが可能。

Route53を活用して独自ドメインを割り当てる場合は、バケット名とドメイン名を一致させる必要がある。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2665477/654f66ec-c9d0

元記事を表示

OTHERカテゴリの最新記事