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

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

AWS ECSのハンズオンやってみた

## はじめに
案件などでECSを使うことは多々あったのでコンテナって便利な概念だけど、インフラとして構成することができてもよく考えたらコンテナの中身ってどうなってるかよくわからない気がする。。。
ということで AWS が提供している ECS ハンズオンをやってみました。

https://pages.awscloud.com/JAPAN-event-OE-Hands-on-for-Beginners-ECS-2022-reg-event.html

今回実施したハンズオンの流れとしては、以下のようになっています。
1. 準備
1. コンテナイメージ作成
1. ECSの作成
1. 自動復旧確認
1. リソース削除
※この記事では公開されているハンズオンと順番を入れ替えたり、省いて実施している部分があります。

おまけ(なんなら本編)として、2/5に公開されCloudFormationで管理外のリソースをCloudFormationのスタックとして取り込める機能が気になっていたのでついでに試してみました。良かったら最後までお読みください。

https://aws.amazon.com

元記事を表示

AWSの生成AIで社内文書検索! Bedrockのナレッジベースで簡単にRAGアプリを作ってみよう

# この記事について

AWSコミュニティ最大級のイベント「JAWS DAYS 2024」内のワークショップにて実施予定のハンズオンコンテンツとなります。

https://minorun365.connpass.com/event/309029/

イベントでは口頭で説明しながら実施しますが、この記事さえ読めば誰でも体験できるように作っていますので、当日イベントにお越しになれない方もぜひご活用ください。(スムーズにいけば30分程度で完了します)

:::note warn
本ハンズオンの実施にあたり、多少の課金(数十円〜数百円以内)が発生することをご了承ください。実施後には忘れず不要なリソースの削除をお願いします。

なお、Bedrockのモデル呼び出し料金はAmazon製のTitanシリーズを除き、マーケットプレイス扱いとなるためAWSクレジット(クーポン)の適用範囲外となります。
:::

※事前にAWSアカウントの作成をお願いします。クレジットカード情報が必要です。ログイン用のEメールアドレスとパスワードをお忘れなく!

https://aws.amazon.com/jp/re

元記事を表示

Amazon Chime SDKのデモを使ってみた。

環境
Windows11
wsl2

https://github.com/aws/amazon-chime-sdk-js
上記からプログラムコード取得

公式ドキュメントから

cd demos/serverless 

以下2行は公式ドキュメントに記載されてない
template.yamlの46行目あたりで
Runtime: nodejs14.x => Runtime: nodejs20.xに変更

npm install
npm run deploy — -r us-east-1 -b -i af-south-1,eu-south-1 -s -a meeting

これで、行けた!
だめなら全て削除して git colenするとなぜか行ける。

元記事を表示

【新卒1年目】AWSプロ資格合格と、新米1年の振り返り

この度、AWS DOPに合格しました!😊

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3583957/ad18f465-e3d6-6c3b-fede-37b4874b9279.png)

そこで、どのように新卒エンジニアが成長してきたか。
新卒1年目エンジニアがどのような仕事を任せてくれるのか。
についても書いていこうと思います。

#### 1.簡単な自己紹介

初めに、軽く自己紹介をさせていただきたいと思います。

大学時代は法学部に所属し、国際法・国際政治を学んでいました。

そして法学部を卒業し、2023年4月にSEとして富士通に入社しました。
(国会でインターンしたりスタートアップで働いたり色々ありますがまた今度で、、)

そのため、**ITの知識はありましたがエンジニアとしては初心者**でした。

もともとAWSに興味を持っていたこともあり、配属希望ではAWSを扱う業務を希望しました。

この記事では、配属されてからの資格のロードマップやAWS構築プロジェクトで任せて下

元記事を表示

AWS 用語理解メモ

