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

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

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

# 0.はじめに
新卒エンジニアが研修中に作成したアプリをデプロイした内容をまとめる為に投稿した記事です。
間違った内容が含まれているかもしれませんがご了承頂ければと思います。
また、その点をコメントでご指摘いただけると幸いです。

# 1.AWS構成図
![スクリーンショット 2022-06-13 10.07.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2640019/9570c1f6-dd72-cf31-e84b-8b7454272071.png)

# 2.AWS利用サービス一覧
– EC2
– VPC
– サブネット
– セキュリティグループ
– RDS
# 3.AWS利用サービス設定内容
**1. EC2(パプリックIPアドレスありで、ElasticIPをアタッチする)**
AMI:Amazon Linux 2 Kernel 5.10 AMI 2.0.20220426.0 x86_64 HVM gp2
インスタンスタイプ:t2.micro
ストレージ:1 ボリューム – 8 GiB

元記事を表示

[2022年]初心者向けAWS 書籍(参考書)

Amazon Web Serviceの書籍を紹介します。
プログラミングやIT系の勉強するときはKindleや電子書籍で勉強するのがおすすめです。
***
[AWSの知識地図[Amazon]](https://amzn.to/3xFPN2G)
![b.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2702119/709960f5-d494-2ff5-92e2-d69fd5d8c4e9.jpeg)
最短最速で今必要な知識を⾝につけるために、「情報のハブ」というコンセプトで書き下ろした新しいAWS⼊⾨書です。
– 第1章 AWSの全体像を押さえる
– 第2章 AWSでWeb環境を構築する
– 第3章 安全にAWSを使うための基礎知識を押さえる
– 第4章 現場でAWSを使いこなすサービスを押さえる
***
[図解まるわかり AWSのしくみ[Amazon]](https://amzn.to/3OamydO)
![aaa.jpg](https://qiita-image-store.s3.ap-northeas

元記事を表示

会社のサービスで自分専用のstaging環境を作った

22卒エンジニアしてますみっちーです。
メンターエンジニアの方からインフラ学習用に君専用のstaging環境作っていいよと言われ作ることになりました。

メンターの方の狙いとしては
– 新卒の自分にインフラ知識のキャッチアップ
– 非エンジニア、外部エンジニアの方の動作確認用の環境(こっちがメイン笑)

サービスの規模拡大に伴い関わる人も多くなってきて、staging環境が追加で必要になったため追加で作ることになりました。
自分としては無料でインフラ構築、学習ができてラッキーです。

# やったこと
– AWSのEC2インスタンス、S3、Route53、セキュリティ周り etc…(サーバー構築)
– CircleCIで環境変数とSSHパーミッションを設定、CI側でリポジトリをフォロしているかの確認
– CircleCI 設定ファイル(config.yml、その他三つくらいstging環境と同じもの追加)を作成
– 非エンジニアの方向けに特定ブランチにpush & deployしてくれるスクリプトの作成
– 非エンジニアの方にgithubの勉強会

# つまづいたこと
設定ファイル

元記事を表示

AirflowのタスクログをS3に保存する方法

# はじめに

Airflowのタスクログの保存先は、簡単に S3 や Google Cloud Storage のような外部ストレージに設定することができます。本番環境では、こうした外部ストレージを活用することで、ディスク容量不足による障害を防ぐ予防効果もあります。私はこの理由で、Airflow をクラウド上でデプロイする際に、タスクログを必ず外部ストレージに保存しています。

https://qiita.com/hankehly/items/1f02a34740276d1b8f0f#task-logging

この記事では、公式 [docker-compose.yaml](https://airflow.apache.org/docs/apache-airflow/stable/docker-compose.yaml) で開発環境を立ち上げて、[remote logging](https://airflow.apache.org/docs/apache-airflow/stable/logging-monitoring/logging-tasks.html) 機能で S3 にタスク

元記事を表示

【AWS DOP-C01】合格のための知識詰め込み

# はじめに
AWS DOPの試験対策で練習問題を解き、ひたすら知識を詰め込みます。
本質とは異なりますが、合格を最優先に考え作成します。

# デプロイ
## 開発
### CodePipeline
– runOrderを同じ値にすると並列に実行する
– バージョンの異なる複数のコードをデプロイする場合は、その分だけCodePipelineを作成する。
– JenkinsでCICDを実行する場合は、マルチマスターセットアップとしてデプロイし、CodeBuildプラグインを使用することでCodeBuildでビルドを実行する。
– 別のCodepipelineオプションを呼び出せない
– S3デプロイステップでアーティファクトを別リージョンのバケットにコピーできる。
– CodeCommitへの変更をトリガーにパイプラインを開始するにはCloudWatchイベントと連携する。

### CodeCommit
– マージのためには上級者の承認が必要
– CodeCommitでリポジトリを作成し、作業ブランチとmasterブランチを作成。上級開発者と開発者用に別々のIAMグループを作成

元記事を表示

【AWS】料金の管理~その1~

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

## 経緯
以前投稿した[請求書の内訳が気になったお話](https://qiita.com/wark_ran/items/5e1ff2126839e7ab47c1)から、その他のサービスの料金についても調べることにしました。

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

## 目次
①EC2
②EBS
③S3
④RDS
⑤EIP
⑥ALB
⑦AMI
⑧Route53

## EC2
AWSが提供する仮想サーバーです。
EC2の無料枠は、以下の通りです。

**1、AWSアカウント作成後、1年間
2、月750時間まで
3、無料のインスタンスタイプであること(私はt2.microだった)
4、EC2インスタンス全体でカウントされる**

## EBS
EC2で使用するブロックストレージです。
処理速度を高速化したいデータの保存に適しています。
参考URL : [AmazonS3とAmazonEBSの違い](https://bc

元記事を表示

EC2でアセットファイルをコンパイルした際にエラーが出たときの対処法

以下の手順で、アセットファイルをコンパイルしたところエラーが出ました。
ターミナル(EC2内で実行)
“`
$ rails assets:precompile RAILS_ENV=production
“`

エラー文
“`
yarn install v1.22.19
[1/5] Validating package.json…
error <リポジトリ名>@0.1.0: The engine “node” is incompatible with this module.Expected version “14.19.1”. Got “14.19.3”
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
“`
上記のエラー文の意味は、「Node.jsのバージョンが違うよ。バージョン”14.19.1″を使いたいのに”14.19.3″になってるよ。」です。

ですので、Node.jsのバ

元記事を表示

AWS ECS(Fargate)でチュートリアルを実施する。(Hands-on)

# はじめに
ECS(Fargate)でWebサーバのApacheをデプロイするチュートリアルとなります。かなり荒い説明になっておりますので、話8割程度で聞いてください。

## Fargateとは??
Fargateとはコンテナ向けサーバレスコンピューティングです。簡単に言うと、Dockerイメージからコンテナを作成し、必要に応じてスケールしたりしてくれる便利なサービスです。最近の開発だと主流になっているので、一度触っておくと良いですよ。それではハンズオンを初めていきましょう。

![スクリーンショット 2022-06-12 19.28.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/599049/1d88f5df-771b-fc29-94e1-4701a0a1275a.png)

# 全体の説明
ECSでは「タスクの定義」や「タスク」、「クラスター」、「サービス」と普段目にしない用語がたくさん出てきます。ただやっている事としては大きく2つに分けられます。
1. どんなコンテナを作るのか 2.どの

元記事を表示

独自ドメイン名でS3にホスティングした静的ウェブサイトにアクセスする方法

# 目的
この記事では、ムームードメインで独自ドメインを取得して、S3にホスティングした静的ウェブサイトにアクセスする方法を記載します。

# 想定読者
・S3に静的ウェブサイトをホスティングさせたい方
・表題の件について、Route53でどのように設定するかを確認したい方

# 手順
手順としては以下を想定しております。
1. 独自ドメインの取得
2. S3バケットの作成
3. 静的ホスティングサイトの有効化
4. ウェブサイトアクセスのアクセス許可の設定
5. Route53の設定

## 1. 独自ドメインの取得
独自ドメインですが、ムームドメインで取得しました。
ドメイン名をこだわらなければ1円(1年間)で取得出来ました。
https://muumuu-domain.com/
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429119/0c784386-eb3b-32f5-9653-ad2f63eac483.png)

## 2. S3バケットの作成
S3バケットですが、Ter

元記事を表示

Kotlin+SpringBoot+Minioで署名付きURL(Upload用)を取得するAPI

## これは何?

* Kotlin*SpringBootでAWS触るコードがあんまりなかったので投稿
* ネタは「署名付きURLの生成」

## 前置き

CleanArchitectureを(自信ないながらも)採用しております。
またAWSとは関係ないところで、下記2点の書き方してます。

Kotlin+SpirngBoot+AWSの本質とはまた別なのでコード読む際の参考までに…

* 設定ファイル(application.yml)からs3Client生成用設定値を取得している
* エンドポイントとか、タイムアウトとか…
* 設定ファイルを分けることで、環境ごとに設定値を分けられるようにしてる
* うまいことGradle書いてモジュール分割(domain/usecase/infra/presentation)している
* CleanArchitectureの層間の依存を明示的に示すため
* build.gradleのdependenciesで管理
* [参考はタケハタさんのこのブログ](https://blog.takehat

元記事を表示

話題のAWS CDK v2を触ってみたい!初めての環境準備からデプロイまで

# 必要なもの

– AWSアカウント
– 操作用PC(本記事ではM1 Mac)
– CLIツール(本記事ではMac標準ターミナル)
– コードエディター(本記事ではVS Code)

# 最初の準備

### node.js & npmのインストール

https://nodejs.org/en/

バージョン確認

“`zsh
$ npm –version
8.11.0

$ node –version
v16.15.1
“`

### AWS CDK CLIのインストール

こちらを活用

https://aws.amazon.com/jp/getting-started/guides/setup-cdk/module-two/

CDKのインストール

“`zsh
$ sudo npm install -g aws-cdk
“`

バージョン確認

“`zsh
$ cdk –version
2.27.0 (build 8e89048)
“`

# CDKハンズオン

### ブートストラップ(AWSアカウントにS3バケットなどの

元記事を表示

新卒3年目と巡るAWS Summitの旅

## はじめに
[AWS Summit](https://summits-japan.virtual.awsevents.com/)のオンデマンド視聴ができる期間も残りわずかとなりました。
※6/30までよ!!

**新卒3年目(インフラエンジニア)** の目線から、オススメのセッションを紹介します!

## 紹介する前に
優先して、「これは視聴しようぜ!」というのを書いておきたいと思います。
### 1. 自社のセッション
観ないなんて寂しいじゃないですか、、、
自社にどんな人がいて、どんなことをしているかくらいは知っておいて損はしないです!
倍速で流せば15分です。15分。
### 2. 自分が関わっている企業に関するセッション
自分がお世話になっている企業の現状・方向性を知ることによって良い提案、良い仕事ができるようになると思います。
### 3. 自分が普段関わっている技術・サービスに関するセッション
セッションの数は多いです。
**選択と集中です。**
何よりも学習効率が良く、応用ができるのはご自身が関わっている技術に関するセッションです。
### 4.周りの人がおすすめし

元記事を表示

AWS Backup で Vault Lock を使ったランサムウェア対策をやってみた

# はじめに

[前の記事](https://qiita.com/sugimount-a/items/bf3132e5c5cf3f458c28)では、S3 にデータを置いたときのランサムウェア対策例を紹介しました。S3 のオブジェクトロック機能を使うことで、既存ファイルの変更や削除の操作を防ぐことが出来、ランサムウェアによる暗号化といった悪意のある操作を予防できます。一言で表現すると、WORM(Write Once Read Many) を使ったランサムウェア対策を紹介しました。

今回は、より多くのサービスに対するバックアップをカバーする AWS Backup を活用したランサムウェア対策を見ていきます。AWS Backup は、複数のサービスをカバーしている、一元化したバックアップサービスです。そもそも、AWS Backup のバックアップ領域は、AWS 側で管理されている領域になるので、ランサムウェアがデータの暗号化を行うことは出来ない仕組みになっています。ただ、権限があればバックアップデータの削が出来てしまうので、こういった悪意を持ったデータの操作を防ぐために、AWS Ba

元記事を表示

Route53でドメインを取得してWordPressインスタンスにマッピングする方法

【はじめに】

Amazon Route53を使ってドメインと取得し、Lightsailで作成したWordPressインスタンスにマッピングする方法を紹介します。
「kyonaka blog」もLightsailを使用しているため、AWSサービスと連動性が高いという理由でRoute53を利用しました。
本格的にブログを運営していくためには、対応が必須となるのでぜひ参考にしてください。

【Route53とは?】

  • 可用性と拡張性に優れたクラウドのドメインネームシステム (DNS) ウェブサービス。
  • www.example.com のような名前を、コンピュータが互いに接続するための数字の IP アドレス (192.0.2.1 など) に変換するサービス。

https://aws.amazon.com/jp/route53/

Lightsailで作成したWordPressインスタンスは、始めはIP

元記事を表示

AWSアソシエイト 未経験者が勉強中に間違えたものpart2

AWS X-Rayについて

AWS X-Rayを使用して、本番環境や分散アプリケーション(マイクロサービスアーキテクチャを使用して構築されたアプリケーションなど)を分析およびデバッグできる

特徴は以下の通り
■リクエスト動作の確認
AWS X-Rayでは、アプリケーション全体で転送されるユーザーリクエストがトレースされる。
アプリケーションを構成する個々のサービスやリソースによって生成されるデータが集計されるため、アプリケーションの実行状況をエンドツーエンドで確認できる。

■アプリケーションの問題の検出
AWS X-Rayを使うと、アプリケーションの実行状況についてのインサイトを収集して、問題の根本原因を調べることができる。X-Rayのトレース機能を使ってリクエストのパスを辿ると、パフォーマンスの問題の原因と、問題に関係するアプリケーション内の場所を特定できる。
また、X-Rayには注釈機能があり、トレースにメタデータを付加できる。

■アプリケーションのパフォーマンスの向上
AWS-Rayを使うと、パフォーマンスのボトルネックを特定できる
X-Rayのサービス

元記事を表示

AWSにKeycloak立ててみる

Keycloak初心者ですが、AWSにインストールしてみたいなぁと思いまして試行錯誤しております。

一番参考にしたのは、唯一の日本語書籍である以下の本です。

『認証と認可 Keycloak入門 OAuth/OpenID Connectに準拠したAPI認可とシングルサインオンの実現』

【動機】

私は中小企業に勤務していますが、いくつかの社内開発のWEBシステムがあります。
シングルサインオンはおろか、IDパスワードも個別のWebシステム毎に登録されており、バラバラです。
今後IT化を進める上で、IDパスワードの一元管理が重要と思っているからです。

![Keycloak-donyu-1.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1339875/d417d801-c504-04a8-7336-7771414b807f.jpeg)

![Keycloak-donyu-2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.co

元記事を表示

Workload Identity連携で、GCP操作するLambdaをAWS SAMで作成

# はじめに
AWSからGCPの操作がセキュアにできるWorkload Identity連携を、AWS SAMを使って作成したLambdaから行った内容を記事にしました。

# やったこと

## GCP側
以前の記事をそのままやっています。

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

こちらで作られたファイルをそのまま使います。

## AWS側

### Cloud9

#### 環境
AWS SAMを実行するので、ボリュームは50GB程度あるといいです。
以前記事にした内容と同じ環境でやっています。

https://qiita.com/a_b_/items/6b02e08ecacdd21524c2#%E7%92%B0%E5%A2%83

#### 設定
ローカルでテストを行う際に、Cloud9からGCPにアクセスできるよう、EC2にIAMロールを付けます。
前回の記事と同様です。

https://qiita.com/a_b_/items/102dfa252761eceab528#cloud9

元記事を表示

AWS CLIでアクセスキーを正しく設定してもなぜか権限エラーになる

ググっても事例見あたらず、トラシューでめっちゃ格闘してしまったのでメモ。

# TL;DR

AWS CLIにアクセスキーを設定してもなぜか権限エラーになってしまうときは、awsコマンド実行端末に意図せぬ環境変数がセットされてしまっていることが原因かも?

# 起こったこと

AWS CLIの初期設定では `aws configure` コマンドでアクセスキー等を設定できる。

https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-configure-quickstart.html

しかし、正しい権限を付与したIAMユーザーのアクセスキーをちゃんと設定したはずなのに、何度やってもawsコマンド操作が権限エラーになってしまった。

“`bash
$ aws s3 ls
An error occurred (InvalidAccessKeyId) when calling the ListBuckets operation: The AWS Access Key Id you provided does not exi

元記事を表示

AWS Lambda Function URLsの使い方

# AWS Lambda Function URLs

## やれること
– Lambda関数に紐づくURLを作成する
– 簡単に関数の前にHTTPSエンドポイントを設定する

## 何が嬉しい?
### Lambda Function URLsが無い時
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2707757/b2c1e1d9-716d-5f13-59ba-502152ada274.png)
今まではこんな感じで、API GatewayやAppSync、ALBをLambdaの前に置いてました。

### Lambda Function URLsがある時
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2707757/bd9b2daf-7a91-0ee8-8422-e80fea096c41.png)
これだけでOK!

## やり方
1. Lambda関数の作成で詳細設定を開く
![im

元記事を表示

AZ別に提供されているEC2インスタンスタイプの一覧を出力するPowerShellスクリプト

EC2インスタンスのインスタンスタンスタイプについて。

インスタンスタイプはリージョン毎に提供されるインスタンスタイプが決定されるものではなく、リージョン単位で決定される要素となります。

このため、2022年6月現在。

下記画像のように、AZ名とAZIDが下記のように関連付けされているAWSアカウントにてm6i.xlarge をみてみると。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1670622/1cf7b0d2-edfc-1068-52d9-57dd4a7f92d6.png)

– ap-northeast-1a が apne1-az4
– ap-northeast-1c が apne1-az1
– ap-northeast-1d が apne1-az2

r6iインスタンスは `ap-northeast-1c(apne1-az1)`では提供されていない事がわかります。

![image.png](https://qiita-image-store.s3.ap-north

元記事を表示

OTHERカテゴリの最新記事