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

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

TerraformでVPC・サブネット・インターネットGWを作成する

TerraformでALBとFargateを作成したので、工程を数回に分けて記載します。
Terraformコマンド・AWS CLIが使用可能である、“`export AWS_DEFAULT_PROFILE“`でインフラを構築したいプロファイルになっている事が前提です。

## 環境
Terraform v1.1.6

## 完成図
![AWS_Fargate資料.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2594248/3e3bda76-9334-0669-4507-bd22c031b514.png)

まずVPCを作成したのでメモとして記載します。

## 今回作成するVPC構成図
![Cursor_と_AWS_Fargate資料.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2594248/289281ce-1e3f-7e04-a5c0-2d8b2790c105.png)

## Terraformディレク

元記事を表示

Route 53 + CloudFront + S3 + WAFの構成をCloudFormationで作る

# やりたいこと
– CloudFront + S3でSPAサイトを公開したい
– そしてRoute53で独自ドメインでアクセスできるようにする
– かつCloudFrontにWAFを設定してアクセス制限したい

CloudFormationで一気に作ろうとしたらWAFを作るところで怒られてしまった…

調べてみるとWebACLのScopeを`CLOUDFRONT`で作成する場合はリージョンを`us-east-1`で作成する必要がありました

参考↓

https://dev.classmethod.jp/articles/cloudformation-webacl-cloudfront-error/

ドキュメントにも書いてありました、なるほど
> For CLOUDFRONT, you must create your WAFv2 resources in the US East (N. Virginia) Region, us-east-1

https://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuid

元記事を表示

AWS認定 専門知識5種を平均9割合格したので振り返り

# はじめに
ちょうど約1年前、私は「AWSを本格的に勉強しよう!」と決心して資格勉強を始めました。そして時は流れ、先週 AWS Certified Advanced Networking に 972/1000で合格し、ようやく専門知識 5種を制覇したので、一つの節目として振り返りの記事を書こうと思います。特に専門知識は日本語の学習商材が致命的に少なく、学習の見通しを立てにくいと感じる方も多いかと思うので、少しでもご参考になれば幸いです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1348507/2d41ca21-9dce-cadc-4dd2-4c700d524f8e.png)

