AWS関連のことを調べてみた

AWS関連のことを調べてみた

CloudFormation スタックを自動作成・自動削除

# はじめに
CloudFormationを使ってリソースを自動で作成し、自動で削除する方法をまとめました。
あまり利用するケースはないと思いますが、備忘録として記しておきます。

## スタックの自動作成

### Lambda
– Python3.9で作成する

コード

import boto3

vStackName = “スタックの名前”

cf = boto3.client(“cloudformation”)
res = cf.create_stack(
StackName=vStackName,
TemplateURL=’https://バケット名.s3.ap-northeast-1.amazonaws.com/テンプレートファイル名’,
Parameters=[
{
‘ParameterKey’: ‘テンプレート中のパラメータキー’,
‘ParameterValue’: ‘パラメータに入

元記事を表示

AWSコンソールのSAML認証を解剖してみた

# はじめに
 AWSコンソールは,外部IdP経由でSAML認証が利用できます。その設定例として,KeycloakをIdP(Identify Provider)とした事例は幾つか情報があります。ただ,それらのサイトでは設定方法の説明はあるものの,設定がSAML認証や送受される情報にどう影響するのかについて詳しく言及したサイトはあまりありませんでした。私がSAML認証(KeyCloak+AWSコンソール)を試して手こずった際にいろいろ調査したので,備忘のために記事にしておきます。
 なお,この記事は2023/11時点の情報です。
## 参考:KeyCloakでAWSコンソールにSSOする設定手順
– https://aws.amazon.com/jp/blogs/big-data/federate-amazon-quicksight-access-with-open-source-identity-provider-keycloak/
– https://xp-cloud.jp/blog/2017/11/09/2261/
– https://www.ryuzee.com/contents

元記事を表示

S/4 HANA2023にFIORIをインストールしてみた

前回の記事でS/4 HANA2023のインストールが完了しました。
https://qiita.com/goyamamo/items/76d9ee723da2ffad8c1f
続けてFIORIのコンポーネントを入れていきます。

### ソフトウェアダウンロード
メンテナンスプランナのExplore Systemから自分のシステムを探します。
※ここで自分のシステムが出てこない場合は、メンテナンスプランナにシステムを認識させる必要があります。この手動登録の手順に関してはまた別記事にまとめます。
サイクル内のPlanに移動します。
Install or Maintain an Add-onを選択する。
mojikyo45_640-2.gif

下記2件を選択し、Confirm Selection
・SAP FIOR

元記事を表示

[AWS] CloudWatchダッシュボードの数値ウィジェットで表示する値の設定について(指定期間中の合計件数を表示したい)

CloudWatchダッシュボードはCloudWatchサービスの一部で、監視データを視覚的に表示し、カスタマイズ可能なダッシュボードを作成できる機能です。

今回は、この中の数値ウィジェットの設定で少し分かりにくい部分がありましたので調査しました。数値ウィジェットは特定のメトリック値を表示するシンプルなウィジェットです(右側はゲージウィジェットですが同様の設定があります)。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/172826/399a52ec-4359-2aea-dff8-e061b0de123f.png)

# 表示したいメトリクスの例

例えばこのようなメトリクス(これはあるLambda Functionの実行件数Invocationsです)があった場合、

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/172826/0013a139-0571-eabf-0402-1979

元記事を表示

S3クロスリージョンレプリケーションをやってみた

## 手順
* 送信元、送信先にバージョニングが有効になっているバケットを作成
* 送信元バケットにレプリケーションルールを作成
* 送信先バケットのポリシーを修正

### 送信元、送信先にバージョニングが有効になっているバケットを作成
まずは送信元、送信先にバージョニングが有効になっているバケットを作成する

送信元バケット
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2733779/373a47be-a6a5-5e69-2c02-024f702a89d1.png)

送信先バケット
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2733779/50366074-c83f-6a73-5dda-b3ea9428d40e.png)

::: note info
バージョニングが有効になっていること
:::

### 送信元バケットにレプリケーションルールを作成

1. レプリケーションル

元記事を表示

AWS CLI で RequestTimeTooSkewed が出たら

# 結論
AWS CLI で RequestTimeTooSkewed が出たら `ntpdate` で時刻を修正する

# 手順
下記を実行する
“`
sudo apt install ntpdate
sudo ntpdate ntp.nict.jp
“`

# 著者の環境
* Windows11 + WSL2(Ubuntu 22.04)
* AWS-CLI2

# 起こったこと
ある日 `aws s3 sync` をしようとしたら下記のメッセージとともにエラー終了した。
“`
An error occurred (RequestTimeTooSkewed) when calling the ListObjectsV2 operation: The difference between the request time and the current time is too large.
“`

