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

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

ElasticSearch/Kibanaのトラブルシュート&Tips

## はじめに

ElasticSearch + Kibana(実際は AWS の OpenSearch Service + OpenSearch Dashboards)の利用時に遭遇したトラブルシュートや Tips を記録しておきます。

## トラブルシュート&Tips

### Kibana の画面に接続できない

VPC アクセスの ElasticSearch/Kibana ではインターネットからアクセスできません。以下の対応が必要です。

– パブリックアクセスでドメインを作り直す
– VPC に Windows 踏み台を作る・VPN を張るなどして、VPC 内部からアクセスする

https://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/vpc.html

### ElasticSearch に接続できない&ログ転送できない

fluentbit を使う想定です。設定ファイルが正しいか、コメントを確認してください。

“`toml:fluent-bit.conf
[OUTPUT]

元記事を表示

serverless framework ローカル開発環境だけでテストする(モック不使用)

## 概要

serverless frameworkにてローカル開発環境に閉じてテストが行えるようにするまでの方法をまとめる。
今回のテストではモックを使わない。したがってaws-sdkを使ってAWSの情報を取る分は実際にリクエストが飛んでしまうので注意する。(リクエスト送信先のAWSはローカルのターミナルのaws cilのconfigに記載されているAWSにリクエストを送る。)

## 前提

下記の内容が完了していること

https://qiita.com/miriwo/items/bf274fa6af25a396f05d

## 方法

– aws-cost-notifyディレクトリで下記のコマンドを実行

“`terminal
serverless invoke local –function notify –data ‘{“source”:”aws.cost”,”detail-type”:”AWS Cost and Usage Report”,”detail”:{“key1″:”value1”}}’
“`

– 下記のようにレスポンスが返れ

元記事を表示

serverless frameworkを使って毎日AWSのコストをSlackに飛ばすlambda関数を作ってみる(コードの記載)

## 概要

serverless frameworkを使ってlambda関数を定義し、AWSのコストをSlackに毎日送る仕組みを作る。
今回はメインとなるlambdaにデプロイされるコードを記載する。

## 前提

下記の内容が完了していること。

https://qiita.com/miriwo/items/ab557d0a252f361a0539

## 方法

– handler.jsを下記のように修正(「取得開始日」と「取得終了日」は2024-09-01現在は下記の値で問題無い。しかしCost Exporlerはたしか14ヶ月前までの情報しか取れなかったはずなので皆さんが体験するタイミングによってはエラーになる可能性がある。エラーが出たら当該箇所の日付だけ修正いただければ問題ないはずだ。)

“`aws-cost-notify/handler.js
const AWS = require(‘aws-sdk’);
const costExplorer = new AWS.CostExplorer({ region: ‘us-east-1’ });

元記事を表示

serverless frameworkを使って毎日AWSのコストをSlackに飛ばすlambda関数を作ってみる(ローカル開発環境準備)

## 概要

serverless frameworkをつかってプライベートAWSアカウントのコストを毎日プライベートなSlackに飛ばすlambda関数などを作ってみる。
今回はそのためのローカル開発環境構築を行う。

## 詳細

– PC: Mac(OS: 14.6.1)
– Node.jsのバージョン管理: Volta
– Node.jsバージョン: 20.11.1

## 方法

– 下記の記事を参考にserverless frameworkの環境を準備

https://qiita.com/miriwo/items/ba8c93e71e34519fa2bd

– 上記の記事を参考に設定し、下記の様になったので前提条件は満たせていそう

