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

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

【PostgreSQL】『対向(peer)認証に失敗しました』―psqlログインできない際の対応

#### 背景
以下の環境でWEBシステムを構築し、EC2上のPstgreSQLへマイグレーションを試みた際に、『対向(peer)認証に失敗しました』というエラーが発生。
その対処を以下に記します。

先人たちの知恵をお借りするなどして解決できたことを、この場をお借りして感謝するとともに、大変恐縮ですが自分のメモとしても、こちらへまとめておきます。

#### 環境
– AWS EC2 (Amazon Linux 2)
– Python 3.7.9    ※2020/11/29時点のAmazon Linux2でのデフォルト
– Django 3.1.3
– PostgreSQL 11.5  ※同上
– Nginx 1.12     ※同上
– Gunicorn
– Putty 0.74

### 1.現象
EC2上のPostgreSQLへ、pythonの仮想環境(venv)より`python manage.py migrate`を試みた際に下記エラーが発生。
この時点までに、PostgreSQLでちゃんとユーザーにログイン権限とパスワードを設定しています。

“`:コマンドプロンプト

元記事を表示

【AWS】Redmineの環境構築

AWSでRedmineの環境構築をしたときのメモ:writing_hand:

##失敗
最初はAWS上にDBを作成し、新規DBとRedmineを接続しようとしていました。

試行1
③のブログの記載どおりにPowershellのコマンドから接続しようとしましたが、
“command not found”が表示されたので、いったん諦めました。
後で調べてみるとRubyの必要なファイルをインストールしていなかったことが原因だったようです。
→[Windows10にRubyGemsをインストールする方法](https://qiita.com/ponsuke0531/items/b9036afd4a28f99e89c5)

※AWSのコンソールに表示されているエンドポイントを正しく指定していても接続できない場合
→セキュリティグループでポート番号”3306”(DBで使用しているポート)を追加すると接続できるようになります。

▼その時参考にしたサイトたち
(MySQLのインストール方法)
①[Windows10にインストーラーでMySQLをインストールする方法](https://qiita.

元記事を表示

ECSを使うときに必要なポートを設定すべき3大箇所

## 前提
– 構成ECS+ALB

##この解説の目的
ECSのネットワーク周りの設定でどこに何を設定すべきか度々わからなくなるので自分のための忘備録。
この設定をどこか間違えると502 Bat Gatewayとか受け取れます。
HTTPのみでSSLしない場合は、面倒なのですべてのポートを80に合わせて置くと、すべてのポートを80にしておけばいいので便利です。

この解説で取り扱う所:
ECSを使う時にポートを使う箇所のみ

### お断り
この解説は編集時(2020/11/27)時点でのAWSコンソール上の記述をもとにしているため

1. タスク定義のポート
1. ECSのクラスター、サービスの追加時のロードバランサ
1. セキュリティグループに追加すべきポート

## 1.タスク定義のポート
前提:
すでにECRにリポジトリがあり、イメージがpushされている

ECS/タスク定義/コンテナの編集
ポートマッピング/コンテナポート
– ここにはコンテナ化しているアプリが受け付けているポートを書く
– プロトコルは特にUDPに設定していない限りtcp

例: GolangのEcho

元記事を表示

ドメインを取得して、Route53を使ってIPアドレスと紐付けた

#はじめに
 現在作成中のポートフォリオのアプリにちゃんとURLを付けたくて、Route53とドメインを他で取得して、IPアドレスに紐づけた。

##流れ
1. お名前.comでドメインを取得
2. AWSのRoute53で紐付け
3. お名前.comでネームサーバーを変更

###1. お名前.comでドメインを取得
 
お名前.comにサインアップして、ドメインを購入。300円弱。

###2. AWSのRoute53で紐付け
 Route53でホストゾーンの作成をする。そのホストゾーンで先程取得したドメインと以前からデプロイしていたIPアドレスを紐づける。
この紐づけるというのは、ドメイン名で接続すれば、Route53側でドメイン名をIPアドレスに読み替えて、IPアドレスに接続してくれるということ。

###3. お名前.comでネームサーバーを変更
 お名前.comでネームサーバーを登録する。先のRoute53でドメインを登録した時に、4つ生成されるものを、お名前.comに登録する感じ。

##最後に
これで、URLで接続できるようになったが、httpのため、`安全ではありませ