`date` コマンドでUbuntuが認識している現在時刻を確認すると、実時刻から20分ほど遅れていた。

~~調べると `hwclock` というコマンドでハードウェアクロックとシ

元記事を表示

Amazon EKSの耐障害性を考える

# はじめに
この記事はDevOps on AWS大全の一部です。
DevOps on AWS大全の一覧は[こちら](https://qiita.com/tech4anyone/items/b06f88035d27c6ef13b2)。

この記事ではAmazon EKSを耐障害性の観点から超詳細解説しています。

具体的には以下流れで説明します。

– Amazon EKSとは
– Amazon EKSのスケーラビリティ
– Amazon EKSのストレージ
– Amazon EKSのロギング

AWSの区分でいう「Level 200:トピックの入門知識を持っていることを前提に、ベストプラクティス、サービス機能を解説するレベル」の内容です。

# この記事を読んでほしい人
– Amazon EKSを採用するときのベストプラクティスを説明できるようになりたい人
– Amazon EKSの耐障害性に不安を感じている人
– AWS Certified DevOps Engineer Professionalを目指している人

# Amazon EKSとは
EKSとはKubernetesク

元記事を表示

クロスアカウントのIAMロールの設定について(アシュームロールの設定)

# はじめに
業務としてクロスアカウントでRedshiftのData APIの実装をすることになりました。
その実装をするにあたって、IAMロール周りの設定がややこしかったため、自分の備忘録も兼ねて記事にしました。
この記事を読んでいただければ、クロスアカウントのIAMロール設定がわかると思います。

今回のテーマとなる構築として、
「アカウントAのLambdaを使用してDataAPIを実装」
→「アカウントBのRedshiftにクエリを投げる」
を想定しています。
その中で、本記事はIAMロールの設定だけにフォーカスしています。

AWSの他サービスで使用するクロスアカウントのIAMロールの設定も基本的な考え方は同じはずなので、お役に立てればと思います。

# 記事内の登場用語と略称について
登場用語
Redshift・・・列指向型のRDS、速い
Lambda・・・サーバレスのコンピューティングサービス、15分の壁
DataAPI・・・サーバレス、非同期実行でRedshiftクラスターにSQLクエリを投げられるAPI
IAMロール・・・The☆権限(AWSのエラー原因の超常連)

元記事を表示

コスト透明性プラットフォーム Vantage のアップデートまとめ Jul – Nov 2023

## Vantage とは
Vantage は マルチクラウドに対応したクラウドコスト管理のためのプラットフォーム (SaaS) です。ドキュメントなどでは Cloud cost transparency platform と表現されています。クラウドサービス使用料の管理をシンプルにし、料金の予測や今月はどのリソースにいくらかかったか、どのリソースの利用が多かったかなど、支出状況を簡単に把握できます。

https://www.vantage.sh/

3 大クラウドの AWS, Azure, Google Cloud の他、Snowflake や Datadog, New Relic などの複数の SaaS にも対応し、対応サービスも順次増えています。これらのサービスのコストを 1 つのレポートで確認できるのが大きな魅力です。

Vantage は日々機能拡張され使いやすくなっています。本記事では 2023 年 7 月から 11 月までの主要なアップデートをまとめました。

## July 2023
### 多次元レポートのサポート
Vantage のメイン機能である Cost Re

元記事を表示

tfstateの管理 バックエンド

## `tfstate`の管理上の注意

特段、設定をしない限り`terraform apply`をしたマシン上に`tfstate`ファイルが保存される。

変更差分を正しく反映させるには**最新の`tfstate`ファイルを常に共有する必要がある。**

:::note info
`tfstate`ファイルは常に最新のものを共有する
:::

## 用語

`tfstate`を管理するストレージを`Terraform`の`バックエンド`という。

## バックエンドの設定方法

バックエンドとして汎用的に使われる例として`AWS`の`S3`がある。

### 設定手順

1. バケットの作成
1. バケットのバージョニングを有効にする(推奨)
1. `Terraform`のモジュールに公式ドキュメントを参考に以下を追記

“`hcl
terraform {
backend “s3” {
bucket = “mybucket”
key = “path/to/my/key”
region = “us-east-1”
}
}

“`

https:

元記事を表示

AWS Step Functions の redrive を使ってみた

AWS Step Functions について使ってみた結果を残していきます。今回はワークフローが失敗したポイントから再実行できる redrive について確認しています。
# ドキュメントの確認
## Whats new の情報
https://aws.amazon.com/jp/about-aws/whats-new/2023/11/aws-step-functions-restarting-workflows-failure/

What’s new には「AWS Step Functions がワークフローが失敗したポイントから簡単に再実行できる」という要点と Step Functions 全体の便利さの紹介が書いてあります。[AWS Blog へのリンク](https://aws.amazon.com/jp/blogs/compute/introducing-aws-step-functions-redrive-a-new-way-to-restart-workflows/)もあるので参考になります。

## Developer Guide の情報
https://docs.

元記事を表示

EC2・Cloud9のUbuntuにDesktop (GUI) 環境を構築してVNCで接続する

# 本記事について

## 背景

**Androidタブレット上にLinux開発環境が欲しい。GUIも欲しい!!**

– 最近、11インチAndroidタブレットを買いました。喫茶店などで軽くコードを書いたりLinuxのお勉強をするだけならブラウザからアクセス出来るCloud9やGoogle Colabが使えます。が、GUIが絡むとやはり専用の環境が必要になってきます
– 以下のことを実現したいと思いました
– Linuxマシンにアクセスしてターミナル操作、コーディングが出来る (リモートデスクトップ越しだとタイピングにストレスがあるので、エディタ類は独立したものが欲しい)
– これはCloud9で実現
– GUI操作が出来る
– あまり複雑な操作はしない
– 画面出力結果の確認やボタンをポチポチすることが出来ればよい
– Androidからアクセスが出来る
– ターミナルやsshは使わない
– ブラウザやGoogle Playからインストールできるアプリだけで実現したい
– ↓

元記事を表示

AWS SQSの実用について(メリット、注意点、パラメータ設定)

## はじめに
SQSの概要や設定項目の説明記事はたくさんありますが、実用面に着目している解説記事が少なかったので、今の自分の理解の記録を残す意味でも記事にします。ここで、あえて「SQSとは…」や、「設定項目の説明」などはせずにスキップします。

## SQSのメリット
なぜSQSを使うか。SQSメッセージの生成(プロデューサ)はLambda, API Gateway, SNS, S3イベントあたりが主なところで、メッセージの使用先(コンシューマ)はLambdaであるケースが多いと思います。しかし、ここで挙げたプロデューサからLambdaを実行することも可能です。つまりSQSをスキップできるアーキテクチャとなっているケースも多いです。ではなぜ、SQSを使うのでしょうか。
SQSを使うメリットとして一般的に、柔軟性、冗長性を持たせて処理を疎結合化すると言われます。そう言われても少し抽象的なので、その柔軟性、冗長性とは何なのかを具体的に挙げていきます。また、SNSとSQSは用途が被ることが多いので、SQSのメリットをSNSと比較しながら見てみましょう。

– **SQSの強み、メリット**

元記事を表示

Amazon ECSの耐障害性を考える

# はじめに
この記事はDevOps on AWS大全の一部です。
DevOps on AWS大全の一覧は[こちら](https://qiita.com/tech4anyone/items/b06f88035d27c6ef13b2)。

この記事ではAmazon ECSを耐障害性の観点から超詳細解説しています。

具体的には以下流れで説明します。

– Amazon ECSとは
– Amazon ECSのスケーラビリティ
– Amazon ECSのストレージ
– Amazon ECSのロギング

AWSの区分でいう「Level 200:トピックの入門知識を持っていることを前提に、ベストプラクティス、サービス機能を解説するレベル」の内容です。

# この記事を読んでほしい人
– Amazon ECSを採用するときのベストプラクティスを説明できるようになりたい人
– Amazon ECSの耐障害性に不安を感じている人
– AWS Certified DevOps Engineer Professionalを目指している人

# Amazon ECSとは
Amazon ECSは、Dock

元記事を表示

LambdaとRDSのセキュアな接続 ~SSL/TLS証明書の選択と実装~

最近、アーキテクチャにRDSのリードレプリカを組み込む作業を行ったのですが、Lambda(NestJS)からRDS(リードレプリカ)へのSSL/TLS接続を設定する際、以下のエラーメッセージが表示されました。

“`objectivec
Error: self-signed certificate in certificate chain
“`
この問題の原因と解決方法を備忘録として残します。

# 原因
単純に、使用する証明書が不適切だったのが原因でした。

## RDS Proxyを介する場合の証明書
元々の構成では、Lambda(NestJS)からRDS Proxyを経由してRDS(プライマリ)に接続しており、この場合には[`AmazonRootCA1.pem`](https://www.amazontrust.com/repository/AmazonRootCA1.pem)証明書を使用していました。

RDS Proxyを使用する際には、AWSが提供する`AmazonRootCA1.pem`というルート証明書が重要です。この証明書は、RDS Proxyの身元確認と通信の暗

元記事を表示

IAM に関するメモ

# はじめに

AWSのアカウント・ユーザー・権限の関係性が複雑に感じていたので、一から IAM について調べたことをまとめます。

# 概要

– IAM とは
– IAM ユーザー
– IAM ポリシー
– IAM ロール

# IAM とは

IAM は「Identity and Access Management」の略で、IDとアクセス権を管理するサービスになります。

複数のAWSアカウントが存在する際、誰がどのアカウントにアクセスできるか、どのサービスを利用できるのかといった権限を管理するためのサービスです。

※複数のAWSアカウントを持つメリットとデメリット

https://dev.classmethod.jp/articles/account-and-vpc-dividing-pattern/

# IAM ユーザー

IAM ユーザーは **人に与えられるID** で、AWSアカウントにログインする際に必要となるユーザー名とパスワードが付与されます。

下記のように1つのAWSアカウントに複数のユーザーを作成することが可能で、従業員1人ずつ個別のIAM

元記事を表示

AWSome Dayの備忘録

# はじめに

11月16日にあったAWSome Day Online Conferenceのまとめ

https://awsomeday-apj.virtual.awsevents.com/homejp

# AWSの概要、グローバルインフラストラクチャーとコンピューティング

## AWSの概要

– データセンター
– 通常、数千台のサーバを収容
– アベイラビリティーゾーン(AZ)
– 1つ以上のデータセンターの集合
– 障害を分離する設計
– リージョン
– 3つ以上のAZで構成
– 世界全体で31のリージョンが存在

リージョン内のAZは物理的に離れており、複数のAZを利用することでAZレベルの障害の影響から保護でき、システムの高可用性を確保可能
リージョンは100km圏内、AZ間は数km~数十km離れている

### サービスの分類

– アンマネージドサービス
– スケーリング、耐障害性、可用性をユーザが管理
– マネージドサービス
– スケーリング、耐障害性、可用性をAWS側が管理

## EC2

– ア

元記事を表示

AWS CLIアカウント作成

AWS CLIのアカウント作成をしてアカウント内のリソース(S3)を確認する所までをやってみたいと思います。
現在AWS4冠ですが資格ばかり取れてしまって中々実際に手を動かす機会もないのでやってみようと思います。
(でも次はSAP取りたい)

自分が吸収力悪い方なのでそんな方にも分かりやすく書けたらと思っています。

EC2を建ててもいいですけど自分のPCからやった方がコストかからずにできるのでいいと思います。
私はMacの環境から作成してみますので、ここから自分のAWSアカウントに接続してみたいと思います。

## 前提
・S3権限のついたIAMユーザがアカウントに存在すること
・対象のIAMユーザのアクセスキーを作成しておくこと
・S3バケットの作成

## AWS CLIのインストール
素直に公式のドキュメントに沿ってやっていきます。
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/getting-started-install.html

1,ターミナルを開いたら、CLIのファイルを公式からダウンロードを実行します。

元記事を表示

ユーザーデータを用いてEC2立ち上げ時のログ

## ユーザーデータでEC2立ち上げ時のログ

ログを見る方法がわからなかったので調べてみました。

### 前提

`EC2`のセキュリティーグループに`ssh(22)`, `http(80)`が`Anywhere`でアクセス許可していることを確認してください。

### Ubuntu, 22.04 LTSにnginxをインストール

`Ubuntu, 22.04 LTS`に`nginx`をインストールするユーザーデータ

“`bash:ubuntuにnginxをインストール
#!/bin/bash

sudo apt update
sudo apt install -y nginx
“`

### EC2インスタンスにブラウザからアクセス

上記のユーザーデータがエラーなく実行できている場合は次のようなリンクでブラウザからEC2にアクセスし`nginx`のデフォルトページを観測できます。

“`
http://EC2のパブリックアドレス
“`

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaw

元記事を表示

【OCI クラウド移行ガイド】AWS MySQLonEC2とOCI MySQL on Compute で双方向レプリケーションを設定してみた

# OCIクラウド移行ガイドとは
オンプレミスやAWSなど、複数のプラットフォームからOracle Cloud Infrastructureへの移行プロジェクトに取り組んでいるクラウドエンジニア(@araidon,@kazunishi,@yama6)による、OCI移行手順をまとめたシリーズ記事です。
各回、サンプルワークロードから対象サービスを取り上げ、移行手順をガイドいたします。
まとめ記事は以下になります。

https://qiita.com/yama6/items/b197c0fe3ec75eb02637

# 移行したいサンプルワークロード
日々の業務でよく目にするサービスを中心に、サンプルワークロードとしてまとめてみました。このシリーズでは、主にAWSからの移行を取り上げます。
このワークロードは、ユーザがログインして、Web上で写真を共有するWebサービスをイメージしています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2471135/5d657078-030c-a2

元記事を表示

OTHERカテゴリの最新記事