“`terminal
[12:35:30]~/workspace/02_study/serverless_framework$ npm -v
10.2.4
[12:39:05]~/workspace/02_study/serverless_framework$ node -v
v20.11.1

元記事を表示

VS Code の拡張機能 Continue で Amazon Bedrock を利用した日本語の開発支援体験

# はじめに

Visual Studio Code でプログラム開発をするときに、生成 AI に質問しながら開発をしていきたいです。Amazon Q Developer は便利ですが、2024 年 8 月時点では入力プロンプトや出力結果は英語だけなので、日本語ネイティブにとってはちょっと辛いところがあります。

Amazon Bedrock を利用しつつ、日本語で利用できる生成 AI の開発支援方法を発見したので、これを紹介していきます。**Visual Studio Code に Continue という拡張機能が公開されており、Continue に Amazon Bedrock の連携設定をすることで、日本語を活用したコード支援体験が得られます。** チャット利用、エラーに対するトラブルシュート、既存コードの解説、コードの最適化、とった用途で利用できます。

自分が感じているメリットは以下の通りです。

– Visual Studio Code で日本語を利用した生成 AI 支援を受けられるため、体験が好ましい
– お客様が利用している AWS 環境上の Amazon Bed

元記事を表示

AWS Cognitoを使ってAndroidでサインアップ・サインインアプリを作ってみた

## はじめに

商用のモバイルアプリではアカウント認証が基本的な機能となっています。そこでクラウドサービスを利用した簡単なサインインアプリを作ってみました。今回はユーザの認証のみを行うためにAmazon Cognitoを利用しました。

## Cognitoについて

Cognitoはモバイルやウェブのユーザ認証やアクセス制御を簡単に実行できるサービスです。主に次の機能があります。
– **ユーザプール**
アカウントの作成・ログイン機能を提供し、ユーザの属性(氏名、メールアドレスなど)の管理を行うことが可能。
– **IDプール**
ユーザに一時的なAWS認証情報を提供。

今回はユーザプールを利用して、Androidアプリからユーザの作成とサインインができるようにしていきます。

## クラウドの設定

まず、ユーザプールを作っていきます。
### ユーザプールの作成
1. **サインエクスペリエンスを設定**
まず、プロバイダーのタイプとサインインオプションを選択します。GoogleやAppleなどの3rd partyのアカウント認証を行うにフェデレーテッドも使う必要があります

元記事を表示

AWS: AWS入門(DynamoDB編1) – テーブルを作成する

###### 実施環境

Microsoft Edge 124.0.2478.67 (64bit)

### 0. 概要

AWS には、「 DynamoDB 」というサービスがあります。
DynamoDB はデータベースを利用できるサービスで、顧客情報や取引記録といった様々なデータを保管することができます。
今回はこの DynamoDB について、テーブルの作成やレコードの登録といった、ごく基本的な操作を行ってみます。

DynamoDB を無料枠で利用する場合は、日時にかかわらず 25GB まで利用できます。
その他にも細かい条件がありますが、詳細は以下の Web サイトを参照してください。

https://aws.amazon.com/jp/dynamodb/pricing/

なお、最新の操作方法は以下の AWS 公式ドキュメントを参照してください。

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GettingStartedDynamoDB.html

:::note info
これ

元記事を表示

AWSを極めたい?ならばワークショップをCDKでやってみよう!

# ANGEL Calendar開幕!
[2024年ANGEL Dojo](https://aws.amazon.com/jp/blogs/psa/2024-07-angel-dojo-kickoff/)参加者用アドベントカレンダー「ANGEL Calendar」スタートしました〜! :angel_tone1:

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

本記事は記念すべき1日目の投稿となっております!

9月1日から30日まで、毎日記事が更新されていきますので [2024-ANGEL-Dojo Organization](https://qiita.com/organizations/2024-angel-dojo) もチェックしてみてください!

# はじめに
こんにちは、ふくちと申します。
今回、ANGEL Calendarの企画&運営をしております。

記念すべき1本目ということで、私からは **「AWSの理解度・技術力向上にはCDKとAPI Referenceがいいぞ…」** という話をさせていただければと思

元記事を表示

【AWS】AWS SAMが想像以上にバケモノかもしれないことに気づいてしまったかもしれない

どうもこんにちは。

今回は、AWSのセミナー内でお話に出てきた、AWS SAMについて調べたのでまとめてみました。

ちなみに私、感動しております。

# AWS SAMってなに?

**AWS SAM (Serverless Application Model)** は、サーバーレスアプリケーションをローカルで開発、テスト、デプロイするための強力なオープンソースフレームワークです。AWS SAMを使用するには、AWS SAM CLIというものをインストールする必要があります。

ちなみに、AWS SAM自体は無料で使用できます。AWS SAMを使用して作成したAPI GatewayやLambda関数に対してのみ料金が発生します。

https://docs.aws.amazon.com/ja_jp/serverless-application-model/latest/developerguide/what-is-sam.html

# 通常、サーバーレスアプリケーションを作成するにはどうする?

通常では、以下のような構成でサーバーレスアプリケーションを構築すると思います。(最も

元記事を表示

【Rails】サーバ起動したら勝手にコードが実行されて499HTTPエラーが起きた件

どうもこんにちは。

今回は、AWS Elastic Beanstalk環境にデプロイした時に発生した499エラーの原因を解決したので、備忘録として残します。

# 何が起きていた?

当初は、以下の流れでデプロイをしていきたいと思っていました。

1. ソースコードを`git commit`
1. `eb deploy`実行
1. URLにアクセスして動作確認

しかし、3番目で499エラーが発生してしまいました。(**画面上では、502や504が表示されます。**)

# 原因はなんだったん?

499エラーの原因は、`lib`ディレクトリにありました。
開発者や組織によると思いますが、自分の触っているRailsアプリでは、**`lib`ディレクトリを`eager_load_path`に追加していました**。

“`rb:config/application.rb
class Application < Rails::Application config.eager_load_paths << "#{config.root}/lib" end ``` # なんでeage

元記事を表示

【備忘録】Webアプリ開発体験インターンシップ備忘録

どうもこんにちは。

今回は、8月後半に[弊社](https://www.pdc-ds.com/)で行なったインターンシップの概要について備忘録として残したいと思います。
ご参加いただいた学生にとってはかなり満足度の高いコンテンツとなったようでしたので、参考になればと思います。

# 概要

Ruby on Railsを使用してWebアプリケーションを開発してもらい、デプロイ、試験を通じてシステム開発の一連の流れを体験してもらう。

# 募集人数

5人

# 前提

本インターンシップで開発してもらったWebアプリは以下です。

**レベル1**: 自分用タスク管理アプリ(Todo機能のみ)
**レベル2**: 自部署用タスク管理アプリ(Todo + ユーザ管理 + ログイン/ログアウト)
**レベル3**: 社内用タスク管理アプリ(Todo + ユーザ管理 + ログイン/ログアウト + 部署管理)

上記のように、レベル/進捗状況によって、成果物を分けました。
(レベル1が終わったらレベル2、レベル2が終わったらレベル3というように実施)

最初のタスク管理アプリを開発するための枠

元記事を表示

JMED-LLM を Amazon Bedrock ( Claude 3.5 Sonnet, Claude 3 Haiku ) で評価してみた

## 要約
今回の検証結果です。
お時間ある方は続きも読んでいただけると幸いです。
| Model | JMMLU-Med | MRNER-disease | MRNER-medicine | NRNER | CRADE | RRTNM | SMDIS | JCSTS | Average |
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
| Claude 3.5 Sonnet (n=1) | 0.72(0.79) | 0.63(0.21) | 0.40(0.23) | 0.48(0.28) | 0.57(0.55) | 0.76(0.83) | 0.74(0.87) | 0.51(0.36) | 0.60(0.51) |
| Claude 3 Haiku (n=3) | 0.57(0.68) | 0.67(0.25) | 0.33(0.18) | 0.52(0.28) | 0.22(0.34) | 0.51(0.64) | 0.30(0.65) | 0.10(0.20) | 0.40(0.40) |

# はじめに
みなさん、生成 AI のモ

元記事を表示

【AWS認定合格記】AWS ソリューションアーキテクトプロフェッショナル(SAP-C02)

:::note warn
受験は今から約半年も前のことになりますが、当時の勉強方法などの備忘録を記載しています。
:::

## はじめに
軽く自己紹介すると、、
◆学部卒(非情報系)
◆新卒でSIerに入社し、3年目。
◆取得資格
| 資格名 | 取得日 |
|:———–|:———–|
| 基本情報技術者 | 2021年11月 |
| AWS クラウドプラクティショナー | 2023年2月 |
| AWS ソリューションアーキテクトアソシエイト | 2023年7月 |
| AWS ソリューションアーキテクトプロフェッショナル | 2024年3月 |
| AWS デベロッパーアソシエイト | 2024年3月 |
| AWS sysOps Administrator アソシエイト | 2024年4月 |

:::note info
sysOpsAdministratorアソシエイトを取得するまでは、業務ではAWSに携わったことはありませんでした。
:::

## 勉強方法
使用した問題集は、**CloudTechのみ**でした。

https://k

元記事を表示

数百の文章からAWS生成AIで話題を取得してみた(その2)

# 背景
こちらの記事の続きになります。

https://qiita.com/bouru_sumisu/items/6e64a6a8a0849c245615

# umapで次元削減 -> hdbscanでクラスタリング
前回の記事で取得した(100, 1536)行列を、まずは(100, 適当な次元数)行列へ次元削減しようと思います。
次元削減を行う理由としては、1536次元は後続のクラスタリング処理にとっては多次元過ぎる気がする、になります。

次元削減のアルゴリズムには、pcaやt-sneなどもありますが、今回は新しそうなumapを使ってみます。

https://umap-learn.readthedocs.io/en/latest/parameters.html

ここで、UMAPメソッドの引数n_componentsでは「何次元に次元削減するか」を指定する形になります。

https://umap-learn.readthedocs.io/en/latest/parameters.html#n-components

決め打ちにする事も考えましたが、何か

元記事を表示

AWS CloudShell用 nanoの使い方

# はじめに
CloudShellで使用できるエディタにnanoがあります。

https://docs.aws.amazon.com/cloudshell/latest/userguide/vm-specs.html#pre-installed-software

自分はviをよく使っていたので、今後nanoにも慣れていこうと考え記事にしました。
ヘルプを見ればよいのですが、CloudShellではヘルプ通りに動かないものもありましたので、自分が使いそうな基本的な操作をまとめてみました。

# 参考

https://qiita.com/ohakutsu/items/a1155bdc94b2bfb831b5

# 起動、保存、終了

– 起動:`nano`または`nano hoge.txt`
– 保存:`Ctrl+S`
– モードを指定して保存:`Ctrl+O`/`F3`
– 終了:`Ctrl+X`/`F2`
– 未保存時は確認が求められ、`Y`を入力
– 保存するモードの指定が求められます

保存モードは、以下の保存方法を組み合わせて、`Enter`で決定します。

元記事を表示

PythonのLambda Layerを作成する方法

# フォルダ直下構成
以下の構成が必要なようです
pythonディレクトリ内に必要なライブラリをインストールする必要があります
![lambda_layer.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1952885/460ae25f-ac39-183b-f78a-1cd5b212ba24.png)

# 実際の作り方
1.任意のディレクトリ内にpythonディレクトリを作成する
2.pythonディレクトリに必要なライブラリをインストールする
“`
pip install boto3 -t python
“`
3.pythonディレクトリをzip化
“`
zip -r layer.zip ./python
“`
4.手順3でzip化したものをlayerとして登録する
[AWS Lambda Layersでライブラリを共通化](https://qiita.com/t_okkan/items/394a15577bd1aad46ec3#layer%E3%81%AE%E8%BF%BD

元記事を表示

AWS PrivateLinkの真実:VPCエンドポイントとの関係性を徹底解説

# 1. 背景
VPCエンドポイントを紹介する記事で「インターフェース型エンドポイント (AWS `PrivateLink`)」のような表現や、「`PrivateLink`とは、AWSへのAPIアクセスをインターネットを経由せずに行えるインターフェースタイプのVPCエンドポイントです。インターフェースタイプは`PrivateLink`と呼ばれています」といった説明をよく目にしたことがあるのではないでしょうか。

https://devlog.arksystems.co.jp/2018/05/11/4896/

このような説明により、`PrivateLink`がインターフェースVPCエンドポイントと同義だと誤解してしまう方が多いのではないかと懸念されます。
本記事では、AWS VPCエンドポイントの種類、その使い分け、そしてVPCエンドポイントと`PrivateLink`の関係について整理します。

:::note info
AWS VPCエンドポイントには以下の3種類があります。
– ゲートウェイエンドポイント(Gateway Endp

元記事を表示

FinOps Certified Practitioner 取得してみた

## 1.きっかけ

1.業務でFinOpsツールに関わる機会があり、概念に興味を持ち始めたのがはじまり。
2.もともとコスト感覚にケチ敏感な性格なのもあり興味深々。
3.コスト問題ってCSPが意図的に話題に出さないよねと思いつつ、今後重要になるよなと。
4.その割に日本で全然流行ってないしネットに情報ないぢゃん。
5.日本で二回目のJapan FinOps Meetup参加することで、つよつよエンジニアと触れ合う。
6.モチベーションが上がったので形に残すか!

単純

## 2.対策

アウトプットしてから分からないとこをインプットするのが好きなのでその順番で実施。

### 2.1 問題を解きまくる

当然のように手ごろな日本語教材がないのでUdemyの手ごろな問題集を解きまくった。
とりあえず2passして分からない箇所をすべてつぶしたので半日ほど費やしたと思う。

ぶっちゃけ、本番はUdemyの問題より数段難しいので有効性はこれだけだとかなり微妙。

https://www.udemy.com/course/finops-certi

元記事を表示

API Gatewayで受けたファイルをS3にユニークな名前で保存する。

# 既存Webサービスのファイルアップロード機能をサーバーレス化する

## 1. 背景

既存のWebサービスでは、ファイルアップロード系のAPIをサーバーレス化する必要が生じました。この記事では、その過程と実装方法について詳しく解説します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2193969/c936e2cc-82ad-77a8-9c08-4289ad9431e3.png)
[図1: 既存システムの構成図]

## 2. 構築

### 2.1 既存システムの構成

既存のシステムでは、ログイン、情報確認、ファイルアップロードの機能をApplication Load Balancer (ALB)、EC2インスタンス、RDSで実現していました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2193969/e6262fbb-1b0a-b14c-b831-f8f7d8c1d3

元記事を表示

【OCI クラウド移行ガイド】 Amazon Redshift から OCI Autonomous Data Warehouse へ移行してみた

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

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

# 移行するサービス:Amazon Redshift
今回、移行対象とするのはAmazon Redshiftです。
SQL DeveloperのAmazon Redshift移行アシスタントを用いて、Amazon RedshiftをAutonomous Data Warehouseに移行する手順を解説します。
SQL Developerでは、Amazon Redshift以外にも、MySQL Database、Microsoft SQ

元記事を表示

OTHERカテゴリの最新記事