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

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

CloudFrontでS3静的サイトwithベーシック認証

## 概要
– 静的なサイトをS3に置いて手軽にアクセス
– S3 のパブリックアクセスは許可しない
– Basic認証で認証をかける

## ポイント
– CloudFrontのディストリビューションにデフォルトのルートオブジェクトを設定する
– テスト中はキャッシュOFFにしておくと良いかも

## Basic認証用関数
“`javascript
function handler(event) {
var request = event.request;
var headers = request.headers;

// echo -n user:pass | base64
var authString = “Basic “;

if (
typeof headers.authorization === “undefined” ||
headers.authorization.value !== authString
) {
return {
statusCode: 401,

元記事を表示

AWS IoT CoreデータのAmazon Timestreamへのデータ転送

# はじめに
前回の投稿でSiemensの産業向けエッジプラットプラットフォーム”Industrial Edge”から”AWS IoT Core”へ二酸化炭素濃度センサーで取得したデータの連携についてご紹介しました。
今回はそのデータをGrafana等のツールで使用できるよう、AWSのデータベースサービスであるAmazon Timestremeへ送信する手順についてまとめました。
# 構成
今回の構成およびデータフローを図1に示します。
![構成図.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2745875/f2178715-3993-b43d-4177-803d69a152e2.png)
図1. 構成図
二酸化炭素濃度センサーからIoT Coreまでのデータ送信については以下のリンクをご参照ください。
※参考リンク
[エッジプラットフォームとAWS IoT Coreの連携](https://qiita.com/hrsakuma/items/1b972f22113b5d606acc “エッジプラットフ

元記事を表示

Synology NASのバックアップをAWSにとってみた

# はじめに
現在私はストレージ製品の設計開発に携わっており、個別のエンプラ系のお客様のSIにも関わることがあるのですが、エンプラ系の大抵のお客様は何らかの形でオンラインストレージのバックアップを持つことになります。

そんなお客様のバックアップに対する意識の高さを目の当たりにして、私の自宅にあるNASもバックアップを取ったほうがいいのでは…?と思い至った訳ですが、でもNAS筐体2台持つのはいやだな…とも思ってしまうわけで、そうするとクラウドへのバックアップが視野に入ってきます。

クラウドといえばAWSということで、今回はAmazon AWS S3に自宅NASのバックアップを取った際の設定方法を備忘録として残そうと思います。

### 使用しているNAS装置
– Synology DS416Slim
– 小さい筐体だが、2.5インチSSDベイを4つ搭載できる
– 小さくてかわいいね
![IMG_0131.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3741295/35b70314-

元記事を表示

【SageMaker】初めてBERTモデルのトレーニングしてみた。

どうもこんにちは。

今回は、前回に引き続き、SageMakerを使用してモデルのトレーニングを実行してみました。

https://qiita.com/PDC-Kurashinak/items/6a17cbf8693e4c263a98

# BERTモデルってなに?

BERTは、NLP(自然言語処理)モデルの一種で、以下のような処理を行うことができます。

– 翻訳
– テキスト分類
– 質問応答

## NLP(自然言語処理)

NLP(自然言語処理)は、話し言葉や書き言葉をコンピューターで分析、処理する技術です。

ChatCPTなどにも使用されている技術です。

## NLP(自然言語処理)モデル

NLP(自然言語処理)モデルには以下のような種類があります。

– GPT-3
– CPT-4
– T5
– ELMo

# Transformerについて

> Transformerとは、2017年に発表された”Attention Is All You Need”という自然言語処理に関する論文の中で初めて登場した深層学習モデルです。それまで主流だったCNN、RNNを用いたエン

元記事を表示

AWSで、Terraformを利用する方法をまとめてみた(10/10)

Terraformを使用してオートスケーリングを実現する

目次
1.構成ファイルを作成します。
2.構成ファイルを適用します。

1.構成ファイルを作成します。

このファイルでは、AWSのAuto Scalingグループを作成し、EC2インスタンスを自動的に起動および削除するための設定を定義しています。
~~~
provider “aws” {
region = “us-west-2”
}

resource “aws_launch_configuration” “example” {
image_id = “ami-0c55b159cbfafe1f0”
instance_type = “t2.micro”

lifecycle {
create_before_destroy = true
}
}

resource “aws_autoscaling_group” “example” {
name = “example-asg”
launch_configuration = aws_lau

元記事を表示

Knowledge Base for Amazon Bedrock でメタデータフィルタリングが可能に

## はじめに
Knowledge Base for Amazon Bedrock にメタデータフィルタリング機能が追加されました。これにより、クエリに関連性の高いドキュメントのみを検索対象とすることができるため、検索精度の向上が期待できます。

https://aws.amazon.com/jp/about-aws/whats-new/2024/03/knowledge-bases-amazon-bedrock-metadata-filtering/

たとえばニュース記事をデータソースとする場合、事前に西暦 (year) やジャンルといった情報をメタデータとして設定しておくことで、これらを使用したフィルタリングが可能になります。

## やってみる (Amazon Aurora 編)
ベクトルデータベースに Aurora を使用したナレッジベースの環境が手元にあったので、こちらで試してみます。

Aurora を使用したナレッジベースの構築方法は以下の記事で紹介しています。

https://qiita.com/hayao_k/items/45e59c1c2a183c27b20

元記事を表示

DockerでDynamoDBのローカル開発環境を構築するための下準備まとめ

# はじめに
DynamoDBを使用したアプリケーションを開発・テストしていると、AWS上のリソースを利用する必要が生じます。
しかしDynamoDB localを利用することで、アプリケーションの開発やテストをローカル環境で行えるようになります。

本記事では、DockerでDynamoDBのローカル開発環境を構築する方法と関連するツールについてまとめました。

# DynamoDB localのコンテナ生成
DynamoDB localのDockerイメージを利用します。
DynamoDB localを使えば、AWS上のDynamoDB(Webサービス)に接続することなくDynamoDBを使ったアプリケーションの開発やテストができるようになります。

[AWS公式ドキュメント](https://docs.aws.amazon.com/ja_jp/amazondynamodb/latest/developerguide/DynamoDBLocal.DownloadingAndRunning.html#docker)をもとに`docker-compose.yml`を記述するだけで、簡単

元記事を表示

カスタムGuardを用いたAWS Configカスタムポリシールールの作り方 (基本編)

# はじめに
閲覧ありがとうございます、NTTデータ先端技術の@S-takahashi1129です。
業務でカスタムGuardを使いAWS Configのカスタムポリシーを作成する機会があったのですが、日本語の解説資料がネット上にあまりなかったため、備忘録を兼ねて自分なりにポイントをまとめてみます。
今回は最も基本的な部分の解説のみ行い、次回以降で複雑な条件指定の方法や詰まりそうな部分について書く予定です。

# AWS Config とは
AWS Config(以下Config) はリソースの構成を評価、監査するサービスです。
AWS上に存在しているリソースの構成情報を記録して、構成がポリシーに準拠しているかを継続的に評価してくれます。

# Config ルール
Configルールは、必要な構成設定を表します。Configは、記録したリソース構成情報をもとにリソース設定が該当するルールに準拠しているかどうかを評価し、準拠結果の概要を示します。

ルールは大別してAWS提供のマネージドルールとユーザ作成のカスタムルールがあります。
カスタムルールはさらにカスタムLambdaルールとカ

元記事を表示

#JAWSDAYS2024 で感じた大きな節目〜KEYNOTE & クラウド黎明期、いかにしてJAWSは始まったのか〜に参加して

ジャーニーマン( @beajourneyman )です。長いの”ジャニ”と呼ばれています。

この1ヶ月ずっと考え行動し肚落ちしたので、時間は開きましたが、2024/03/02(土)に池袋で開催された「JAWS DAYS 2024 – LEAP BEYOND」の「KEYNOTE」と「クラウド黎明期、いかにしてJAWSは始まったのか」のセッションレポートと所感をお届けします。当日の模様はnoteに書いたので最後にご紹介します。

https://jawsdays2024.jaws-ug.jp/

# 10:00 【KEY-1】長崎さん特別登壇・Jeff Barrキーノート

> <セッション概要>
> Jeffは、AWSブログを中心としたアウトプットを通して、AWSサービスの魅力を分かりやすく伝え、エンジニアのコミュニティ拡大にも貢献して来た方です。
> ユーザーコミュニティは、個人のスキルアップやネットワークの拡大だけでなく、その人が所属する組織や企業にも良い影響を与えます。
> そのようなコミュニティが持つ魅力について、クラウド黎明期からAWSやコミュニティの成長とともに歩んできた

元記事を表示

【AWS-IAM】担当者の役割変更、及び、リリース時にアカウントの権限を変更したい

![【AWS-IAM】担当者の役割変更、及び、リリース時に アカウントの権限を変更したい.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3754524/0601e2db-6dd0-6506-62d2-9071540e2aca.png)

## 本記事で実現できること
担当者の役割変更、及び、リリース時にアカウントの権限を変更する

## 前提
– AWSマネコンはログイン済み
– 2024.3.28 時点でのコンソールのUIになります

## 簡単な解説
全部で9フェーズ

①ホーム画面で、画面上部検索欄に[**IAM**]と入力。
 出てくるサービスの中から[**IAM**]をクリック

![AmazonSQS 障害時DLQに転送されたキューをSQSに再送したい(DLQ再処理)のコピー (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3754524/080b3166-ce95-28ce-0536-cf3366

元記事を表示

IAMで最小権限を簡単な手順で設定した後の話

こんにちは。
本日は、IAMの最小権限を簡単な手順で設定した後、必要な権限、不要な権限の追い込みをかけたい時にどういうアプローチができるかについて記載します。

:::note info
そもそものIAM最小権限の原則については以下をご覧ください。
[IAMユーザーガイド > IAM でのセキュリティのベストプラクティス](https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/best-practices.html)
:::

# 1. IAMの最小権限を簡単な手順で設定する
まず、簡単に最小権限を設定する手順について振り返ります。
以下のページに記載されている IAM Access Analyzer を活用すると、
現在利用している IAMロールで必要なポリシー、不要なポリシーを分析して、
そのロールで必要と想定されるポリシーを簡単に生成することができます。

:::note info
参考記事
[2021.5.6 AWSブログ
IAM Access Analyzer を利用して、
アクセスアクティビティに基

元記事を表示

【AWS-IAM】アカウント棚卸時に、新規参画者のアカウントを作成したい

![AmazonSQS 障害時DLQに転送されたキューをSQSに再送したい(DLQ再処理)のコピー.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3754524/db760201-e2b0-3665-f88c-8dfec4c93dd4.png)

## 本記事で実現できること
アカウント棚卸時に、新規参画者のアカウントを作成する

## 前提
– AWSマネコンはログイン済み
– 2024.3.28 時点でのコンソールのUIになります
– AWSコンソールのパスワードは下記、パスワードポリシーに準ずる
・パスワード最小文字数:14文字
・少なくとも1つのアルファベットの大文字 (A~Z) が必要
・少なくとも1つのアルファベットの小文字 (a~z) が必要
・少なくとも1つの数字が必要
・パスワード有効期限:90日
・直近のパスワードの再利用を禁止:5回
・MFA設定:必須

## 簡単な解説
全部で7フェーズ

①ホーム画面で、画面上部検索欄に[**IAM**]と入力。
 出てくるサービスの中

元記事を表示

AWS CodeBuildをパブリックサブネットで起動しようとしたが…

## TL;DR
codebuildで`VPC_CLIENT_ERROR`がでるならプライベートサブネットで起動しないとだめ

## 再現

### まずは環境を作る

“`hcl:variables.tf
variable “ip_range” {
type = string
default = “192.168.0.0/24”
description = “”
}

