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

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

AWSで放置してたEC2から請求が上がってて損した話

###前書き
タイトルの通りです。
2000円くらい損したのでQiitaのネタにします。

###見つけた不審な詐欺メールっぽい請求メール
たまたまGmailを確認したときに見つけました。
以下メール

“`
Title: Amazon Web Services Billing Statement Available

Greetings from Amazon Web Services,

This e-mail confirms that your latest billing statement,
for the account ending in ********, is available on the AWS web site.
Your account will be charged the following:

Total: $17.36

You can see a complete break down of all charges on the Billing & Cost Management page located here:
“`

最初詐欺メールか

元記事を表示

AWS NATゲートウェイを使ってプライベートサブネットからインターネットにアクセスする

AWS資格取得に向けて実際にAWSを利用してみるシリーズの投稿です。
今回はAWSを使っていてVPCのプライベートサブネットからインターネットにアクセスするために利用するNATゲートウェイ(NAT Gateway)を利用してみる編です。15分程度でNATゲートウェイを利用してプライベートサブネットからインターネットアクセスができるようになります。
資格勉強的にはNATゲートウェイの利用手順およびインターネットに出るために手順を学ぶといったところでしょうか。興味がある方は読んでみて下さい。

資格試験の勉強法は記事は以下を参照。

[AWS初心者がAWS 認定ソリューションアーキテクト – アソシエイト資格試験に合格した時の勉強法](https://qiita.com/fkooo/items/e5284a4ed3c3466ffd41 “AWS初心者がAWS 認定ソリューションアーキテクト – アソシエイト資格試験に合格した時の勉強法”)
[AWS初心者がAWS 認定ソリューションアーキテクト – プロフェッショナル資格試験に合格した時の勉強法](https://qiita.com/fk

元記事を表示

【備忘録】Terraformの仕組みを整理する

#本記事の目的
社内でのクラウド検証に合わせて、Terraformの基礎知識を学び、アウトプットとして備忘録を記す。
本記事ではTerraformの基本操作、基本構文、及び基本的なAWSリソースの作成方法について説明する。

#主要コマンド
####1.terraform init
terraform実行に必要なバイナリファイルを準備する。
このコマンドを最初に実施する事で、他のterraformコマンドが実施できるようになる。

####2.terraform validate
設定ファイルが有効かどうかをチェックする。

####3.terraform plan
設定ファイルに従い、リソースの実行計画を出力する。

####4.terraform apply
設定ファイルに従い、リソースを作成・変更する。

####5.terraform destroy
設定ファイルに従って作成したリソースを削除する。

#設定ファイル
####1.tfファイル
terraformで作成・変更するリソースを定義したファイル。ユーザー自身が作成する。

####2.tfvarsファイル
tfファイ

元記事を表示

CircleCIでECRのログインができない

CircleCIで以下のエラーが出た時にめちゃめちゃ悩みました。

“`sh
#!/bin/bash -eo pipefail
# get-login-password returns a password that we pipe to the docker login command
aws ecr get-login-password –region $AWS_DEFAULT_REGION –profile default | docker login –username AWS –password-stdin $AWS_ECR_ACCOUNT_URL

usage: aws [options] [ …] [parameters]
To see help text, you can run:

aws help
aws help
aws help
aws: error: argument operation: Inval

元記事を表示

40 代おっさん 冗長性のあるブログを構築してみた ②

## 本記事について

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

前回の記事

## AMIを使ってインスタンスを作成

AWSマネジメントコンソールからEC2を選択
左ペインよりインスタンスを選択
インスタンスを起動クリック
左ペインのマイAMIを選択すると

![マイAMI.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/641940/c1d3d4bb-4c29-ac48-5d1a-9ba98dc22b39.png)

前回作ったAMI(WebServer)があると思いますのでそちらを選択
インスタンスタイプはt2.microでよいです

ネットワークはMyVPC
サブネットはPublicSubnet2
自動割り当てパブリックIPは有効で

![イン

元記事を表示

Cognito認証を経てS3バケットにアップロード

## はじめに

Cognitoでユーザープールでの認証完了後、IDプールと連携してS3バケットにアップロードするために必要なAWS設定を調べてみました。Cognitoユーザープールの設定やSwiftでのCognitoによるサインインやS3バケットへのアップロードを行うコードについては大幅に割愛していますのでご了承ください。

## AWS設定手順

### S3:バケットの作成

デフォルトの設定でバケットを作成します。

### Cognito:IDプールの設定

CognitoのIDプールの管理画面から`新しい ID プールの作成`を押してIDプールを作成します。IDプール名を入力後、認証プロバイダーに作成済みのユーザープールIDとアプリクライアントIDを指定し`プールの作成`を押します。
![名称未設定.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1777258/b9b4a2e5-0fa3-db69-8384-e4b07b51e24f.png)

次に表示される画面ではロールを作成します。上

元記事を表示

(AWS EC2) kubeadmでKubernetesのシングルノードクラスタを構築する

# はじめに

この記事で扱うこと

– kubeadmを使ってKubernetesクラスタを構築する
– シングルノードクラスタとする(マスターノードにデプロイ)
– AWSのEC2インスタンスを利用する

# 1. ec2インスタンスの起動

マシンの要件としては、下記の通り[kubeadmのインストール](https://kubernetes.io/ja/docs/setup/production-environment/tools/kubeadm/install-kubeadm/)に記載があります。
今回はCentOSを選択します。

> **始める前に**
>
– 次のいずれかが動作しているマシンが必要です
– Ubuntu 16.04+
– Debian 9+
– CentOS 7
– Red Hat Enterprise Linux (RHEL) 7
– Fedora 25+
– HypriotOS v1.0.1+
– Container Linux (tested with 1800.6.0)
– 1台あたり2GB以上のメモリ(2GBの場合

元記事を表示

AWSのLambdaを使ってS3間のファイルコピーを試してみた。

## はじめに
普段何かお試しで作りたい時は、主にGCPにVMインスタンスを立てて、そこで色々といじってみる事が多かったため、本格的に色々なクラウドサービスを試したことはなく、AWSもほとんど使ったことがなかった。
周りではクラウドと言えば **”AWS”** の選択肢が多い気がするので、基本的なサービスくらいは多少はいじれた方が良いかと思い、今回は触りながら、調べながら学んだことをメモとして残しておく。

## 前提
そもそもから勘違いをしていた部分なのだが、まずAWSアカウントを作成した場合、各リージョンにそれぞれデフォルトでVPCができるのだが、このVPCの中に色々なサービスを作成(追加)していく様なものかと想像していた。
しかし、実際には以下の様なイメージで、VPCに属させるサービスの方が少ないのではないかと思っている。
![Qiita-no049_img01.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/654767/220242cc-125f-8858-b642-b27434439f0b.

元記事を表示

Golangはじめて物語(第9話: Go SQL Drivers+AWS SDK for the GoでAuroraに高速アクセスする)

# はじめに
GolangのDB接続は内部でGoroutineを使って勝手に簡単にコネクションプールを実現してくれるらしい。
なんと素晴らしい。早速試してみようではないか。
せっかくだから、Auroraと組み合わせてみよう。

なお、Auroraへのアクセス方法については、[公式のユーザーガイド](https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.IAMDBAuth.Connecting.Go.html)が参考になる。

また、接続にはIAM認証を用いる。AuroraへのIAM認証の設定方法は、[この記事](https://qiita.com/neruneruo/items/359faa76c2c8990439f2)を参考にしていただきたい。

# ファイル構成
今回は、WebサーバのフレームワークからAuroraに接続するサンプルとして、Ginを用いる。
以下のようなファイル構成とする。

“`
.
├── Dockerfile
├── docker-compose.yml

元記事を表示

TerraformでAmazon Auroraクラスタを自動構築する(クライアント接続用ユーザ作成編)

# はじめに
Amazon Aurora記事第3弾。

今回は作成したAuroraクラスタにIAMポリシーを作成し、ポリシーベースで認証を行う。
MySQL/PostgreSQLのユーザID/パスワードを使わない、よりセキュアなアクセス方法だ。

今回の記事も第2弾同様、前回記事で作ったTerraformのHCLに付け加える前提であるため、実際に触ってみる場合はまずは前回・前々回記事から読んでいただきたい。

– [TerraformでAmazon Auroraクラスタを自動構築する(基本編)](https://qiita.com/neruneruo/items/a7c5f7fa80fbf9d6a828)
– [TerraformでAmazon Auroraクラスタを自動構築する(RDSプロキシ編)](https://qiita.com/neruneruo/items/db137bd15cf1af6decdc)

なお、今回参考にしたのは[公式のユーザガイド](https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/AuroraUserGu

元記事を表示

[1日目]AWS Clouds Practitioner の資格勉強記録

# この記事
AWS Clouds Practitioner の資格勉強の記録をしていきます。

## about me
都内で1年ちょっとウェブエンジニアをしています。
普段はPHP を使うことが多いです。

## 予定スケジュール
試験を受ける日を先に決めてから、試験勉強計画を建てました。

“`
計画勉強時間:80 時間
平日 1h 休日(土日合計)6h
水曜は休み
10h /1week
必要な期間:8週間 = 2 ヶ月
試験受ける日→ 10/10(日)
“`

こんな計画で進めていこうと思います。
頑張ろう。

元記事を表示

S3について学んだのでまとめてみた

私はzennでも[同様の記事](https://zenn.dev/mo_ri_regen/articles/amazon-s3-article)を書いているのでよろしければそちらのほうもどうぞ?

## S3(Simple Storage Service)とは

99.999999999%[^イレブンナイン]の耐久性をもつオブジェクトストレージサービスです
保存容量の制限はなく、ストレージを自動で冗長化して保存します。

[^イレブンナイン]: 9が11コついているのでイレブンナインと呼びます。

## 保存形式について

S3ではバケット、プリフィクス、オブジェクトといった独特な用語があります。
それぞれ、下記のように対応しています。
ルートレベルのディレクトリ:バケット
バケットより下位のディレクトリ:プリフィクス
データ:オブジェクト

S3ではkey,value形式で表し階層構造はないですがわかりやすくするために
プリフィクスをディレクトリのように表します。
バケット名はすべて小文字でグローバルでユニークである必要があります。

## セキュリティについて

デフォルトではアカ

元記事を表示

AWS CLI cheetsheet

# AWS CLI cheetsheet

## configure

### Create profile

“`console
% aws configure –profile admin
AWS Access Key ID [None]: xxxxxxxxxxxxxxxxxxxx
AWS Secret Access Key [None]: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Default region name [None]: ap-northeast-1
Default output format [None]:

% cat ~/.aws/credentials
[admin]
aws_access_key_id = xxxxxxxxxxxxxxxxxxxx
aws_secret_access_key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

% cat ~/.aws/config
[profile admin]
region = ap-northeast-1
“`

## s

元記事を表示

AWSのS3上に静的なWebサイトを公開するまで【2021年版】

#初めに
こちらの記事は、私が『[AWSのS3上に静的なWebサイトを公開して、「Hello World」を表示するまでの全手順]
(https://qiita.com/harufuji/items/b3ebb4ac059587e6168f)』を参考にWebサイトを立ち上げた際、
AWSのセキュリティが変更されたことにより手順通りにできなかったので、それを回避した備忘録です。

参照記事の『バケットを作成して、HTMLファイルをAWS上に保存して、公開する。』のみ記載しています。
※独自ドメイン、リダイレクトの処理は記載しておりません。(いずれ書くかも。。。)

##こんな人が読むといいかも
・『[AWSのS3上に静的なWebサイトを公開して、「Hello World」を表示するまでの全手順]
(https://qiita.com/harufuji/items/b3ebb4ac059587e6168f)』を読んだけど、AWSの画面が変わりできなかった。
・一先ず、Webサイトを立ち上げてみたい。
##ゴール
「Hello World」と表示されるindex.htmlをWebサイトで公開

元記事を表示

AmplifyとEC2の通信でハマったところ

# 構成
フロント
React→Amplify
サーバー
Rails→EC2 + RDS

以下のように通信が流れるようなインフラを作った。その時詰まったところをまとめ。
ちょっと雑なので後で見返して修正する。正直ハマりすぎて疲れた。。。
Amplify→Route53→ELB→EC2→RDS

# EC2のSSL化
当然っちゃ当然だけどAmplify側がHTTPSなのでEC2もHTTPS化する必要あり。

### 設定時につまずいたところ
unicornでポート指定してなかった→listenの設定
unicornだと80番使えない。80番はルート権限でしか使えない→nginx経由でソケット通信させる仕様に変更
ルートパスにルーティングが組まれていない場合ELBのヘルスチェックでこけるのでヘルスチェックのURLをカスタムする

# CORS設定
React側から通信するときにCORSの設定ができていなくてエラーになった。
そのときにやった設定

**axios側**

“`ts
export const api = axiosBase.create({
baseURL:

元記事を表示

【AWS・EC2】unicornを起動の際のエラー文master failed to start, check stderr log for detailsの解決法・rails6 master.key周りの解決法も

したいこと

unicornの起動を成功させたい。(エラー文master failed to start, check stderr log for details)

経緯

本番環境としてEC2を使ってポートフォリオをデプロイしようとしています。
rails6で作成したアプリです。
下記記事を参考にしています。

https://qiita.com/Yuki_Nagaoka/items/dbb185feb6d4f051c2f2
https://qiita.com/naoki_mochizuki/items/5a1757d222806cbe0cd1#unicorn%E3%81%AE%E8%A8%AD%E5%AE%9A

出ているエラー

下記コマンドを実行し、

$ bundle exec unicorn_rails -c /var/www/rails/アプリ名/config/unicorn.conf.rb -D -E production

以下の様にエラーが表示される。

master failed to start, check stderr log for det

元記事を表示

Job for nginx.service failed because the control process exited with error code. See “systemctl status nginx.service” and “journalctl -xe” for details.などのnginx周りのファイルのエラーを知るコマンド

sudo systemctl start nginxをしたら次のエラー

Job for nginx.service failed because the control process exited with error code. See “systemctl status nginx.service” and “journalctl -xe” for details.

解決法
sudo nginx -tコマンドを使用する

sudo nginx -tを使用すると細かなミスに気がつくことができます。

systemctl status nginx.serviceだと起動に成功しているか、していないかを判別することしかできません。

sudo nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: [emerg] open() “/var/www/rails/Portfolio/current/log/nginx.access.log” failed (2: No such

元記事を表示

AWSデベロッパーアソシエイトに合格しました。

認定試験に合格したので勉強法や詰まったところなど記しておきます。
受験日と合格点です。なぜこんなに取れたのかは分かりません。

![2021-08-08 124050.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1846309/b2d5b9b6-bb99-fe5f-1199-f7f6e558ec6d.jpeg)

## デベロッパーアソシエイトとは?
AWSを実際のアプリケーションに組み込んでシステムを実装できる基本知識を問う試験という感じです。
なのでソリューションアーキテクトよりも実践的な問題が多くなっています。
また、開発者がビジネスロジックに集中できるようになるインフラを考慮しないサービスである、サーバーレス(Lambda)やInfrastructure as Code(CloudFormation)、展開時のCI/CD(Codeシリーズ)などに関連したサービスが中心に出題されます。

## 筆者のレベル感
2021年にエンジニアとしてキャリアをスタートしたAWS初心者です。AWSの経験として

元記事を表示

AWS CDK ワークショップ for Python の cdk init アナウンス和訳

AWS公式が出しているCDKワークショップのPythonコースをコツコツと進めてます。

https://cdkworkshop.com/30-python/20-create-project/100-cdk-init.html

↑ここでcdk initした時のアナウンスの内容を残しておきたいなと思ったので、自分のためにも投稿
(`/cdkworkshop/README.md`の内容でもある)

# 和訳した文章とコマンド

## CDK Pythonプロジェクトへようこそ!

このプロジェクトの内容を調べてみてください。このプロジェクトは、Amazon SNSトピックにサブスクライブするAmazon SQSキューを含むスタック(`cdkworkshop_stack`)のインスタンスを持つCDKアプリのデモです。
スタック(`cdkworkshop_stack`)のインスタンスを持つCDKアプリのデモです。

cdk.json`ファイルは、CDKツールキットにアプリの実行方法を伝えます。

このプロジェクトは、標準的なPythonプロジェクトのように設定されています。 また、初期

元記事を表示

【AWS】CodeCommitからgit cloneする手順

#はじめに
普段GitHubを使っているのでCodeCommiからのgitクローンのやり方がわからず、多大な時間を使ってしまったので、多くの方の時間削減につながれば幸いです。

#前提
ソースコードがCodeCommitにありレポジトリやIAMなどアカウントが作成せれている。

#開発環境
macOS BigSur
バージョン 11.5.1

#手順
公式ガイドを参考すると以下の手順になりますが、単にクローンするだけであれば不要な設定もありました。

1、AWS CLI インストール ← 不要
2、AWS Secret Access Keyを作成する ← 不要
3、aws configureファイルの設定 ← 不要
4、gitconfigファイルの設定
5、git keychainを無効にする
6、認証情報の取得
7、git clone

1〜3までは必須では無く(厳密には必要かもしれませんが)4以降でクローンはできました。重要で必須なのは5と6です。
今回簡単にできた方法を紹介します。

###目次(手順)
1、git keychainを無効にする
2、IAM の自分のロールで認証

元記事を表示

OTHERカテゴリの最新記事