- 1. 個人メモ: terraformer + terraform + AWS
- 2. GuardDutyの通知設定
- 3. AWS Certified Cloud Practitioner_CLF-C02への合格と勉強方法
- 4. 私立文系がこれまでに取得したIT資格をまとめる
- 5. Amazon Bedrockのナレッジベースを試してみた
- 6. AWSでLlama3を使えるようにする
- 7. 【初めてのAWS】チームの勤怠管理システムを作ってみた(その3)
- 8. インデックス付与したらDBインスタンスを最大6台から2台に削減した話
- 9. Amazon Linux 2023でLAMP環境を構築してみる
- 10. TerraformによるS3バケット管理とライフサイクルの最適化
- 11. EC2とRDSでWeb環境構築するよ!(第2回:EC2編)
- 12. AWS CLOUD PRACTIONERの資格修得のための勉強の方法
- 13. KEDAを使用してEKSのAutoScalingを組む
- 14. aws cliでS3バケット内の全オブジェクトの情報を取得する
- 15. EC2とRDSでWeb環境構築するよ!(第1回:VPC編)
- 16. 【AWS】Elastic Load BalancingとAuto Scalingの連携による効果的なトラフィック分散
- 17. AWS Cloud Practitioner取ったけど何も理解してない話
- 18. 【AWS】インスタンスタイプ 〜スポット、リザーブド、オンデマンド、専有の比較〜
- 19. 【AWS】デッドレターキュー 〜失敗したメッセージを管理する方法〜
- 20. 【AWS】S3 Intelligent-Tieringの概要
個人メモ: terraformer + terraform + AWS
※ 個人的なメモ
(事後なので抜けあるかも…)# AWS現環境をterraformのコードで管理する
## 前提
– AWSリソース作成済み
– aws configure、terraform、terraformerの準備、インストールができている## やること
– AWSの現環境をterraformerを使用してコード化
– コード化したterrafomerのコードをtfファイルを作成して、AWSリソースと紐づける
– terraformを使用してAWSリソースの変更をしてみる
– tfstateの管理場所をlocalからs3に変更する## AWSの現環境をterraformerを使用してコード化
### AWSリソースをterraformerを使用してコード化する
– 下記はS3の例
“`bash
$ terraformer import aws –resources=s3 –regions=ap-northeast-1 –profile=default
“`– 実行結果
![スクリーンショット 2024-05-12 14.04.26.png](ht
GuardDutyの通知設定
# 自己紹介
はじめまして、クラウドの領域に入って4~5年目のよちよちは終わったかなぐらいのエンジニアです。
今回はとある新規案件でGuardDuty周りの設定を行いましたので備忘としてこちらに投稿します。## GuardDutyとは
Amazon Web Services, Incが提供するクラウドサービスの一つ### どういったもの?
* アカウント内での異常な操作を特定、分析し連携が可能なサービス### 異常な操作って?
* 今までアクセスしてこなかったユーザが急にs3バケットにアクセスする操作
* CloudTrailのログ記録を無効にする操作
* 悪意のある既知のIPとの通信
* 通常ではないリージョンでのインフラストラクチャのデプロイなどなど、考えただけでもちょっと寒気しますね、、、
今回は上記のような操作があった場合にメールにて連携する仕組みを設計し構築していきます。
## 使用するAWSサービス
* Amazon GuardDuty
* Amazon Simple Notification Service
* Amazon EventBridge
*
AWS Certified Cloud Practitioner_CLF-C02への合格と勉強方法
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3194659/b97fb9c4-245c-c86e-2ac7-907a2c3f8834.png)
ギリギリの点数でしたが無事合格することができました。
勉強している方や興味がある方への参考になればと思いますm(_ _)m### 1. プロフィール
・年齢:20代
・学歴:私文大学卒
・職歴:もう少しで4年目に入るシステムエンジニア
・AWSの実務経験:無し### 2. 使用教材
・[AWS Cloud Practitioner Essentials 日本語実写版](https://explore.skillbuilder.aws/learn/course/external/view/elearning/1875/aws-cloud-practitioner-essentials-japanese-ri-ben-yu-zi-mu-ban “AWS Cloud Practitioner Essentials 日本語実写版”)
私立文系がこれまでに取得したIT資格をまとめる
# 概要
この記事では、
**【これまでに取得した資格】** と、**【各資格の所得方法】**
を書いています。この記事を読めば、
**・AWS Cloud Practitioner**
**・AWS Machine Learning Specialty**
**・Azure Fundamental : AZ-900**
**・G検定**
の四つの資格についての概要と、取得方法を知ることができます。# 結論
:::note info
・AWS Cloud Practitioner
**→ Udemy**
・AWS Machine Learning Specialty
**→ Udemy**
・Azure Fundamental
**→ Udemy**
・G検定
**→ 参考書、YouTube、Web**
:::こんな感じで合格まで辿り着きました。
Udemyが多過ぎて回し者っぽくなっていますが、悪しからず…。# 目次
[1.自己紹介](https://qiita.com/ramunepie/items/329e56e338dc95bfccd4#1%E8%
Amazon Bedrockのナレッジベースを試してみた
# 背景・目的
以前、下記でBedrockを試してみました。今回はBedrockでRAGを試してみます。– [Amazon Bedrockを整理してみた](https://qiita.com/zumax/items/ad61c2ae4cb767aff05f#%E3%81%BE%E3%81%A8%E3%82%81)
– [Amazon Bedrockを試してみた](https://qiita.com/zumax/items/9b0f9e0ed1b57474a72f)# まとめ
下記に特徴をまとめます。| 特徴 | 説明 |
| :– | :– |
|ナレッジベースとは|・データソースを情報のリポジトリにまとめることができる
・ナレッジベースにより、RAGを活用したアプリを簡単に構築できる|
|RAG|データソースから情報を取得し、モデルレスポンスの生成を強化する手法|
| できること|・ナレッジベースは、ユーザのクエリに答える
・プロンプトにコンテキストを提供することで、FMに提供されるプロンプトを強化する
・ナレッジベースのレスポンスには引用もつ
AWSでLlama3を使えるようにする
# 1. 初めに
誰しもLlama3を使ってAWSでChatbotを作りたいなと三日に一回は思っているはず。
**Llama3**を**Groq API**経由で使えるようにしてみたので備忘録も兼ねて書く。**Chat GPTでいいやんと思ったそこのあなた**
LLama 3はChatGPTよりも数倍早く返ってくるかつ、Llama3の400bモデルが来た時にすぐ乗り換えられるように備えておくことは大切!なので、やっておいて損はないかなと思います。# 2. 参考にしたもの
[AWS Lambda(Python)からOpenAIのGPT4のAPIを呼び出してみた](https://qiita.com/nabata/items/903a2ebff8e44516598e)
とりあえず類似なものとして、ChatGPTをAWS Lambdaから呼び出すものを参考にした。感謝!
GroqのAPI Documentを見てもわかるが大体ChatGPT構造と同じなので、参考にしやすいかなと思った。# 3. レイヤーの設定
まず、AWSのLambdaにgroqのパッケージを入れる必要があるため、
【初めてのAWS】チームの勤怠管理システムを作ってみた(その3)
# 1. 初めに
勤怠管理システムの全貌としては以下の3つである。3本に分けて残していく。今回はその3、とうとう最終回!
[その1:名前を選択して「出勤」or「退勤」ボタンを押し、記録する](https://qiita.com/waiiioss/items/6c2ca747a55d3dca9224)
[その2:勤怠記録のデータを可視化する](https://qiita.com/waiiioss/items/f35c1729bb3d17cfbc9e)
その3:過去の勤怠を編集できるようにする <-MOUKOKO **本Qiitaの内容** * LambdaでDynamoDBに過去の勤怠を記録 * LambdaでDynamoDBの直近の記録を削除 * 入力のUI試行錯誤 # 2. LambdaでDynamoDBに記録 その1で書いたLambdaは開始時にその時間のTimestampを記録して、終了時にその時のTimestampを記録するものだった。今回のコードは、名前と過去働いた日時を入力し、記録するというものなので、大きく異なる。Lambda関数はそこまで変わらないけど。eventの
インデックス付与したらDBインスタンスを最大6台から2台に削減した話
## 自己紹介
私は、現在とあるWeb系のベンチャーでWebアプリケーションエンジニアとして開発業務に従事しています。
今回の記事では以前勤務していた株式会社ZUUでの開発に関して投稿したいと思います。
今回は肥大化したDBにインデックスを付与することで、DBインスタンス数を最大6台から2台までに改善することができたので説明していきたいと思います。
**本記事は個人の見解です。**
## サービスについて
株式会社ZUUでは金融に関する記事を掲載する様々なメディアを運営しています。
ZUU Onlineやfuelle、MoneyTimes、dメニューマネー、その他にも多数メディアを運営しております。
一部メディアでは、ユーザー機能を提供しており、その中にお気に入りの記事をクリップする機能などがあります。
## 概要
弊社の顔でもZUU onlineは、ローンチして約○年経ち、記事数やユーザー数ともに大きく成長しました。ただその一方でパフォーマンスの劣化などが問題となりユーザビリティを下げてしまうことに課題がありました。
## 前提
使用しているDBMSはPost
Amazon Linux 2023でLAMP環境を構築してみる
## パッケージを最新のバージョンに更新
インストールされているパッケージを最新のバージョンに更新します。
Amazon Linux 2023はFedoraベースのAMIなのでdnfコマンドでインストールを行います。
-y オプションを指定することで確認をスキップすることができます。
“`
sudo dnf update -y
“`
## ApacheとPHPパッケージをインストールします。
AL2023 用の最新バージョンの Apache ウェブサーバーと PHP パッケージをインストールします。
コマンドは以下になります。
“`
sudo dnf install -y httpd wget php-fpm php-mysqli php-json php php-devel
“`
wgetコマンドはコマンドラインからインターネットを通じてファイルをダウンロードできるツールです。https://qiita.com/hirohiro77/items/b774908436ec032df719
## MySQLのインストール
AL2023へMySQLをインストールする場合は、
TerraformによるS3バケット管理とライフサイクルの最適化
最近、手動で作成された既存のS3バケットをTerraformの管理下に置いて、ライフサイクルポリシーを設定したので、そのときのメモを残します。
# 手順
## ステップ1: Terraformリソースの定義
既存のS3バケットをTerraformリソースとして定義します。以下は`example-dev`という名前の開発用バケットの設定例です。“`hcl
resource “aws_s3_bucket” “example_dev” {
bucket = “example-dev”tags = {
Environment = “dev”
}
}
“`## ステップ2: ライフサイクルポリシーの設定
次に、バケットのデータに対するライフサイクルポリシーを設定します。このポリシーは、データを30日後に`STANDARD_IA`ストレージクラスに移行し、90日後に削除するよう設定します。“`hcl
resource “aws_s3_bucket_lifecycle_configuration” “example_dev_lifecycle” {
EC2とRDSでWeb環境構築するよ!(第2回:EC2編)
EC2とRDSのWeb環境構築の第2回目です。
第1回:VPC編はこちら
https://qiita.com/kikurage2030/items/1b30272cb15033f2ca11## サービスの全体象
作りたいサービスの概要はこんな感じです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3785085/41ecec3e-8cf0-161f-07fd-e4a250f62be7.png)
EC2にWebサーバを立ててPHPのプログラムがMySQLにアクセスしてテーブルの情報を表示する画面を作ります。
いわゆる一般的なWebシステムの構成でWebサーバはPublicサブネットに公開し、DBサーバはPrivateサブネットでEC2のみのアクセスを許可する制御とします。このシリーズで取り組む内容は
第1回:VPC・サブネット周りの作業
第2回:EC2の構築 ここ!
第3回:ドメインの登録
第4回:RDSの構築
第5回:Web環境の構
AWS CLOUD PRACTIONERの資格修得のための勉強の方法
## AWS cloud practitionerの資格を取る最も確実な方法
1. AWS training centerの6時間の教育を受け取ること:
AWS Training Centerでは、AWS Cloud Practitionerの基礎知識を習得するための6時間の集中トレーニングが提供されています。このトレーニングでは、クラウドコンピューティングの基本概念やAWSサービスの概要など、試験範囲に必要な知識を習得することができます。教育プログラムの完了後、AWSの基本的な概念について理解を深めることができます。1. UDEMYのAWS cloud practitioner模擬試験を2回繰り返す:
UDEMYで提供されているAWS Cloud Practitioner模擬試験は、試験の形式や内容に沿った実践的な学習を提供します。2回繰り返すことで、問題の形式や解答方法を理解し、試験に対する自信をつけることができます。また、無料で利用できる別のサイトよりもUDEMYの方が信頼性が高く、質の高い模擬試験を提供しています。1. それでもクラウドや模擬試験の概
KEDAを使用してEKSのAutoScalingを組む
# 記事概要
EKSにてKEDAを利用してAutoScalingをCloudWatchMetricsをもとに組む# 対象読者
– EKSを使用してAutoScalingが組みたい
– KEDAを使用したサービスを作りたい# KEDAを使用したスケーリング
## 前提条件
– EKSのバージョンが1.29
– EKSにて[アプリケーションロードバランサー](https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/alb-ingress.html)が実装されている
– [Metrics Server](https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/metrics-server.html)が実装されている
– [クラスターオートスケーラー](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/cloudprovider/aws/README.md)が実装されている## 構築
aws cliでS3バケット内の全オブジェクトの情報を取得する
# はじめに
S3バッチオペレーションを試したいなーと思ったのですが、インプットに以下の形式のcsvが必要なようでした。> CSV 形式のマニフェスト(バージョン ID なし)の例を以下に示します。
> Examplebucket,objectkey1
> Examplebucket,objectkey2
> Examplebucket,objectkey3
> Examplebucket,photos/jpgs/objectkey4
> Examplebucket,photos/jpgs/newjersey/objectkey5
> Examplebucket,object%20key%20with%20spaces
>
> バージョン ID を含む CSV 形式のマニフェストの例は次のとおりです。
> Examplebucket,objectkey1,PZ9ibn9D5lP6p298B7S9_ceqx1n5EJ0p
> Examplebucket,objectkey2,YY_ouuAJByNW1LRBfFMfxMge7XQWxMBF
> Examplebucket,objec
EC2とRDSでWeb環境構築するよ!(第1回:VPC編)
AWSは部分的にこれまでもちょこちょこ仕事で弄ってきたけど体系的にメジャーサービスを構築したことがなかったのでEC2やRDSを使ったWeb画面(PHP)を構築してみたのでメモ。
## サービスの全体象
作りたいサービスの概要はこんな感じです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3785085/41ecec3e-8cf0-161f-07fd-e4a250f62be7.png)
EC2にWebサーバを立ててPHPのプログラムがMySQLにアクセスしてテーブルの情報を表示する画面を作ります。
いわゆる一般的なWebシステムの構成でWebサーバはPublicサブネットに公開し、DBサーバはPrivateサブネットでEC2のみのアクセスを許可する制御とします。このシリーズで取り組む内容は
第1回:VPC・サブネット周りの作業
第2回:EC2の構築
第3回:ドメインの登録
第4回:RDSの構築
第5回:Web環境の構築
を予定しています。今回は第一回:VPC編となります。
【AWS】Elastic Load BalancingとAuto Scalingの連携による効果的なトラフィック分散
# はじめに
AWS上でWebアプリケーションを運用する際、トラフィックの変動に合わせて、サーバーリソースを自動的にスケールさせることが重要です。そこで活躍するのが、**Auto Scaling**です。さらに、Auto Scalingと連携することで、トラフィックを効果的に分散できるのが**Elastic Load Balancing (ELB)**です。本記事では、ELBとAuto Scalingを組み合わせることで、どのように**トラフィックを最適に分散**できるのかを解説します。# Elastic Load Balancingの役割
### 1-1. トラフィックの分散
ELBは、**複数のEC2インスタンスに対して、トラフィックを自動的に分散する機能**を持っています。これにより、特定のインスタンスに負荷が集中することを防ぎ、アプリケーションのパフォーマンスを維持できます。### 1-2. ヘルスチェック
ELBは、各インスタンスに対して定期的にヘルスチェックを行います。異常が検知されたインスタンスには、トラフィックを送信しません。これにより、サービスの可用性を高
AWS Cloud Practitioner取ったけど何も理解してない話
# 1週間くらいでAWS Cloud Practitionerに合格できました!
![スクリーンショット_9-5-2024_201117_.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3724119/a0a692d5-9fdc-dfff-a3d6-9ef8b05ea185.jpeg)でもタイトルの通り全然理解出来てません。;;
点数もギリギリだったし
逆にあんまよく分かんなくっても合格できるということでこれから受ける方はなんとなくで頑張ってください!## やったこと
前提としてAWSの実務経験、知識は何もありません。クラウドってすごそーて感じでした。
1. [AWS認定クラウドプラクティショナー(改訂第2版)](https://www.amazon.co.jp/-/en/gp/product/B0C73QX2CT/ref=ppx_yo_dt_b_d_asin_title_351_o03?ie=UTF8&psc=1)1. Udemy 【CLF-C02版】この問題だけで合格可能!AWS 認定
【AWS】インスタンスタイプ 〜スポット、リザーブド、オンデマンド、専有の比較〜
# はじめに
AWSは、ユーザーのニーズに合わせて選べる様々なインスタンスタイプを提供しています。それぞれのインスタンスタイプには、メリットとデメリットがあり、使用目的に応じて適切に選択することが重要です。ここでは、スポットインスタンス、リザーブドインスタンス、オンデマンドインスタンス、専有インスタンスの概要を説明し、それぞれの使い分け方を表にまとめました。# 1. スポットインスタンス
### 概要
スポットインスタンスは、AWSの未使用の計算容量を利用して、オンデマンド料金よりも最大90%割引で利用できるインスタンスです。ただし、AWSがキャパシティを必要とする場合、2分前の通知で中断される可能性があります。
### メリット
– オンデマンド料金と比較して、最大90%の割引で利用できる
– 柔軟なインスタンスタイプとサイズを選択可能
– 中断の可能性を考慮して設計されたワークロードに適している### デメリット
– インスタンスが中断される可能性がある
– 長期的な運用には向かない
– 中断による影響を最小限に抑えるためのシステム設計が必要# 2. リザーブドインス
【AWS】デッドレターキュー 〜失敗したメッセージを管理する方法〜
# はじめに
分散システムにおいて、メッセージキューは重要な役割を果たします。しかし、メッセージの処理が失敗することがあります。そこで、デッドレターキュー (DLQ) の出番です。DLQは、**処理できないメッセージを一時的に保存する**特別なタイプのメッセージキューです。この記事では、DLQの仕組み、利点などについて説明します。# デッドレターキューとは?
デッドレターキューは、通常のメッセージキューと並んで存在し、**エラーを含むメッセージや、宛先が指定されていないメッセージを格納**します。受信者が送信メッセージへの応答またはその処理に失敗した場合、ソフトウェアはそのメッセージをDLQに移動します。これにより、通常のキューがブロックされるのを防ぎます。# デッドレターキューの利点
– **通信コストの削減**:失敗しているメッセージについては有効期限が切れるまで処理を試みるより、数回試行した後にDLQに移動する方がよいでしょう。
– **トラブルシューティングの改善**:誤ったメッセージをDLQに移動すると、デベロッパーはエラーの原因の特定に集中できます。# デッドレ
【AWS】S3 Intelligent-Tieringの概要
# はじめに
クラウドストレージを使う上で、コストパフォーマンスは重要な要素です。**Amazon S3 Intelligent-Tiering** は、オブジェクトへのアクセスパターンを自動的に監視し、最適な階層に移動させることで**コストを最小限に抑える**賢いストレージクラスです。# 自動アクセス階層
S3 Intelligent-Tiering には、以下の3つの自動アクセス階層があります。### 高頻度アクセス階層
頻繁にアクセスされるオブジェクトに使用され、低レイテンシーと高スループットを提供します。
### 低頻度アクセス階層
**30日間アクセスされないオブジェクトが自動的に移行**されます。高頻度アクセス階層と同等のパフォーマンスを保ちつつ、コストを抑えられます。
### アーカイブインスタントアクセス階層
**90日間アクセスされないオブジェクトが自動的に移行**されます。低レイテンシーと高スループットを維持しながら、さらにコストを削減できます。# オプションの階層
S3 Intelligent-Tiering には、以下の2つのオプションの階層があり