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

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

Kinesis data streams、lambda、S3を活用したWebアプリのリアルタイムデータ解析基盤構築

# はじめに

本記事では、AWSの各種サービス(S3、ECS Fargate、ECR、IAM、Lambda、Kinesis Data Streams)を活用して、Webアプリのリアルタイムデータを収集・解析するデータ分析基盤の構築方法について説明します。現代のWebアプリケーションは、ユーザーの行動やシステムの状態をリアルタイムで監視・分析することが求められており、この基盤はそのニーズに応えるものです。

![aws.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/731268/07644df9-973b-fd6e-3207-f6e1b2a76410.png)

以下の作成したリポジトリです。

https://github.com/sugiyama404/practice_kinesis_data

## アーキテクチャの概要

+ Webアプリケーション: ユーザーの行動やシステムイベントをKinesis Data Streamsに送信
+ Kinesis Data Streams: リアルタイム

元記事を表示

意識低い系インフラエンジニアがAWS Certified SysOps Administrator – Associate(SOA-C02)を取得したし、AWS Certified Developer – Associate(DVA-C02)も取得した

### 言い訳
本記事は

・2022/12月に取得したDVA
・2023/11月に取得したSOA

の合併号です。

ずっと記事にしようと思って下書きまで書いていたのに、本業で炎上PJに参画してしまいずっと寝かしっぱなしにしていました。
そんなこんなでだいぶ落ち着いてきた今、改めて執筆しなおしました。

# はじめに
意識が低いというのに資格取得に燃えはじめ、ついにアソシエイト制覇しました。
(と思ったらアソシエイト資格が追加されました。なんてこったい)

意識低い系の方でも同じように合格できる、参考になるのではと思い、本記事を投稿いたします。

当方(2024年時点で8年目エンジニア)の取得済み資格は
・ITパス
・AWS CLF/SAA
です。

## 得点

どちらもとてもギリギリでした。どちらも変な汗でた。

## 学習方法/期間

### DVA
・実際に画面を見てみる:不定期

・CloudTechの問題を全て100点取れるまで解き続ける
→記憶にないがめっちゃやったことだけははっきりしている。2か月ぐらいかけてやりました。

### SOA
・実際に画面を見てみる:不定

元記事を表示

Azure NSGとAWS SGの違い

Azureを触った後にAWSを勉強して混乱したのでメモ

Azureの「Network Security Groups(NSG)」
= AWSの「Security Groups(SG) + Network Access Control Lists(NACL)」

|観点|SG(AWS)|NACL(AWS) |NSG(Azure)|
|—|—|—|—|
|アタッチ対象|インスタンス|サブネット|サブネット、ネットワーク インターフェース|
|設定方法|ホワイトリスト方式(許可のみ)|ブラックリスト方式(許可・拒否)|ブラックリスト方式(許可・拒否)|
|設定効果|ステートフル|ステートレス|ステートフル|
|評価|序列はなくすべて評価される|優先度順に評価される|優先度順に評価される|

## ステートフル、ステートレスとは
ステートフル = 戻りの通信(インバウンドトラフィックに対する応答のアウトバウンドトラフィック、アウトバウンドトラフィックに対する応答のインバウンドトラフィック)は、行きの通信が許可されている限り自動的に許可

## Azureで既定ではVnet内は

元記事を表示

データエンジニアとしてできるセキュリティ対策を考えてみた

## はじめに

2024年6月9日、株式会社KADOKAWAが、複数のWebサイトで利用できない事象が発生し、外部からの不正なアクセスの可能性が高いと公表しました。6月14日の公式発表では、ランサムウェアを含む大規模なサイバー攻撃であることが確認されました。この攻撃により、サービスが一時停止し、データセンターのサーバの物理的なシャットダウンが必要となるほどの被害が発生しました。

このようなサイバー攻撃は、デジタルトランスフォーメーション(DX)、リモートワーク、クラウドシフトの進行に伴い増加しています。ここでは、データエンジニアとして実践すべき具体的なセキュリティ対策について解説します。

## サイバー攻撃の種類と対策

### ランサムウェア

