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

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

プレフィックスリスト ってなに

## 勉強前イメージ

vpcのなにか?

## 調査

### プレフィックスリスト とは

AWSのVPCの機能で、複数のCIDRブロックを一元管理することができます。
元々セキュリティグループで接続元の拠点を絞る際、複数プロトコルがあったら以下のようにいっぱい書かないといけなかったです。
22,80,443(3プロトコル) * 2拠点 = 6個 の記載が必要でした。

“`
22番ポート x.x.x.x
80番ポート x.x.x.x
443番ポート x.x.x.x
22番ポート y.y.y.y
80番ポート y.y.y.y
443番ポート y.y.y.y
“`

ここで拠点をリスト化して、重複したIPの設定を省略できるのがプレフィックスリストになります。
イメージとしては以下のように楽に設定ができるようになります。

“`
拠点リスト : x.x.x.x, y.y.y.y
22番ポート : 拠点リスト
80番ポート : 拠点リスト
443番ポート : 拠点リスト
“`

画面から見ると以下のように設定されています。

![1マネージドプレフィックスリスト _

元記事を表示

AWS Cognitoを使わずに多要素認証を実装したいんよ

こんにちは。エンジニアブログの楽しさを知ったと同時にクソリプをもらってネット社会の恐ろしさを知った、むっそです。

先日スタートアップ転職あるあるという、科学的根拠も情報の出典もあまり書いていないようなN=1のポエムが、大変恐縮ながらちょっとばかりおバズりいたしました。不確実性の高い時代だからかこういう体験談ってみんな好きなんですかね。
**物好きなかたもいるんですね。**

https://qiita.com/muson0110/items/b0a997e8b3221a2786d5

# はじめに
じつは上のリンクの記事の中にちょっとだけ伏線があって、こんなことを書きました。

> 入社1日目でバグ修正させられたり、多要素認証実装しろとか言われたり、なんなんってなります。(経験談)

そうです。**多要素認証です。(伏線回収決め顔)**

なので今回は多要素認証を実装してみたという記事を書いてみようかと思います。仕事では**フロントエンドをReact、バックエンドをPythonで書いていて、主にAWSのインフラを使って開発**をしておりまして、なにかと多要素認証の記事は役に立つんじ

元記事を表示

Railsの開発環境でAWSサービスを使うとminioの設定とAws.configの競合が発生する

# まとめ

ローカルの開発環境でminioを使いながらAWSのcredentialを同時に扱うことは難しそう

なので、各サービスのクライアント生成時にcredential情報を渡すことになるかも

`config/initializers/aws.rb`

“`rb
creds = Aws::Credentials.new(
Rails.application.credentials[:aws][:access_key_id],
Rails.application.credentials[:aws][:secret_access_key]
)

region = Rails.application.credentials[:aws][:region]

Aws.config.update(
region: region,
credentials: creds
)
“`

と宣言しておき

“`rb
def client
conf = Aws.config
access_key_id_sym = Rails.env.develop

元記事を表示

CFnの別のスタックからの変更をブロックしたい

## やりたいこと

1. CloudFormationでStackを1つ作る。
2. 別のStackを作る。このStackの中で[1]で作成したResourceを変更する。
3. [1]で作ったスタックをアップデートする。とどうなる?
4. [2]の変更で[1]で作成したリソースが変更できないようにする。

**※[4]は、今の所、できていない。もう少し模索する(ToDo)**

## 1. CloudFormationでStackを1つ作る

“`yaml
AWSTemplateFormatVersion: “2010-09-09”
Description:
VPC, Subnet

Metadata:
“AWS::CloudFormation::Interface”:
ParameterGroups:
– Label:
default: “Project Name Prefix”
Parameters:
– ClusterPrefix
– Label:

元記事を表示

Podmanを使ってAWS ECRにイメージプッシュ

# はじめに
これからはPodmanを使ってかなきゃと勝手に思って、podmanコマンドでECRにコンテナイメージをプッシュしてみました。
結果、dockerコマンド使う際と同じでした。

# 環境
Windows 11 WSL2 Ubuntu 20.04
Podman 3.4.2

# いざプッシュ

[こちら](https://docs.aws.amazon.com/ja_jp/AmazonECR/latest/userguide/getting-started-cli.html)のガイドに従い、イメージをプッシュしてみる。`docker`を`podman`に読み替えるだけです。

まずはログイン。
(MFA使った環境なのでmfa用のプロファイル使っています)

“`
$ aws ecr get-login-password –profile mfa-profile | podman login –username AWS –password-stdin xxxxxxxxxxx.dkr.ecr.us-east-1.amazonaws.com
Login Succeeded!

元記事を表示

SysOps Administrator – Associate(SOA-C02/試験ラボ対策) 合格まで

2022年3月14日、SAAに続いて **SOA(ラボ試験を含むC02)** を取得しました。**ラボ試験**に焦点をあてつつ、その過程と試験内容を書きます。

## 勉強内容
以下もろもろ合わせて**50h~**くらいかなぁと思います。CLFやSAAの時と同じくらいです。

**①参考書** 
アソシエイト3種が一つになってる参考書を一応読みました。SAAで学んだ内容がほとんどだったので、新たにインプットできる内容はそれほどないかなとは思います。
ファイル名

**②koiwaclub**
合計665問(7×95)を2.5週くらいやりました。3週目の0.5は**よく出るといわれている#50**から。実際類似問題がそこそこ出たのでかなり助けられました。最終的には80%くらい取れてた感じです。いつも問題はUdemy

元記事を表示

【無料利用枠】AWSでWordPressブログをつくろう Part.4 WordPress設定編

# はじめに
[Part.1 初期設定~インストール編](https://qiita.com/pike3/items/0c4f194a1ad51cc15da3)
[Part.2 独自ドメイン設定~SSL化編](https://qiita.com/pike3/items/a17b95f664e2a61423fd)
[Part.3 S3画像保存~SESメール転送編](https://qiita.com/pike3/items/eeaffd9163bce56a4a31)
->Part.4 WordPress設定編

今回が最終回となります。
基本的にWordPress自体の設定となるため、AWS側は触りません。

# 概要

今回の設定対象は下記の通りです。

* WordPress側のSSL対応
* ログインURLの変更
* WordPressバックアップ設定

# WordPress側のSSL対応
前回Part.2でSSL化の設定を行い、サイト自体はSSL対応が完了しました。
しかし、WordPress側の設定では、まだSSLに対応する前の設定のままなので、設定変更していきます。

元記事を表示

【無料利用枠】AWSでWordPressブログをつくろう Part.3 S3画像保存~SESメール転送編

# はじめに
[Part.1 初期設定~インストール編](https://qiita.com/pike3/items/0c4f194a1ad51cc15da3)
[Part.2 独自ドメイン設定~SSL化編](https://qiita.com/pike3/items/a17b95f664e2a61423fd)
->Part.3 S3画像保存~SESメール転送編
[Part.4 WordPress設定編](https://qiita.com/pike3/items/1bab8dea37be47bcdf0c)

今回の設定は必須ではありませんが、やっておくと便利な設定となります。
S3の設定については、予め設定しておかないとEC2上に画像ファイルが保存されてしまうため、早めの設定をオススメします。

# 概要
デフォルトだと画像ファイルなどの静的コンテンツはEC2上に保存されます。
機能上はそのままでも問題ないのですが、無料利用枠におけるEC2のストレージは限りがあるため、保存先としてはS3を利用すべきです。
また、メール転送サービスはSendGridでもいいのですが、AWSのサービスで

元記事を表示

[その4]AWS-SAA-躓いたメモ

#### Direct Connect
専用線接続サービス

#### Snaball edgeは転送
ビデオ、画像リポジトリ、`データセンター`にある膨大なデータを簡単に転送できる

#### Route53のヘルス機能で異常が検知された場合、対象のインスタンスに振り分けないようにする。

#### AWS Snawmobileはエクサバイト
超大容量データをAWSに移動する為に、使用できるエクサバイト規模のデータ転送サービス

#### Lambda@Edge
cloudFrontのエッジロケーション
Lamda関数はユーザーに近いロケーションで実行される
CloudFront ←→ lambda@Edge ←→ DynamoDB

#### WAF
SQLインジェクション/XSSから保護する
送信元のIPアドレスに基づくアクセス制限、`CloudFront、ELB`

許可されたIPアドレス → `cloudfront(WAF)` → `ELB(WAF)`→EC2

#### AWS CloudTrail
APIコールをログとして記録する

元記事を表示

サーバレスで動画共有サイトを作成して社内に公開

本内容は下記JAWS-UGのLTで登壇させて頂きました。
資料およびyoutubeアーカイブは下記を参照下さい。

https://jawsug-bgnr.connpass.com/event/237621/

# 実施した内容
AWSのサーバレスで動画共有サイト作成して、社内のイントラに公開しました。
作成した動画共有サイトでメンバーの教育、動画業務マニュアル作成、他部署との情報共有などに使用しています。

![Site1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2523652/09e46f23-d124-241c-50b0-64ac49cd1ab3.png)

# 作成した背景
社内でAWS研究開発を実施していました。資格取得、ハンズオンなどAWSの基礎知識習得を行ってきました。一通り基本的な環境は作成出来るようになったのですがまだこの段階では設計・構築案件などがなかったため、その後何をやるかに悩んでいま

元記事を表示

EC2リザーブドインスタンス2パターン

①スケジュールされたリザーブドインスタンス(一定の予約済インスタンス)(Scheduled Reserved Instances)
→廃止
スケジュールで購入できるのはオンデマンドインスタンスだけ
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-scheduled-instances.html

②全ての予約済インスタンス(All Upfront Reserved Instance)
→一括払いなり
https://aws.amazon.com/ec2/pricing/reserved-instances/pricing/

元記事を表示

DynamoDBのキャパシティについて

(キャパシティ=スループットキャパシティ)

DynamoDB には「オンデマンド」と「プロビジョニング済み」という 2 種類のキャパシティーモードがある

「プロビジョニング済み」のキャパシティモードは
プロビジョニングされたキャパシティーとリザーブドキャパシティがある
AutoScalingが使えるのはこっちのプロビジョニングされたキャパシティの方
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/969819/27b924d8-8bcc-d6bf-31d5-b8ca30453ff1.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/969819/9477104d-bbac-d8b0-e1d9-7848733de660.png)

「オンデマンド」キャパシティモードは
オンデマンドキャパシティのみ
こっちはWCUとかRCUとかそういう概念がない
![image.png](htt

元記事を表示

[その3]AWS-SAA-躓いたメモ

### AutoScalingのクールダウンとは
AutoScalingが連続で実行されないようにAutoScalingの待ち時間を設定する。

### プロビジョニング
必要な時に応じて、ネットワークやコンピュータなどの設備を予測、需要に合わせて事前に用意する。

### CloudWatchカスタムメトリクスでは…
`メモリ稼働率`が見える様になる。(標準では見れない)

### RAIDの訳わからないやつ

|RAID |最小構成のディスク数 |処理の特徴 |備考|
|—|—|—|—|
|RAID0 |2 |ストライピング |高い障害性と高速な処理|
|RAID1 |2 |ミラーリング |非常に高い、耐障害性|

### プレイスメントグループとやら(低レイテンシ、高スループット)
#### クラスタープレイスメントグループ
`単一のAZ`内のEC2インスタンスを論理化し、全て同じ`ラック`で管理する

#### パーティションプレイスメントグループ
`パーティション単位`でラックが分かれている

#### スプレットプレイスメントグループ

元記事を表示

Route53のALIASに関してメモ

ALIASってどのレコードタイプで使えるんだっけ?
結論:どのレコードでも使えるには使える、ただしAレコードかAAAAレコードでないとレコードを作成するホストゾーンの別レコードにしか使えない

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/969819/0698a5e7-119c-86b3-9738-505bf9e60862.png)
このように様々なサービスに対してエイリアスを設定できる

一方でほかは
AAAAの場合
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/969819/08e67571-7ecc-1e84-d4c8-76dfdc076d8b.png)

CNAMEあたりすべて(MXやらPTRやらまだ列挙してないものすべてがこうなります)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com

元記事を表示

RDSのレプリケーションに関してメモ

①RDSからAuroraのエンジンに変更することは簡単にできる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/969819/51238284-bdef-3c3c-b986-95f88d7e0970.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/969819/ba3edfdb-34c7-3c77-1128-624a5899055e.png)

このようにしてクラスター構成に変更しリードレプリカを追加する形でMySQLから互換性のあるAurora MySQLに変更することが可能である
※ただしクロスリージョンレプリケーションはクラスター構成で設定変更した後でないと実施できない

②別リージョンにリードレプリカを追加したいときはリードレプリカの追加を行いリージョンを指定する

再登場
![image.png](https://qiita-image-store.s3.ap-n

元記事を表示

Amazon CloudWatch Syntheticsでシンセティック監視する(CloudFormationテンプレートで構築)

# はじめに

 システムを構築した後、運用の中でいろいろな指標値を基に「そのシステムが正常に動作しているか?」を継続的にモニタリングする必要があります。これは、[AWS Well-Architected Framework](https://aws.amazon.com/jp/architecture/well-architected/) 信頼性の柱の「REL6:ワークロードリソースをモニタリングするにはどうすればよいですか?」の中でもベストプラクティスとして定義されています。

https://wa.aws.amazon.com/wellarchitected/2020-07-02T19-33-23/wat.question.REL_6.ja.html

 AWS以外のサービスを利用し、モニタリングすることも可能ですが、今回は、[Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canarie

元記事を表示

CloudFront => Rails で直結する場合は X-Forwarded-Proto ではなく X-Forwarded-SSL ヘッダを付けると良い

Rails + AWSで雑にhttps を立てたいと思い

CloudFront(https) => EC2(Railsアプリ/http)

という構成でアプリを作ると、 GET 以外のリクエストを投げるとこんなエラーが出る

“`
HTTP Origin header (https://xxx.cloudfront.net) didn’t match request.base_url (http://xxx.cloudfront.net)
“`

ApplicationController で適当にリクエストヘッダーを出力してあーでもないこーでもないとこねくり回してみたのだが・・・
“`
class ApplicationController < ActionController::Base before_action :env_log private def env_log request.headers.sort.reject { |k, _| k.to_s.include?('.') }.each { |k, v| logger.info "#{k

元記事を表示

Elastic BeanstalkにSwagger UIをBitbucket Pipelinesでデプロイする

物理サーバに置いていたSwagger UIをAWSに移した記録です。
ついでにドキュメントを更新したらBitbucket Pipelinesでデプロイまでやってくれるようにしました。
## Elastic BeanstalkにSwagger UIを置く
### 環境作成
Beanstalkの環境をDockerプラットフォームで作成します。
その他の設定はお好みで。
### docker-compose.ymlの用意
“`yaml:docker-compose.yml
version: “3”
services:
swagger:
image: swaggerapi/swagger-ui
container_name: swagger-ui
volumes:
– ./foo.yml:/usr/share/nginx/html/foo.yml
– ./bar.yml:/usr/share/nginx/html/bar.yml
environment:
URLS: “[{url:\”foo.yml\”,name:\”F

元記事を表示

AWS VPC Subnet内の未使用IPアドレスをリストアップするPythonスクリプト

# やりたいこと

サブネット内で未使用のIPアドレス(IPv4)をリストアップしたい。

社内で「EKS使っていると、セカンダリIPとかでランダムにIP消費されるので、各ENIで使用しているIPを愚直に確認するのはしんどい」という声があり、一発でうまいこと出せる機能がなさそうだったのでスクリプトを書きました。

ちなみに今回の対象は[IP Address Manager ](https://aws.amazon.com/jp/blogs/news/network-address-management-and-auditing-at-scale-with-amazon-vpc-ip-address-manager/)プールから作成していないVPCでした。

# スクリプト

書いたスクリプトはGitHubにあげました

https://github.com/shu85t/aws_describe_unused_ips

使うには以下が必要です
– Python3.8以上
– boto3
– AWSの権限
– ec2:DescribeSubnets
– ec2:Desc

元記事を表示

VMware Cloud on AWS環境でストレッチクラスタを作成してみた (#2後編 – 4ホスト構成)

# 1. はじめに
「[VMware Cloud on AWS](https://www.vmware.com/jp/products/vmc-on-aws.html)」でストレッチクラスタを作成したので、備忘録を前編と後編にまとめます。
後編である本稿は、前編で作成した「2ホスト構成のストレッチクラスタ」をスケールアップする手順、vCenterからみた構成画面をご紹介します。

前編では、ストレッチクラスタの概要、「2ホスト構成のストレッチクラスタ」の作成手順、vCenterからみた構成画面、および2ホスト構成における同時稼働可能な仮想マシン台数の制約についてご紹介しました。

https://qiita.com/sanjushi003/items/90e878528ef3526d5ba4

ストレッチクラスタの概要は下図もご参考ください。
> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/864151/79fb4bc1-7167-7980-49e7-ed2584bc137c.png)

元記事を表示

OTHERカテゴリの最新記事