variable “private_ip” {
type = string
default = “192.168.0.10”
description = “”
}

variable “bucket” {
type = string
default = “some_example_bucket_name”
description = “”
}

“`
“`hcl:main.tf
resource “aws_vpc” “sandbox” {
cidr_block = var.ip_range
}

data “

元記事を表示

データカタログのコメントをLLMに考えさせてみる

# 要約

LLMを使って
これを
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115707/01e19540-86db-ad18-f501-c2890f9fbef3.png)

こうします
![2024-03-28-15-15-26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3115707/40a799c3-d17d-e3f8-5fd3-ce7c2e35101a.png)

# はじめに
今回はBedrockの利用ユースケース案の簡単な検証です。

冒頭示したように、Glue Data CatalogにはGlueでETLジョブを走らせるためのデータスキーマが登録されています。各カラムには名前とデータタイプのほかにコメントを格納できます。コメント自体は機能に何ら影響は与えません。メモ書きです。

あまり意識することはないかもしれませんが、AthenaなどS3をソースにテーブル作成する際

元記事を表示

氷河(Glacier)に眠っている写真たちをサルベージする 〜 その4 アーカイブの取得

# 目的
AWS S3 Glacier内の各ボールドのボールドインベントリからアーカイブ一覧を参照し、アーカイブを取得する。

