- 1. AWS Cloud9環境のCloudShellでの構築
- 2. せっかくAWSの勉強をするので、インフラの基礎から勉強してみることにした
- 3. 【AWS】RDS備忘録
- 4. [AWS] 駆け出しAWSエンジニアこそJAWS-UGに参加しよう!
- 5. 【DynamoDB Awesome】DynamoDBを勉強する上で参考にさせていただいた記事
- 6. 何もかもわからない人間によるAmazon SESメールのドメイン認証学習記録
- 7. AWS クラウドプラクティショナー合格勉強法
- 8. A summary of AWS from the basics [VPC]
- 9. EventBridgeScheduler+ECS+Docker+SeleniumでWebサイトのスクリーンショットを定期的に撮影する
- 10. CloudWatchのLogsの取得上限の10,000件を突破する方法
- 11. AWS LambdaとLINEでオウム返しbotを作ってみる
- 12. フルスタックアプリ(Spring Boot, React.js, MySQL)をAWS(Elastic Beanstalk, S3, RDS)にデプロイする際に参考にした資料
- 13. AWSのConnection Drainingについて事例を用いて理解するの備忘録
- 14. 【AWS】S3 静的ウェブサイトホスティング
- 15. 実務でPandasとMatplotlibを使う時がやっと来た
- 16. AWS StepfunctionsとSWFの違い
- 17. 【AWS】Systems ManagerでEC2へ接続する方法
- 18. EC2慣れしてしまった人に向けたAmazon Lightsailの備忘録
- 19. CloudFormationを使ってALBとCloudFront用のWAFを作成しよう!
- 20. Amazon GuardDutyについて書いてみた
AWS Cloud9環境のCloudShellでの構築
:::note info
目的
– AWS on for beginnersのハンズオンをCLIで実施するためのCloud9環境を用意する
– VPCとサブネットはデフォルトで作成されているものを使用
– EC2への接続方法はSSMを使用
:::構成図
![cloud9.drawio.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3297641/5c890fdc-0257-fae9-62f3-1394c514be61.png)
# 構築
## IAMロール作成
※作成済みの場合は不要
“`bash:コマンド
aws iam create-role –role-name AWSCloud9SSMAccessRole –path /service-role/ –assume-role-policy-document ‘{“Version”: “2012-10-17″,”Statement”: [{“Effect”: “Allow”,”Principal”: {“Service”: [“ec2.a
せっかくAWSの勉強をするので、インフラの基礎から勉強してみることにした
ただの備忘録です。
## 色々な単語について
#### インフラとは
– サーバやネットワークのこと
– infrastructure:基盤
– 技術用語としての意味:システムやサービスの基盤となる設備#### サーバーとは
– クライアントに対してサービスを提供するコンピューター#### ネットワークとは
– 複数のコンピューターをつないで、データを送受信できるようにするもの#### クラウドとは
– ネットワークを利用してコンピューターリソースを利用する形態のこと
– インフラをネットワーク経由で使用・管理すること
– 利点は、初期コストがすくなく、すぐに始めることが出来、サーバーの増減が自由に出来ること
– 欠点は、費用の予測がつきづらいこと、クラウド全体で障害が起きると対応のしようがない事#### オンプレミス
– インフラを自前で用意して、自社で所有・管理する事
– 利点は、自由度が高いこと
– 欠点は、初期コストがかかり、調達期間が必要で、サーバーの増減がしにくいこと#### AWSとは
– Amazon社が提供するクラウドサービス。
【AWS】RDS備忘録
RDSのチュートリアル
https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/CHAP_Tutorials.html
RDSのベストプラクティス
https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/CHAP_BestPractices.html#CHAP_BestPractices.DiskPerformance
### RDSの作成
1. Amazon RDSコンソール画面を開く
1. データベース->データベースの作成を押す
1. データベース作成方法は、標準作成を選択
1. エンジンは、Aurora (MySQL comparable)を選択
1. テンプレートは、開発/テストを選択
1. DB クラスター識別子は、そのまま、database-1
1. マスターユーザー名は、admin
1. マスターパスワードは、適当な8文字以上
1. クラスターストレージ設定は、Aurora スタンダードを選択
1. 可用性と耐久性は、別の AZ で
[AWS] 駆け出しAWSエンジニアこそJAWS-UGに参加しよう!
ごきげんいかがですか
新卒1年目のyuchamです。AWSエンジニアのコミュニティであるJAWS-UGについての紹介をしたいと思います😄
### 1.JAWS-UGとは
正式名称はAWS Users Group – Japanで AWS を利用する人々のコミュニティです。
JAWS-UGの中にも**たくさんのグループ**があり、特徴も様々です。
AWSの公式サイトでは以下のように説明されています:::note info
JAWS-UG はエリア、地域を拠点とした**地域支部**と、勉強会のテーマ、目的別に組織化された**専門支部**があります。**地域支部**はほぼ日本全国の都道府県に存在し、地元を中心に勉強会を企画・開催しています。
**専門支部**は東京を中心に勉強会を開催し、リモート枠による勉強会内容のライブ配信をしたり、地域支部とのコラボレーションを行うことがあります。
:::
https://aws.amazon.com/jp/campaigns/manga/vol11-3/#:~:text=JAWS%2DUG%20%E3%81%A8%E3%81%AF%E3
【DynamoDB Awesome】DynamoDBを勉強する上で参考にさせていただいた記事
こちらに移しました。
https://zenn.dev/purpom/articles/270e76b31e74b7
何もかもわからない人間によるAmazon SESメールのドメイン認証学習記録
## 経緯
シャチョー「うちのドメイン使ってメール送信したいからSES使って」
ぼく「はい」
シャチョー「Googleの規制強くなるっぽいからSPFとDKIM認証してDMARCもやっといて」
ぼく「何語やねん(はい)」## 目標
・なんとな~~~く使ってきたメールの仕組みや設定について1割くらいは理解したい
・メールの認証?っぽいのがこの世には存在するらしいのでそれも調べてみる## はじめに
今回の記事では沢山の記事を参考にさせていただきました。
その中で用いられている図も参考に引用させて頂いております。
もし何か問題等ございましたらご一報ください…## メールってなんだ(哲学)
そもそもメールってひとことで表現しているけど、ドブエンジニアの僕にはSMTPサーバーから送られる?みたいなふわっと知識しかない。
たしかに迷惑メールに振り分けとかされているのを見ると何かしら「健全なメール」か「怪しいメール」みたいな判断基準がありそう。このメール(概念)をより具体化していきたいと思う。
## メールが送信される仕組み
https://www.kagoya.jp/howto/i
AWS クラウドプラクティショナー合格勉強法
2024年2月3日にクラウドプラクティショナーに合格しました。
この記事では合格までの勉強方法について書いていきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/330568/a998354a-d9c3-67ab-1d19-25691f84eac5.png)## かかったコスト
トータル3000円未満・amazon kindle unlimitedで読める本
https://www.amazon.co.jp/AWS%E8%AA%8D%E5%AE%9A%E8%B3%87%E6%A0%BC-%E3%82%AF%E3%83%A9%E3%82%A6%E3%83%89%E3%83%97%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%82%B7%E3%83%A7%E3%83%8A%E3%83%BC%E3%81%AE%E6%95%99%E7%A7%91%E6%9B%B8-%E5%90%88%E6%A0%BC%E3%81%B8%E5%B0%8E%E3%81%
A summary of AWS from the basics [VPC]
## VPCとは?
– AWSのインフラ環境上に仮想的なネットワーク空間を構築するもの
– ファイアウォールなどセキュリティ関連の機能もVPCの一部として用意されている
– VPCに用意されたVPNの機能で企業ネットワークと接続することも可能## リージョンとは?
– AWSのデータセンターが存在するエリアのこと
– リージョン毎に提供しているサービス、未提供のサービスがある## アベイラビリティゾーンとは?
– リージョン内に存在する物理的に離れた個々のデータセンターのこと
## Reference site
[Amazon Web Service マスターコース VPC編](https://itplusjp.udemy.com/course/amazon-web-service-vpc/learn/lecture/11694542#overview)
EventBridgeScheduler+ECS+Docker+SeleniumでWebサイトのスクリーンショットを定期的に撮影する
EventBridgeScheduler, ECS, Docker, Seleniumを使い1時間ごとに阿部寛のHPのスクリーンショットを撮影しS3に保存する方法についてまとめました。
## スクレイピング用のDockerイメージを作成
以下の記事を参考にしながらスクレイピング用のDockerイメージを作成します。
環境変数からスクレイピング先のURLと保存先のバケットを読み取ります。参考: [Selenium×dockerでテスト自動化してみた](https://zenn.dev/carenet/articles/4ca98b5e35bb24)
“`
.
├── Dockerfile
└── app
└── main.py
“`“`dockerfile:Dockerfile
FROM –platform=linux/x86_64 python:3.12.1-alpine3.19ENV PYTHONIOENCODING utf-8
WORKDIR /appRUN apk add –update \
wget \
# Add
CloudWatchのLogsの取得上限の10,000件を突破する方法
# 上限の10,000件
__CloudWatch__ のコンソールから10,000件を超えるログはダウンロードできません。なので、コンソール上からできることは、取得できたログから次の10,000件の範囲を絞り込んで、10,000件のログを取得、、、以下繰り返し。といったことくらいです。
これはちょっとめんどくさいのでPythonの `boto3` を使ってらくに取得しましょう。
:::note info
AWS SDK for Python (Boto3) を使用すると、AWS の使用を迅速に開始できます。Boto3 を使用することで、Python のアプリケーション、ライブラリ、スクリプトを AWS の各種サービス(Amazon S3、Amazon EC2、Amazon DynamoDB など)と容易に統合できます。引用: https://aws.amazon.com/jp/sdk-for-python/
:::# 実際のソース
プログラムは下記のリンクのものを参考につくりました。変更点は主に次の通りです。
– 出力の方法をCSVからデータフレームに変更
– ク
AWS LambdaとLINEでオウム返しbotを作ってみる
# LINEでオウム返しbotを作る
* 入力した文字がそのまま帰ってくる、オウム返しLINE Botを作ってみました🦜
画像はLINEからメッセージを送信してオウム返しを確認した様子です。
# 主な手順
* 1.LINE Developersアカウントへのログイン
* 2.lambda_functionの作成
* 3.AWS Lambdaの設定
* 4.API Gatewayの設定
* 5.LINE DeveloppersでMessaging APIの設定
* 6.LINEからメッセージを送信してオウム返しを確認する# 1.LINE Developersの作成とログイン
LINE Developersアカウントへのログイン[URL](https://developers.line.biz/ja/)# 2.lambd
フルスタックアプリ(Spring Boot, React.js, MySQL)をAWS(Elastic Beanstalk, S3, RDS)にデプロイする際に参考にした資料
# はじめに
フルスタックアプリ(Spring Boot, React.js, MySQL)をAWSにデプロイする際に、実際に参考にした資料を載せていきたいと思います。VPCやセキュリティグループの設定など詳細な設定が難しいと感じている方の参考になりましたら幸いです。# Spring BootアプリをElastic Beanstalkにデプロイする方法
こちらの動画では、VPC内にElastic BeanstalkとRDSの環境を構築する方法を紹介しています。# ReactアプリをS3にデプロイする方法
こちらの動画では、S3にReactアプリをデプロイする方法を紹介しています。動画の3:58秒以降のステップではCLIを使用していますが、私はAWSのGUIを使用して、オブジェクトタブからファイル・フォルダのアップロードを行いました。# 【番外編】 MySQL WorkbenchからRDSに接続す
AWSのConnection Drainingについて事例を用いて理解するの備忘録
### Connection Drainingを有効にした場合のデータ処理の流れについて
#### 事例
ウェブアプリケーションのバックエンドには複数のデータベースサーバーがあり、ヘルスチェックはデータベースの接続状態を確認します。しかし、データベースにネットワーク的な問題が発生し、ヘルスチェックが一時的に失敗します。#### 要因
データベースのネットワーク接続がタイムアウトし、ヘルスチェックが失敗します。この場合、データベースは一時的な問題により一時的にアクセス不能となっています。#### 処理完了のための措置
Connection Drainingにより、ヘルスチェックの失敗したデータベースに新しいリクエストが送信されなくなりますが、既存のリクエストやセッションは引き続き処理されます。データベースの問題が一時的であり、ヘルスチェックが失敗した後も、データベースが回復する可能性があります。そのため、Connection Drainingによって、ユーザーが利用中のセッションやリクエストを中断することなく、サービスを継続することができます。このように、Connecti
【AWS】S3 静的ウェブサイトホスティング
# 目的
S3を使って簡単なWEBページを即時インターネット公開する。## 手順の流れ
– S3バケットを作成する公開したいWEBサイトのHTMLファイル等を格納するバケットを作成する。
バケット名はURLに含まれる。http://<バケット名>.s3-website-<リージョン名>.amazonaws.com
バケット名は世界で一意となる名前でなければならない。
– バケットに公開する資材(HTMLファイル等)を格納する
– バケットのアクセス権を設定する
– 静的ウェブサイトホスティングを有効にする## コンソールから作成
S3サービス画面から「バケットを作成」をクリックする。
任意のリージョン及びバケット名を指定する。
実務でPandasとMatplotlibを使う時がやっと来た# はじめに
AWS エンジニアになる前は Python を独学で学び、Pandas や Matplotlib などデータ分析に関わるライブラリを触ってきました。
実務で使うことはあるのかと思っていましたが、ようやく学んだことを活かせる時が来たので記事にしようと思います。
# どんな業務で扱うことになったのか?
AWS エンジニア(インフラ担当)として、**『AWS リソースの使用状況を月次で報告する』** という月一の定例業務が発生することになりました。
EC2 インスタンスの 1 ヶ月の CPU やメモリの使用率などの推移を見て、今後のキャパシティプランニングに役立てる目的のためです。
私がジョインしているプロジェクトでは、システムの機能ごとに複数の AWS アカウントを使用し、かつ EC2 インスタンスを冗長化しているためサーバ数が多い状況です。
手作業で各サーバの CPU、メモリ使用率を確認していては月一の作業に対しての工数がかかってしまいます。そこで、以下の方法で『工数がかかりすぎる問題』を解決しました。
[![Image from Gyazo](https
AWS StepfunctionsとSWFの違い
## はじめに
AWS SAPの勉強中、SWFについて不明瞭だったこと、
StepfunctionsとSWFの違いが理解できていなかったことから、
これらについて勉強しました。
ドキュメントやちょっと動かしてみて得られた知見を共有します。## 想定読者
SWFについて不明瞭な人。## まず、SWFとは
Amazon SWF(Simple Workflow Service)とは、フルマネージド型のワークフローサービスです。
処理のステート管理やタスク間のコーディネートが行える、
Stepfunctionsの前身といえるサービスです。SWFはワークフローを作成し、タスクや状態を管理するものであり、
実際に処理をするワーカーと呼ばれるものが別途必要です。ワーカーとは、SWFエンドポイントに通信できる
任意のコンピューティングデバイス(EC2、オンプレ等)で動作するプログラムのことです。
以下の言語で開発できます。* 開発言語
Java、.NET、Node.js、PHP、PHP バージョン 2、Python および Rubyまた、ワーカーには種類があります。
SWFを実
【AWS】Systems ManagerでEC2へ接続する方法
セッションマネージャーを使うと、ブラウザのAWSマネジメントコンソールから、対象のEC2インスタンスにSSHの設定無しでアクセスすることができる。
https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/session-manager-getting-started.html
### Session Manager を許可する IAM ポリシー の作成
1. IAM コンソールを開く
1. ポリシーを選択し、ポリシーの作成を選択
1. JSONタブを選択
1. 下記のJSONを張り付ける
key-name を、使用する AWS KMS key の Amazon リソースネーム (ARN) に置き換え
“`
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Effect”: “Allow”,
“Action”: [
EC2慣れしてしまった人に向けたAmazon Lightsailの備忘録
# はじめに
EC2に慣れていると、Lightsailでのコマンドやパスの違いに毎回戸惑うので、備忘録としてここに記します。# ドキュメントルート
“`console
$ pwd
/home/bitnami/htdocs
“`# パス
## Apache
“`console
$ cat /opt/bitnami/apache2/conf/bitnami/bitnami.conf
“`## MariaDB
“`console
$ cat /opt/bitnami/mariadb/conf/my.cnf
“`# 起動・停止・再起動コマンド
ApacheやMariaDBの再起動や停止はこちらのコマンド。## 起動
### Apache
“`console
$ sudo /opt/bitnami/ctlscript.sh start apache
Started apache
“`
### MariaDB
“`console
$ sudo /opt/bitnami/ctlscript.sh start mariadb
Started mariadb
“`
CloudFormationを使ってALBとCloudFront用のWAFを作成しよう!
## 概要
今回はCloudFormationを使って
– ALB
– CloudFront用のWAFを作成します
## 前提
– ALBとCloudFrontを構築済み## ディレクトリ構成
“`
tree
.
└── templates
├── network
| └── cloudfront.yml
└── security
├── waf-for-alb.yml
└── waf-for-cloudfront.yml
“`## WAF
### ALB用のWAFの作成“`waf-for-alb.yml
AWSTemplateFormatVersion: 2010-09-09
Description: “WAFv2 For ALB”# ————————————-
# Metadata
# ————————————-
Metadata:
AWS::CloudFormation::Interface:
Amazon GuardDutyについて書いてみた
## はじめに
おはこんばんにちは。キティちゃんです。最近はセキュリティで今後どう働いていこうかを考えています。今回はAmazon GuardDutyについて書いてみようと思います。## きっかけ
資格の勉強をしていて、名前を聞いたということやAWS関連のセミナーに参加したときにもよく名前があがったことからまとめてみようかなと思いました。## Amazon GuardDutyとは
AWSアカウント、ワークロードを継続的にモニタリングし、悪意のあるアクティビティがないかを確認して脅威を検出するサービスです。機械学習を用いて検出しているのが特徴です。## 利用するメリット
メリットとしては以下が挙げられるかなと思います。1.有効化することで直ぐに利用が可能
2.複数アカウントの検出状況を一元管理ができる
## 有効化することで直ぐに利用が可能
セキュリティというと、ソフトウェアを導入し、あれやこれやを設定する必要があり一苦労するというイメージがあるかもしれません。しかし、Amazon GuardDutyの場合、一度有効化の設定をしてしまえば、直ぐに利用可能です。追加のア