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

AWS関連のことを調べてみた2021年02月19日
目次

【AWS】S3 Glacier アーカイブの削除からボールトの削除(Win)

負の遺産を整理するために仕方なくAWSをコマンドラインから操作した記録です。

[とても丁寧な取説が用意されている](https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-chap-welcome.html)んですが、とにかく初級者には敷居が高い。
そもそものAWSの仕組みを理解していないので厳しいものがありました。

手順は↓こんな感じで、ひとつずつ見ていきましょう。

“`
1.AWS CLI(Ver2)をインストール
2.ユーザと認証キーの作成
3.セットアップ
4.Glacierのジョブの開始
5.アーカイブリストの取得
6.アーカイブの削除
7.ボールトの削除
“`

### 1.AWS CLI(Ver2)をインストール
これは難しいことはありません。
インストーラーをダウンロードしてインストールするだけです。
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2-windows.html

バージョンが1と2がありましたが2

元記事を表示

AWS cloud9接続時にずっとConnenting状態になってしまう時の対応方法

いろいろと調べたが、この方法で解決した情報を見つけられなかったので投稿しておきます。

不得意な事をいろいろして無駄に時間を使いました…。疲れた。

# 起こったこと
AWSのCloud9接続時「Connecting…」の画面が出て接続できない。
特にAWSの設定等変更していない、突然発生。

# やったこと
以下対応したが解決せず。

https://qiita.com/somarihair/items/759d525153ae68ce4a7f
→再起動しても変わらず

https://docs.aws.amazon.com/ja_jp/cloud9/latest/user-guide/vpc-settings.html
→設定確認しても変わらず、色々と作り直したりしたが変わらず

# 解決した方法
家のルータを再起動したらなおった。

# 原因?
Chromeのデベロッパーツールでcloud9接続時のコンソールを確認した時に、
cloud9のコンソール画面で使用されている「environment-default.js」内、「https://~~~.vfs.cloud9.~~~」

元記事を表示

40代おっさんインスタンスタイプをまとめてみた

#40代おっさんインスタンスタイプをまとめてみた

##本記事について
本記事はAWS初学者の私が学習していく中でわからない単語や概要をなるべくわかりやすい様にまとめたものです。
もし誤りなどありましたらコメントにてお知らせいただけるとありがたいです。

##インスタンスタイプとは
インスタンスタイプはさまざまな CPU、メモリ、ストレージ、ネットワークキャパシティーの組み合わせによって構成されている。
つまり、自分のやりたいことに合わせて色々選べるみたいです。
例 t2.micro
tはファミリー名
数字は世代番号
microはインスタンスのサイズ
を表す

###インスタンスタイプ t3系 の特徴

Wineで日本語フォントの文字化け(豆腐)を解消する

# はじめに
Wineを使用するときにぶち当たる壁として、日本語フォントが以下のように文字化けする課題があります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/776880/8bf04f0e-b1c4-2f60-b500-c0d576b7faf8.png)

これらを回避する方法としては、一般的に以下の方法が取り上げられています。

1. windowsパソコンからmsゴシックのフォントファイルをコピーしてくる
– winetricksを使う

1.の方法はライセンス的な問題が気になります。2.の方法は、winetricksの最新バージョンを使わないとうまくいかないようで、私が手元の環境で試した際はうまく設定ができませんでした。
そこで今回は、winetricksを使わずに文字化け問題を解消する方法を紹介します。

# 動作環境
– AWS Lightsail 5ドルプラン(メモリ 1GB、SSD 40GB)
– OS : Ubuntu20.04

# 下準備
AWS環境で動かさない

Serverless Meetup Japan Virtual #16 の「ZoomでMeetUp枠」に参加しました!

# Serverless Meetup Japan Virtual #16 って?

Serverless Community(JP)さんが主催するコミュニティのイベントです。
https://serverless.connpass.com/

サーバーレスについて色々語る、AWSの中の方々も参加されている素敵なコミュニティのイベントとなっております。
YouTubeのチャンネルと今回の動画は以下です!

