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

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

[AWS] SCPでできること

AWSアカウント全体でやっていいこと、やっちゃいけないことをAWS OrganizationsのSCPで制限したいケースがあると思うのですが、ご作法が色々あるので、備忘録的にメモする。

## Principal/NotPrincipal句をかけない。
* 代わりにConditionでがんばる

“`{
“Version”: “2012-10-17”,
“Statement”: [
{
“Sid”: “DenyAssumeRoleToKeyMGRfromSSOuser”,
“Effect”: “Deny”,
“Action”: “sts:AssumeRole”,
“Resource”: “arn:aws:iam::*:role/testRole0*”,
“Condition”: {
“ArnLike”: {
“aws:PrincipalArn”: “arn:aws:iam::123456789012:role/aws-reserved/sso.amazonaws.com/

元記事を表示

[CDGC] Amazon S3のスキャン

# はじめに

[インフォマティカ](https://www.informatica.com/jp/)が提供する、 [CDGC](https://www.informatica.com/jp/products/data-governance/cloud-data-governance-and-catalog.html)(データガバナンス&カタログ)を使って、Amazon S3からメタデータを取得(スキャン)するためのガイドです。2023/08時点の情報を元にしています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2986164/53441740-848c-dadd-21df-55b780144b75.png)

# 事前準備
CDGCがセットアップ済みであり、メタデータコマンドセンターのメニューにアクセスできるライセンス、およびユーザロール、ユーザである事を確認して下さい。[こちらのナレッジベース](https://knowledge.informatica.com/s/articl

元記事を表示

【小ネタ】S3のライフサイクルルールで、非現行バージョンの保持するバージョン数の設定ができない…??

# はじめに
先日バージョニングを有効化しているS3で以下のライフサイクルルールを設定したところ…
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3491064/0807183f-b2da-6cf0-535d-dc80338faa26.png)

ルールの作成時にエラーが出ました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3491064/d2570365-0e4a-9735-4836-284292936396.png)

直訳すると以下の通りですが、
NewerNoncurrentVersionsとは一体なんだろう…。
“`:翻訳
‘NewerNoncurrentVersions’ for
NoncurrentVersionExpiration action must be a positive integer

NoncurrentVersionExpiratio

元記事を表示

SSHでアクセスできない

## 備忘録
スクール学習中で分からなかったことや解決したことの備忘録です

スクールの課題でVPCで仮想ネットワークを作成するというものがあったのですが、実際にVPC、サブネット、インターネットゲートウェイ、EC2を作成して、SSHも「0.0.0.0/0」で許可し、いざ接続!と意気込んたもののアクセスできず・・・

## 結論
結論としてはそもそもインターネットの出入り口の役割もつインターネットゲートウェイがデタッチ(停止状態)になっていて出入り口が封鎖されていたこと、ルートテーブルのルートがローカルしか無かったことが原因でした。
つまり、ルートがローカル(VPCのIPアドレス)だけだったので入り口はあっても出口がなかった状態だったということですね。

インターネットゲートウェイをアタッチにして、ルートの送信先を「0.0.0.0/0」ターゲットをing-xxxxxxxx(インターネットゲートウェイ)に設定して解決しました。

元記事を表示

Terraformを用いてACMで証明書を発行する際にドメインを複数登録する方法

Terraformで証明書を発行する際に以下のように一つの証明書に複数のドメインを入れたいときとかありませんか?
![スクリーンショット 2023-08-03 193446.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3439167/41ec590f-c3a1-b231-af4c-f0750cedd4c3.png)
画面上でポチポチ操作するときは「この証明書に別の名前を追加」をクリックすれば追加できますが、この操作をTerraformで行うときに少し詰まったのでその方法を共有させていただきます。

# 結論
subject_alternative_namesを使うことで追加できます。
具体的には以下のようになります。