元記事を表示

AWS cloud9でAngularの環境構築をしよう

#####編集履歴
201129 初版(アプリの起動はできていない)

##実際に実行したコマンド

– cd environment/
– npm install -g @angular/cli
– ng new sample-angular-app
– CSSの形式を選択
– ng serve

“`
ec2-user:~ $ cd environment/
ec2-user:~/environment $ npm install -g @angular/cli

npm WARN deprecated debug@4.2.0: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797) npm WARN de

元記事を表示

新入社員がAWS Solution Architect Associate-C02に合格できた話

#新入社員がAWS Solution Architect Associate-C02に合格できた話

Qiita初投稿になります。
よろしくお願いいたします。

今回は先日合格しましたAWS SAA-C02についての勉強法、合格するために必要なものを書いていきたいと思います!!!
筆者はSAA-C02の参考書などが見つからず苦労したため、合格できずに苦労している方や今から受ける方などに参考になればと思います。

#目次
[1.はじめに](#1-はじめに)
[2.受験1~3回目](#2-受験1~3回目)
[3.受験4回目](#3-受験4回目)
[4.おすすめ勉強法](#4-おすすめ勉強法)
[5.まとめ](#5-まとめ)

#1. はじめに
筆者のスペックを書いていきます。

●社会人1年目の社会人、クラウドに触り始めたのは半年ほど前から
●業務でAWSなどのクラウド構築に従事、主要サービスは作成、説明可能
●3か月前にCloud Practitioner取得

続いては実際に受験した際の勉強法や感想などを書いていきます。

#2. 受験1~3回目
`受験1回目`
>・勉強時間
1日1時

元記事を表示

Amazon FSx for Windows のTips

先日、構築方法を記事にしたAmazon FSx for Windows について、実際に運用していくにあたりデフォルト設定からチューニングすることがあると思いますので、役立ちそうな設定のTipsを紹介します。ご参考までにd(`・ω・’)

