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

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

ECSでデプロイしたアプリケーションのCloudFrontキャッシュをCodePipeline経由で安全にクリアする方法

# ECSでデプロイしたアプリケーションのCloudFrontキャッシュをCodePipeline経由で安全にクリアする方法

## 概要

ECS(Elastic Container Service)でデプロイされた静的コンテンツを更新する際、CloudFrontのキャッシュが残っていると、古いコンテンツがユーザーに表示されるリスクがあります。特に、ローリングアップデートを行う際にキャッシュクリアを誤ったタイミングで実行すると、古いECSタスクが古いキャッシュを再生成してしまう可能性があります。

本記事では、この問題を防ぐために、CodePipelineの最後にCodeBuildを追加し、デプロイ後にCloudFrontのキャッシュクリアを安全に行う方法を紹介します。

## この方法が役立つシチュエーション

– **静的コンテンツを頻繁に更新するWebアプリケーション**
CloudFrontを介して静的コンテンツを配信しているWebアプリケーションで、HTMLやCSS、JavaScriptなどの更新が頻繁に発生する場合、キャッシュクリアが必要になります。

– *

元記事を表示

API PollingでAWSとNew Relicを簡単に連携して統合監視しよう!

**API Polling**を使ってNew RelicとAWSを連携し、CloudWatchのメトリクスやCloud Trailのイベントデータを取り込み、**マルチアカウント、マルチリージョンの情報を簡単に統合監視**することができます。

**↓↓↓ 公式ガイドはこちら**

https://docs.newrelic.com/docs/infrastructure/amazon-integrations/get-started/introduction-aws-integrations/

# 2種類の連携方法
### Metric Streams
CloudWatch Metric Streamsと連携し、ストリーミング方式でCloudWatchのメトリクスをNew Relicに送信する方法です。AWSからNew RelicへCloudWatchのメトリクスが2分未満でストリーミングされるためデータ取り込みの遅延が少ないのと、すべてのAWSリソースのCloudWatchのメトリクスを取り込むことができるため、**New Relicが推奨する連携方式**になります。CloudW

元記事を表示

AWS NAT Gatewayメモ

AWS NAT Gatewayは、プライベートサブネット内のリソースがインターネットにアクセスできるようにするためのネットワーキングサービスです。これにより、外部からの直接アクセスを許可することなく、インターネットへ接続できるようになります。

### NAT Gatewayの主な特徴

1. **インターネットアクセスの許可**:
– プライベートサブネット内のリソース(例: EC2インスタンスなど)は、直接インターネットにアクセスできませんが、NAT Gatewayを通じてインターネットに接続し、ソフトウェアのアップデートや外部APIへのアクセスを行うことができます。
– 外部からはプライベートサブネットのリソースにアクセスできないため、セキュリティを確保しつつインターネットアクセスが可能です。

2. **スケーラビリティ**:
– AWS NAT Gatewayは自動的にスケールします。トラフィック量が増加しても、手動でリソースを追加する必要がなく、負荷に応じてスループットが調整されます。

3. **管理不要**:
– NAT GatewayはAWSが

元記事を表示

AWS LambdaにおけるARM64とx86_64の性能比較

## はじめに

AWS Lambdaは、ARM64(Graviton2)とx86_64の2種類のアーキテクチャで動作します。ARM64はモバイル向けや低消費電力が特徴のRISCアーキテクチャで、一方x86_64はサーバー向けに広く使われるCISCアーキテクチャです。

今回は、AWS Lambdaで**ARM64**と**x86_64**のパフォーマンスを、I/Oバウンド処理、CPUバウンド処理、並列処理の観点で比較しました。Pythonを用いたサンプルコードを実行し、メモリサイズごとの処理時間を測定しました。

## サンプルコード

次のPythonコードをAWS LambdaでARM64とx86_64の両方で実行しました。このコードは以下の3種類の処理を行います。