– [チャンネル](https://www.youtube.com/channel/UCfxQU-DkoT78c2OyBSDfh3w)
– [動画](https://www.youtube.com/watch?v=DsKMHDh9yVg)

## 今回のテーマ

今回のテーマは「技術選定」でした。
技術選定、大変ですよね…選定理由を説明したり、選定前に試行錯誤したり、ビジネスインパクトも考えたり…
みなさんはどうやって技術選定されているか、気になるところです。

## Speakers

今回お話いただいたのは「コロニー株式会社 VPoE 座安 勇貴さん」でした。
2020年4月から

AWS Cloudfront error page

If you have a SPA frontend, host it in S3 bucket and use Cloudfront as CDN.
and you set up the error page such as a 403 error should be redirected to 403.html.
when any of your http request in SPA got a 403 response, you will be redirected to 403.html.

> not only when the object itself return an 403 status code, but when your http request do it also

第3回 作りながら覚えるFlask+Pipenv 〜AWSへのデプロイ後、ドメインでアクセスできるように設定〜

#概要
●記事一覧
第1回 作りながら覚えるFlask+Pipenv 〜フォルダごとのURLルーティングについて〜
第2回 作りながら覚えるFlask+Pipenv 〜Zappaを使用してAWSへのデプロイ〜
第3回 作りながら覚えるFlask+Pipenv 〜AWSへのデプロイ後、ドメインでアクセスできるように設定〜 ※本記事

前回、Zappaを用いてAWSへのデプロイが完了しました。
ただ、API Gatewayで発行された長ったらしいURLでアクセスしているので、
今回は、ドメインを割り当ててアクセスできるようにしていきます。

#手順1 Route53にドメインの登録
AWSの「Route53」でドメインを取得します。
AWS→Route53 レフトナビの「登録済みドメ

第2回 作りながら覚えるFlask+Pipenv 〜Zappaを使用してAWSへのデプロイ〜

#概要
●記事一覧
第1回 作りながら覚えるFlask+Pipenv 〜フォルダごとのURLルーティングについて〜
第2回 作りながら覚えるFlask+Pipenv 〜Zappaを使用してAWSへのデプロイ〜 ※本記事
第3回 作りながら覚えるFlask+Pipenv 〜AWSへのデプロイ後、ドメインでアクセスできるように設定〜

前回作成したFlaskアプリケーションをZappaを使用してAWSへデプロイしていきます。
※あらかじめAWSアカウントはご準備下さい。

#手順1. AWS ポリシー作成
ZappaからAWSにアクセスするにあたり、
セキュリティ対策のために必要最低限の権限(ポリシー)を作成します。

・AWSへアクセスし、IAMサービスに移動
![スクリーンショ

AWS Cloud9 初期設定 5分でPython統合開発環境構築完了

背景
 Python学習を始めようとしたところモバイルのWindows環境がないため
 AWSでPythonの統合開発環境 (IDE)作ろうと思った。

AWS Cloud9の概要
ブラウザのみでコードを記述、実行、デバッグできるクラウドベースの統合開発環境 (IDE) です。これには、コードエディタ、デバッガー、ターミナルが含まれています。Cloud9 には、JavaScript、Python、PHP などの一般的なプログラム言語に不可欠なツールがあらかじめパッケージ化されているため、新しいプロジェクトを開始するためにファイルをインストールしたり、開発マシンを設定したりする必要はありません。

詳細はこちらで確認ください
https://aws.amazon.com/jp/cloud9/details/

※下記手順ですが、2018/12/6時点のものになります。
選べるリージョンは少なく、今回は一番近いシンガポールを選択

Create environmentをクリックする
![image.png](https://qiita-image-store.s3.amazonaws.

【AWS】apacheをインストールしたけどwebブラウザでアクセスできないときの(初心者が)見落としがちな対処

### 状況

本を見ながらパブリックサブネット作ったり、IPアドレス設定したり、SSH接続できるようにもした!
ポート80番も通した!色々確認しても本に書いてある通り!

パブリックIPアドレスにアクセス!!
・・・・・・・・・・・・・・
・・・・・・・・・
・・・・
通らない??

### やったこと
パブリックIPアドレスを
https://{パブリックIPアドレス}から
http://{パブリックIPアドレス}に変える

### 考察・感想
https通信はSSL証明書といものを発行してもらって可能になるものらしいから(実際本のURLをよくみると 保護されていない通信 | {パブリックIPアドレス} になっている。。)
自分の環境だとIPアドレスを直接打ったり、オープンアドレスをクリックするとhttps://でアクセスしようとしていたが、その部分は省略されていたため気づけなかった・・・

二日間悩んで突き止めた原因がこれで泣きそうでした。。誰かのお役に立てれば幸いです。。

AWS ELB + EC2構成時のWordPressのリダイレクトループ

# .htaccessの問題

## 原因

Webサーバーが通信を処理する際、Webサーバーは非SSLでの通信を受けることになります。.htaccessに下記のような記載がある場合、リダイレクトループが発生してしまう可能性があります。

“`.htaccess
(NG記載)
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
“`

## 対応方法

%{HTTP:X-Forwarded-Proto}で判断させることで、クライアントがELB宛にhttpで接続しているかhttpsで接続しているかを区別することができます。

“`.htaccess
(推奨の記載)
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} =http
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
“`

# WordPres

初心者がAWSを使う時のための専門用語の意味集

###この記事で得られること
・AWSによく出てくる言葉の意味や役割が分かる。
・知らん言葉ばっかりで頭に入って来ないという初心者の方にオススメ。


###この記事を書いた目的
自分のメモ代わり

###参考サイト
AWS入門 初心者が覚えておくべきAWSの基本
https://business.ntt-east.co.jp/content/cloudsolution/column-37.html

###AWS専門用語とざっくり解説

###VPC
・バーチャルプライベートクラウドの略
・基本的にVPCは必要だけどAWSが自動的に用意してくれている

###リージョン
・データセンターがある場所

###AZ
・データセンターのこと

###サブネット
・でっかいネットワークの中の小さく分割された小規模ネットワーク&範囲
・陣取りみたいなもん(ざっくり)

###Amazon EC2
・仮想サーバーのこと

###インスタンス
・AWSクラウドに立てられた仮想サーバーのこと

###Elastic(よく出てくる英単語気になって調べてみた

[AWS][IAM][Terraform] ロール切替用にユーザを作成し、MFA 認証を有効にする

以下の記事の続き。

マルチアカウントにおけるユーザ管理を考える
https://qiita.com/batatch/items/425661dbffece3b981bf

ロール切替方式の権限設定一式を作成する
https://qiita.com/batatch/items/08aa3f705336a0fea89e

## 概要

実装編の続きで、マスターアカウントへのユーザ登録部分を設定します。
やりたいことは以下になります。

– ユーザ自身に自分でパスワードを変更できるようにする
– ユーザ自身に MFA 仮想デバイスを自分で登録できるようにする

以下の公式ドキュメントを参考にそれぞれのポリシーを定義し、共通グループを作成してユーザをぶら下げる形にしていきます。

AWS: IAM ユーザーがセキュリティ認証情報ページで自分のコンソールのパスワードを管理できるようにする
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/reference_policies_examples_aws_my-sec-creds-se

AppStreamのユーザを削除する方法

そもそもAppStreamってなんぞ

デスクトップアプリをWEBブラウザで操作できるという夢のようなサービス。WindowsアプリもWEBブラウザでMACからも操作できます。古い業務アプリとかあるところは大変有用なサービスかと思いますのでぜひオンプレサーバをなくしたいけど、いろいろな事情により移行はできない諦めている皆様はAppStreamをご検討ください(AWSの回し者ではございませんw)

AWSのWEBコンソールでは削除できない

* え、まじで?と思った皆様、こちらの画像を御覧ください
![aaaaa.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/585901/1031d6bd-a29e-0c18-a6fb-89a23e3c370a.png)
* Disableはあるけど、Delete userっていうのはどこ探してもありません
* そう削除は甘え

それでは困るので、どうにか無いかと探したところありました

* そう__aws-cli__です

“`
aws appstream de

オンプレ環境から学ぶAWS その2

# 概要

よくあるオンプレネットワークの構成について、AWSでの構成を考えて学びます。

# オンプレ

## 構成条件

– WEBサーバー、アプリケーションサーバー、データベースサーバーからなる構成のWebアプリを配信
– Webサーバー
– SPAのアプリを配信
– ロードバランサで負荷分散
– APにアクセスできる
– セグメントを分ける
– アプリケーションサーバー
– APIサーバー
– データベースサーバーにアクセスできる
– インターネットにアクセスできる(外部のAPIを叩くなど)
– 運営者は別の場所にいる
– VPN経由でネットワークを接続
– リモートからメンテナンスを行う

## 構成図

onpre1.pngオンプレ環境から学ぶAWS その1

# 概要

よくあるオンプレネットワークの構成について、AWSでの構成を考えて学びます。

# オンプレ

## 構成条件

– WEBサーバー、アプリケーションサーバー、データベースサーバーからなる構成のWebアプリを配信
– Webサーバー
– ロードバランサで負荷分散
– アプリケーションサーバーにアクセスできる
– セグメントを分ける
– アプリケーションサーバー
– データベースサーバーにアクセスできる
– インターネットにアクセスできる(外部のAPIを利用する等のため)

## 構成図

onpre1.png

# AWS

– なるべくそのままの構成を維持して変換した例

## 構成図

Amazon API GatewayのLambda Authorizerのレスポンスに注意

API GatewayのLambda Authorizerでハマったので、原因調査の覚書。

## 症状
Lambda Authorizerで認証すると、アクセス許可しているはずなのに、認証失敗する。
サーバーからは500番のステータスコードが返される。
サーバー側のログを見る限り、リクエストはLambda AuthorizerのLambdaまでしか到達できていない。

AuthorizerのLambda関数から返しているポリシーは下記のとおりであった。

“`json:Authorizerのレスポンス
{
“principalId”: “52e60f29-a7c8-4665-99ea-1ec8f7fecb81”,
“policyDocument”: {
“Version”: “2012-10-17”,
“Statement”: [
{
“Action”: “execute-api:Invoke”,
“Effect”: “Allow”,

Go言語のStruct(構造体)に簡単にタグ付けをするWebアプリを公開しました(ハマったポイント覚書)

## はじめに:成果物の紹介
ようこそ!
かわいいGopher君(Go言語のマスコットキャラ)を用意したので、そちらだけでもご覧ください :innocent:

【URL】
https://go-struct-tags.com

【デモ】
go-struct-tags-demo

機能は以下の通りです。

– 左のインプット欄に`struct`のコードを貼り付け、タグボタンを押すと、タグのフィールド名やオプションをぽちぽちっと編集できます。
– 今のところ`json`と`xml`に対応
– タグのフィールド名は、もともとの変数名をもとに`camelCase`, `snake_case`, `PascalCase`を選んで一括変換します(手入力も可能)
– 追加・仕様変更要望などあればぜひコメン

なぜAWSみたいなクラウドコンピューティングが必要か

AWSについてはあまり知識がまだないが、なぜこのようなクラウドコンピューティングと呼ばれるものが必要かを簡単にまとめておく。

## まず、クラウドコンピューティングとは
クラウドコンピューティングとは、“`クラウド“`と呼ばれるもの。
例えば、icloudなんかが代表的なもの。

icloudは、写真などのデータを保存しておくことができる。
これは特に物理的ななにかが存在するわけではなく、インターネットを経由してAppleのストレージを使用することができるというもの。

## クラウドを利用するメリット
例えば、スマホに写真や動画を保存しておくとして、このスマホの容量がいっぱいになってしまえば、さらに写真や動画を保存しておくことは不可能。もしくは、データを削除する必要がある。
しかし、クラウドは料金を払えば容量を買うことができる。さらには、物理的なものを所有する必要がないため、もしその容量が不要になれば料金の支払いをやめればいい。

## クラウドが存在しなかったとき
クラウドが存在しなかった時は、例えばフロッピーやUSBのようなものをいちいち購入してその物にデータを移動させる必

Amazon ESでISMポリシーを設定する

## やりたいこと
Amazon Elasticsearch Service(以下Amazon ES)でISMを設定してUltraWarmを動かしたい。
Amazon ES側の公式ドキュメントの説明が少ないので、OpenDistroのドキュメントや先達の記録を参考にしつつ、手探りで進めてみる。

### 参考:
[Index State Management](https://docs.aws.amazon.com/ja_jp/elasticsearch-service/latest/developerguide/ism.html)
[Amazon ES用のUltraWarm](https://docs.aws.amazon.com/ja_jp/elasticsearch-service/latest/developerguide/ultrawarm.html)
[Index State Management(OpenDistro)](https://opendistro.github.io/for-elasticsearch-docs/docs/ism/)
[ISM API(Open

インスタンスサイズ vCPU CPUクレジット/時間 メモリ(GiB)
t3.nano 2 6 0.5