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

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

[AWS]GithubActionsで terraform のCI/CDやってみた

# はじめに
「良いコードは良い筋肉から」、「筋肉は全てを解決する」って誰かが言ってました。
最近コードは全く書かなくなって、代わりに毎日パワポを書いているのですが、
どんなに筋トレ頑張ってもいいパワポはいっこうに書けるようになりません。

筋肉じゃパワポは書けないのかしら(´・ω・`)
いや、筋肉が足りていないのか???

ということで、
前回かその前ぐらいに、 terraform を使った AWS 環境の構築をしました。

https://qiita.com/Ixy_194/items/ac9623434537e81b8618

今回は、 GithubActions を使って terraform の CI/CD をやってみようと思います。
# 今回のゴール
こんな感じの CI/CD フローを作成します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1974822/87b73b2a-f1b9-cf36-0d7c-9ab862ced75f.png)

流れとしてはこんな感じ。
1

元記事を表示

AWS Certified Solutions Architect – Associateに合格しました

9月末にSAAを受験し合格したので、勉強法について公開します。

## 自己紹介
未経験で8月半ばに入社し、初めて取得した資格がSAAです(プラクティショナーは持っていません。)
AWSという言葉は知っていたけど、amazon?通販サイトのサービス?ぐらいの認識でした。

## 勉強法
以下3の柱を用意して勉強しました。
1. スキルビルダー
1. 生成AIに質問
1. 実際に動かしてみる

1つ目についてですが、AWSがスキルビルダーというものを用意しており
その中にプラクティショナー向けのものがあります。
[スキルビルダー](https://explore.skillbuilder.aws/learn/course/internal/view/elearning/1875/AWS-Cloud-Practitioner-Essentials-Japanese-%E6%97%A5%E6%9C%AC%E8%AA%9E%E5%AE%9F%E5%86%99%E7%89%88)

2つ目についてですが、ナレコムでは「ナレコムボット」という生成AIの
システムがありこちらを使ってわからない事を質

元記事を表示

Amazon API GatewayとAWS Lambdaを組み合わせてみた

## はじめに
こんにちは。
今回はAPI Gateway、Lambda、Translateを連携させてみました。

本記事は以下記事の続編です。

https://qiita.com/uccy/items/33ffdcc855e54e1ba1fe

↓参考にしたハンズオンはこちら。

https://pages.awscloud.com/JAPAN-event-OE-Hands-on-for-Beginners-Serverless-1-2022-confirmation_422.html

↓今回のゴール
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3848705/0de145b5-a874-2b2b-e1d5-4d7af67de0cb.png)

## やってみた
マネジメントコンソールにアクセスし、API Gatewayのページにアクセスします。
前回作成したtranslate-apiをクリックします。
![image.png](https://qiita-image-stor

元記事を表示

AWSのOrganizations,AWSアカウント,IAM・・・の整理

## 1. はじめに

大規模なクラウド環境では、複数のAWSアカウントを使用することが一般的です。しかし、アカウントが増えるにつれて、管理やセキュリティの維持が複雑になります。そこで役立つのが**AWS Organizations**です。

本記事では、AWS Organizationsとその関連概念について、実際の使用例を交えながら解説します。

## 2. AWS Organizationsの基本概念

### 2.1 AWS Organizations: マルチアカウント管理の要

AWS Organizationsは、複数のAWSアカウントを一元管理するためのサービスです。

**主な機能:**
– 複数アカウントの中央管理
– 一括請求とコスト最適化
– セキュリティポリシーの統一管理
– 新規アカウントの自動作成

**使用例:**
– 部門やプロジェクトごとに別々のAWSアカウントを作成し、一元管理する
– 全社的なセキュリティポリシーを一括で適用する
– 組織全体のAWS利用料を一括で管理し、コスト最適化を図る

### 2.2 AWSアカウント: リソース管理の基

元記事を表示

AWS DynamoDBの古いものを削除するLambda

# 背景と問題

背景
運用で使用している DynamoDB が作成者と後任も退職して10年くらい放置していると2000万件になりました。今も毎日増え続けています。古いものを消そうと思いしやかなり苦労したので記事にします。

問題
単純に検索しようとすると前から500件ずつになるので、2000万件だと検索が終わらないという問題。
検索やTTLなど改善方法はありますが、とにかく現状のまま古いものを消そうと思いました。

運用中のDB
|UserId|Timestamp|msg|
|–|–|–|
|1000|2018-04-25T00:25:00+00:00|xxx|
|1000|2018-04-25T00:30:00+00:00|xxx|
|1000|2018-04-25T00:35:00+00:00|xxx|

# Lambda

内容
– 1回実行すると500件削除します。これを5分毎に実行して放置します。連続して1000件削除すると時間がかかりました。Dynamo側で待たされるようです。

ポイント
– TTLを使えばよいが運用中でもあり現状を変えずにやりたい。
– d

元記事を表示

Auth0とIAM SAML IDプロバイダーのセキュアなログイン環境をTerraformで構築する

# はじめに
AWSの開発をしていると、そのうちにAWSに閉じず、GitHub/GitLab、New Relic/Datadog/Grafana、Attlasian製品等、いろいろなSaaSやOSSを使うようになって、複数のID管理が必要になってくる。それぞれのIDをよりセキュアにするために、MFAの設定も同じ数だけ持たなくてはならず、ログイン管理自体がトイルになってくる。

今回は、上記のようなトイル解消のソリューションであるIDaaSのAuth0を使って、AWSへのログインを肩代わりしてSSOできるようにする。

Auth0を初めて利用するところからでも始められるように書いているつもりであるため、前提知識としては、以下があれば良い。

– Terraformの基本的な知識
– AWSのIAM関する基本的な知識

全体の流れとしては、以下のClassmethod先生の記事をベースにしているので、本記事を読んで分からない方は、まずはこの記事でGUIベースでの理解をしておくと入りが良いだろう。

https://dev.classmethod.jp/articles/try_auth0_

元記事を表示

Terraformを使用してVPC、Subnet、Internet Gateway、Route Tableを構築した

# 概要
`Terraform`について理解が深まってきた為、今回は`Terraform`を使用して表題の構築を行いました。
備忘録も含めて、今回の構築手順を載せます。

# 前提条件
– `Terraform`をインストールしている
– [aws provider](https://registry.terraform.io/providers/hashicorp/aws/latest)を使用して`provider`関連の構築が完了している

## Terraformのvarsion
“`sh
terraform –version

# Terraformのvarsion
Terraform v1.7.5

# providerのvarsion
on darwin_amd64
+ provider registry.terraform.io/hashicorp/aws 5.70.0
“`
**※ Terraformの導入方法やアップデート情報を下記を参照して下さい。**
– [tfenvを使用したTerraformのインスト

元記事を表示

AWSとSAMLを使用して自社IDPでSSOに関するメモ

# やりたいこと
自社既存のIDP(Identity Provider)でシングルサインオンし、AWSのリソース(S3とか)へアクセスしたい

①、既存のIDPでIDとパスで認証
②、OKな場合、IDPがSAMLアサーションを返す
③、SAMLアサーションをAWS(Service Provider)に送信、(AssumeRoleWithSAMLのAPI呼び出し)
④、AWSのSTSがアサーションを検証し、OKな場合はロールを付与
⑤、ユーザーがリソースにアクセス

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3538617/88357087-5c32-69d0-62a5-4430e67c95b6.png)

# 必要な設定

・IAMロールの作成:信頼されたエンティティタイプとして「SAML 2.0 フェデレーション」を選択、ユーザーが必要とする権限(例:EC2、S3など)に応じたポリシーを付与

・SAMLプロバイダーの作成:「プロバイダーの種類」として「SAML」を選択、自社ID

元記事を表示

Step FunctionsでRDS×ElastiCacheを統合してみた!

# はじめに ~RDS × ElastiCache って?~
#### 概要
Amazon ElastiCache は、フルマネージドのインメモリデータストアおよびキャッシュサービスです。
ざっくりいうと、RDSと比べ、複雑なデータ構造は持てないが、処理が超早いデータベースです。

主な用途はこんな感じですね。
– データのキャッシュ保存
– セッションや重要なデータの高速読み取りがあります

#### RDS × ElastiCache
以下の記事で紹介されているように、ElastiCacheにメインのDBのキャッシュを任せることで、処理速度の向上や、RDSのリードレプリカ数の削減によるコスト割引などのメリットを享受することができます。

https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/creating-elasticache-cluster-with-RDS-settings.html

#### RDS × ElastiCacheの注意点
ここまで聞くと最高じゃん!となるのですが、ちょっとした注意点があり

元記事を表示

EFSアクセスポイントの制限について

# はじめに
公式ドキュメントに書いてあるものの、調べるのに少し時間がかかってしまったので、残しておこうかと思います。

## EFSアクセスポイントの作成に失敗した話
先日、仕事で`terraform`を使って階層深めのEFSアクセスポイントを作成しようとしたところ、以下のようなエラーが発生して、作成ができないことがありました。

“`hcl

│ Error: creating EFS Access Point for File System (fs-xxxxxxxxxxxxxxxxx): ValidationException: 1 validation error detected: Value ‘/one/two/three/four/five’ at ‘rootDirectory.path’ failed to satisfy constraint: Member must satisfy regular expression pattern: ^(\/|(\/(?!\.)+[^$#<>;`|&?{}^*/\n]+){1,4})$
│ {
│ RespMetadat

元記事を表示

CloudFomationでCloudFrontとS3によるサイト構成にしたときのAccessDeniedになる罠

# 罠の概要

CloudFormationを用いて、以下のような構成でAWS上のインフラを構築した。

– CloudFront
– HTTPS化・キャッシュ
– S3
– 静的サイトホスティング

構築完了後、CloudFrontで生成されたディストリビューションドメインにアクセスすると`AccessDenied`で拒否された。

![2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405090/6cccf8dd-b0da-4213-1d8f-00b6eb77741d.png)

調べると、CloudFrontのディストリビューションドメインにアクセスしたはずが、URLがS3オリジンのものになっている。ネットワークの状況を見ると307リダイレクトされていた。

以上の罠があったので備忘録をかねて記事にする。

# 解決策

今回の問題の解決策を手っ取り早く知りたい人のために、私が解決に至った方法を先に提示しておく。

この問題の原因は、CloudFrontとS3のリージョンにおける

元記事を表示

AWS SAA S3あれこれ

SAAで出てくるストレージタイプ

IA=Infrequently Accessの略。低頻度アクセスのこと。
  取得自体は即時にできるが、その分課金が発生する

### One Zone-IA
非冗長化×低頻度アクセス
ユースケース:重要でないコピーファイルのアーカイブ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3892426/78923609-c030-5e0c-88db-44233fa5fc0f.png)

### ストレージゲートウェイ
キャッシュ型=オンプレ側をキャッシュサーバ、S3側をプライマリとして利用
保管型=オンプレ側をプライマリとして利用、S3側をキャッシュとして利用

具体的な利用イメージ

### **全体のフロー**
1. **オンプレミスにゲートウェイアプライアンスをインストール**
– AWSストレージゲートウェイは、**仮想マシン(VM)**または**ハードウェアアプライアンス**としてオンプレミスの環境にインストールされます。
– こ

元記事を表示

技術検証:API Gatewayを使ってLambda関数からS3の静的ページにリダイレクトする方法

## はじめに
AWS Lambdaはサーバーレスコンピューティングを提供し、特定のイベントに応じてコードを実行できる柔軟なツールです。

この記事では、Lambda関数からS3バケットにホストされた静的ウェブページにリダイレクトする方法を解説します。

リダイレクトを使うことで、Lambda関数のコードをシンプルに保ちながら、S3の静的コンテンツを利用(表示)することが技術的にできました。

## 知識整理
まず、S3とLambdaの基本的な役割を整理していきます。

:::note
**Amazon S3 (Simple Storage Service):**
ファイルや静的コンテンツ(HTML、CSS、JavaScriptなど)を保存し、ウェブホスティングの機能も提供します。静的なウェブサイトを簡単にデプロイできます。

**AWS Lambda:**
イベントドリブン型のサーバーレスコンピューティングサービスで、インフラの管理なしにコードを実行することができます。Lambda関数はAPI Gatewayと連携して、ウェブリクエストのレスポンスをカスタマイズ可能です。
:::

元記事を表示

ゼロから始めるAIシステム開発 #04.5 「AWS CloudFormationとは」

今回はAWS CloudFormationについて調べたことを書く。
## AWS CloudFormationとは
– AWSのリソース構築を自動で行うサービス
– AWSリソースをコードとして管理するためのサービス
– AWS内の全てのリソースを自動でプロビジョニングできるAWSサービス
– テキストファイルでAWSリソースを自動で作成するサービス
– AWSのインフラリソースをテンプレートを使って一括で作成・更新・削除できるサービス
– AWSのインフラストラクチャ管理のためのサービス
PerplexityなどテキストAIを含むいろんなサイトで調べてみたが、微妙に表現が違っていて面白い。利点が多様だからだろうか。まとめると**AWSのリソース構築をコードで自動管理できるサービス**という感じ。
## 特徴
– テンプレートによりリソースを構築できる
JSONやYAML形式でテキストファイルを作成。テンプレによって異なる環境で同じものを簡単に構築できる。
– スタックによりリソースを管理する
プロビジョニング(必要なリソースを使えるように準備しておくこと)したAWSリソースの集まり

元記事を表示

【第1回 大和総研 本橋美幸さん】2024 Japan AWS Jr. Champions インタビュー企画

初めまして!2024 Japan AWS Jr. Championsのtekutaと申します!
AWS Japanが6月に開催したAWS Summit Japanにて、2024 Japan AWS Jr. Championsが発表されました。Jr.Championsは、AWSを積極的に学び、アクションを起こし、周囲に影響を与えている若手エンジニア向けの表彰プログラムとなっております。Jr.Championsについて多くの方に知ってもらいたいため、表彰された方々にインタビューをしていきます。
栄えある第1回目は、大和総研の本橋美幸さんです!
![IMG_1130.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3310014/a6b0118e-6500-ba47-c78a-2ae7c7f57816.jpeg)

https://aws.amazon.com/jp/blogs/psa/2024-japan-aws-jr-champions/

# 質問1:これまでの経歴、現在の業務、AWSを知った経緯を教えて

元記事を表示

slurm federationを使ってaws parallel clusterと連携する(準備②)

### 前提

前回オンプレでslurmのfederation機能を有効にするところまで行いました。
今回はaws側でslurm(parallel cluster)を構築するところまで行います。

似たサービス含めて私の認識は以下の通りです。多少間違っているかも

| サービス | サービス形態 | 使用技術 |
| — | — | — |
| Parallel Cluster | IaaS | slurm,EC2,EFS,FSx,Auto Scale等 |
| Batch | SaaS | docker,FarGate, EC2 ,Autoscale等 |
| Parallel Computing Service | SaaS | 使った事がないので不明 |

PCS(Parallel Computing Service)については以下の記事で確認してください。
https://aws.amazon.com/jp/blogs/news/announcing-aws-parallel-computing-service-to-run-hpc-workloads-

元記事を表示

AWS のリソース削除がちょっとだけ便利になる方法

AWS のマネジメントコンソールでリソースを削除する際に「削除してもよいですか?」の確認ダイアログが表示されますが、”**削除**”や**リソース名**などの文字列を入力すると削除ボタンが活性化して、削除ができるようになる場合があります。

・S3 のファイルを削除する場合の例
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/759747/564e68e8-01e9-36e7-bd5b-0fe344c94013.png)

・IoT Core のデバイス(モノ)を削除する場合の例
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/759747/8e9815a7-63ef-d066-ae19-2a9479c666ca.png)

素直にキーボードで文言を入力しても良いのですが、マウスで文字列を選択して入力エリアまでドラッグすると簡単に文字列の入力ができます。

![Animation.gif](h

元記事を表示

REKRUTMEN PROMO BONUS NEW MEMBER 100%

APOLO77 REKRUTMEN PROMO BONUS NEW MEMBER 100%

DAFTAR KLIK DISINI : http://uhuiiii.great-site.net/yuhuuu

元記事を表示

【コスト削減】マルチリージョン構成で不適当な AMI を使用したらコストが爆増していた話

## はじめに

ますだです。
普段は AWS 案件の保守や運用を担当しています。
今更の話になりますが、入社間もなくの時期でなかなか思い入れのあるコスト削減の事例があり、その際に経験した内容を共有します。

結論を聞けば単純な話ですが意外と見落としがちなポイントで、また当時は他社の事例もあまり見かけなかったので、少しでも参考になればと思います。

## ざっくりまとめ

– **問題**:不適当な AMI を使用していた結果、リージョン間のデータ転送コストが増加
– **原因**:不要なサービスやプロセスが稼働し、EBS スナップショットのデータ転送量が増加
– **対策**:不要なプロセスの停止と AMI の選定見直し
– **効果**:データ転送量とコストの大幅な削減(一ヶ月あたり 95% 減、全体でx十万円)
– **教訓**:
– ベース AMI が自社の利用状況に適しているか再考する
– 不要なサービスやプロセスを定期的に確認する
– クロスリージョン構成のデータ転送コストに注意
– AWS サポートを有効活用する (心に刻む)

## 問題の発見

AW

元記事を表示

AWS Schema Conversion Tool を使ったDB移行

# SCTのインストール
## 準備
### SCTインストールイメージのダウンロード
AWSのサイトから最新のSchema Conversion Toolをダウンロードしますhttps://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Welcome.html
### JDBCドライバーの準備
ソースDB, ターゲットDB用のJDBCドライバーを準備しておきます
## SCTのインストール
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3802444/9ff76db4-55b8-b59d-61a2-e3b1769b04b1.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3802444/5e60aeef-1048-29a7-ab3e-eed7b9bc6cd1.png)
![image.png](htt

元記事を表示

OTHERカテゴリの最新記事