ランサムウェアは、コンピュータをロックしたり、ファイルを暗号化したりして使用不能にし、元に戻すための身代金を要求するマルウェアです。例えば、角川のケースでは、ランサムウェアがデータセンター内のサーバに感染し、サービスの大規模な停止を引き起こしました。

### 対策

– **定期的なデータバックアップ**: 定期的にデータをバックアッ

元記事を表示

神様、僕は気づいてしまった CDKの素晴らしさに…

## :beginner: 1.対象購読者
– cloudformationは使ったことあるけどCDKは使ったことない人
– CDKってなんか敷居高いからちょっと…と思っている方

## :sun_with_face: 2.きっかけ
とあるセミナーで『**cloudfomationはオワコン!!今からはCDKの時代!!**』という話を聞きました。
「そんな馬鹿な:interrobang:私はcloudfomationが神だと信じているCDKなんて絶対に認めない:japanese_goblin:」
と思いつつも…まぁ軽く使ってから批判はすべきかなと思いCDKをちょっとだけやってみることにしました。

## :writing_hand: 3.やったこと
・VPCの作成
・パブリックサブネットの作成

## :wrench: 4.準備編
:::note warn
前提
最新のnodeがインストール/asw configureが設定されている状態
:::

### cdkのインストール
“`
 npm install -g aws-cdk
“`
ムムム…:cold_swe

元記事を表示

プラスアドレッシングについて

# AWSのアカウント閉鎖…
プロジェクトで全くAWSを触る機会がなく、久々に勉強がてらAWSのアカウントにログインしようとすると、クレカの有効期限が切れており、アカウントが閉鎖されていた。
同じメールアドレスで登録しようもログインしようにも閉鎖されているがアカウントはアドレスに連携されているためにどちらの対応もできない。(そもそもそこまで気づかないのが問題なのですが…)