AWS 用語理解
【AWS全般】
オンプレミス
クラウドで管理するAWSに対し、オンプレミスはシステムの稼働やインフラの構築に必要となるサーバーやネットワーク機器、あるいはソフトウェアなどを自社で保有し運用するシステムの利用形態のこと。AWSと比べた時のメリットとして「カスタマイズ性が高い」「システムとの連携がしやすい」デメリットとして「初期投資が大きい」「維持管理の運用コストが大きい」「スケーラビリティのコスト高」「災害対応リスク」がある。近年はハイブリットクラウドという選択肢も出てきている。
フォールトトレランス(障害対策)
機器やシステムの設計などについての考え方の一つで、構成要素の一部が故障、停止などしても予備の系統に切り替えるなどして機能を保ち正常に稼働させ続けることをいう。

【VPC】
ネットワークACL(アクセスコントロールリスト)
SGがEC2やELB、RDSなどのインスタンス単位の通信制御に利用するのに対し、ネットワークACLはサブネット毎の通信制御に利用する。SGと同様にインバウンドとアウトバウンドの制御が可能でデフォルトはすべての通信で許可されている。
インター

元記事を表示

AWSコンソールからEC2にSSH接続する

前回に引き続きSSH関連で。

EC2の一覧で画面上部に接続ボタンがありました。
ここからブラウザでSSH接続できるんだなーと思っていましたがうまくいかず・・・
どうやらセキュリティグループの許可が必要だったようです。

![スクリーンショット 2024-02-29 22.50.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/237714/1dc532ea-e618-616d-a9f4-71369c92e0f7.png)