# 前提条件
– FSx は構築済み
 ※構築が完了済みでない場合は[こちら](https://qiita.com/u-bayashi/items/fcace66d58030d77a471)を元に構築してみください
– FSxを操作するコントローラとして、FSxと同じVPCにEC2(Windows OS)をデプロイする
– FSxを結合したADの管理者ユーザのユーザID/PWを利用できる

# Tips① ”¥Share”配下以外に共有フォルダを作成する
FSxの共有フォルダは初期設定では“¥¥amznfsxxxxxxx.domain.internal¥share”のような形で¥shareから始まるフォルダ階層になっており、FSxの管理コンソール画面で「アタッチ」をクリックすると以下のようなマウントのコマンドが表示されます。
![デフォルトマウント.

元記事を表示

Amazon LinuxインスタンスにRails6をインストールするまでの手順

## この記事でやろうとしていること
タイトルの通りですが、Amazon LinuxインスタンスにRails6.0.3をインストールするまでの流れです。
なぜRails6.0.3か?というのは、おなじみ「[Railsチュートリアル](https://railstutorial.jp/ “Railsチュートリアル”)」の第6版で指定されているバージョンだから、というだけです。

RailsチュートリアルではAWSの統合開発環境 (IDE)「[Cloud9](https://aws.amazon.com/jp/cloud9/ “AWS Cloud9”)」の利用を前提としています。Cloud9はRailsをインストールする上での前提パッケージが既に入っているので、

“`
$ gem install rails -v 6.0.3
“`

と叩くだけですんなりRailsが入ってくれますが、一歩cloud9という温室から外に出るとそうはいきません。

というわけで、何番煎じかはわかりませんが、少なくとも筆者はいろいろググって何とか解決したので、需要はあるはず。さっそく解説に入っていきます。

元記事を表示

30代未経験からRails, AWS, Docker, CircleCIを使って減量アプリを作りました

プログラミング未経験の31歳男がRuby on Rails, jQuery, AWS, Docker, CircleCIといった技術を使ってWebアプリを作りました。

この記事では、最初にアプリの紹介をした後に、

– どれくらいの時間かけて作ったのか
– なぜこれらの技術を使うことにしたのか
– 特に大変だったところ
– どのように学習したのか

といったことについて、お伝えできればと思います。

# どんなアプリを作ったのか
減量アプリです。(筋トレしてる人が健康的に体脂肪を減らすためのアプリ)

「これなら自分でも続けられる」をコンセプトに「PFC MASTER」というアプリを開発しました。

アプリのURLはこちらです。
https://pfcmaster.work/
(レスポンシブ対応しておりスマホからも見られますが、グラフが崩れます)

Githubはこちらです。
https://github.com/naota7118/pfc-master

## なんでこのアプリを作ったのか
僕自身が「減量がなかなか続かなくて、まだ腹筋を割れたことがない」という悩みを抱えていまし

元記事を表示

第1回 AWSに自動でテスト/デプロイしてくれるインフラの設定・構築(AWS構築)

# 本シリーズ集
| | タイトル |
|:-:|:-:|
| 0 | [目標・やりたいこと](https://qiita.com/Dadadada-TT/items/c59c0df9eaf5e6b10111) |
| 1 | __AWS編__ |
| 2 | rails開発環境構築編(未) |
| 3 | Nginx・MySQL編(未) |
| 4 | Capistrano編(未) |
| 5 | CircleCI編(未) |
| 6 | 総集編(未) |

#AWSとは
 本記事では、AWSの __EC2(Elastic Compute Cloud)__、 __VPC(Virtual Private Cloud)__を使用して、サーバを構築していく。

 今回は、__VPC__ を構築し、その中に__サブネット__を構築。そして、そのサブネットの中に、__EC2__を使用して、Webサーバ、APサーバ、DBサーバを立てていく。

 ちなみに、AWSには、コンテナ用のサービス__ECS(Elastic Container Service)__や、RDB用のサービス__RDS(Re

元記事を表示

[AWS][Aurora]テーブルにレコードが挿入された際にLambdaを呼び出す方法

##はじめに
“Aurora DBのテーブルにレコードが挿入されたらLambda関数を呼び出す”という方法に関して情報が少なかったため、備忘録として残しておきます。

##参考
[Amazon Aurora MySQL DB クラスターからの Lambda 関数の呼び出し](https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Integrating.Lambda.html)
[AuroraへのInsert TriggerでLambdaを呼びだしてServerlessで処理する](https://qiita.com/ukitiyan/items/bdd25946bbbf7a70903e)
[ストアドプロシージャの基本的ななにか](https://qiita.com/setsuna82001/items/e742338eb93e3a48ba46)

##何がしたかったか
以下の処理を実現させるために、AuroraのInsert Triggerを利用してLambdaを呼び出す実装を行

元記事を表示

Nginx+Unicorn(WEB/APサーバーの分離構成)で静的ファイルが読み込めない対処について

アプリをAPサーバー側にデプロイし、Nginxを使ったリバースプロキシ設定を行ったところ、以下画像のようにcssがうまく読み込めない問題が発生したので、その解決までの工程を忘れないようにメモしておきます。

![qiita1.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/867277/156ab0f8-794b-192f-b58a-cad0e7b53790.png)

##今回の環境

![リバースプロキシ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/867277/fff53b33-c7af-a6f6-d4ce-d3853497795b.png)

– WEBサーバーにはNginx
– APサーバーにはUnicorn
– ruby -v 2.6.6
– rails -v 5.2.4.4
– PC Windows10

##Google Chromeで検証
Chromeでエラーの出ているページを開いたら、F12か右クリッ

元記事を表示

AWSのEC2にOracle19cをインストールしてDBを作成する

Oracle Bronzeの資格学習のため、AWSにOracleDB環境を構築する事にしたが、とても苦戦したのでメモ。
→結論:インストール可能。しかし、Oracle19cはRedHat8には対応してなさそう。(java関連のエラーが発生した)
勉強に使う分には問題無い思う!

# 環境
EC2のOS : Red Hat Enterprise Linux 8
Oracle : Oracle Database 19c

# 準備作業
・OSがRedHatのEC2作成
・Oracleアカウントの作成
・[自身のPCにOracle Database 19cのLinux x86-64のRPMをダウンロード](https://www.oracle.com/database/technologies/oracle-database-software-downloads.html?xd_co_f=NjhiOGFlMzItNGJiNi00M2ZhLWE0ZjUtYzljNmU3NWYyNTEz)
・EBSを30Gに拡張しておく。(無料枠のマックス)

# Oracle 19cをEC2に配置
scpを使

元記事を表示

Golangはじめて物語(第6話: DynamoDB local+testingでお手軽に回帰テストする)

# はじめに
Golangのテスト方法については、[第一話でも少し触れた](https://qiita.com/neruneruo/items/1ef52f908e4497103a59#%E3%83%86%E3%82%B9%E3%83%88%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0)が、実際に動かす際には、DynamoDB等のAWSサービスの本物に接続するか、モックが必要になったりして、あの内容だけでは実用部分に欠けていた。

今回は、DynamoDB local をモックとしてローカル環境で動かし、実際にそこに接続するための実装を整理する。

ベースとなるソースコードは、上記の第一話のソースコードにする。

# DynamoDB local を起動する
毎度手動で起動してから “`go test“` を実行するのは面倒なので、“`make test“` の中でサクっと起動できるようにしてしまいたい。
以下のように docker-compose の力を借りて起動をしよう。

“`YAML:docker-compose.yml
v

元記事を表示

AWS ソリューションアーキテクトアソシエイト向け問題 VPC編

## 概要

今回は会社の後輩向けにAWS ソリューションアーキテクトアソシエイト向けの問題を作成したのでそちらの公開を。
元ネタは公式の問題、BlackBeltなどからとっております
今回はVPCをみようと思います。

## VPC関係

* ネットワークACL,セキュリティグループについて説明している文で以下の中から正しいものを1つ選択してください。
1. ネットワークACLはサーバレベルで効果を発揮する。
1. ネットワークACLはAllow/DenyをIN・OUTで指定可能。
1. ネットワークACLはすべてのルールを適用する。
1. セキュリティグループはステートレスなので戻りのトラフィックも明示的に許可する必要がある。
1. ネットワークACLはステートフルなので戻りのトラフィックを考慮する必要はない。

回答

* 正解は

2. ネットワークACLはAllow/DenyをIN・OUTで指定可能。
* ネットワークACLを使うことで接続を禁止す

元記事を表示

[Fargate 入門] ECS(Fargate)でrakeタスクを実行するまで

Fargateで単純なrakeタスクを実行するまでの手順。
タスク定義やコンテナの設定などがややこしかったため備忘録として。

# 準備
実行するrakeタスクとコンテナイメージを用意します。
## rakeタスクの作成
今回はrakeタスク実行が確認できれば良いので単純なタスクを用意。

“`ruby
namespace :ecs_task do
task :hoge do
puts “task started”
end
end
“`

## コンテナイメージの用意
以下のようなDockerfileを作成し、rakeタスクが実行できる環境を用意します。

“`dockerfile:Dockerfile
FROM ruby:2.5.3

# 環境変数
ENV LANG C.UTF-8
ENV APP_ROOT /app

# ソースをコンテナに転送
ADD ./ $APP_ROOT

# コンテナ内の作業ディレクトリの設定
WORKDIR $APP_ROOT

# gemのインストール
RUN gem update bundler
RUN bundle insta

元記事を表示

【AWS】EC2に紐づくEBSボリュームを差し替える

## はじめに
AWS上で構築していたGNS3サーバ(UbuntuOS)の2台目が必要になったので、AMIを取得して複製したところ、インスタンスのステータスチェックが失敗しました。
20201128_EC2のボリューム差し替え_01.PNG
これまでに1,2回しか出会ったことがない事象、たまたまかな?と思いEC2を停止起動したり、AMIを取得しなおして再作成してもダメでした。
色々調べた結果、起動に失敗するEC2のEBSを正常なEC2に紐づけて、/var/log/messages を確認してみることにしました(AWSコンソール上で見ることができるシステムログは確認済み)

## 目次
1. [EC2からEBSをデタッチする](#Chapter1)
1. [問題のあるEBSを正常なEC2にアタッチする](#Chap

元記事を表示

【Tips】TerraformでAPI Gatewayを構築しているときに出る ConflictException の回避手段

# はじめに
Terraform で API Gateway を構築していて、メソッドや統合を多用していると、たまに

“`
Error: error deleting API Gateway Integration Response (xxxx-xxxxxxxxxx-xxxxxx-PUT-500): ConflictException: Unable to complete operation due to concurrent modification. Please try again later.
“`

みたいな感じでエラーが出て悩まされることがある。

これはおそらく、API Gateway を更新する API(Terraform が裏で叩いていると思われるもの)が、並列処理に対応していない(処理を排他している)と考えられる。
Terraform はお利口なので、依存関係のないリソースについてはなるべく並列で処理をして高速化をしてくれる。この仕様が仇になって、排他処理しているところに並列でAPIを叩きんでエラーになっているようだ。

# 対処策
## その1: もう一度

元記事を表示

Cloud9は172.17.0.0/16に気を付けろ!

## 言いたいこと

– Cloud9を使うときはVPCのCIDRに172.17.0.0/16は禁物
– VPCピア接続でも影響あるからね

## Cloud9トラブルシュートから抜粋

10月29日に[AWS Cloud9 のトラブルシューティング](https://docs.aws.amazon.com/ja_jp/cloud9/latest/user-guide/troubleshooting.html)に以下が追記されました。(英語版はもっと前に追記されてました)

>VPC の IP アドレスが Docker で使用されているEC2 環境ため、 に接続できない
>
>問題: EC2 環境の場合、Amazon VPCクラスレスドメイン間ルーティング IPv4 (CIDR) ブロックを使用する (仮想プライベートクラウド) 172.17.0.0/16 で EC2 インスタンスを起動すると、その環境を開いたときに接続が停止することがあります。
>
>原因: Docker では、同じブリッジネットワークに接続されたコンテナが通信できるようにするブリッジネットワークと呼ばれるリンクレイ

元記事を表示

[rails]突然自動デプロイが反映されなくなった

#何が起きたのか

よくわかりませんが、調べたところEC2に問題があった
自動デプロイしてたら突然変更が反映されなくなった

#解決方法

よくわかりませんが突如起こった出来事ですので
とりあえずAWSのマネジメントコンソールにログインしてEC2インスタンスを再起動
再起動後は以下のコマンドでNginxとdbを起動。

“`
$ sudo service nginx start 
$ sudo systemctl restart mariadb

“`

その後 自動デプロイする 完 (勝手にunicornは起動されるであろう )

“`
bundle exec cap production deploy
“`

#補足
###EC2に問題がある場合の確認すべきところ

基本的に以下のどれかがどうにかこうにかなっていることが多い説
( unicorn,db,nginx…)

なのでエラーログみてもよくわからなかったらコマンドでいろいろ確認してみよう

“`
データーベースの状態を確認
sudo systemctl status mariadb
“`

元記事を表示

OTHERカテゴリの最新記事