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

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

RDS Customを使ってみた(SQL Server編)

# 1. はじめに

[前の記事](https://qiita.com/kenichi_matsunaga/items/467a92d4713da3ffcfcd)ではRDS Custom for Oracle, SQL Serverについて、主に環境面でRDSとの比較を行いました。今回の記事では実際にRDS Customを操作しながら、構築や運用の観点でRDSとの比較を行います。ただ、RDS Custom for Oracleは利用するためのEnterprise Editionのライセンスが用意できないので、RDS Custom for SQL Serverのみを対象にします。

なお、本記事は2022年3月上旬時点での確認結果を元に記載しています。他のAWSサービスと同様にRDS Customでも機能追加・改善され、本記事の内容と合わなくなるケースもあると思いますので、ご注意ください。

RDSとの比較に関する内容となるため、RDSについてある程度の知識や操作経験がある読者を前提としています。

:::note warn
注意
RDS Customはマネージドサービスではありますが、

元記事を表示

RDS Customを使ってみた(調査編)

# 1. はじめに

[RDS Custom](https://aws.amazon.com/jp/rds/custom/)は2021年10月にGAされたサービスで、従来のRDSでは許可されていなかったOSやDBMSのカスタマイズが実施できるようになりました。

AWSではこれまで、DBサーバでOSやDBMSのカスタマイズが必要な場合はEC2を使用するしかなく、マネージドサービスのメリットを享受することができませんでした。今後はRDS Customを使うことで、カスタマイズ要件に柔軟に対応しつつ、マネージドサービスの機能により運用負荷を減らせるかもしれません。

ただ、現状では構成や運用機能で制約が多く、要件に合わないケースもありそうです。本記事では、RDS Customの利用可否を検討する際の手助けになるよう、従来のRDSとRDS Customで構成する際の条件や制約の比較調査をしてみます。

[次の記事](https://qiita.com/kenichi_matsunaga/items/f7322b269e2e2c6812a6)では、実際にRDS Custom for SQL S

元記事を表示

駆逐してやる!!AWS Security Hubの指摘を…この世から…一匹残らず!! ~ S3編 (CLI) ~

# Security Hub の指摘、駆逐してますか?

image.png

* **とりあえず、Security Hub を有効化したけど、セキュリティスコアが低くて困っている…**
* **Security Hub の検出結果 (Findings) にどう対処すればよいのかわからない…**
* **S3 のセキュリティを強化したい…**

そんな方々のために、本記事では Security Hub の S3 に関する指摘事項を一匹残らず駆逐する方法を解説します。

また、解説と合わせて、Security Hub に指摘されない S3 バケットを作成するための CLI スクリプトも紹介していきます。
「解説はいいから早よ CLI をよこせ」という方はこちらをどうぞ。
 ↓ ↓ ↓
[**CLI を捧げよ!**]

元記事を表示

【CloudFormation】組み込み関数Fn::Subが意外と便利な件

# はじめに

ちょっとした Tips ですが、意外と知らない方が多い(?)ようなので、投稿しておきます。
CloudFormation の組み込み関数 “`!Sub“` は、 “`!Ref“` や “`!GetAtt“` など、他の組み込み関数の代わりとしても使用することができます。

# !Ref の代わりとして使える

“`!Ref Resource“` と “`!Sub ${Resource}“` は同義です。
ただし、“`!Ref“` の方が “`${}“` が不要な分、シンプルなので、単体ではあえて “`!Sub“` を使うメリットはありません。

## 例

“`yaml:!Ref の場合
Parameters:
BucketName:
Type: String

Resources:
SampleBucket:
Type: AWS::S3::Bucket
Properties:
BucketName: !Ref BucketName

Outputs:
SampleBucketName:

元記事を表示

【AWS環境構築メモ⑦】ELBを作成する

## 0.はじめに

**ELBでロードバランサーを設置して、作成したEC2を配下に登録します。**
**ロードバランサーはALBを使用します。**

今回はEC2はいつしか作成していないですが、複数サーバーが設置されていることを想定して

– **ELB(ロードバランサー)**
Elastic Load Balancingの略。
サービスにアクセスが集中すると、サーバーの処理能力が低下して、最悪ダウンしてしまいます。
その時に、サーバーへの負荷を分散させる役割を果たすのがロードバランサーの目的です。

![スクリーンショット 2022-03-27 19.49.25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/891391/f25bab1c-35b1-4464-f933-8a5b18a30f08.png)

## 1.前回の記事

**[【AWS環境構築メモ⑥】ACMでSSL証明書を発行する](https://qiita.com/yuuichimizu

元記事を表示

AWS CDKで作る CI/CDパイプライン

# はじめに
今回、静的サイトをホスティングするための環境を構築することになりました。
環境構築にあたって、以下の記事を参考にCDKを用いてCI/CDを構築しました。

https://dev.classmethod.jp/articles/aws-cdk-cicd/

# 今回構築した構成
上記の記事に合ったCodeシリーズを用いたCI/CDに加え、静的サイトをホスティングするためのS3、CDNとしてCloudFront、ベーシック認証のためにCloudFront Functionを用いています。
これらのサービスを以下の図のような構成で作成しました。
dev、stg、prdの3環境分作成します。

![CI:CD_structure.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/244872/ce6b9fd0-e22a-345a-962e-98f03ebcc13b.png)

一連の挙動としては以下の流れとなります。
– クライアントからCodeCommitのリモートリポジトリへPush、または各

元記事を表示

AWSにIaC環境をTerraformを使って構築してみた(基礎)

## はじめに
最近、IaC(Infrastructure as Codeの略)でシステム構築を行うことが主流になってきています。
IaCとはその名の通り、システムインフラをコードで管理しようというもので、リソースの全体像をコードで把握したり、そのソースで自動構築を行うことで短時間で多くのサーバを構築できるといったメリットがあります。
以前からこれらを実現するために、Ansible、chef、puppetといったツールが使われていましたが、今回は、昨今あたり前となっているAWS環境でIaC環境を実現するためにTerraformを使用します。

TerraformはクラウドリソースそのものをIaCで構築できるところがメリットです。AWSであればCloudFormationが同じ役割を担いますが、AWSやGCPなどマルチクラウドで使用できる汎用性に期待して、今回はTerraformを採用します。

## システム構成
システム構成は以下の図となります。
今回は、CodeCommitにリソース情報をプッシュしたらAWSのVPCが自動で作成される環境を構築してみましょう。

![aws-dr

元記事を表示

ぼくのかんがえたさいきょうのGithub Actionsで複数のCloudFormationファイルをCI/CDする方法

terraformになれてたぼくがCloudFormation(CFn)で立ち上げたプロダクトにアサインされてCI/CDをしようと思った時に考えたさいきょうの方法です。
(如何せんCFn初心者なので、全然最強でない可能性ありますがご了承ください。。)

### やりたかったこと
– dev(development),staging(stg),production(prd)など複数環境に手軽にデプロイ(prdはさすがに手軽すぎるのは危険なので、チェック機構は欲しい)
– 手軽にデプロイしたいが、どういう変更が入るか(`terraform`で言うところの`terraform plan`の結果)は知りたい
– 色々カスタマイズできるようにしておきたい

### 実現したこと

> – 色々カスタマイズできるようにしておきたい

下記公式のactionがありましたが、リポジトリがアーカイブされており2年前を最後にメンテナンスされてないようだったので使うことを断念しました…

>AWS CloudFormation “Deploy CloudFormation Stack” Action f

元記事を表示

WSL2でaws-vaultが使えるようになるまで

## はじめに

WSL2でaws-vault使えるようにするための手順を忘備録として書きます。
検証環境はWSL2のUbuntu20.04です。
なお、以下のコマンドでWSLのバージョンの確認ができます。

“`
$ wsl -l -v
“`

前提として必要なライブラリをインストールします。

“`bash
$ sudo apt install build-essential curl git
“`

今回はHomebrew経由でインストールするので、まずHomebrewをインストールします。
以下のページの「インストール」のコマンドを実行します。
https://brew.sh/index_ja

“`
# 2022年3月時点
$ /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”
“`

インストール後に以下のコマンドを実行します。

“`
$ echo ‘eval “$(/home/linuxbrew/.linuxbrew/

元記事を表示

エンジニア初心者がAWSでSSL化した

### 本記事を書く理由
私がAWSでSSL化した方法を共有するため。
自分の知識のアウトプットのため。

### 前提条件
* お名前.comなどでドメインを取得し、インターネット上にアプリを公開している

### 方法
#### SSL化証明書を作成
1. 証明書を発行するためにAWSで`Certificate Manager`を検索する
![スクリーンショット 2022-03-27 16.28.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2581600/b38f0f3c-dc89-93b6-ef20-11f8c4c43ee8.png)

2. リクエストをクリックする
![スクリーンショット 2022-03-27 17.20.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2581600/281768af-cb8f-6c5b-5bd0-ee29b1846312.png)

3. `パブリック証明書をリク

元記事を表示

各種ブラウザでAWS Extend Switch Roles

AWSマネジメントコンソールではスイッチロールの履歴が5つまでしか表示されない。
「**AWS Extend Switch Roles**」ブラウザの拡張機能を使うと、6つ以上のスイッチロールの履歴を管理することができる。

# 0.前提条件
– スイッチ元アカウントのスイッチするユーザに、ロールを引き受けるポリシー(`”Action”: “sts:AssumeRole”`)が許可されていること。
– スイッチ元アカウントのユーザのポリシー設定例
– `*`はスイッチ先アカウントIDの想定
“`json
{
“Version”: “2012-10-17”,
“Statement”: {
“Effect”: “Allow”,
“Action”: “sts:AssumeRole”,
“Resource”: “arn:aws:iam::*:role/test_RO”
}
}
“`

– スイッチ先アカウントに、スイッチロールに使うロールが適切な権限で作成されていること。
– スイッチ先アカウ

元記事を表示

AWS MWAA (Amazon Managed Workflows for Apache Airflow) にて、`airflow.exceptions.AirflowTaskTimeout: DagBag import timeout`のエラー

# はじめに
AWS MWAA (Amazon Managed Workflows for Apache Airflow) にてワークフロー実行中に表題のエラーに遭遇したため、その解決法について簡潔にまとめます。

# 何が起きたか?
ワークフローを実行するとエラーが起き、タスクのエラーログには以下のように出ていました。

“`txt
Executor reports task instance finished (failed) although the task says its queued. (Info: None) Was the task killed externally?
“`

どうやらタスクはキューされているのに、実行できていないようです。これだけではエラーの原因がわからずですが、サーバーログの方に原因がきちんと出ていました。

以下ログ
“`txt
airflow.exceptions.AirflowTa

元記事を表示

CloudEndure Migration とは

## 勉強前イメージ

正直はじめて聞いたサービス名

## 調査

### CloudEndure Migration とは

AWSのエージェント型サービスでクラウドへの移行を自動化するものです。
オンプレからクラウド、またクラウドからクラウドと様々な移行が可能です。
サービスとしては無償で利用できますが、CloudEndure利用時のインスタンスには費用が発生します。

### CloudEndure Migration の特徴

– 移行が簡単

物理でも仮想でも、クラウドでもどのインフラからでもアプリケーションの移行を可能にします。
AWSのどのリージョンでも使用できます。

– コスト削減ができる

CloudEndure Migrationは上記でも記載しましたが、無償で移行でき
前払いなども必要ないです。

– ダウンタイムを最小化できる

CloudEndure Migrationではソースマシンが自動的にコピーされますが
スナップショットの作成やディスクへの書き込みは行われないのでパフォーマンスへの影響は最小園に抑えられ、
マシンの再起動も不要です。
継続的にレプリ

元記事を表示

【AWS環境構築メモ⑥】ACMでSSL証明書を発行する

## 0.はじめに

**ACMでHTTP化に必要なSSL証明書を発行します。**

– **ACM**
AWS Certificate Managerの略。SSL証明書発行サービス。

![スクリーンショット 2022-03-27 17.27.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/891391/9354f572-1e83-b467-d3a2-ecfec2717a72.png)

## 1.前回の記事

**[【AWS環境構築メモ⑤】EC2インスタンスを作成する](https://qiita.com/yuuichimizuta/items/279bef2573c30b4175a5)**

## 2.前提条件

– **AWSアカウント作成済み**
– **リージョンはアジアパシフィック(東京) ap-northeast-1**
– **VPC作成済み**
– **セキュリティーグループ作成済み**
– **EC2インスタンス作成済み**

## 3.作成手順(サマリー)

|順番|手順|

元記事を表示

Lambda (golang)でOpenSearchのドメインを定期的に名前解決し、ALBのターゲットを更新(プライベートサブネットのみ)

# 初めに
生産技術部で製品の検査工程を担当しているエンジニアです。工場のデータを見える化するために、工場で使わなくなったサーバを利用して、オンプレミス環境に[The Elastic Stack](https://www.elastic.co/jp/elastic-stack/)(Elasticsearch、Kibana、Logstash、Filebeat、Metricbeat)でサービスを構築しました。

しかし、本業である生産技術業務の傍らで、生産量増加に伴うサーバ負荷対応や故障対応といったサーバの管理を行う事は難しいため、AWSのマネージドサービスの利用を検討しています。AWSを利用する目的は管理面の課題解消だけでなく、AWSで提供される多様なサービスとの連携や、パブリッククラウドを利用する事による他事業部との連携を視野に入れて検討しています。

# AWSで検討している構成
会社のネットワークから[AWS Direct Connect](https://aws.amazon.com/jp/directconnect/)(専用線接続サービス)を利用し、接続しています。セキュリティ

元記事を表示

さくっとDockerでEC2にGitLabを構築する

## はじめに

新規サービスの開発プロジェクトに参加しています。プロジェクト発足当初はGitレポジトリをホスティングするシステムがありませんでした。そのためDockerを使用してAWSのEC2で構築した記録です!

本構成は[Reference architecture: up to 1,000 users](
https://docs.gitlab.com/ee/administration/reference_architectures/1k_users.html)
を参考をしおり、多くのユーザ利用を想定しません。(プロジェクトの関係者のみ利用を想定)

考慮する点としては
>If you need to serve up to 1,000 users and you don’t have strict availability requirements, a single-node solution with frequent backups is appropriate for many organizations.

のため冗長構成にせず、バックアップを頻繁に取得することで

元記事を表示

Lambda Authorizer 概要 メモ

## Lambda Authorizerとは

* Lambda 関数を使用して API へのアクセスを制御する API Gateway の機能。
* クライアントが API リクエストを送信すると、API Gateway は Lambda Authorizerを呼び出す。
* トークンやリクエストパラメータを入力として受け取り、IAM ポリシーを出力として返却する。

## 認証の流れ

![lambda_authorizer.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/586535/bb545e3a-41b2-9143-dab8-9d9b7b402043.png)

**① クライアントは、API Gatewayに対してAPIリクエストを行う。**
※API Gateway は、対象APIメソッドに対してLambda Authorizerが設定されているかを確認する。

**② Authorizerが存在する場合、API Gateway は Lambda 関数を呼び出す。**

**③

元記事を表示

【個人開発】温泉宿の情報交換ができる掲示板とSNSが組み合わさったサービス「みんなの温泉宿」を開発しました。

# はじめに
こんにちは。ひろかずと申します。独学でプログラミングを学んだ後、タイトルにあるようなサービス「[みんなの温泉宿](https://minnano-onsenyado.herokuapp.com)」を作ってみました。
作ろうと思った理由は主に以下の2点です。
##### ①自分自身が温泉宿に泊まってのんびりすることが好きで、情報交換ができる場を作りたかった。(掲示板)
##### ②温泉宿が好きな人同士で繋がれる場を作りたかった。(SNS)
これら①②を合体させて、掲示板+SNSの機能を持ったサービスとなりました。
![無題9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2493043/5aa13fc4-854a-f352-e75c-ee0b2dc4e1f3.png)

# 工夫した点
##### ①会員登録無しでも使用可能
まずは誰でも気軽にお試し感覚で使ってもらいたいと思い、登録無しでも口コミ投稿・掲示板書き込み機能を使えるようにしました。その場合、その方の名前は「名無しさん」となり

元記事を表示

CloudFront&Lambda@Edgeで画像リサイズする構成のSAMテンプレートを作成してみた

# 概要

下記URLのAWS公式ブログにあるような、AWSのCloudFrontとLambda@Edgeを使った画像ファイル自動リサイズ構成を一括で構築するSAM(ServerlessApplicationModel)のテンプレートを作成してみました。
[Amazon Web Services ブログ: Amazon CloudFront & Lambda@Edge で画像をリサイズする](https://aws.amazon.com/jp/blogs/news/resizing-images-with-amazon-cloudfront-lambdaedge-aws-cdn-blog/)

![resize_image.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2531623/9c149fa3-1113-735b-3c9b-1a0b1154486c.png)

CloudFrontのViewerRequestとOriginResponseの通信部分(上の図の①と③部分)に関数の処理を挟み、クエリ

元記事を表示

AWS公式資料で挑むSCS認定(23)-こんな時どうする(分野5:データ保護)

##### [前回] [AWS公式資料で挑むSCS認定(22)-こんな時どうする(分野4:ID及びアクセス管理)](https://qiita.com/mingchun_zhao/items/2c9d60dc58a58749f807)

## はじめに

最後の分野「分野5: データ保護」となります。

## 「分野5: データ保護」基本知識のおさらい

### データ保護に使用されるサービス

– AWS KMS
– AWS CloudHSM
– AWS Certificate Manager
– AWS Secrets Manager
– Amazon S3 Glacier
– Amazon S3 Glacier Vault
– Amazon RDS
– Amazon DynamoDB
– Amazon Elastic File System(EFS)

### 暗号化

#### 暗号キー

– データキー
– データの暗号化/復号を行う対称キー
– 暗号化対象のオブジェクト毎にユニーク
– KMSキー(マスターキー)により暗号化される
– KMSキー(マ

元記事を表示

OTHERカテゴリの最新記事