許可はSSH接続するリージョンで利用されているIPアドレスの範囲を許可すればよさそうです。
使用される[AWS IP アドレスの範囲](https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/aws-ip-ranges.html)は[こちら](https://ip-ranges.amazonaws.com/ip-ranges.json)から確認できます。

このJsonの中で `service` が `EC2_INSTANCE

元記事を表示

MSKのブローカー数は2024年2月時点では下げられないので注意

タイトルの通りですが、見落としやすそうで私自身上手く情報を拾えなかったので記事として書いてみました

MSKの各種設定変更を考えてる方向けに役に立てば幸いです

※MSKの概要も整理して記載してみましたので、確認したい方はそちらもご参照下さい

## ブローカー数の変更を試してみた状況

負荷試験をしている中で、ブローカー数を増やした結果サービスのパフォーマンスにどう影響するか一度確認するために、テスト用MSKクラスターのゾーンあたりのブローカー数を1->2に増加してみました。


![スクリーンショット ①.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985033/bac35eb2-d903-bb57-58a7-3afb77a3d84c.png)

元々の設定がゾーンあたりのブローカー数 1

![スクリーンショット②.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2985033/e336fa5e-9f4a

元記事を表示

AWSコンソールへのログイン通知方法 (+構築時の試行錯誤)

# はじめに
**AWSマネジメントコンソールへユーザがサインインした際、ログインに関する情報をメールで通知**する方法を紹介します。

構築時にいくつかの記事等を参考にしましたが、要件にアンマッチであったため試行錯誤した結果も併せて紹介します。

なお、構築当時は**AWS User Notifications**サービスが無かったため、構築案には含まれていません。
**AWS User Notifications**を使用したログイン通知については、別記事にて紹介させていただきます。(ただ、不採用案①と同様の問題がある認識です。)

# 実現したいこと
・IAMユーザー/ルートユーザーがAWSコンソールにログインした際、指定した宛先へメール通知したい
 ⇨メール通知に含めたい内容は以下
  - ログイン時刻
  - ログインユーザ
  - ログインイベントに関するログ

***

# ◎採用案
いくつかの方法を試しましたが、最終的に構築した方法を最初に紹介します。
#### 構成図
![採用案](https://qiita-image-store.s3.ap-

元記事を表示

S3のイベント通知で他アカウント上のLambdaを呼び出す際の権限設定方法メモ

## はじめに
S3バケットにアップロードされたオブジェクトを他アカウント上にあるLambdaを用いて別のS3バケットへコピーする環境を構築しようとした際にIAM周りでつまずいたので、設定方法の備忘録としてのメモになります。Lambda関数はコピー元S3バケットにオブジェクトがアップロードされた時をトリガーとして実行されます(S3のイベント通知機能)。
~~S3のレプリケーション機能とかを使えば簡単なのに~~

今回の構成は以下の図の通りです。

![s3Lambda.drawio.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/682975/9f8912b5-44bd-7eb4-65e5-5565d12ee7cf.png)

| | コピー元アカウント | コピー先アカウント |
| ———— | —————— | ———————– |
| アカウントID | 000000000000

元記事を表示

CloudWatchAgentをインストールしてサーバーの監視を行う④(Linux用CloudWatchAgentConfigファイルの生成、CloudWatchAgent起動)

前回の記事にてEC2へCloudWatchAgentのインストールを行いました。
今回は、Linuxサーバー用にCloudWatchAgentConfigファイルを作成し、CloudWatchAgentの起動をする手順についてご紹介します。
amazon-cloudwatch-agent-config-wizardを実行した際の設定内容と、CloudWatchAgentの起動・常駐化・停止コマンド、amazon-cloudwatch-agent-ctlのコマンドリファレンスなどを確認していきます。

## 作業の流れ
[1.VPCへCloudWatchAgentに必要なVPCエンドポイントを作成する](https://qiita.com/tonkatsu_oishi/items/7c39f81fd4e3e2fbe91e)
[2.EC2を構築し、IAMロールをアタッチする(CloudWatchAgentとSSM権限の付与)](https://qiita.com/tonkatsu_oishi/items/1851eddb094a45f189be)
[3.EC2に対してCloudWatchA

元記事を表示

AWS CLF(クラウドプラクティショナー)合格体験記

## なぜ取得したか
いずれ取得しようと思っていたところ、新入社員が研修で取得していたため、**ヤベェ**と思い取得に向かった。
なお、当方の業務によるAWS経験は無し。

## CLF(クラウドプラクティショナー)試験に対する所感
AWSのサービスに関する問題が網羅的に出題される。
範囲がとにかく広いが浅いため、とにかく浅く広く手を付けて学習する必要がある。
基本情報を取得していて、インフラエンジニアとして3年以上勤務している下地があってのことだとは思うが、AWSのサービス名と一般的な呼称を紐づけて覚えれば難しくはないと感じた。
ただし、クラウドだからこその単語やサービスはしっかりと覚える必要がある。
試験終了時に、即合否が分かる仕様はとても良いと感じた。

## 勉強方法
Udemyの講座動画を見る
Ping-tでSAA(ソリューションアーキテクトアソシエイト)の問題を解く
AWS認定資格 無料WEB問題集&徹底解説 で問題を解く

## 勉強時間
合計で大体20時間ほど。
実質的な勉強はUdemyの動画を見たくらい。
問題はそれぞれの問題集を半分くらいずつ解いたに留まる。
合格は

元記事を表示

【直前対策】AWS認定DBS-C01試験を受けるすべての人に捧げる備忘録【読むだけ復習】

## はじめに(この記事について)
AWSをガッツリ触ったことがない私が
2024/2/21にAWS認定DBSデータベース – 専門知識試験(以下DBS)に合格しました!
(スコアレポート`846/1000`)

開発経験などがまだないため、
ザ・ペーパー試験というような勉強の仕方をしていたのですが
勉強をすすめていく中で、これはDBS受験で即活かせる!と感じた
小手先の知識や傾向を共有したいと思います。

忘れがちだけど得点に直結する知識を確認をしたい方や、迷った時ちょっとでも点数あがる知識をくれ〜〜というような方に読んでいただければと思っています。

ちなみに当方は文系出身IT未経験でSIerに入社し、現在1年目の新卒🐣です。
(去年の9月から机上にて、AWSの勉強を始め、CLP,SAA,SOA,DVAを取得している状態で挑んだ初めての専門知識試験でした)
12冠目指してがんばっておりますので応援よろしくお願いいたします。

## この単語がきたらコレを選べ!瞬殺系の基礎知識
**※問われている内容によって違うこともありますが、
ほぼほぼこれが正解!ということが多いものを

元記事を表示

CloudFrontの署名付きCookieを用いてプライベートコンテンツを配信する

# はじめに

この記事は、CloudFrontの署名付きCookieを用いたプライベートコンテンツ配信についてまとめています。

# 背景

現在開発しているWebアプリケーションに、以下のような追加実装を行うことになりました。

– 認証されたユーザーのみがアクセス可能なコンテンツを作成する
– コンテンツは静的なWebページ
– 認証機能は既存のものを使用する

この仕様を踏まえて、実装方法を検討した結果、CloudFrontの署名付きCookieを採用することにしました。
Webアプリケーションの特徴的に、ユーザー数(コンテンツへのアクセス数)はそこまで多くならない想定であり、既にあるWebアプリケーションのインフラは全てAWSで構築されていますので、運用コスト・実装コスト面でも最適な選択肢と考えました。

# 前提

## CloudFrontの署名付きCookieとは

CloudFrontはAWSのCDNサービスであり、Webアプリケーションのフロント画面や、サイト内で使用される画像等の静的コンテンツをパブリックに配信するという使い方をよく耳にします。

ただ、開発物によ

元記事を表示

【AWS】IoT Greengrass v2備忘録

 AWS IoT Greengrassとは、IoTエッジデバイスにアプリケーションをデプロイ・管理できるプラットフォームです。

今回は、Greengrass v2のハンズオンチュートリアルを参考に、実際にやってみる。

https://catalog.us-east-1.prod.workshops.aws/workshops/5ecc2416-f956-4273-b729-d0d30556013f/ja-JP/chapter1-introduction

## エッジデバイスへGreengrassのインストール
エッジデバイスへのGreengrassのインストールは非常に簡単で、

1. Grrengrass v2のコンソール画面を開く
2. Greengrassデバイス -> 1つのCOreデバイスをセットアップを押す
※ここに非常に丁寧に手順が示されている。下記はその手順。
3. JavaのJRE(Javaランタイム)をインストールする
“`
sudo apt-get update
sudo apt-get upgrade
sudo apt-

元記事を表示

Snowflake→AWS Glue→SnowflakeのETL

# はじめに

AWS GlueをETLとしてGUI操作でSnowflake上にあるテーブルのデータを加工してSnowflakeの別のテーブルに反映できることを確認した記録です。

# 前提

検証の前提として以下を実施済みの状態にしています。

– GlueからSnowflakeにアクセスできる([参考:Snowflake 接続](https://docs.aws.amazon.com/ja_jp/glue/latest/dg/aws-glue-programming-etl-connect-snowflake-home.html]))
– Snowflake上で以下を実施
– ロール作成
– ウェアハウスへのUSAGEアクセス権の付与
– データベースへのUSAGEアクセス権の付与
– スキーマへのアクセス権の付与
– テーブルへの権限の付与
– ユーザーの作成
– ユーザーへのロールの付与
– AWS Secrets Managerで、Snowf

元記事を表示

RDS 認証局証明書更新方法

## はじめに
業務でRDSの認証局証明書を`rds-ca-2019`から`rds-ca-rsa2048-g1`へ更新する作業を行いました。
備忘録として記事に残したいと思います。

## 概要
新規でデータベースを作成する場合、認証機関のデフォルト設定は`rds-ca-2019`となっています。
証明書の有効期限が切れるとSSL/TLS通信が行えなくなるため、
`rds-ca-2019`を使用しているデータベースは、期限までに証明書の更新が必要となります。

### ■利用可能な認証局の一覧
| 証明書 | プライベートキー
アルゴリズム | 署名アルゴリズム | 証明機関の期限 |
|:-:|:-:|:-:|:-:|
| rds-ca-2019 | RSA2048 | SHA256 | 2024/8/23 |
| rds-ca-rsa2048-g1 | RSA2048 | SHA256 | 2061/5/26 |
| rds-ca-rsa4096-g1 | RSA4096 | SHA384 | 2121/5/26 |
| rds-ca-ecc384-g1 | ECC384

元記事を表示

AWS GlueでSnowflakeと接続するために必要なこと

# はじめに

AWS GlueでSnowflakeと接続するために必要なことを確認したときの記録です。

# 前提

Snowflakeのアカウントを作成済みである必要があります。

# ゴール

AWS Glue StudioでSnowflakeに接続できるノードを作成できるようになることです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/838636/52ff9d22-f5e5-b099-775c-2200f4bb814e.png)

# 必要なこと

– Snowflake上で以下を実施
– ロール作成
– ウェアハウスへのUSAGEアクセス権の付与
– データベースへのUSAGEアクセス権の付与
– スキーマへのアクセス権の付与
– テーブルへの権限の付与
– ユーザーの作成
– ユーザーへのロールの付与
– AWSで以下を実施

元記事を表示

AWS AppSync の実装フローを理解する

# AWS AppSync の実装フローを理解する

AWS AppSync はフルマネージドの GraphQL サーバです。

AppSync を使ったAPI実装のフローは独特なので AppSync 用の学習が必要です。
「AppSyncを採用した場合、実際どういう実装フローになるのかコードレベルで理解したい」という方が対象読者です。

実装フローに焦点を当てているので、AppSync 自体の特徴の説明などは省略します。

# 構造を理解する

AppSync のサービスそのものの構造は下記のような感じです。

“`
– API
– has a Schema
– has many Resolvers
– has many Datasources
– has many Functions
“`

– トップに API というリソースがあり、これは GraphQL のスキーマ定義と1対1で対応しています。
– 上記の中の Schema が GraphQL のスキーマ定義になります。
– スキーマには、複数のリゾルバーが紐づきます。
– GraphQL スキ

元記事を表示

【AWS】 CloudWatch上のMediaLiveのメトリクスをLambdaから取得する際に気をつけること

# 概要
この記事では、 `CloudWatch` 上の `Medialive` のメトリクスを取得する際に気をつけることについて言及しています。リファレンスが少ない、かつ引っ掛け問題のような感じで自分は丸一日費やしたのでその記録を残しておきます。

内容的には
– 「`CloudWatch` のメトリクスを `Lambda` で取得する際に気をつけること」
– 「`MediaLive` のメトリクスを取得する際に気をつけること」

が混ざっていますが、どちらも参考になれば、とても嬉しく思います。

# 前提
`MediaLive` で事前に配信を行い、 `CloudWatch`上で指定の `ChannelId` においてメトリクスが確認できることを前提としておきます。

# 実装
実装は `Lambda` で行います。
`Lambda` でなくても問題ないですが、 `Lambda` で行う場合の注意点をいくつか書いておきます。

:::note warn
**注意点①**
`Lambda` に設定している `Role` に対して、`”cloudwatch:GetMetricSta

元記事を表示

[AWS]Serverless Frameworkを使ってAPI Gateway×Lambda×DynamoDBを使用したWebAPIを構築する

## インフラ構成
WebAPIの作成に当たって今回使用するAWSの各サービスを簡単にまとめてみます。

・API Gateway
HTTPリクエストを受け付けて、他のAWSサービス(Lambda等)にルーティングする機能です。REST APIやWebSocket APIを簡単に作成できます。API Gatewayでは、リクエストのパスやクエリパラメータ、ヘッダー、ボディなどをLambda関数に渡すことができます。
https://aws.amazon.com/jp/api-gateway/

・Lambda
サーバレスコンピューティングのサービスです。コードをアップロードするだけで、イベントやトリガーに応じて自動的に実行されます。サーバの管理やスケーリングを気にする必要がありません。Lambdaは、Node.js、Python、Java、Go、Rubyなどの言語に対応しています
https://aws.amazon.com/jp/lambda/

・DynamoDB
DynamoDBは、NoSQLデータベースのサービスで、高速でスケーラブルなキーバリューストアやドキュメントストアを提

元記事を表示

OTHERカテゴリの最新記事