# 解決方法
[サブアドレスで解決](https://docs.aws.amazon.com/signin/latest/userguide/troubleshooting-sign-in-issues.html#troubleshoot-cannot-create-new-acc)。
プラスアドレッシングというメール自体の機能を使い解決。

# プラスアドレッシングとは?
メールアドレスは以下のように構成されている。
`local-part@domain`
– local-part: メールアドレスの@より前の部分
– domain: メールアドレスの@より後の部分

プラスアドレッシングでは、この`local-

元記事を表示

AWSってなに?な新卒が1カ月でSAAを合格した誰でも出来る勉強方法

## こんにちは
Qiita初投稿なためもろもろお許しを。。。

### 経緯
クラウドもオンプレミスも何の話をしているのかさっぱりな新卒だった。(今も新卒ですが)
会社のビジネス研修などを受けながら、どうやら知っておくとよさそう?と思い資格を取ることに。
全くの無知な新卒が土日もまともに勉強せず合間時間のみで合格出来たため、体験記として方法など記しておく。

### 合格まで
2024年4月に新卒として入社し、5/8にSAAを受ける事を決断
6/2をSAA試験日に決定
5/26にAWS CLF合格(716点)、6/2にSAA合格(777点)

## いますぐ試験日を決める
全ての資格や目標に言えるが、ゴールを決めないと人間やる気は起きない。
結局夏休みの最終日の宿題から私たちは抜け出せない。
だからこそ、脳みそ空っぽにして今決めるべき。

それほど難易度が高い資格ではない。
冷静に問題を読めば知識量が多少及ばずとも実は合格だけなら出来る。
とりあえず試験日を今確実に決める。
試験24時間前までキャンセルが間に合うので。
3週間以降の空いている土日にとりあえず入れてから考える。話はそれ

元記事を表示

AWS Certified Data Engineer – Associateを新規取得した話

# はじめに

・AWS Certified Data Analytics – Specialty (DAS)
・AWS Certified Database – Specialty (DBS)
が廃止されました。

https://aws.amazon.com/jp/blogs/news/aws-certification-retirements-and-launches/

後継として、アソシエトレベルで、「AWS Certified Data Engineer」が新設されたので受験してきました。

試験のバージョンは、
+ DEA-C01
のバージョンでした。

# スコア
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281768/bc25b002-e9c7-ab43-3902-1496379bd26a.png)

結果は、結構、余裕のある点数でした。

見直しフラグをつけた設問は10個でした。設問はProfessionalやSpecialtyに比べたら、比較的、短い設問ですので

元記事を表示

[AWS SUMMIT2024 セッションレポート] AI アプリ開発プロジェクトの始め方

# はじめに
受講セッションの個人的な所感と、メモです。
メモの内容は、誤字脱字などあるやもしれませんが、ご了承ください。

# 概要
> AI を使って今までできなかったことをやりたいけれど、AI を組み込んだアプリ開発をどう始めてどう進めたら良いのか、どこかに落とし穴があるんじゃないかと不安を持つ方もいらっしゃるのではないでしょうか。また、生成 AI の流れが来ていますが、従来の AI との使い分けや共存などにもお困りじゃないでしょうか。このセッションでは、アプリ開発を始める前に考えておくべきことから、実際にアプリ開発をする際に便利な AWS サービスの使いどころの紹介、アプリ開発が終わった後も気にすべきことなど、AI 全般のアプリ開発ジャーニーにおけるビジネス&Tech な内容をまとめてご紹介します。

# 所感
改めて、AIの基礎的な事、考え方が知れたいいセッションでした。

AIは100%の精度にはならない、を念頭に、
許容できる範囲を考えたり、100%に近づけるためにはどうすればいいかを考えたりと、
向かい合うための心構えを知れた気がします。

特に大事にしたいのが、ビジネ

元記事を表示

AWS EC2でよく使うコマンド

## **システム管理**

1. sudo – 特別な権限を持ったコマンドを実行 ほとんどのコマンドの冒頭に入力することが多い。
• 例: sudo apt-get update

2. reboot – システムを再起動
• 例: sudo reboot

3. exit – EC2インスタンスからログアウト
• 例: exit

## **ファイル・ディレクトリ操作**

4. tree – ディレクトリの構造をツリー状に表示
• 例: tree

5. cd – ディレクトリを移動
• 例: cd /home

6. ls – ディレクトリ内のファイルやフォルダを表示
• 例: ls -l

7. mkdir – 新しいディレクトリを作成
• 例: mkdir new_directory

8. cp – ファイルやディレクトリをコピー
• 例: cp source.txt destination.txt

9. mv – ファイルやディレクトリを移動または名前を変更
• 例: m

元記事を表示

[初心者向け] SlackとChatbotとLambdaを使ってChatOpsを実現しよう!

## 概要
Slack(Chatbot)経由でLambdaを使ってChatOpsを実現できるのでその方法について解説します

## 前提
– SlackのワークスペースとChatbotとの連携が完了していること

## ChatOpsとは
Chatツール(Slack、Teamsなど)を通じてシステム開発・運用から一般業務などさまざまな業務の効率化を行う手法のことです
ChatOpsでできることは色々あり、Slackにメッセージを送ることで

– SSOユーザの発行
– SGへIPアドレスを登録
– デプロイ

などさまざまなことを行うことができます
また、Slackのワークフローを組み合わせることでより汎用性が高くなります

## Chatbotの設定
Chatbotの設定を行います
設定名とチャネルIDを設定します

![スクリーンショット 2024-06-29 17.47.29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/625980/d07ae4f1-c4d9-eb1a-6bcb-c117a7b

元記事を表示

AWS EC2の生成されたインスタンスを型として保存する

## はじめに
AWS EC2の生成されたインスタンスを型として保存しておいくことの備忘録。

## 🦁**結論**🦁
EC2は一度作成したインスタンスを「型」のように保存でき
同じような環境をすぐに作成することができる。

:::note info
押さえておくべき点
* AMI(Amazon Machine Image)はインスタンスにある「PCの構成」「ストレージの内容」をコピーして、そのまま再利用できるようにするための「型」のようなもの
* テンプレートは「PCの構成」のみをコピーして再利用できるようにするための「型」のようなもの。
* 「同様のものを起動」は型を定義せず、そのまま再利用してしまうこと
:::
***

:::note alert
注意点
* 同じものを2つと稼働させる場合にはコストがかかってしまうリスクが上がる。
:::

## **手順一覧**
【前提】
AWSのアカウント作成からインスタンスの起動、停止などを理解されてる方
https://qiita.com/nyanyacyan/items/83e

元記事を表示

開発環境を改善するためにチームに提案して実践したこと

## 導入

### 何について話すのか

開発環境を改善して、効率化することでアプリケーション開発に注力するため行った(行っている)取り組みについてお話します。

### 想定読者

– レガシーな環境を改善している(していきたい)人
– 開発環境改善のアイデアが欲しい人
– CI/CDやDevOpsよりな仕事に関わる人

### どんな人が書いているか(自己紹介)

– 3年目のエンジニアでバックエンドを中心に担当(最近インフラも担当するようになりました)
– メインで扱う技術はPHP・TypeScript・AWS
– アプリケーション開発とAWSインフラ構築を担当する
– 受託開発が中心の企業に従事

## 記事で触れる取り組み(取り組んだ順)

1. Dockerの導入
2. テスト・静的解析の導入
3. CI/CDの導入・整備による効率化
4. Gitフローの変更・整備・周知
5. フロントエンド側へTypeScript・Vueの導入
6. AWSサービスの活用

## Dockerの導入

### 背景

Docker導入前はwinscpというツールを利用してLinuxサー

元記事を表示

Bedrock(Converse API)によるドキュメントチャットをChainlitとLangChainで構築する

:::note info
本記事で使用している langchain-aws パッケージの ChatBedrockConverse クラスは 2024/7/4 時点でベータ扱いです。今後仕様は変更される可能性があります。
:::

## はじめに
Amazon Bedrock の Converse API がドキュメントチャットをサポートしていると話題です。

https://qiita.com/moritalous/items/ff2763bcd9408a1b395a

Converse API は Amazon Bedrock がサポートする複数の基盤モデルを統一のインターフェースで呼び出すことができる API です。

https://aws.amazon.com/jp/about-aws/whats-new/2024/05/amazon-bedrock-new-converse-api/

少し乗り遅れましたが、Chainlit × LangChain × Bedrock (Converse API) でドキュメントアップロードに対応したチャットボットアプリを作ってみます。

#

元記事を表示

【過去記事】AWS Summit Tokyo 2019 Day-3 参加メモ

## はじめに
– この記事は、Qiitaアカウントの整理のため、別のアカウントで投稿した過去の記事を移行してきたものです。全く同様の記事があるかもしれませんが、盗作等ではありませんのであしからずご容赦ください。
– 過去記事 投稿日: 2019年06月15日

## 概要
AWS Summit Tokyo、3日目の最終日も参加できました。幕張はやっぱ遠いな。。。

最終日で特に印象的だったのは、基調講演でのSyntheticGestaltの話し。これは本当にテクノロジーが世界・社会を変えるという現在進行形の話で、その内容を目の当たりにしたというすごい感覚でした。

あとはDeepRacerワークショップ。機械学習とか全く縁がなかったし、今の業務とも全く関係ないんだけど、すごく面白い分野です。もっと知りたい。

以下、参加したセッションのメモ書き。

## 基調講演

### メルカリ
* AI/ML
* Image Search
* EKS Cluster 利用して、S3に保管しているイメージを使ってトレーニング
* S3

元記事を表示

【過去記事】AWS Summit Tokyo 2019 Day-2 参加メモ

## はじめに
– この記事は、Qiitaアカウントの整理のため、別のアカウントで投稿した過去の記事を移行してきたものです。全く同様の記事があるかもしれませんが、盗作等ではありませんのであしからずご容赦ください。
– 過去記事 投稿日:2019年06月14日

## 概要
1日目は参加できず、2日目より参加

思ったより参加者が多く、AWSの盛り上がりを実感。

各ブースまわってみたりしたが、聞きたいこととかちゃんと整理しておかないともったいないなと痛感。。。
あれだけの人数がくるんだから、なかなか担当者捕まらない。担当者捕まえたら聞くことちゃんと聞けないともったいない・・・
結局グッズ集めに終始・・・

DeepRacerはやってみたかったけど、120分待ち!!あきらめた。。。
ちょっと眺めたけど、やっぱり面白いな、なんだろうな、あれ。
機械学習めっちゃ興味ある。

明日最終日も一日参加できればいいな。DeepRacerセッションと、DynamoDB DeepDiveが楽しみかな。

以下、参加したセミナーのメモ

## WindowsシステムをAWSで動かす勘所

* Window

元記事を表示

Lambda関数でDockerコンテナ化されたPythonのFastAPIサービスを動かす

# Lambda関数でDockerコンテナ化されたPythonのFastAPIサービスを動かす
* 参考にさせていただいたブログ : https://reffect.co.jp/aws/lambda-docker-fastapi
## ディレクトリを作成する
“`bash
docker -v
mkdir lambda_fastapi
cd lambda_fastapi
“`
## fastAPIサービスを実装する
“`bash
touch app.py
“`
* ~/aws/lambda_fastapi/app.py
“`python
from fastapi import FastAPI
from pydantic import BaseModel
from mangum import Mangum

class Item(BaseModel):
name: str
price: float

app = FastAPI()

@app.get(‘/’)
async def root():
return {“message”: “Hello from l

元記事を表示

amplify publishしたのにサイトの内容が更新されないときの対処方法

## はじめに
Webサイトに変更を加え、“`amplify publish“`がエラーもなく完了したのに、その変更が反映されない場合の対処方法です。

## 原因
cloudfrontにキャッシュが残っていた。

## 対処方法
cloud frontでキャッシュ削除を行います。

1. AWS Manegement Consoleにログインし、CouldFrontページに移動
1. 対応するディストリビューションを選択
1. 「キャッシュ削除」を選択
![スクリーンショット 2024-07-03 16.23.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3820079/ba5846a3-741e-30bc-5766-5ea258d84baf.png)
1. 「キャッシュ削除を作成」を選択
1. オブジェクトパスを指定する
残しておきたいキャッシュが場合は“`/*“`で全選択しても大丈夫。
1. 「キャッシュ削除を作成」を選択

これでしばらく待つとキャッシュが削除されるため、再び“`

元記事を表示

AWS S3「私とデータベース、どっちが大事なの!」(CDKでS3のバージョニングとオブジェクトロックを実装)

## はじめに
__データベースは慎重に設計するのに、S3はデフォルトの設定に任せていませんか。__

ただのログファイルだったり、ドキュメント管理程度に使用しているなら全く問題ないですが、システムに組み込まれた重要なバケットであるにも関わらず何も意識せず実装していたということが私自身ありました。
今回はS3を守るために設定したい二つの機能と、それをCDKで実装する方法について調査した内容をまとめました。

## バックアップの機能を果たす「バージョニング」
S3のバージョニング機能を用いると、オブジェクトに自動的にバージョンを付与してくれます。
これによって万が一オブジェクトを削除してしまってもバージョンを指定して復元することができるようです。

詳しくはこちら
[【図解あり】Amazon S3バージョニング機能を用いる理由](https://envader.plus/article/62)

### CDKで実装

[→公式ドキュメントから参照](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_s3.Bucke

元記事を表示

【Rails】bundle installでGemのインストールはしているのにコンテナやEB環境で認識されない時の対処法

どうもこんにちは。

今回は、タイトルに記載した件について対処したので備忘録として記事にします。

# 環境

Ruby 3.2.2
Rails 7.1.3.3
EB環境 Ruby 3.2 running on 64bit Amazon Linux 2023/4.0.7

# どんなエラーが出ていた?

エラーログをそのまま貼り付けてしまいますが、`Could not find sassc-2.1.0 in locally installed gems (Bundler::GemNotFound)`という部分でどんなエラーかが確認できます。

“`
bundler: failed to load command: rake (/var/app/staging/vendor/bundle/ruby/3.2.0/bin/rake)
/usr/share/ruby3.2-gems/gems/bundler-2.4.10/lib/bundler/definition.rb:524:in `materialize’: Could not find sassc-2.1.0 in locally

元記事を表示

OTHERカテゴリの最新記事