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

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

AWSの利点 ~間違った物理機器を買ってしまい怒られるのを回避~

# 内容

前回、[本当のAWS基礎](https://qiita.com/infra365/items/84c41c250b0abcccc70b)という記事の中でAWSの特徴についてお話をさせて頂きました。本日は前回のおさらいをしつつ、AWSの利点についてお話を致します。

![スライド2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2523652/e9e14ead-fe5c-0053-a077-1704566f695f.png)

1つ目の特徴はAWS責任共有モデルです。クラウド環境を利用する際のAWS側と顧客側の責任範囲が定義されています。

![スライド3.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2523652/481bbe8f-1068-d10a-6164-4631dc6c004e.png)

2つ目がAWSグローバルインフラストラクチャーです。これは世界中のデータセンターを直ぐに利用できるということで

元記事を表示

個人ブログのバックエンドを EC2 から Lambda に移行した

# はじめに

 EC2 & ALB はコストが高すぎた。1 円にもならない個人ブログのために 1 か月 $40 という大金が消えていた。そのうち移行しよう、なんて甘い考えだったが、マネジメントコンソールのコストを見ていたら居ても立っても居られなくなった。

 なぜだかわからないがとても不安になった。

 そこで急遽移行を始めた。

# Lambda 関数の作成

 幸いバックエンドは複雑なコードではなく、index.js という 1 つのファイルだけだった。ChatGPT にどのようにデプロイしたらよいか聞いた。

> AWS Lambdaは、ファイルシステムへの長期的なアクセスや常駐プロセスの保持を前提としていないため、標準的なExpressサーバーのコードをそのままLambdaにデプロイすることはできません。ただし、AWS LambdaでExpressアプリケーションを実行するために、aws-serverless-expressなどのライブラリを使用してHTTPリクエストを処理する形に変換することが一般的です。

`aws-serverless-express` を使うらしい。コ

元記事を表示

【ざっくり機能紹介】意外と便利かもしれない!? Amazon EC2 Global View

:::note info
この記事はEC2の利用状況を表示する「Amazon EC2 Global View 」に関する機能紹介の記事となります。
:::

# まえおき
いつものようにAWSで遊んでいる中で起きる悲劇として、「機能構築したEC2がメニュー画面から消えている」があるかと思います。(原因として、選択しているリージョンが勝手に切り替わっていることですが…….)

よくある事象:`リージョンがいつの間にか「バージニア北部」になっている`
![スクリーンショット 2024-10-16 221516.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3846878/0616f53b-af8d-d6d9-55c8-6dcc6f63d87d.png)

正しいリージョンに切り替えれば済む話なのですが、私のようなうっかり屋さんやトラブル発生時のバタバタしている状況だと気づきにくいポイントなので、何か良い方法はないかを考えていました。

**EC2 Global View**というメニューを見つけたの

元記事を表示

【お手軽エラー監視】AWS CloudWatchからSNSでメール通知する

## はじめに
アラート監視体制は、小規模なサービスや開発初期でも信頼性向上や障害発生時の迅速な対応のために無くてはならないものです。
ただ、人数やスケジュールが限られているとどうしても後回しにしがちな部分でもあります。
そこで、今回はAWSで普段使用するであろうCloudWatchに対して、特別な設定なくLambdaとSNSを組み合わせることで簡単にアラートのメール送信を実現できたので、その際使用した方法を載せます。

まずは簡単なとこらからでも、少しずつ少しずつ積み重ねることでプロダクトの信頼性は着実に向上していきます!

## アラートを送信するLambda関数の作成
今回はPythonを使って関数を作成します。
AWSコンソールで`Lambda > 関数 > 関数の作成`を選択し、関数を作ります。
ランタイムはPythonで任意のバージョンを選択すればOKです。

**コード例**
“`python
import base64
import json
import zlib
import os
import boto3

def lambda_handler(event, c

元記事を表示

AWS EC2インスタンスのUbuntu初期セットアップガイド

AWS EC2インスタンスでUbuntuをセットアップした際に最初に行うべき基本的なステップについて解説します。これらの手順は、セキュリティと安定性を確保するための基本設定となります。

## 1. SSHでEC2インスタンスに接続

まず、SSHキーを使用してインスタンスに接続します。

“`bash
ssh -i /path/to/aws-tikeda-access-key.pem ubuntu@your-ec2-public-ip
“`

## 2. パッケージの更新

最初に、すべてのパッケージを最新の状態に更新します。これにより、セキュリティパッチやバグ修正が適用されます。

“`bash
sudo apt update && sudo apt upgrade -y
“`

## 3. ファイアウォールの設定 (UFW)

UFW (Uncomplicated Firewall) を有効化してセキュリティを強化します。基本的には、SSH(ポート22)、HTTP(ポート80)、HTTPS(ポート443)を許可します。

“`bash
sudo ufw allow

元記事を表示

【AWS】Lambda(python3.11)でSlack通知を行うCloudformationテンプレート

# 概要
AWS Lambdaを使ってSlackチャンネルへ通知を行うCloudFormationテンプレートを作成しましたので、紹介いたします。

# CFnテンプレート

“`yaml
BatchLambdaFunction:
Type: AWS::Lambda::Function
Properties:
Handler: index.lambda_handler
Role: !GetAtt LambdaExecutionRole.Arn
FunctionName: sample-function
Runtime: python3.11
Environment:
Variables:
SLACK_WEBHOOK_URL: !Sub ${SlackWebhookURL}
Code:
ZipFile: |
#!/usr/bin/python3.11
import json
impor

元記事を表示

初心者必見!New Relic Agentアップデート手順

#### ⚠️下記事象が起きましたのでChatGPT o1-previewを使って書きました。
・Amazon Linux 2023でNew Relic Infrastructure Agentをアップデートする依頼を受けた
・CVE-2024-41110の脆弱性対策でアップデートの必要あり
・検証がしたくてアップデートをしてメトリクス取得に問題ないことを確認した
・切り戻しも検証しないといけないのでNew Relic Infrastructure Agentをアンインストールをして、旧バージョンをインストールするところまでを検証した
・実際にここまで検証すると本番も問題なかった
・IT歴が短いほど検証が大事かも知れない

# 初心者必見!New Relic Agentアップデート手順

## リード文

Amazon Linux 2023でNew Relic Infrastructure Agentのアップデートが必要だと依頼を受けたけれど、どこから始めればいいのか迷っていませんか?特に最近報告された脆弱性への対策が急務となっている今、正しい手順でのアップデートと検証が求められます。

元記事を表示

windowsでchmodができない問題

## はじめに
AWSのEC2を用いてwebサイトを作成しようと思い、EC2サーバ(インスタンス)とローカルのSSH接続を行っていた。すると以下のような警告が出た(https://qiita.com/sekkenn1102/items/3f156db39224ae2023f1 から引用)。
~~~
The authenticity of host ‘ec2-XX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com (XX.XXX.XXX.XXX)’ can’t be established.
ECDSA key fingerprint is SHA256:5vDb7b5ozqxJ0FbDv9Qao4LYSd5a+Do5p6Ay6/ZNyV0.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added ‘ec2-XX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaw

元記事を表示

ElasticIPについてと作成から開放までの手順

## はじめに
EC2のElasticIPを付け替える機会がありましたので、ElasticIPについて自分の備忘録を兼ねて記載します。
(本記事は2024年10月15日時点の情報になります)
## ElasticIPとは
AWSのリソース(EC2インスタンスなど)に静的なパブリックIPアドレスを提供するための仕組みになります。
## ElasticIPの特徴
**固定IPアドレス**
通常、EC2インスタンスには動的にパブリックIPが割り当てられ、再起動や停止・起動を行うと異なるIPアドレスが割り当てられます。しかし、Elastic IPを使うと、EC2インスタンスに対して常に同じパブリックIPを割り当てることができます。

**再アサインが可能**
Elastic IPは、他のインスタンスに割り当て直すことが可能です。これにより、例えばサーバー障害などが発生した場合でも、Elastic IPを別のEC2インスタンスに移すことで、同じIPアドレスでサービスを継続できます。

**VPC内で使用可能**
Elastic IPはVPC(Virtual Private Cloud)内のリソー

元記事を表示

【2024年10月版】AWS Databricksのサインアップおよびワークスペース作成

前回からちょうど1年が経ちました。

https://qiita.com/taka_yayoi/items/e7991e88e34cd8205483

# 前回からの変更点

– 以前は無料トライアルは14日間だったのが30日間に変更されました。
– サーバレスの機能(SQLウェアハウス、モデルサービングエンドポイントなど)を利用できる400ドルのクレジットが付与されるようになりました。30日が経過する前にクレジットを使い切った場合には、その時点でトライアル期間も終了します。
– 認証方式の変更。以前はパスワードログインが可能でしたが廃止されています。
– [Unity Catalogの自動有効化](https://docs.databricks.com/ja/data-governance/unity-catalog/get-started.html#automatic-enablement-of-unity-catalog)に伴う挙動の変更(後述します)。

# サインアップ

前回同様こちらにアクセスします。氏名、メールアドレスなどを入力して送信をクリックします。この際のメールア

元記事を表示

【AWS】EC2インスタンス上にWebサーバ(Apache)構築やってみた

## 全体像
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3898218/9f794dc1-b4c5-f17c-11c6-2fcd03b4f3fa.png)

## 必要なAWSリソース
・VPC × 1 ( ap-northeast-1:東京リージョン)
・パブリックサブネット × 1
・EC2インスタンス × 1
・インターネットゲートウェイ × 1

## 到達目標
 自PCからEC2(Webサーバ)へHTTPアクセスを実施し、”Hello World”を表示できること。

## 構築手順
 *今回は、AWSリソースの作成について説明を省略しますので、確認したい方は、こちらを参考にしてください。
![AWSコンソールを使用した構築手順1-1](https://qiita.com/Hiro_tech/items/7b63e3f7899e75d9845f)

1.TeraTermにてEC2へのsshログイン
 ➀「ユーザ名」入力 → ➁「RSA/DSA/ECDSA/ED25519

元記事を表示

New Relic InfrastructureでAWS Fargateをモニタリングしよう!

New Relic Infrastructure を、AWS Fargateに導入することで、タスク、サービスに関するリソースの監視ができるようになります。本記事ではAWS Fargate への導入手順を紹介します!

# New Relic Infrastructure とは
New Relic Infrastructure とは、 Goで作られた軽量の実行ファイルであるInfrastructure エージェントをサーバサイドで稼働させることで定期的に**OS、ミドルウェア、ネットワークなどのパフォーマンス情報ログや OSのパッケージ情報を収集する機能**です。**主要なLinux ディストリビューション、Windows、MacOSなどのメジャーなOSに対応**しており、**DockerコンテナやAWS FargateやAmazon EKSなどコンテナ環境にも対応**しています。

インストール要件の詳細は公式ドキュメントをご確認ください。

https://docs.newrelic.com/jp/docs/infrastructure/install-infrastructure

元記事を表示

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

### はじめに

今回のslurm federation機能に関する記事、世の中に全然無かったので、ちょっと挑戦してみようと思いました。

slurm federation機能を使うことで、slurmマスターが複数あっても、JOBIDを統一的に発行し、別クラスターからでもジョブを投入出来るようにする構成です。

これを行う事で、普段オンプレでslurmジョブを投入するのとあまり変わらずaws parallel clusterでジョブを投入出来るのでは?っと思い、今回はまずはオンプレにあるslurmマスターでfederationが出来るか構成してみます。
次回はaws parallel clusterに拡張します。(まだ出来るかは不明)

![network_federation.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3856269/fc43405a-d9d4-b2c5-66b1-56dc88c4548e.gif)

https://slurm.schedmd.com/network.html#

元記事を表示

App RunnerからCognitoへ接続時にx509: certificate signed by unknown authorityが発生

## 事象
App RunnerからCognitoへ接続しようとした時に、`x509: certificate signed by unknown authority` が発生

## 前提
App Runnerにイメージをコンテナデプロイしている

## 原因

App RunnerがCognitoのSSL証明書を検証できなかった。
App RunnerにCA証明書(ルート証明書)がインストールされていなかったため。

App Runnerは、ベースイメージ `scratch` でdeployしていたため、証明書が含まれていなかった。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/52335/7c288714-4f99-fcc7-9bbc-0c35c1a98ca6.png)

## 対応
“`Dockerfile
FROM alpine:latest
RUN apk –no-cache add ca-certificates
“`

イメージはalpineでなくても証明書を

元記事を表示

【AWS】Lambda + API Gateway + DynamoDBで酒豪判定アプリを開発してみる【前編】

## はじめに

叡智に富んだ読者の皆様、御機嫌よう。
フルスタックエンジニアにメガ進化したいすぎちゃんです!

ぶっちゃけ、リアルすぎちゃんの懐事情は険しくなってきつつありますw(仕事しろ)

そんな爪に火を灯すような生活を送る中でWeb開発を試みると、
どうしてもコスパとタイパを気にせざるを得ません。

先月、AWSの[Aurora Serverless](https://aws.amazon.com/jp/rds/aurora/serverless/)をDBとしてポートフォリオを作ろうと試みたのですが、何もしなくても月に2500円もぶっ飛んじゃうので泣く泣く閉鎖することになりました 😥 (お金に余裕があればまた公開するかも)

https://aws.amazon.com/jp/rds/aurora/serverless/

さて、今回の記事ではコスパとタイパの両立ができる**サーバレスアーキテクチャ**を元にアプリケーションの作り方をレクチャーしたいと思います!

:::note info
**「サーバレス」とは**
サーバー周りの構築・運用を一切気にする必要がな

元記事を表示

【合格体験記】AWS Certified Data Engineer – Associate(DEA)

## はじめに
先日、AWS Certified Data Engineer – Associateに合格しました。
こちらの記事では、合格までの勉強法や試験のポイントをお伝えできればと思います。

## AWS Certified Data Engineer – Associateとは
公式によると以下の説明があります。
> AWS Certified Data Engineer – Associate は、コアデータ関連の AWS サービスに関するスキルと知識や、データの取り込みと変換、プログラミングの概念を適用しながらのデータパイプラインのオーケストレート、データモデルの設計、データライフサイクルの管理、データ品質の確保といった能力を検証します。

また、以下のAWSの知識を有している必要ありと試験ガイドに記載がありました。
>- AWS サービスを使用して、この試験ガイドの「はじめに」セクションに記載 されているタスクを実行する方法
>- データパイプラインの一部であるすべてのデータの暗号化、ガバナンス、保護、ログ記録のための AWS サービスについての理解
>- AWS

元記事を表示

【AWS】Amazon Bedrock Knowledge BasesでRAG実装

## RAGとは
 2020年に発表された「Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks」では、事前学習済みパラメトリックメモリ(事前学習済みLLM)に非パラメトリックメモリ(ナレッジ)を用いてfine-tuningを行い、特定知識への適用を行っていました。現代では、LLMが進化し、プロンプトへ知識を追加するだけである程度特定知識へのアクセスを実現するため、多くのRAGシステムでは高度な検索後の知識をプロンプトへ追加することで、ドメイン知識の回答を生成している。

https://arxiv.org/pdf/2005.11401

論文要旨の日本語訳
>私たちは、言語生成のための retrieval-augmented generation (RAG) – 事前学習済みパラメトリックメモリと非パラメトリックメモリを組み合わせたモデル – 向けの汎用的な fine-tuning の手法を探求しました。私たちは、パラメトリックメモリが事前学習済みseq2seqモデル、非パラメトリックメモリが事前学習済みニ

元記事を表示

App RunnerからCognitoへ接続時にタイムアウトエラーが発生

# App RunnerからCognitoへ接続する際にタイムアウトが発生し少し時間がかかってしまったので整理

# 前提
– App Runnerの構築とCognitoのユーザープールおよびIDトークンを用いた検証の実装などは済んでいる状態
– App RunnerはVPC Connectorを利用してVPC内のリソースに接続している
App RunnerのVPC Connectorなど参考になる記事
https://dev.classmethod.jp/articles/introduction-2024-aws-app-runner/

# つまずいたところ
#### App RunnerからCognitoのリクエストでタイムアウト

#### 原因:ネットワーク

– App Runnerはデフォルトではインターネット経由で外部にアクセス
– ただし、VPC Connectorを利用すると、VPCネットワークに接続してプライベートにアクセスになる
– CognitoはVPCの外にあるので、VPC Connecotr利用する場合App Runnerから接続できない状態になってい

元記事を表示

[AWS #27] Amazon Rekognition


## はじめに
こんにちは
今回はAI/ML分野である **「Amazon Rekognition」** について紹介したいと思います。
:robot: AWSには非常に多くの**AI**(Artificial Intelligence → **人工知能**)、**ML**(Machine Learning、**機械学習**)サービスがあります。

## Amazon Rekognition
:upside_down: **Amazon Rekognition**とは、AWSが提供する**画像分析**についてのマネージドな**機械学習サービス**となっています。

多くのサービスは用意されたAPIにリクエストするだけで使用できるの

元記事を表示

Serverless Frameworkの簡単なキャッチアップ

# Serverless Frameworkをさっくりまとめると

– AWSリソースをコードベースで管理、開発・デプロイするためのもの
– デプロイコマンド実行 → CloudFormationにテンプレート作成 → 必要リソースの作成
– Terraformと比べて、**FaaS(Function as a Service)** レベルのリソースの管理に適している
– API Gateway
– Lambda
– DynamoDB

# サーバレスとは

**サーバーのリソースを意識しない(サーバーの管理・運用が不要)という意味でサーバーレス**

– 最も大きな意味合いとしては物理的なサーバーを用意する必要がないという意味
– 実態としてはサーバーの運用・管理がないというところまで含まれる

## メリット

– 物理的なサーバーを用意するための諸コストの削減
– 提供されているリソースそのものの管理責任はベンダーにあること
– あくまでリソースのセキュリティ・ソフトウェアバージョン……etcというところに限る
– 負荷に対して柔軟に

元記事を表示

OTHERカテゴリの最新記事