## やり方
* InitiateJobCommandを実行しアーカイブを要求する(ボールドインベントリ取得時と同一APIを使用するが指定する引数が異なる)

https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/glacier/command/InitiateJobCommand/

* DescribeJobCommandを実行し進捗状況を取得する

https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/glacier/command/DescribeJobCommand/

* アーカイブの取得が可能となったら、GetJobOutputCommandを実行しアーカイブを取得する

https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/glacier

元記事を表示

CodeGureのコードレビューでフルリポジトリ分析結果のダウンロード方法

# CodeGureのフルリポジトリ分析を試した結果

CodeGureのコードレビューの画面のどこ見ても、分析結果のダウンロードが無い!

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/284278/9a53de67-e8c9-b8e8-4ef3-7f1a56f7b9c7.png)

## とりあえずJSONダウンロードする方法

無ければ自分で作れば良い

ということで開発者ツールのコンソールで以下を貼ればダウンロードできます。
ダウンロードした後は、参考のリンクに貼ってるようなやり方でエクセルに取り込むなりしてもらえればと。

※記事を書いた時点でのHTML要素をベースにしています。HTML変わったら動かないです。
※ブラウザの日本語翻訳すると挙動が変になる場合があったけど諦めない心があれば大丈夫

“`javascript
// データ抽出
const getData = () => {
const data = []
// カード単位
const items =

元記事を表示

Direct Connect接続の費用見積もりで検討すること

# 0. はじめに
AWSにオンプレミスから接続する際、回線のセキュリティや安定性確保のためDirect Connect接続を選ぶ場合がありますが、Direct Connect接続といってもパートナーサービス利用を含めた様々なパターンがあり、費用を比較してどの構成を採用するか検討するのがなかなか大変です。

今回は、Direct Connect接続の費用見積もりにあたって比較検討するポイントを整理します。

# 目次
[0. はじめに](#0-はじめに)
[1. 検討のステップ](#1-検討のステップ)
[2. 冗長化構成](#2-冗長化構成)
[3. 見積もり取得](#3-見積もり取得)
[4. 見積もりの比較](#4-見積もりの比較)
[5. まとめ](#5-まとめ)

# 1. 検討のステップ
検討にあたっては以下のようなステップが必要と考えます。
1. システムの性能要件からDirect Connectを経由する通信量や必要な通信帯域を見積もる
1. システムの可用性要件から採用し得る冗長化構成を決める
1. オンプレ機器を配置するデータセンタやDirect Connect接続

元記事を表示

EBSのボリュームタイプ

## 初めに
本日は、EBSのボリュームタイプに関して書かせて頂きたいと思います。

## 種類
| ボリュームタイプ|使用用途 |
|:———–:|:————:|
| 汎用SSD(gp2,gp3)|EC2インスタンスのルートボリューム |
| プロビジョンドIOPS SSD(io1)   |高いI/O性能が必要なシステム |
| プロビジョンドIOPS SSD(io2)|io1よりも高性能|
| スループット最適化 HDD(st1)|シーケンシャルアクセスを行うDBやビックデータ|
| Cold HDD(sc1)|ログやバックアップなど、使用頻度の低いデータ|

## 用語解説
・IOPS→ストレージが1秒あたりに処理できる(書き込み・読み込み)アクセスすの数
HDDは低く、SSDは高い

・スループット→一定時間にどれだけデータを転送できるか。単位時間あたりでどれぐらいの仕事能力があるのか

## 選択基準
①IOPSとスループットのどちらが重要なのかを検討する。
【IOPSの場合】
・汎用SSDもしくはプロビジョンドSSD

【スループット

元記事を表示

Step FunctionsのペイロードJSON理解した

# はじめに
Step Functions(sfn)をふと触ってみました。
lambdaをコールする際のinputとなるペイロードJSONの記法にやや戸惑ったので、アウトプットしてみます。

# ペイロードJSONの記法
ペイロードJSONとは、sfnの中で実行されるlambdahandlerの第一引数にあたるオブジェクトです。

![cap1.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3654730/23e035ff-b09c-1668-c200-6310556ccefd.png)

これです。

![cap2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3654730/c13364e3-6f93-0105-58af-9e69e9c5f74f.png)

sfnコンソールでの設定箇所です。

![cap3.PNG](https://qiita-image-store.s3.ap-northeast-1.amazo

元記事を表示

AWSでRAG試してみました。

昨日、会社でAWSの生成AIハンズオン勉強会を参加しました。
そこでは、AWS上で生成AIの配置やRAGの使い方について学びました。非常に簡単で使いやすいと感じました。

AWSでRAG使う流れとしては大体⇩の通りです。
①AWS Bedrockでモデルを選定
②AWS CDK(Amazon CloudShell、Amazon Cloud9)で新しいアプリケーションを構築
③RAG用データをアップロード(Amazon S3でアップロード、Amazon Kendraで同期)

AWSのRAGは、この”Kendra”を使ってインデックス化、埋め込み、検索までを一括して行っています。

KendraのRAG検索を少し試しました。
使用したモデルはClaude-3で、テストデータは日立が公開された最適化データです。
使われたモデルはClaude3で、試すデータは
一個テキストベースの質問を投げました。実行されたら以下のようになります。

![3-28-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/35564

元記事を表示

OTHERカテゴリの最新記事