気持ちよく「専門知識全取得」と書きたかった矢先、新しい専門知識の [SAP on AWS – Specialty](https://aws.amazon.com/jp/certification/certified-sap-on-aws-specialty/) の試験が今年の 4月から始まったようなので、誤

元記事を表示

【JAWS-UG 名古屋】 AWS ECSハンズオン

## ◆Agenda
**1.ハンズオン概要**
**2.ハンズオンを始める前に・・・**
**3.ハンズオン環境準備**
**4.ECSクラスター設定**
**5.ECSタスク設定**
**6.ECSサービス設定**
**7.ALBエンドポイントへの接続**
**8.WordPressの設定**

– – –

# 1.ハンズオン概要

– – –

## ◆概要
* このECSハンズオンは、Dockerの公式ドキュメントで紹介している「クイックスタート:ComposeとWordPress」の構成について、ECSとRDSを使用して構築する内容になっています。

https://docs.docker.jp/compose/wordpress.html

:::note warn
基礎知識としてのDockerについては触れません。
:::

参考:Dockerについて知りたい方

Dockerについて知りたい方は、下記リンクを参照してみてください。

[【図

元記事を表示

社内で行っているAWS勉強会の知見を共有したく

# 5月末から社内で勉強会を始めました
■概要
時間:毎週月曜日の業務終了の30分後(19:30~)から約1時間
場所:オンライン
参加人数:3~6名ほど
形式:講義+もくもく会

# なぜ始めたか
2022年から社会人2年目を迎え、チームに新人が入ってきたので自分も教える側の立場になってしまった。

自分が去年AWS学習にかなり苦労し、業務で色々鬱になったりしたので、後輩には同じ思いをして欲しくなく自分が考えうる最短でAWSに強くなれるノウハウを伝えたかった( ~~後輩がAWSに得意になればより多くの仕事を引き継がせて、自分が別の案件に注力できるようになるし笑~~ )。

もちろん業務で必要な知識は業務内で教えることにしているが、後輩の学習意欲が高くそれに応えるためより難しい課題にプライベートでも取り組んでもらうことにした。

また、せっかく後輩にプライベートの時間を使って教育するので他の方にも同時に教えた方が効率的なので、興味ある方を集めて勉強会を開催することにした。

## 目的
チームメンバー向け
・直属の後輩のAWSスキル向上
・部署単位でのクラウド力向上
・詳細設計から納

元記事を表示

【AWS】LaravelアプリをEC2デプロイ⑦【API編】

# 0. はじめに
大阪のLaravel初学者サウナーこと、kazumakishimoto([@kazuma_dev](https://twitter.com/kazuma_dev))です!
Route53の独自ドメイン登録に伴った、外部API(`Google / Twitter`)連携方法です(`Laravel Socialite`解説付き)。

## 0-1. 前回記事
– 【AWS】LaravelアプリをEC2デプロイ【まとめ編】

https://qiita.com/kazumakishimoto/items/e0e109fca443a4acd2a1

– 【AWS】LaravelアプリをEC2デプロイ①【CloudFormation / EC2 / RDS編】

https://qiita.com/kazumakishimoto/items/0859a5a365b226c1b43a

– 【AWS】LaravelアプリをEC2デプロイ②【Route53編】

https://qiita.com/kazumakishimoto/items/825f8c5f94d0160b236

元記事を表示

[AWS Lambda] Pythonで外部モジュール(Pillow)を使う

# AWS Lambdaで外部モジュールを追加する方法を情報まとめた
AWS Lambdaだと使えないライブラリ(モジュール)がありますね。追加が必要な場面がありますので外部モジュールの追加についてまとめます。

![amazon_awslambda_logo_icon_167887.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/260345/f2d6c424-010e-6845-9656-63ee0a4e6716.png)

今回LambdaでS3にアップされた画像いじりたいのでで`Pillow`使おうとしました。
モジュールをzipでアップすればいいのは知っていたのでpip installでデータ取得できたらzipにしてOKでしょ!
と思ってテストを実行したら

“`
[ERROR] Runtime.ImportModuleError: Unable to import module ‘lambda_function’: No module named ‘PIL’
“`

とエラー。pip in

元記事を表示

AWS SAAに3週間で受かったのでまとめておく

# 概要
AWS SAAをはじめて受験し合格した。
受験言語は例によって英語にした。

# やったこと
個人的な役立ち度を☆で評価する。

## AWS Certified Solutions Architect Associate Practice Tests:★★★★★
時間が無くて、390問中140問くらいしかできなかった。
ただ、やった問題については二回解いた。
初回は、問題見ても答えがわからないので、すぐ答えを見る。
分からない問題で時間をかけても無駄なので、間違った選択肢は一切見ない。
後述の日本語の本を二周した後に、二回目に取り組んだ。
二回目に解いた際は、知識が定着していたので、感覚的に8~9割は解けていた。
問題は、幅広い分野から作成されていて、同じような問題は少なかった。
日本語版でこういった本が出れば売れると思う。

正式名称:[AWS Certified Solutions Architect Associate Practice Tests 2019: 390 AWS Practice Exam Questions with Answers & detaile

元記事を表示

【備忘録】HerokuアプリからAWS RDSのデータベースへ接続する

# 何が書いてある記事なのか?
Heroku上に構築したアプリケーションから、AWS RDS上に構築したデータベースへ接続する手順について。

## Heroku→RDS(MySQL)への接続方法
### 前提条件
– AWS RDS上にデータベース(MySQL)を構築済みであること
– GitHubからデプロイされたHerokuアプリケーションが存在すること
– MySQL 5.x にて確認

### 手順

#### 1. Herokuへデプロイ済みのGitHubリポジトリに、AnazonRDS CA証明書(*.pem)ファイルを追加する

“`shell
# 対象リポジトリのディレクトリへ移動
$ cd hoge_repo

# リポジトリのconfigディレクトリにCA証明書をダウンロード
$ curl https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem > ./config/amazon-rds-ca-cert.pem

# リポジトリにプッシュする
$ git push origin main

元記事を表示

【試験メモ】ソリューションアーキテクト① EC2とNW周り、Route53とIAM篇

## 1.はじめに
ソリューションアーキテクトの問題集を解いたときのメモ其の1。
書きっぷりはAWSの公式から、画像は問題集のスクショ。

特に目新しいことは書いていませんのでご了承ください!

## 2.EC2
### AutoScallingのプロセスについて
閾値を超えてAutoScallingが起動すると、24hはスケーリングプロセスが動作する。
24hを超えるとプロセスは停止する。

### EC2のAutoScallingの種類
#### 動的スケーリング
・簡易スケーリングポリシー
通常の設定。アラーム設定に基づいて1段階のスケーリングを行う

・ステップスケーリングポリシー
アラーム超過のサイズに基づいてインスタンス数を動的にスケーリングする。
1つ以上のステップ調整値を指定して、複数回の段階的なスケーリングを実施。

・手動スケーリング
希望する容量を調整して、手動でスケーリングを実施する

・スケジュールされたスケーリング
スケーリングをする日時を指定して、スケーリングを実行する。そのままの意味

### スケーリングアクティビティ(抽象的なのでもっと調べる)

元記事を表示

【AWS】請求書の内訳が気になったお話

## 記事の対象
インフラの勉強をしたいけど、AWSの料金が心配な方

## 経緯
請求書で金額がどーんと上がっている月があり、心配になったため、改めて料金の確認を行うことにしました。

## 注意点
あくまで個人で触る範囲でしか調べていないです。
**情報に漏れがある可能性もあるので、参考程度に見て頂けると幸いです。**

## 作業しているうちに3000円になっていた話
ある月の請求書確認すると、、、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1705928/c9a448ee-6f38-d454-c434-b4b3ca827aee.png)

先月まで0円に近かったのに、急に料金が上がっていることに気づきました。

思い当たる節はいくつかあります。

1、EC2インスタンスたくさん起動させたままだった・・・
2、ドメイン取得したりした・・・

このあたりが怪しいですが、せっかくなので内訳をしっかり確認してみました。

## EC2
請求書を見ると、予想通り無料枠を超えていたよ

元記事を表示

kubernetesについて、登場人物をまとめてみた。

## コンテナオーケストレーションとは?
Docker Swarm、Mesos、Kubernetesに代表される、複数のコンテナをうまく管理するための仕組み。
コンテナが動作するマシンが一つだと、マシンの故障とともに中で動くシステムもダウンしてしまうため、一つのアプリケーションを複数のコンテナに分けて、複数のマシン上で動作させたい。マシンごとのスペック格差も是正したい。こういった悩みを解決するのがコンテナオーケストレーションツール。

## Kubernetesとは
Googleによって開発された、コンテナ化したアプリケーションのデプロイ、スケーリング及び管理を行うための、オープンソースのコンテナオーケストレーションシステム。
…要するにDockerコンテナをうまいことやってくれる無料のシステム。

## Kubernetesが誕生した歴史

“Kubernetes”(クベルネテス)は、ギリシャ語で航海長または水先案内人を意味し、サイバネティクス(人工頭脳学)の語源でもある。Kubernetesは、当初Joe Beda、Brendan Burns、Craig McLuckieの3人

元記事を表示

Kubernetes

# 【Kubernetes】
Kubernetesを実務で扱っていきたい。

## Kubernetes
– 宣言的な構成管理と自動化を促進し、コンテナ化されたワークロードやサービスを管理するための、ポータブルで拡張性のあるオープンソースのプラットフォーム

## Kubernetesのコンポーネント
– Kubernetesをデプロイすると、クラスターが展開
– Kubernetesクラスターは、 コンテナ化されたアプリケーションを実行するノードと呼ばれるワーカーマシンの集合
– すべてのクラスターには少なくとも1つのワーカーノードがある
– ワーカーノードは、アプリケーションのコンポーネントであるPodをホスト
– Pod:Kubernetes上の最小単位
– 1つ又は複数コンテナを持つ
– ネットワークやストレージを共有リソースとして持つ
– マスターノードは、クラスター内のワーカーノードとPodを管理
– 複数のマスターノードを使用して、クラスターにフェイルオーバーと高可用性を提供
– ワー

元記事を表示

【AWS】CloudWatchでEC2インスタンスを自動起動・自動停止する

# CloudWatchでEC2インスタンスを自動起動・自動停止する

本記事ではEC2 インスタンスを自動で起動・停止させる方法を紹介します。
必要な時だけインスタンスを起動するように設定することができます。

## IAMロールの準備
まずは、CloudWatch EventsからSSMを操作するためのIAMを作成します。
IAMのロール→ロールの作成と進みます。
![スクリーンショット 2022-06-04 16.13.35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/318577/4fdab0e4-ef77-0a1a-3c06-58421a01f0cb.png)
ユースケースの選択でCloudWatch Eventsを選択して次へをクリックします。
![スクリーンショット 2022-06-05 17.25.53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/318577/30e5ab89-7d66-f853-2

元記事を表示

AWS SSOを試してみた

# 背景・目的
最近、シングルサインオンを調べる機会があったので、AWS SSOについて触れてみたいと思います。

# まとめ
– AWS SSOは、ユーザを管理するIDプールの機能と、アクセス権限セットを管理する機能、アクセス権限セットを割り当てる機能、SaaSが提供しているを有している。
– IDプールには、AWS SSOがデフォルトで利用され、それ以外にMicrosoft Active Directoryや、外部IDプロバイダーなど指定ができる。
– SSOアプリケーションには、AWSサービスの他に、クラウドアプリケーションを指定し管理することができる。

# 概要
## AWS SSOとは?
– すべてのAWSアカウントとクラウドアプリケーションへのSSOアクセスを一元管理することを用意にするクラウドベースのシングルサインオンサービス。
– 具体的には、AWS組織内のすべてのAWSアカウントにわたるSSOアクセスとユーザ権限を管理するのに役立つ。
– 一般的に使用されるサードパーティーサービスとしてのSaaSアプリケーション、SSO統合アプリケーション、SAML2.0をサポー

元記事を表示

[Python]RSS取得した情報を翻訳してslackに投稿する

# はじめに

当方はしがないバショウカジキなので、情報収集にSNSはあまり活用できていません。
代わりにslackにRSS feedを流して眺めています。

外国語のサイトのfeedも購読しているのですが、外国語を読むのは母国語を読むのとは頭の使い方が違うので、記事が大量に配信されるようなサイトだとつい読むのをサボりがちです。

読むかどうかの取捨選択がもう少し簡単になるよう、RSSで配信される内容を翻訳してからslackに投稿する処理を作ることにしました。

~~(実は[Zapier](https://zapier.com/apps/rss/integrations/rss/11886/translate-new-rss-feed-items-and-post-them-to-custom-rss-feeds)に同じことをやって翻訳feedを生成できるテンプレートがあるみたいなんですが(使ったことはない)、せっかくやる気になったので自分で作ります。)~~

# どういうものができますか?
## Before

slackにあるアプリを利用したRSS feed投稿はこういったもので

元記事を表示

localstackをローカル環境に立ち上げてみる

# 前提
AWSのCLIコマンドを学習する目的でlocalstackを立ち上げます。
プログラムの動作確認用にも使えます。

# 環境
– macOS 11.6.4
– docker-compose: 2.0.0
– localstack: 0.14.3(執筆時点で最新)

# 手順
### docker-compose.xmlを任意のディレクトリに作成する。
以下にdocker-compose.ymlがあるのでこちらを参考に作成。
https://github.com/localstack/localstack/blob/master/docker-compose.yml

“`docker-compose.yml
version: “3.8”

services:
localstack:
container_name: “localstack”
image: localstack/localstack:0.14.3
ports:
– 4566:4566
environment:
– SERVICES=s3, sqs

元記事を表示

API実装案件での学び

## 概要
最近LaravelでAPI実装案件を一通り要件定義から一通り経験することが出来ましたので学びを振り返ろうと思います。(理解が間違っていたらご指摘ください。あと、自分用振り返り記事なので読みにくいかもですがご容赦ください。)
案件概要の詳細は省きますが、ある特殊な条件で仕様される単純なCRUD機能が使えるAPIの作成でした。

### リリースまではざっくりと下記の流れ
要件定義→キックオフ→設計書作成(API等)→実装→インフラ構築→リリース
何もかも初めての事だったので手探りで進めていきました。
仕様の自由度が高く自分でどの機能を実装するか決められたのですが、お客様に自分が考えた機能と仕様を説明する時に緊張した記憶があります。笑

## 案件を通して学んだ事一覧

– RESTful API
– JWT(認証) ACL(認可)
– クリーンアーキテクチャ
– AWSインフラ構築

上記項目についてこれからざっくり振り返ります。

## RESTful API

– API
– REST
– OpenAPI

### API
ある機能を公開しているソフトウェアとその機能

元記事を表示

Workload Identity連携で、AWS Cloud9からPythonでGCP操作

# はじめに
AWSからGCPの操作がセキュアにできるWorkload Identity連携を、Cloud9上からPythonで試してみたので記事にしました。

# まとめ
– 認証ファイルのパスを、環境変数`GOOGLE_APPLICATION_CREDENTIALS`にセットする
– 対象プロジェクトを指定するために、別途環境変数`GCLOUD_PROJECT`にセット
– Cloud9から行う場合は、使用しているEC2にIAMロールを付与して使う
– Pythonライブラリをインストールする際、ローカルにインストールする`pip install -t .`だとうまくいかない

# 参考
GCP側の手順やCloud9の設定は以下のページが詳しいです。

https://tech.nri-net.com/entry/2021/07/01/111020

# やったこと
## GCP側
前回の記事をそのままやっています。

https://qiita.com/a_b_/items/f30b85be4f44ed1f620c#gcp%E5%81%B4

こちらで作られたファイルをそ

元記事を表示

ローカルにてLambda関数を組む二つ方法まとめ(VSCode,Pycharmなど)

方法としては下記の2種類です。

# 1、Dockerを利用してローカルで実行
手順は[この記事](https://qiita.com/zukakosan/items/9c01aba5ff537382c856)の通りですが、実際設定・実行する時は二つ問題が発見しました。
①VSCodeにの`app.py`ファイルには`Run Locally | Debug Locally | Configure`が表示せず、代わりに`AWS: Add Debug Configuration | AWS: Edit Debug Configuration`が表示しました。記事の[ここに書いている内容](https://qiita.com/zukakosan/items/9c01aba5ff537382c856#vscodeでlambdaをローカルテスト)と違います。なんか仕様変更らしいです。
`Add Debug Configuration`或いは`Edit Debug Configuration`をクリックしたら、`launch.json`デバッグ設定を追加しまして、`Edit SAM Debug C

元記事を表示

OTHERカテゴリの最新記事