“`
resource “aws_acm_certificate” “tokyo_cert” {
domain_name = “example.com”
subject_alternative_names = [“*.example.com”]
validat

元記事を表示

RDS for PostgreSQLの監査ログで取得行数を出力する

こんにちは。インサイトテクノロジーの松尾です!

さて、本記事では RDS for PostgreSQL の監査ログ (pgaudit) で select などが実行された際の取得行数を出力する方法を紹介します!

## PostgreSQL 15 から可能になった pgaudit での取得行数出力

実は PostgreSQL 14 以前の `pgaudit` では、取得行数を監査ログへ出力することができませんでした。そのため監査ログで `select` 文が出力されていても、その `select` 文でどれくらい大量のデータが返されたかを監査ログからは確認できませんでした。

PostgreSQL 15 では `pgaudit` のオプションとして取得行数を出力するオプションが追加されました。ラメータは `pgaudit.log_rows` です。オプションです。デフォルトでは無効になっています。

> pgaudit.log_rows
>
> Specifies that audit logging should include the rows retrieved or aff

元記事を表示

【AWS】AWS Organizations への既存アカウント招待について

# はじめに
AWSの利用が拡大し、複数のAWSアカウントを管理する必要が生じたタイミングで、AWS Organizations の利用検討、導入するケースがあるかと思います。

そこで行われるのが【AWS Organizations への既存AWSアカウント招待】です。

既存AWSアカウントの招待の手順についてはウェブ上で多くの記事が存在していますが、実施をしてふと気になったことについても記載したいと思います。

# 既存AWSアカウント招待の概要
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2822205/857ff300-6dcc-4bcb-5e4c-2138443c7edf.png)

左側の `Aアカウント` がAWS Organizations導入前に作成したAWSアカウントです。
右側はAWS Organizationsを活用したマルチAWSアカウント環境です。

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

元記事を表示

Redshiftクラスタに10TBのデータを入れてみる

# はじめに

– Redshiftのra3系ノードに10TBのテストデータを入れた結果をまとめます。
– あまりこういう検証データが世の中になかったので。
– かつ、検証で数百ドルを消費したことの所属会社への贖罪も兼ねて。

# 環境情報

VPC内に立てたクラスタ系Redshift(サーバレスではないほう)で以下の2パターンを検証しました。

– トライ1
– **ra3.xlplusの1台**構成
– 1台構成の場合、最大で**4TB**までストレージを利用可能。
– 1台でノードを作成すると、リーダーノードとコンピュートノードが1台に同居する形で、合計1台になります。
– トライ2
– **ra3.xlplusの2台**構成
– 2台構成の場合、最大で**64TB**までストレージを利用可能。(詳しくは[こちら](https://docs.aws.amazon.com/ja_jp/redshift/latest/mgmt/working-with-clusters.html#rs-ra3-n

元記事を表示

AWSに対するAzureの優位性を考えてみる

# きっかけ
クラウドって何を使ったらいいの?という質問を受けることがあります。
極論、AWSを使えば問題ない、という答えで大体問題ないのですが、
他のクラウドも選択肢としてあっていいはずです。
Azureのアーキテクトとして、今回はAWS vs. Azureをテーマに書いてみようと思います。

# 観点
クラウドを導入する場合に考慮する観点は色々あると思います。
– 企業で導入する場合
– 運用するエンジニアの観点、人材は確保できているか
– ソリューションとして必要なサービス、可用性などを満たしているか
– 研究機関で導入する場合
– 決済手段、為替レートなどの変動する要素をどこまで許容するか
– 先進的なサービスが提供されているか

# 現状
各クラウドのシェアについては下記記事を参照。AWSとAzureのシェアの差が9pointと接近し、「2大クラウド」といっていい状況なんじゃないかと思います。
Q1 Cloud Spending Grows by Over $10 Billion from 2022; the Big Three Account

元記事を表示

【AWS RDS】RDSの冗長化構成

## 内容

RDSの冗長化構成時に取る手順を以下にまとめる。

## 目次
– [RDSの冗長化構成手段](#rdsの冗長化構成手段)
– [Auroraではない場合の設定](#auroraではない場合の設定)
– [Auroraの場合の設定](#auroraの場合の設定)

## RDSの冗長化構成手段

RDSの冗長化の手段には以下の2つがある。

– マルチAZ構成
– リードレプリカ

### マルチAZ構成

RDSインスタンスを複数のAZに配置することで、どれか1つのAZに障害が発生してもシステムの利用を継続できる「高可用性」を実現するための手段。
データは同期的に複製される。

### リードレプリカ

「データ読み取り専用」のRDSインスタンスを作成することで、「拡張性」を実現するための手段。
AWS公式によると「RDS リードレプリカは、マルチAZ配置を補完する」とあり、リードレプリカでも「高可用性」の実現は可能。
データは非同期的に複製される。

## Auroraではない場合の設定

### マルチAZ

マルチAZ構成にするかどうかは、RDS新規作成時の設定項

元記事を表示

CostExplorerでパブリックIPv4アドレスの費用を試算してみた

# はじめに
[前回の記事](https://qiita.com/ksaga9/items/3b87fae46f8ff13fd3aa)と関連したものです。

[AWS におけるパブリック IPv4 アドレスの使用状況の特定と最適化](https://aws.amazon.com/jp/blogs/news/identify-and-optimize-public-ipv4-address-usage-on-aws/)でアナウンスされているAWSにおけるパブリックIPv4アドレスの料金改定の影響調査を行っています。
前回はIPAMを利用して関連するIPアドレス等のリソースを確認しましたが、Cost Explorerでも費用を試算できそうだったので、やってみました。
その手順を記録のために残します。

というか、試算だけだったらIPAMなど使わずCostExplorerだけで確認できそうでした…。

# 使用タイプの追加
上記ブログには、以下のように書かれています。

>本日より、デフォルトで、Cost and Usage Report (CUR) には、使用中のパブリックIPv4アドレス

元記事を表示

ARN情報とリソースURLの紐づけ

# そもそもの要件(なぜやりたいのか)

AWS Security HubやTrusted Advisorのダッシュボードは多数のサービスと統合しており、これらのサービスに対応するリソースへの直接リンクが提供されています。これはサービスにより異なりますが、Security HubやTrusted Advisorから直接AWS Management Consoleの該当ページにアクセスできるときには非常に便利です。

その一方で、AWS Security HubやTrusted Advisorの情報からリソースへの直接リンクがないものも沢山ありました。

![タイトルなし.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3521205/e886e1f3-48b8-6da4-ce33-bca1bcb7a6bb.png)

CLIやSDKで取得しても良いのですが、「やっぱりコンソールから見れたほうがいいかも」という要件があったので、少し確認してみました。

# AWS Security Hubについて
AW

元記事を表示

AWS IAMとその他各種ポリシーの評価ロジックを整理しよう

AWSにおける認証認可のコアとなる[IAM](https://aws.amazon.com/jp/iam/)。
そしてIAMと絡んで「認可」のAllow/Denyを決定する各種ポリシーたち。

言うまでもないことですが、ワークロードを構築し運用する上で、認証認可はとても重要な分野。
最近、組織内の勉強会で参加者の皆さんと会話する中で、あらためてこのへんの理解を自分自身でも整理しておくべきと感じました。

私が「これはきっちり整理しておきたい」というものをリストアップした形になるので、読者の皆さんからすると散漫だったり物足りなかったりするかもしれませんが、ご容赦ください。

# IAMとは

Identity and Access Management(IDとアクセス管理)。
AWSが提供するクラウド基盤において認証と認可を司るコアサービス。
リージョンに属さないグローバルサービスで、その機能の中心部はバージニア北部リージョンに存在。

# IAMポリシーとIAM**の関係

* IAMポリシーは __アクション__(例:EC2をどうするこうする、CloudWatchをどうするこうする)

元記事を表示

connect ec2 by session manager

以下の条件を満たすことが必要
1. IAM role: police AmazonSSMManagedInstanceCore とAmazonSSMPatchAssociation を追加
2. session manager agent install
3. 以下のどちらか
3-1. internet accessできること:public ip or NAT
3-2. VPC endpoint( ssm, ssmmessages)を設定

元記事を表示

Lightsailを作ってみる①~インスタンスの作成

# はじめに
WordPressでのサイトを作成する必要があり、それに伴ってAWS上でLightsailでサーバーを構築してみました。
その際の手順を特に難しいところなどはないですが、メモとして残しておきます。
初めから構築の際にWordPressを選択してインストールされた状態のものが提供されるので、ブログの運用だったりと目的がはっきりしているとかそこまでの高スペックは必要ない(もちろんLightsailでも高スペックのものは高くつくが。。)などのとりあえず構築してみたいなどがあれば、こちらを選択するのもありなのかなと考えています。

# Lightsailとは(EC2との違いなど)
LightsailはEC2と異なります。
EC2は主に仮想サーバーのみを提供するのに対して、Lightsailは仮想サーバー+αの状態を作成することができます。色々違いはありますが、初期の構築時にWordPressやらRedmineを選択することができるなど用途や目的に合わせての初期構築が行えます。
料金に関してはEC2が従量課金になるのに対して、Lightsailは月額料金になったりと料金体系からも異

元記事を表示

CloudFormation内でForEachが使えるようになりました

# はじめに
2023/7/26にCloudFormation内でForEachが使えるようになるアツいアップデートがありました。

これまでは同様のリソースをCloudFormationで作成するには**冗長なコード**を書かざるを得ない状況でしたが、今回のアップデートにてその部分が解消されるようになりました。

https://aws.amazon.com/jp/about-aws/whats-new/2023/07/accelerate-cloudformation-authoring-experience-looping-function/

## 検証してみる
公式ドキュメントに記載の通り、`Fn::ForEach`を使用することでForEachを使用できます。

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-foreach.html

:::note warn
注意
ForEachを使用する場合でもスタックごとのリソース数/テンプレート

元記事を表示

Lambda関数 指定のログが出た際、Slackに通知する

# 0/3 全体像
![download.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/968569/7a4f5954-5c46-886d-d790-e961b2438e0a.png)

# 1/3 事前設定
## SNSトピックを作成しよう
### AWS SNSから新規トピックを作成 名前はテキトーで、タイプはスタンダート
![39c9b3ab-04aa-43cd-8d97-85e65f506cda.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/968569/9cc0d2e3-7ec8-d0a6-2f93-30ac075eeb31.png)![download.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/968569/3516aef0-f9a3-25ed-b82c-100f761b3837.png)

## AWSとSlackを接続

元記事を表示

IAM Roles Anywhereの理解を整理してみた

# 概要

AWSをローカル環境からCLIとかで操作するときにアクセスキーとシークレットを設定すると思いますが、これらの管理って地味に面倒だと思います。
そこで気になったのが「アクセスキーを排除する」という触れ込みの**IAM Roles Anywhere**というサービスです。

しかしいざ使ってみると「これってアクセスキーより面倒じゃね?」と感じてしまいました。そこで諸々の技術ブログを読んでみたのですが、妙に複雑に思えて「要するにどういう仕組みで何が嬉しいの?」を理解するのに苦労しました。

というわけで **IAM Roles Anywhereはなぜ安全なのか**、**IAM Roles Anywhereのメリデメって結局のところ何なのか?** について個人的な理解を簡単にまとめてみました。

※この記事ではIAM Roles Anywhereの細かい仕組みや使い方には触れません。その辺りについては以下の記事をお勧めします。

* AWS公式のブログです。まずはこちらを読むのが良いと思います。
[[IAM Roles Anywhere で AWS IAM ロールを AWS 外部の

元記事を表示

AWSのEC2について

AWSサービスの「EC2」について勉強をしたので自身の理解・復習また文章力の向上のためアウトプットさせていただきます。

EC2とは

EC2(Elastic Compute Cloud)とは仮想サーバーサービスで、物理サーバーの構築なしで手軽に仮想サーバーを提供できることが強みになります。LinuxやWindowsの仮想サーバを数分で作成可能でスペック変更や削除も容易できます。従量課金で、サーバの起動時間に応じて料金が発生するので必要な際に起動したり不要な際は停止できる点はサービスの強みです。

EC2の基本的な設定について

EC2には様々な設定項目が存在しますのでEC2の基本的な設定について説明したいと思います。

名前とタグ

インスタンスにはタグを付けることができ、識別・整理するのに役立ちます。

勉強で触った際は「Name」を使用しました。

インスタンス数

一度に複数のインスタンスを作成できます。

クイックスタート

EC2のインスタンスを簡単に構築するための「クイックスタート機能」があり

元記事を表示

社内のAWS JAMイベントに参加した

今日社内でAWS JAMのイベントがありましたので参加しました。

# AWS JAMとは?

https://aws.amazon.com/jp/blogs/news/aws-summit-tokyo-2023-aws-jam-intro/

AWS Summit Tokyo 2023のページで紹介した内容と似ています。チーム分けでAWS関連の課題を解決してポイントを獲得し、競い合うゲームです。
課題は簡単なものから難しいものまで色々あります。
実際にAWSのコンソールから操作して、必要な設定を弄って、結果をチェックする感じです。
ヒントがありますので、全然わからなくてもヒントを見ればどうすればよいのかわかります。

# 今日のイベント

今日は1時間半の枠で3人ごとにチーム分けでイベントが開催されました。
AWS Summit Tokyo 2023とは違い、hardの課題はありませんでした。
それでも普段あまり触ったことのないサービスがありましたので、課題を解くのに時間がかかりました。(security groupとか、load balancerとか)
結局自分のチームはあまり点が

元記事を表示

OTHERカテゴリの最新記事