- 1. IAM Identity Center: 3つのセッションの違い
- 2. AWSのEC2の環境(Amazon Linux 2)にDifyをインストールする手順
- 3. AWS BatchのSubmitJobで「Reason The field ‘parameters’ is not supported」みたいなエラーが出るときの対処
- 4. AWS CDK で Step Functions に入門する
- 5. AWS Amplify で Suspence の fallback が機能しない
- 6. 〜AWS初学者の資格日記〜 VPC編 (ソリューションアーキテクトレベル)
- 7. Amazon S3 Presigned URLを試してみた
- 8. ResourceTagとRequestTagの挙動の違いを確認する
- 9. AWSの利点 ~間違った物理機器を買ってしまい怒られるのを回避~
- 10. 個人ブログのバックエンドを EC2 から Lambda に移行した
- 11. 【ざっくり機能紹介】意外と便利かもしれない!? Amazon EC2 Global View
- 12. 【お手軽エラー監視】AWS CloudWatchからSNSでメール通知する
- 13. AWS EC2インスタンスのUbuntu初期セットアップガイド
- 14. 【AWS】Lambda(python3.11)でSlack通知を行うCloudformationテンプレート
- 15. 初心者必見!New Relic Agentアップデート手順
- 16. windowsでchmodができない問題
- 17. ElasticIPについてと作成から開放までの手順
- 18. 【2024年10月版】AWS Databricksのサインアップおよびワークスペース作成
- 19. 【AWS】EC2インスタンス上にWebサーバ(Apache)構築やってみた
- 20. New Relic InfrastructureでAWS Fargateをモニタリングしよう!
IAM Identity Center: 3つのセッションの違い
# はじめに
IAM Idneity Centerの導入にあたって、3つのセッションの違いに疑問が出たので、後述しました。# 「許可セット」のセッション
マネジメントコンソールへのログインやAWS アクセスキーの有効期限を表している。https://docs.aws.amazon.com/ja_jp/singlesignon/latest/userguide/howtosessionduration.html
>アクセス許可セット ごとに、セッション期間を指定して、ユーザーがサインインできる時間の長さを制御できます。 AWS アカウント。 指定された期間が経過すると、 AWS はセッションからユーザーをサインアウトします。
# 「許可セットから紐づいて作られたIAMロール」のセッション
許可セットから紐づいて作られたIAMロールは、全て12時間となってますが、許可セットで設定したセッション時間が正しいものとなります。https://docs.aws.amazon.com/ja_jp/singlesignon/latest/userguide/howtosessiond
AWSのEC2の環境(Amazon Linux 2)にDifyをインストールする手順
# はじめに
Dify便利ですね!いろんなことについて生成AIで自動化できます。ここでは、AWSのEC2の環境(Amazon Linux 2)にDifyをインストールする手順を示します。Difyのバージョンは、0.9.2です。どなたかの参考にしていただけると嬉しいです。
# Dockerのインストール
1. SSHを使ってAmazon Linux 2インスタンスに接続します。
2. 必要なパッケージをインストールします
“`
$ sudo yum update -y
$ sudo yum install -y docker git
“`3. Dockerサービスを開始し、自動起動を有効にします
“`
$ sudo systemctl start docker
$ sudo systemctl enable docker
“`4. 現在のユーザーをdockerグループに追加し、再ログインして変更を反映させます
“`
$ sudo usermod -aG docker $USER
$ exit
AWS BatchのSubmitJobで「Reason The field ‘parameters’ is not supported」みたいなエラーが出るときの対処
AWS BatchのSubmitJobで「Reason The field ‘parameters’ is not supported」みたいなエラーが出ました。
ちょっと解決に時間がかかったのでメモしておきます。## やりたかった事
– AWS Batchで決められた時間にS3のファイルを別の所に移動したい
– EventBridgeで定期実行する
– Lambdaは挟まないでSubmitJobしたい
– バッチの内部で日付取得し処理に使っているがジョブ失敗の時に備えて外部から日付パラメータを渡せるようにしたい## EventBridgeの設定
AWS Batchのよくある定期実行系の記事ではLambdaを挟む方法がほとんどですが、
今回はEventBridgeスケジューラで直接SubmitJobしています![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/485573/bef46189-caf4-d9cd-b1f3-08141ba8f62b.png)
## 問題となった箇
AWS CDK で Step Functions に入門する
# はじめに
仕事で Step Functions を使うことになったので、いい加減ちゃんと触ってみる。
# 想定読者
– Step Functionsに入門したい人
– CDKを使ったことがある人# Step Functions
## 概要
Step Functions は、ワークフローを作成して分散アプリケーションの構築、プロセスの自動化などが可能。
– 全体の一連の流れ = ワークフロー = ステートマシン
– 一連の流れの中の各ステップ = 状態(ステート)ワークフロータイプは2種類あり、標準ワークフローとExpressワークフロー(ストリーミング処理など使う)がある。
## 状態の種類
フィールド情報は、私見で使いそうだなと思ったもののみ抜粋した。すべて確認したい場合は、[公式](https://docs.aws.amazon.com/ja_jp/step-functions/latest/dg/workflow-states.html)を参照ください。
### タスク
`Task`状態は、単一の作業単位を表す。タスクはLambda関数やアクティビ
AWS Amplify で Suspence の fallback が機能しない
## 概要
AWS Amplify では 2024/10/18 現在 Suspence の fallback が機能しない
## 経緯
Next.js を Amplify にデプロイし、意図的にAPIルートのレスポンスを遅延させて ISR, SSR の検証を行っていたところ fallback が機能していないことに気づく
## Issues
https://github.com/aws-amplify/amplify-hosting/issues/3843
## 結論
キャッシュ戦略丁寧にやったり、クライアントでフェッチすればクリティカルではありませんが、解消をお待ちしております
〜AWS初学者の資格日記〜 VPC編 (ソリューションアーキテクトレベル)
こんにちは、つかさです
今回は`VPC`に関してです。特にVPCの接続に関係する部分を中心に記事を書いていこうと思います。
個人的にとても間違えやすく苦手なので、もし同じような境遇の方がいれば一緒に頑張ってきましょう!:grin:## VPC
Virtual Private Cloudの略でAWS上に作成できるプライベート仮想ネットワーク空間
### 基本構成
– 問題文
– 答え
– なぜその答えなのか
– その答えを理解するための周辺知識
***問題
セキュリティ上の理由でオンプレミスからパブリックIPアドレスを使用せずにS3バケットへデータをアップロードします。どのような方法がありますか?
答え
Amazon S3 Presigned URLを試してみた
# 背景・目的
S3の署名済みURL(Presigned URL)について整理し、試してみます。# まとめ
下記に特徴をまとめます。|特徴|説明|
|:–|:–|
|署名済みURLとは|S3オブジェクトへの時間制限付きアクセス権を付与する事が可能
署名済みURL認証情報は、URLを生成したAWSユーザのもの
ダウンロードとアップロードが可能|
| ダウンロード|署名済みURLをブラウザに入力か、アプリからダウンロードできる|
|アップロード|S3バケットに対する特定のオブジェクトのアップロードを他のユーザに許可することもできる
他のユーザは、セキュリティ認証情報やアクセス許可がなくてもアップロード可能
署名済みURLで指定したのと同一キーを持つオブジェクトであれば置き換え可能|
|署名済みURLの有効期限|期限付きで何度も使用できる|
|署名付き URL の作成|・自身のセキュリティ認証情報
・S3バケット
・オブジェクトキー
・HTTPメソッド(ダウンロードはGET、アップロードはPUT)
・
ResourceTagとRequestTagの挙動の違いを確認する
# 概要
AWSではリソースに対してタグを付与することができ、このタグを利用することで効率的にリソースを管理することが出来ます。
単純に特定のタグが付与されたリソースをフィルタリングするだけではなく、例えば特定のタグが付与されたリソースだけに特定の操作を実行したり、ユーザーに対して特定のタグが付与されたリソースにのみ操作を許可するなどが可能です。
この”操作を制限するためのタグ利用”ですが、利用方法は以下の3種類があります。つまり、**この3種類の条件を正しく理解・活用出来ていないと、可能なはずの操作が出来なかったり・禁止したはずの操作が出来てしまったり、という問題が発生します。**
本記事ではLambdaの編集を例としてリソースタグ・リクエストタグを条件にIAMポリシーを設定し、実際の挙動を確認した結果をご紹介します。|条件|条件キー |内容|
|—|—|—|
| リソース | ResourceTag/key-name | それらのリソースのタグに基づいて、AWS サービスリソースへのアクセスを制御します。これを行うには、ResourceTag/key-name
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 boto3def 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