1. **I/Oバウンド処理**: ファイルの読み書きでI/O性能を測定。
2. **CPUバウンド処理**: 浮動小数点演算を大量に行うことでCPUの性能を測定。
3. **並列処理**: スレッドを用いた並列計算のパフォーマンスを測定。

“`python
import time
import math
i

元記事を表示

IPS(Intrusion Prevention System)とIDS(Intrusion Detection System)メモ

IPS(Intrusion Prevention System)とIDS(Intrusion Detection System)は、ネットワークやシステムのセキュリティを強化するための技術ですが、それぞれ異なる役割を果たします。

### IDS(侵入検知システム)

– **役割**: ネットワークやシステムの活動を監視し、侵入や異常な行動を検出します。
– **機能**:
– トラフィックを分析し、悪意のあるアクティビティやポリシー違反を検出。
– 通常はアラートを生成し、管理者に通知しますが、自動的に対処することはありません。
– **種類**:
– **ネットワークベースIDS(NIDS)**: ネットワークトラフィックを監視。
– **ホストベースIDS(HIDS)**: 特定のデバイスやサーバー上で動作し、ログやシステムの変更を監視。

### IPS(侵入防止システム)

– **役割**: IDSの機能を含みつつ、侵入を防ぐためのアクションを実行します。
– **機能**:
– トラフィックをリアルタイムで分析し、疑わしいアクティビティを検出した場合

元記事を表示

AWSネットワーク構築

# ネットワークの構築基本

## 操作
1. VPC作成
1. サブネット作成
1. ルーティング設定(インターネットに接続)
– インターネットゲートウェイ作成。VPCにアタッチ
– ルートテーブル作成。サブネットに紐づけ、ルート追加

## メモ
基本、デフォルトで用意されたものは使用しない
新しく新規作成したものを使用していく

0.0.0.0/0をルートテーブルに追加→インターネットへ接続できるようにする

サブネットごとにルーティングの設定
AWSではルータは明示的に設置しない。ルートテーブルを作成すると暗黙的に動く

ルートテーブル:
localは自身のネットワーク
書かれていない通信は破棄

## 設計ポイント
– VPC
プライベートIPアドレス(仮想のプライベートNW空間を作成するから)
IPアドレスは大きめに設定:変更不可だから /16推奨
オンプレとIPアドレスが重複しないように設定
異なるシステムの場合はアカウントを分ける

– サブネット
必要なIPアドレス数 /24が一般的
ルーティングとアベイラビリティゾーンを基準に行う

元記事を表示

AWS基本

# AWSを学ぶ

## 基礎知識

リージョン:AWSの各サービスが提供されている地域
地域によってサービスが違う
最新はアメリカ
日本に設置をお勧め。国内だから応答速い

アベイラビリティゾーン:独立したデータセンター
世界各国にある複数のデータセンターを束ねたもの
リージョンのなかにアベイラビリティゾーン

VPC(Virtual Private Cloud):AWS上に仮想ネットワークを作成できるサービス
リージョンを選択して作成

サブネット:ネットワークの区切り
アベイラビリティゾーンのなかにサブネットを作成する

元記事を表示

AWS Transit Gatewayメモ

AWS Transit Gatewayは、AWSクラウド内でのネットワーク接続を効率的に管理するためのサービスです。このサービスを使用することで、複数のVPC(Virtual Private Cloud)やオンプレミスネットワークをシンプルに接続し、スケーラブルなネットワークアーキテクチャを構築できます。

### 主な機能と特徴

1. **中央集約型の接続**:
– 複数のVPCやVPN接続を1つのTransit Gatewayを介して統合し、接続を一元管理します。

2. **スケーラビリティ**:
– トラフィックの増加に応じて、スケーラブルな接続を提供し、ネットワークの拡張が容易です。

3. **ルーティング管理**:
– 各VPCやオンプレミスネットワーク間のルーティングを集中管理でき、トラフィックの流れを効率的に制御します。

4. **セキュリティ**:
– AWSのセキュリティ機能を活用し、トラフィックの保護やアクセス制御が可能です。

5. **コスト効率**:
– 直接VPC間で接続する場合に比べ、接続コストを削減し、運用の効率化を

元記事を表示

AWS Control Towerメモ

AWS Control Towerは、AWS Organizationsを基盤に、複数のAWSアカウントのセットアップと管理を簡素化するためのサービスです。特に、セキュリティとコンプライアンスを考慮しつつ、組織のガバナンスを強化するための機能が提供されています。

### 主な機能と特徴:

1. **アカウントのセットアップ**:
– 新しいAWSアカウントを自動的に作成し、組織のポリシーや標準に基づいて構成します。

2. **ガバナンスの自動化**:
– ベストプラクティスに基づいたガバナンスモデルを適用し、ポリシーや設定を自動的に管理します。これにより、セキュリティやコンプライアンスを維持しやすくなります。

3. **Blueprints**:
– 組織のニーズに応じてカスタマイズ可能な「ブループリント」が用意されており、アカウントの設計や設定を迅速に実行できます。

4. **ガバナンスダッシュボード**:
– 組織全体のガバナンス状態を視覚的に表示するダッシュボードが提供され、リアルタイムでの監視や管理が可能です。

5. **セキュリティサービス

元記事を表示

AWS Organizationsメモ

AWS Organizationsは、複数のAWSアカウントを一元的に管理できるサービスです。主に以下のような機能や利点があります:

1. **アカウント管理**: 複数のAWSアカウントを組織としてまとめ、階層的に管理できます。これにより、アカウントの作成や削除、設定の変更が容易になります。

2. **ポリシーの適用**: サービスコントロールポリシー(SCP)を使用して、組織内のアカウントに対してアクセス権限を制御できます。これにより、セキュリティやコンプライアンスの要件を満たすことができます。

3. **コスト管理**: 組織全体のコストを集約して管理し、アカウントごとの請求を把握しやすくします。また、コストを最適化するためのレポート作成も可能です。

4. **簡易的な請求管理**: 複数のアカウントの請求を一元化することで、管理の手間を軽減します。

5. **部門別管理**: 組織内の部門ごとにアカウントを分け、それぞれの部門に特化したリソース管理を行えます。

AWS Organizationsを利用することで、大規模なインフラストラクチャを効率的に管理し、運用の最

元記事を表示

Amazon Cognitoでパスワードの再利用を防ぐ方法

## はじめに

「クラウドセキュリティ」って言葉はよく聞くけど、実際にはどんなものかよくわからない…そんな超初心者さんも安心してください!この記事では、AWSのサービスの一つである**Amazon Cognito**を使って、**パスワードの再利用を防ぎ、アカウントを安全に守る方法**を分かりやすく解説します。

### なぜパスワードの再利用は危険なの?

同じパスワードを複数のサービスで使っていると、一つのサービスでパスワードが漏洩した場合、他のサービスも危険にさらされてしまいます。例えば、オンラインショッピングサイトのパスワードが漏洩すると、あなたのクレジットカード情報などが盗まれてしまう可能性があります。

### Amazon Cognitoでパスワードの再利用を防ぐ

Amazon Cognitoは、ユーザー認証を簡単に行うことができるAWSのサービスです。このサービスには、パスワードの再利用を防ぐ機能も備わっています。この機能を有効にすると、ユーザーは過去に設定したパスワードを再利用できなくなります。

**具体的な設定方法**

1. **Amazon Cognito

元記事を表示

AWSでBasic認証をかけるには?CloudFront編 ~100本ノックしてみたい中堅エンジニア 【AWS】~ 7/100

# はじめに

[前回の記事](https://qiita.com/namasa/items/4f8234dc65ee5d6ab2e3)では、AWS WAFによるBasic認証を行いました。
今回は、CloudFront + S3バケットで構成されるフロントエンドに対して、CloudFront FunctionsによってBasic認証を行いたいと思います。

その前に、CloudFront Functionsってなんだろう?:thinking:って話なんですが、`ユーザに近い場所で任意の関数(コード)を実行できる機能`って感じです。

※CloudFrontとS3バケットは既に作成済みの前提で話を進めます :bow:

:::note
CloudFrontにBasic認証をかける方法としては、他にも以下があります。
– Lambda@Edge(CloudFront + Lambda)
– AWS WAF

Lambda@EdgeとCloudFront Functionsの違いは、[こちらの記事](https://dev.classmethod.jp/articles/amazon-c

元記事を表示

AWSのCLFのOUTPUT

# 問題:アプリケーションへのトラフィックレベルは週を通して変化するが、アプリケーションの信頼性を常に向上させる方法とは?
## 復旧手順をテストする
普及手順をテストすることは、障害発生時の影響を最小限に抑えるための重要なプラクティス
### 具体的には?
障害が発生した際にアプリケーションがどのようにふるまい、どのように修復すべきかを事前に理解することが可能となる。
## ソフトウェアの障害を自動的に処理する
アプリケーションの信頼性を向上させることができる
### 具体的には?
ソフトウェアの障害を自動的に処理するシステムを導入すると、アプリケーションのダウンタイムを最小限に抑えることができる。
例えば、AWS Auto Scaling、AWS Elastic Load Balancerのようなサービスを利用すると、トラフィックの変動に応じて自動的にリソースを調整し、また負荷が高くなった時にはトラフィックを分散することができる。

元記事を表示

LINEで画像生成ボットを作ってみた(Bedrock:Titan Image Generator G1 v2)

# はじめに
この度、ANGEL Calendarの企画に参加しております!
記事一覧は下記のOrganizationアカウントの一覧をチェックしてみてください!
[2024-ANGEL-Dojo Organization](https://qiita.com/organizations/2024-angel-dojo)

# 作成した成果物
LINEのボットを作成し、そこにテキストのメッセージを送信すると、そのメッセージをプロンプトとしてBedrockで生成された画像が返ってくる仕組みです
せっかくAWSを学んでいるのでAWSを使って何か作ってみたいなと思っていたのと、日常利用しているLINEとAWSの何かを連携させることができたら達成感ありそうだなと思ったので、作ってみました
実際に作ったボットとのトーク画面は以下のようになりました

![preview.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3889527/c8bdccd7-1f62-b183-25a6-dd0f1f5e3b31.jpeg)

元記事を表示

Why AWS Certification is Essential for Cloud Career Growth

In today’s rapidly evolving digital landscape, cloud computing has become the backbone of many industries. With a 28% forecasted growth in jobs requiring cloud skills over the next five years, professionals need to stay ahead of the curve. AWS (Amazon Web Services) Certification has emerged as a critical credential for IT professionals looking to enhance their cloud expertise. This article explores why getting AWS Certified is more important than ever, examining its benefits for both individuals

元記事を表示

DynamoDBのテーブル設計手法をまとめた

DynamoDB のテーブル設計について色々調べました。

## 最初にまとめ

– スキーマレスだからといって設計いらない訳ではない
– 検索条件を事前に洗い出したうえで設計する
– ベストプラクティスはシングルテーブル設計、もしくは出来るだけ少ないテーブル
– 種類の異なるレコードを横ではなく縦に格納するイメージで設計するとよい

## DynamoDB とは?

DynamoDB は、AWS によって提供されているフルマネージドな NoSQL データベースサービスです。
従来のリレーショナルデータベースとは異なり、スケーラビリティと柔軟性に優れており、非常に高い可用性とパフォーマンスを提供します。

DynamoDB はスキーマレスな設計を採用しており、データモデルを固定せずに、キー・値ペアやドキュメントデータを効率的に格納できることが特徴です。
特に、急速に変動するアクセスパターンに対しても安定したパフォーマンスを発揮し、データが大規模になるほどそのメリットが際立ちます。
また、プロビジョニングされた読み書きキャパシティに基づいて自動的にスケーリングを行う機能を

元記事を表示

Direct ConnectとTransit Gatewayの通信量が合わない

# やりたいこと
* Direct Connectで日毎の通信量合計を確認するグラフを作成したい
* Transit Gatewayで日毎の通信量合計を確認するグラフを作成したい

# 構成

![met.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2523652/71122113-0b2b-c9a7-d5b2-426da1c1eb9c.png)

* オンプレミスからDirect Connectで接続する。
* DXGW経由でTransit Gatewayに接続する。
* Transit Gatewayアタッチメントで1つのVPCに接続する。
* CloudWatchメトリクスで下記トラフィック送受信量を取得する。

|No|メトリクス|説明|
|:—:|:—|:–|
|①|VirtualInterfaceBpsIngress|※に記載|
|②|BytesIn|Transit Gateway あたりの受信バイト数。|
|③|BytesOut|Transit Gateway からの送信バイト

元記事を表示

AWSハンズオンのススメ

# AWSハンズオンのススメ

## はじめに

こんにちは、NTTテクノクロスでAWSの開発エンジニアをやらせていただいています。だはです。
元教員として、初心者目線から色々な記事を書かせていただいています。
今回はAWS Summit 2024に参加したレポートを書いています。
ただ「見てきた」「聞いてきた」という記事はかなり多いと思いますので、あえて「ハンズオン」に注力してみようと思います。

## 目次

[1.概要](#1概要)
[2.AWS Jam](#2aws-jam)
[3.AWS GameDay](#3aws-gameday)
[4.まとめ](#4まとめ)
[5.あとがき](#5あとがき)

## 1.概要

今回私は[AWS Summit 2024](https://aws.amazon.com/jp/summits/japan/?refid=8b254bb4-ed76-4671-97a7-9f47646c7848&trkcampaign=aws-summit)に参加してきました。
昨年度は初参加ということもあり、基調講演は勿論のこと、他様々なセッションを傾聴してい

元記事を表示

Spring AI で Amazon Bedrock 触ってみた

## はじめに
本記事は[ANGEL Calendar](https://qiita.com/organizations/2024-angel-dojo)の17日目の記事です。
他にも記事が投稿されているので、気になる方は是非ご覧ください!

https://qiita.com/har1101/items/637ba82948aa7670fb9f

今回は、Spring AI を使ってAmazon Bedrockを触ってみようと思います。

## Spring AI とは
Spring AI は Spring Framework を基盤としてAIを用いたアプリケーションの開発などをサポートするライブラリ群を提供してくれるプロジェクトです。

## 準備
まずはSpring Boot のプロジェクトを作成しましょう。
[spring initializr](https://start.spring.io/)でプロジェクトを作成します。
今回のデモでの構成は以下の通りです。

– Project: Gradle – Kotlin
– Language: Kotlin
– Spring Bo

元記事を表示

超初心者向け!Amazon Bedrockのモデル推論APIをわかりやすく解説

## はじめに

「Amazon Bedrockって聞いたけど、よくわからない…」

そんなあなたのために、超初心者向けにAmazon Bedrockのモデル推論APIをわかりやすく解説します。

### モデル推論APIとは?

Amazon Bedrockは、様々な種類のAIモデルを使って、アプリ開発を簡単にできるサービスです。モデル推論APIはその中でも、AIモデルを使って実際の結果を得るための重要なツールです。

例えば、テキストを生成したり、画像を分析したり、翻訳したりといったことを、APIを使って簡単に実行できます。

### 主要なモデル推論API

Amazon Bedrockには、様々なモデル推論APIが用意されていますが、今回は特に重要な4つのAPIをご紹介します。

#### 1. InvokeModel API: 基礎となる汎用API

InvokeModel API は、最も基本的なAPIです。テキストや画像、ベクトルの生成など、幅広いAIモデルに対応しています。モデルの指定や入力パラメータの設定が必要ですが、結果はすぐに確認できます。

#### 2. In

元記事を表示

OTHERカテゴリの最新記事