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

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

AWS S3 Laravelアプリから画像ファイルをアップロードする

# 目次

– AWS EC2に構築したLaravel環境で作成したLaravelアプリから画像ファイルをS3にアップロードする方法をまとめる

# 実施環境

– ハードウェア環境

| 項目 | 情報 |
| — | — |
| 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に構築した)

| 項目 | 情報 | 備考 |
| — | — | — |
| MySQL | 8.0.20 for Linux on x86_64 | コマンド`$ mysql –version`で確認 |
| Apache | 2.4.43 | コマンド`$ htt

元記事を表示

AWS Configルールを全リージョン分まとめて消す

## はじめに
AWS Configを全リージョンに対してとりあえず有効にして使っていて、やっぱりやめることにしたのですが、マネジメントコンソールからポチポチ消すのが大変だったのでCLIでまとめて消してみることにしました。
それについて書きます。

## 前提
* [jq](https://github.com/stedolan/jq) を利用します
* CLIはv1系を利用
* credentialの設定が済んでいるものとします

## やってみたこと

### コマンドの調査

#### describe-config-rules

ルールの一覧を取得できます

“`bash
$ aws configservice describe-config-rules
“`

以下のような内容が出力されます

“`bash
{
“ConfigRules”: [
{
“ConfigRuleState”: “ACTIVE”,
“Description”: “Evaluates whether EC2 instances

元記事を表示

Amplifyのenv毎に異なる値をCloudFormationテンプレートのパラメータに設定する

# はじめに

amplifyでCfnテンプレートの独自に追加したパラメータにenv毎の異なる値を設定したいということがあり、その方法を調べてよさそうな方法がありました。

この方法は [amplify-cliのIssueのコメント](https://github.com/aws-amplify/amplify-cli/issues/3240#issuecomment-577832717) に書かれているだけで、2020-6-12時点ではまだドキュメント化はされていないでここに記録しておきます。

## amplifyのCfnテンプレートの独自パラメータに値を渡す方法

amplifyが扱うCloudFormationテンプレートで独自のパラメータを追加した場合、パラメータに値を渡すには `parameters.json` に値を記述します。

例えば、次のように`externalEndpointUrl`というパラメータをテンプレートに追加した場合、

“`json:template.json
{
“AWSTemplateFormatVersion”: “2010-09-09”,

元記事を表示

AWS 基礎

#前提
AWS(HTTP)について学んだことを書いていきます。

#本題
#HTTPの動きを確認
Webサーバーを構築し、Webブラウザでアクセスできるところまで確認した上で、WebブラウザとWebサーバー間は、「HTTP」というプロトコルを使い、データをやりとりする。

##HTTPとは
普段利用しているWeb通信では、HTTP(Hyper Text Transfer Protocol)という通信プロトコルが使われている。
HTTPは直訳すると、ハイパーテキストを伝送するための通信規約であり、HTMLをはじめとするWebサービスに必要とされる情報を伝達するためのルール。
※ハイパーテキストとは、リンク(ハイパーリンク)同士で結び付けられたテキストのことを言う。

Webサイトを利用していると、404 Not foundや500 Internal Server Errorなど、数字を伴ったエラー画面に遭遇したことがあるかと思う。
これらの数字はHTTPで定義されたコードである。
404は対象のリソースが見つからない、500はサーバー側で何かしらのエラーが発生した。

元記事を表示

WindowsローカルのAWS SDKでJavaプログラムを動かすまで

## 前提

[AWS SDK for Java 2.0 開発者ガイド](https://docs.aws.amazon.com/ja_jp/sdk-for-java/v2/developer-guide/welcome.html)
そして今回使おうとしているもの。

“`pom.xml 1.8
1.8
2.11.12



software.amazon.awssdk
bom<

元記事を表示

AWS AIサービス – 資料リンク集 –

AWSが提供するAIサービス関連のリンクをまとめる。

# AIサービスとは
機械学習の深い知識なしに簡単にAIを利用できるサービス

# 公式
AWSの最新情報 – 機械学習
https://aws.amazon.com/jp/about-aws/whats-new/machine-learning/?whats-new-content.sort-by=item.additionalFields.postDateTime&whats-new-content.sort-order=desc

AWS サービス別資料 – Machine Learning
https://aws.amazon.com/jp/aws-jp-introduction/aws-jp-webinar-service-cut/#ai-wn

AWS AI/ML ポータル
https://aws.amazon.com/jp/machine-learning/

# Amazon Augmented AI

# Amazon CodeGuru

# Amazon Comprehend

# Amazon

元記事を表示

GitHub ActionsでAWS S3に自動でデプロイする(静的ファイルのディレクトリを丸ごとアップロードする)

# 例えばこんなときに便利
– Web開発で画像などを`assets`や`static`といった名前のディレクトリにまとめている
– それらのファイルはS3でホスティングする

# やり方の解説

※以下はS3のバケットを公開設定にして画像等をホスティングする想定ですが、公開設定にしないことも可能です。

## Step.1 静的ファイルを1つのディレクトリにまとめる

– ホスティングするディレクトリ`static-files`を作成
– サンプル画像`yakiniku.jpg`を作成
– 例外的にアップロードしないサンプルファイル`README.md`を作成(任意)
– GitHub Actionsのワークフローを書く`workflow.yml`を作成

“`tree.txt
your-project-dir
├── .github
│   └── workflows
│   └── workflow.yml
└── static-files
├── README.md
└── yakiniku.jpg
“`

## Step.2 事前準備

詳細は省略

元記事を表示

AWS rekognitionで、ローカルの画像ファイルを認識させる方法

## TL;DR

`’Bytes’`というkeyのvalueにバイナリデータを入れて、Imageに渡す

“`python
import boto3

client = boto3.client(‘rekognition’)

with open(‘image.jpg’, ‘rb’) as f:
response = client.search_faces_by_image(
CollectionId=’string’,
Image={
‘Bytes’: f.read()
}
)
“`

## その他の事例

世の中のサンプルでは、s3に格納した画像ファイルを渡す事例が圧倒的に多かった。
s3から渡す場合は、bucket名とObject名を渡せば解析できる。

“`python
response = client.search_faces_by_image(
CollectionId=’string’,
Image={
‘S3Object’: {

元記事を表示

素のJavaScript用AWS SDKを使ってみる

## 紹介する内容
– Node.jsではないJavaScript用AWS SDKをブラウザ上で動かします
– 本当に動くか気になりました

## 結論
– JavaScript用AWS SDKはブラウザ上で動きました
– accessKeyIdやsecretAccessKeyは漏れないように注意お願いします。**デベロッパーコンソールで値を簡単に確認できます**
– どこで応用できるか考える必要があると思います

## 紹介始めます
### AWS SDK for JavaScript公式ドキュメント
公式ドキュメントです。
https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/index.html

### コード
– accessKeyIdやsecretAccessKeyは漏れないように注意お願いします。デベロッパーコンソールで値が見れます。
– `` この一行で使用

元記事を表示

AWS認定 ソリューションアーキテクト-アソシエイト 合格の流れ (旧バージョンです)

## 概要
AWS認定 ソリューションアーキテクト-アソシエイトに無事合格できたときの内容のまとめ
短期間での集中は趣味ではないので気長に勉強するパターンとして挙げてみます。2019年3月末からスタートして8月の最終週に取得しました。
来月からは試験範囲が変わってしまうのであくまで参考程度になってしまいそうです。

## 前提条件など
* Javaの開発メイン
* DBの管理(テーブルのスキーマの管理などパラメータ関係はあまり実施していない)
* 最近はpythonでの開発
* AWSは5年前くらいから使っているがインスタンスの起動停止、S3へDBのバックアップなどを行うだけで自分で構築などはしていません。
* 6月末~7月2週目まで諸事情のため勉強を中断

## 資格取得のきっかけ
* 会社の方針でAWSの資格取得を推進されている
* Qiitaなどでいろいろとやっている人を見ていると自分でも何かやってみたいなと思いその一歩としてAWSのサービスをいろいろと使えるようにしようと考えました。
* 会社の方針というのもありましたが自分でいろいろやってみたいということが勉強などの

元記事を表示

【AWS】用語を整理しながら学ぶAmazonVPC – part1

# はじめに

この記事では
AWSのあんなことやこんなことについて
まとめた記事です。
間違いがあれば修正していく予定です。
今回はAmazonVPCとそれを扱う上で重要な用語について整理してみました。

——————————–

# AmazonVPCって何ぞ

Amazonが提供するクラウドサービスの一つ
Amazon Virtual Private Cloud の略

**要するに
手軽にネットワークを構築できる優れモノ**

——————————–
# オンプレ、その他とはどう違う

・ネットワーク構築に必要な設備の調達が必要ほぼない。
・ネットワーク保守に必要な設備が必要ほぼない。
・ネットワーク運用に必要な設備を一括管理できる。

——————————–
# 必要な前提知識

基本情報技術者試験レベルのネットワーク知識
例えば、IPアドレスの計算方法や表記、ネットワークレイヤーの知識

—————————–

元記事を表示

クラウド・インフラ技術を学んでいくためにAWSを始めてみた(その4:インフラ運用・S3,CloudFront活用)

#はじめに

 今回で4回目のクラウド・インフラ技術編です。
 
 前回、`TCP/IP`等ネットワーク通信の基礎についておさらいしました。今回は`S3`及び`CloudFront`を用いて画像配信サービスを作ることをまとめました。

 今回も参考にしたサイトはこちらです。

+ [AWS:ゼロから実践するAmazon Web Services](https://www.udemy.com/course/aws-and-infra/)

##インフラ設計において重要な観点

 `S3`及び`CloudFront`を活用した画像配信サービスを考え前に、インフラ設計の考え方を整理します。

 下記に図で簡単にまとめています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/567823/69e5cc19-3e4e-1e34-d055-0c4a3de380a3.png)

 インフラ構築は、運用保守しやすく安定稼働させることが重要なポイントです。そのための項目は5つあります。

+ 可用性

元記事を表示

Amazon SES + お名前.com(レンタルサーバー)でメール送信環境を構築

# 前提
・ドメインはお名前で取得した
・ドメインはレンタルサーバーで利用している(DNSの設定など)
・メールサーバーはレンタルサーバーで運用している
・Route53は使わない

※「amazon ses お名前」ってググると、お名前で取得したドメインでDNS設定をRoute53に移管したやり方が結構ヒットします。
お名前のDNSの設定で動いてる既存サービスがある場合、上記のやり方をすると既存サービスへアクセスできなくなる問題が起きてしまいます。
そして、ドメインをレンタルサーバーで利用してなんやかんやしてる場合のamazon sesの設定方法の記事は見当たらなかったです。

※ses = Simple Email Service

# 目次
1、Amazon SESでの準備
2、レンタルサーバーでの設定
3、つまづいた点

#**1、amazon sesでの準備**

・amazon sesのコンソール画面のサイドメニューの「Domains」をクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazon

元記事を表示

AWS S3 で削除したファイルを復旧させる方法 (削除マーカーを削除する方法)

AWS S3 バケットでファイルを削除しても、バージョン機能をオンにしていれば、削除キーが追加された状態で、S3 バケットに残り続けます。

今回、削除した S3 バケット内のファイルを一斉に復旧させる必要があったので、クラメソさんブログのサンプルシェルをちょっと改造して実行しました。

クラスメソッドさんのブログはいつもお世話になっております。

– [S3で誤って削除してしまったオブジェクトを過去VersionからAWS CLIで復旧](https://dev.classmethod.jp/articles/s3-restore-from-previous-version-with-aws-cli/)

しかし、このブログ記事はバケット全体で、特定のフォルダだけを復旧させたい場合には対応していなかったので、シェルスクリプト化してパラメーターを入れて特定フォルダ (prefix) 対応な復旧をできるようにしました。

## 手順

### 1. AWS CLI で、IAM User 設定、もしくは EC2 インスタンスに IAM Role を割り当てる

### 2. 下記のシェル

元記事を表示

AWS Cloud9 を新規作成する際の CloudFormation テンプレートを眺めてみた自分メモ

最近、AWS を学んでいるのですが、個人的に最高なのが [JAWS-UG CLI専門支部](https://jawsug-cli.connpass.com/) です。[波田野さん](https://twitter.com/tcsh) の説明聴きながら、Cloud9 コンソール上で AWS CLI 叩くの楽しいです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/193519/cb3b28eb-e22d-25b4-314b-49bc2374542f.png)
個人的に [AWS Cloud9](https://aws.amazon.com/jp/cloud9/) に興味を持ちましたので、最初のセットアップの手順を自分なりに追ってみました。これはその自分メモです。

# 今回の対象

[JAWS-UG CLI専門支部](https://jawsug-cli.connpass.com/) イベントのどれか、例えば [VPCの回](https://jawsug-cli.connpass.com/

元記事を表示

クラウドでVNCサーバ&クライアントを構成する Part 1

# 1. はじめに

過去4回にわたってWindowsクライアントからLinux上のGUIアプリを実行する方法を説明した。これまではVcXsrvやXmingなどのXサーバに焦点を当てたが、今回はVNCを取り上げる。

* [Windowsクライアントを使って…(1)](https://qiita.com/yamada-hakase/items/952406904beffb9f5e85)→全体像を説明
* [Windowsクライアントを使って…(2)](https://qiita.com/yamada-hakase/items/80cef4ed58fefbba266b)→設定&踏み台なし接続
* [Windowsクライアントを使って…(3)](https://qiita.com/yamada-hakase/items/e1946b8a598f4cc0bcfa)→踏み台あり接続(連続ログイン)
* [Windowsクライアントを使って…(4)](https://qiita.com/yamada-hakase/items/45922e8859283c44d7dc)→踏み台あり接続(多段ss

元記事を表示

Amazon AWS Cloud9 開発環境を速攻で作る方法

## はじめに

https://docs.aws.amazon.com/ja_jp/cloud9/latest/user-guide/sample-lamp.html

公式サイトに書いてある手順に従うだけです。
新しい開発環境を作るたび、毎回手順を忘れてしまう鶏頭なので、
自分用の備忘録ついでに書き留めました。

これからの時代はAWSですよ。

## 要件

* Apache 2.4以上
* PHP 7.3以上

Cloud9のデフォルトはPHP5.6.40なので、
バージョンアップする必要があります(環境構築のところで行います)

## インスタンスを作成

https://ap-northeast-1.console.aws.amazon.com/cloud9/home?region=ap-northeast-1

1. 上記のサイトにアクセス
2. 画面右上のリージョン表記が「東京」であることを確認。違う場合は「東京」に変更
* 何か特別な理由がある場合は別のリージョンでも良い。
* 筆者は「バージニア北部」でも作っている。
* 特に理由はなかったと思う。(昔は東京リ

元記事を表示

IAM認証のAPI Gatewayを叩く(python)

#IAM認証のAPI Gatewayを実行する(python)
curl等でAPIの結果を返したいとき、HTTPリクエストのヘッダを算出する必要があるが、資料が見当たらないため備忘
APIGatewayをIAM認証にする方法はほかのサイト参照。
ハッシュ値を算出する方法があるがよくわからないので、必要になったときにbotocoreのライブラリ内を見て作成する。

“`
import os
from botocore.awsrequest import AWSRequest
from botocore.auth import SigV4Auth
from botocore.endpoint import URLLib3Session
from botocore.credentials import Credentials
import requests

url_ = “https://q98c8nfsw5.execute-api.ap-northeast-1.amazonaws.com/v1”
### 1. Credential生成
credentials = Credentia

元記事を表示

AWS 基礎

#前提
AWS(Webサーバーソフトのインストール)について学んだことを書いていきます。

#本題
#Webサーバーソフトのインストール
サブネットのなかにサーバーを構築し、構築したサーバーにWebサーバーソフトをインストールすることでWebサーバーとしてインターネットに公開する。

##Apache HTTP Serverインストール
サーバーをWebサーバーとして機能させるには、Webサーバーソフトをインストールする。
すると、Webブラウザなどからの要求を受け取り、サーバー上のコンテンツを返したり、サーバー上でWebアプリケーションを実行したりできるようになる。
※Apacheはオープンソースで提供されている、世界で最も多く利用されているWebサーバーソフト。

###サーバーにApacheをインストール
1、インスタンスにログイン
インスタンスにSSHでログイン。

2、Apacheをインストール
下記コマンドを入力し、Apacheをインストール。

“`
$ sudo yum -y install httpd
“`

yumコマンドは、アプリケーションをダウンロードしイン

元記事を表示

AWSのアカウントを作るときに読んでおきたい記事リンク集 2020年版

AWSでアカウントを作ったら最初にやるべきことリストみたいな記事がたくさんあるけれども、それぞれどういった性質のものかをまとめる。

## 『AWS ご利用開始時に最低限おさえておきたい10のこと』オンデマンドセミナー | AWS
https://pages.awscloud.com/event_JAPAN_at-least-10-ondemand.html

AWS Japan公式資料としてはSlideShareにある「[Day 1 with Amazon Web Services – AWSご利用開始時に最低限おさえておきたい10のこと](https://www.slideshare.net/AmazonWebServicesJapan/day-1-with-amazon-web-services-aws10)」が有名だが、2019年にアップデートされたバージョンがこちら。
閲覧には個人/企業情報の登録が必要なので少しハードルはある。(資料のpdfファイルはGoogleにインデックスされているようだが、解説動画やチェックリストのExcelファイルもあるのでできれば登録したい)
内容

元記事を表示

OTHERカテゴリの最新記事