- 1. 【2024/09アップデート】Redshiftで、Amazon Qを利用したクエリ自動作成が使えるようになりました
- 2. Amazon SQSを使用してEvent Bridgeでタスク起動失敗時に通知を送ってみる
- 3. 【AWS】API Gateway Privateについて
- 4. Amazon Linux 2023にPHPとWordPressをインストールする方法
- 5. Cloudflare Zero Trust と Amazon Cognito の Single Logout (SLO) について考える
- 6. [WARNING]: ! Unable to write cache: {“code”:”ERR_BAD_REQUEST”,”message”:”Request failed with status code 404″})}の解決方法
- 7. APIGatewayとStepFunctionでの非同期実行時に使えるマッピングテンプレートの工夫
- 8. CodeCommitとGitLabを操作するテスト
- 9. AWS 認定 DevOps Engineer – Professional(DOP-C02) 合格体験記
- 10. ECRの脆弱性対策(ベーシックスキャンと拡張スキャン)
- 11. WSL2でAWSを使うための環境構築(Node/Python)
- 12. AWSのSAAをYoutubeで1か月勉強して受けた結果
- 13. AWS NAT Gatewayの使い方(AWSホワイトペーパーから)
- 14. EC2 画面に追加された「アタッチ済みの EBS ステータスチェック」の AWS FIS による動作検証【2024年9月時点】
- 15. Terratest を使って AWS 環境構築の検証を行う
- 16. AWS CloudFormation の Mappings を活用してマルチリージョン展開について
- 17. SOA-C02対策(モニタリング系)
- 18. EC2 Image Builder で CloudBeaver の AMI を作成する
- 19. AWS Jr.Championsに選出されました
- 20. AWS CLIのバージョン2をインストールしてもバージョン1のままになる問題の解決方法
【2024/09アップデート】Redshiftで、Amazon Qを利用したクエリ自動作成が使えるようになりました
# はじめに
株式会社ジールの @oreo_tです。
2024/9/17のアップデートで、RedshiftでAmazon Qを利用したクエリ生成ができるようになりましたので紹介しようと思います。
「こういうデータが見たい」というのを言葉で書くことによって、その内容に合わせてAmazon QがRedshiftで実行できるクエリを生成してくれるというものです。
以下、公式情報のリンクです。
https://aws.amazon.com/about-aws/whats-new/2024/09/amazon-q-generative-sql-amazon-redshift/# 設定方法
まずAWSのコンソールからRedshiftの画面を開き、「クエリエディタv2」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2197572/05db154d-26eb-46da-6e97-9c32b3182873.png)クエリエディタの画面が開けたら、左のメニューから歯車のアイコンを選択
Amazon SQSを使用してEvent Bridgeでタスク起動失敗時に通知を送ってみる
# 概要
EventBridge + ECSを使用したバッチ処理実行を行う時、何らかの理由でECSタスクが起動できないエラーが発生することがあります。この記事では、エラー内容を確認するためのSQSを使用した仕組みを考えてみます。また、SQSに入ったメッセージを検知して、CloudWatchから通知を送信する仕組みも考えてみます。
なお、EventBridgeからECSタスクを起動する方法についてはAWS公式に説明があるため、本記事では省略します。
[Amazon EventBridge スケジューラを使用して Amazon ECS タスクをスケジュールする](https://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/tasks-scheduled-eventbridge-scheduler.html)
# 今回使用する技術
**Amazon SQS**
キューにメッセージを保存しておくサービス。今回はEventBridgeでイベント実行が失敗した際にメッセージを保管しておく場所として使用します。**A
【AWS】API Gateway Privateについて
API Gatewayは、下図の通り4種類あります。プライベート API Gateway の「プライベート」とは、「パブリックから直接アクセスできない」となるだけで、あなただけがアクセスできるプライベートネットワーク内の API という意味ではありません。(だって、それって VPC ですよね。API Gateway は VPC に属しません)
なので、AWS のプライベートネットワーク内においては特に制限をしない限り、誰でもアクセスできる API Gateway です。
![9.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2600067/c4b9547e-c246-b3b6-2acb-d1c801f0f625.jpeg)
![10.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2600067/d5248875-7486-8d9a-6400-754731cbcdff.jpeg)
プライベート API GatewayはIn
Amazon Linux 2023にPHPとWordPressをインストールする方法
## はじめに
Amazon Linux 2023(AL2023)で作成したEC2にPHPとWordPressをインストール機会がありましたので、インストール方法について自分のための備忘録を兼ねて記載します。
## 前提
・AWSアカウントがあること
・Amazon Linux 2023のEC2が作成済みであること
・作成したEC2にパブリックIPでアクセスできること
※ターミナルエミュレーターとしてTera Termを利用しています。
## やること
※今回はバージョンを指定してインストールするやり方になります
・PHPは「8.1」のヴァージョンをインストールします。
・WordPressは「6.0.1」のヴァージョンをインストールします。## PHPをインストール
EC2にログインできている状態で以下のコマンドを入力します。
ルートユーザーに移行します。
“`
[ec2-user@]$ sudo su root
“`
最新のアップデートを確認します。
“`
[ec2-user@]$ dnf update
“`
PHP 関連の利用可能なパッケージのリストを表示します。
Cloudflare Zero Trust と Amazon Cognito の Single Logout (SLO) について考える
# セッション管理
以下の記事にある通り、Cloudflare Zero Trust の ID 認証先に Amazon Cognito を OIDC で連携することができます。https://qiita.com/khayama/items/dcd5b2fc51b7435e1765
その際には、それぞれのユーザセッションはそれぞれの Cookie にて管理されます。
– Cloudflare Zero Trust
– `CF_Authorization` Cookie で管理されます。https://developers.cloudflare.com/cloudflare-one/identity/authorization-cookie/
– Amazon Cognito
– `cognito`、`cognito-fl` Cookie が使用されます。https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/amazon-cognito-user-pools-using-tokens
[WARNING]: ! Unable to write cache: {“code”:”ERR_BAD_REQUEST”,”message”:”Request failed with status code 404″})}の解決方法
## はじめに
amplifyでいつものようにデプロイを行うと、なぜかデプロイが転けてしまい、
解決に時間がかかったのでまとめます。## 問題と原因
CDを走らせると以下のような警告が出ました。
“`bash
[WARNING]: ! Unable to write cache: {“code”:”ERR_BAD_REQUEST”,”message”:”Request failed with status code 404″})}
“`原因としては、すでに削除したリモートブランチと同じ名前のローカルブランチを作成し、
プッシュしてPRを立てると、リモートブランチ側との整合性が取れなくなり、キャッシュエラーが起きたみたいです。## 解決方法
シンプルにAmplifyのGUIにある、プロジェクトキャッシュ削除をするだけで解消しました。
amplify.ymlに`envCache –set stackInfo “”`を書いてもいけるみたいです。## おわりに
こういうエラーは大元のコードがどういう処理をしているかが見えないのでデバッグしづらいですね。
ほなま
APIGatewayとStepFunctionでの非同期実行時に使えるマッピングテンプレートの工夫
# はじめに
APIGatewayには、**最大29秒までの実行時間制限**があります。しかし、意外と簡単にその制限を超えてしまうことがあります。
最近では、申請をすればこの制限を延ばせるようですが、そもそも**長時間待たせる設計は良くない**と考え、下記のように非同期実行に変更しました。# 本題
StepFunctionとAPIGatewayの非同期実行については、多くの情報が既にあるのでここでは詳細は割愛します。
今回は私が実践したアプローチをご紹介します。1. APIGatewayからStepFunctionを非同期で実行します。この際、**実行完了を待たず**に、StepFunctionの**実行ARN**をすぐにレスポンスとして返します。
2. そのARNを使って、StepFunctionの**実行が完了しているかを確認**します。StepFunctionに渡すデータの形式は決まっており、以下のような形になります。
“`
// リクエストのマッピングテンプレート
#set($input = $input.json(‘$’))
{
“input”:
CodeCommitとGitLabを操作するテスト
# CodeCommitの設定
AWS CLIインストール
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/getting-started-install.htmlIAMユーザ→セキュリティ認証情報タブ→アクセスキー
“`
aws configure
“`
ここでアクセスキーを入力するよ。以下のファイルが生成される。これでawsにアクセスできるはず“`bash:疎通確認
aws ec2 describe-instances
“`“`C:\Users\XXXXX\.aws/credential
[default]
aws_access_key_id = XXXX
aws_secret_access_key = YYY
“`“`C:\Users\XXXXX\.aws/config
[default]
region = ap-northeast-1
output = json
“`これも必要になるかも
IAMユーザ→セキュリティ認証情報タブ→AWS CodeCommit の HTTPS Gi
AWS 認定 DevOps Engineer – Professional(DOP-C02) 合格体験記
# 本記事の概要
AWS 認定 DevOps Engineer – Professional(DOP-C02)を取得したので振り返りや学習方法をまとめます。(以下DOPとします)
経歴としては文系新卒でSIerに入社しIT、AWS歴は約1年です。![DevOpaPro.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3579705/add0ba67-15e6-2630-e5bd-177342ecc2e8.jpeg)
# なぜ資格取得を目指したか
これまで頼りにさせていただいたチームの先輩が転職することになり、自分もAWS領域では早く1人前にならねばと思ったことと、自分が業務で使用しているサービスについて意識的に学習する時間を作ろうと思ったことがきっかけです。# 業務、学習状況
入社から一貫してAWSを使用したサーバレスでのアプリケーション構築に携わっています。
特に使用しているサービスは、APIGateway,SQS,Lambda,EvevtBridge,DynamoDB,Codeシリーズです。
ECRの脆弱性対策(ベーシックスキャンと拡張スキャン)
## ECRの脆弱性対策
ECRには、コンテナイメージ内の脆弱性の特定をする**イメージスキャン**がある。
イメージスキャンは、以下2種類。
– ベーシックスキャン
– 拡張スキャン|| ベーシックスキャン | 拡張スキャン |
|:———–|:————|:————|
| スキャン対象 |OS| OS
プログラミング言語 |
| スキャンのタイミング | ECRへのプッシュ時
手動 | ECRへのプッシュ時
自動連続 |
| スキャン内容 | 脆弱性情報 | 脆弱性情報
診断結果に基づく対応策の表示
修正バージョン |
| スキャン結果の確認方法 | ECRコンソール | Inspectorコンソール
ECRコンソール
SecurityHubコンソール |
| 料金 | 無料 | ECRでは料金発生しないが、Inspectorのコストがかかる
[東京リージョンの場合]
1 か月あたりの Amazon ECR へのプッシュ時に最初にスキャンされたコンテナイメージ数:イメージごとに
WSL2でAWSを使うための環境構築(Node/Python)
## 目次
– VSCodeのインストール
– WSL2(Ubuntu)の構築
– node.js環境構築
– python環境構築
– その他開発環境構築
– aws関係## VSCodeのインストール
– Windows環境で行う
– インストール方法は省略
– WSLでの利用に備えて最低限以下のExtensionを入れる
[Remote Development](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack)## WSL2(Ubuntu)の構築
### 参考記事
– 下記の記事が大変分かりやすいためそちらを参照
[WSL2 のインストールとアンインストール](https://qiita.com/zakoken/items/61141df6aeae9e3f8e36)– 過去にUbuntu環境を作っていたがそのパスワードがわからなくなった場合
[wsl でパスワードを忘れてしまった際の対処](https://qiita.
AWSのSAAをYoutubeで1か月勉強して受けた結果
## はじめに
### スペック
AWS
– 構築 3か月
– CloudFormationを触っていた
– 逆にコンソールからの構築経験なしネットワーク
– 構築・運用 3年半
– FW、LB、SWあたりのコンフィグは触れる## 勉強法
### Youtube
– SAAの参考問題を解説してくれている動画を暇なときひたすら見る
– 問題でわからないサービスがでてきたら解説動画を見る下記の関連動画を見ていました。ご参考までに。
同じチャンネルに大量の動画が上がっているかと思います。### 問題解説の動画
EC2 画面に追加された「アタッチ済みの EBS ステータスチェック」の AWS FIS による動作検証【2024年9月時点】
2024年8月27日から EC2 のステータスチェックの対象が2つから3つに増えました。
AWS社による「[Amazon EC2 ステータスチェック、アタッチされた EBS ボリュームの到達可能性の状態のサポートを開始](https://aws.amazon.com/jp/about-aws/whats-new/2024/08/amazon-ec2-status-checks-reachability-health-ebs-volume/)」の記事で報告されています。
| 変更前 | 変更後 |
|:———–|:———–|
|Terratest を使って AWS 環境構築の検証を行う# はじめに
Terratest というツールが色々と有名なので、これを利用してAWS環境の構築検証を行ってみました。# 概要
Gruntwork.io が提供する terraform のテストツールです。
terraform で書かれたコード(tfファイル)をラッピングして `plan > apply > destroy` の一連処理を行います。対応言語は Go です。
– URL
– 公式サイト – https://terratest.gruntwork.io/
– GitHub – https://github.com/gruntwork-io/terratest# ディレクトリ構成
“`bash:tree
$ tree
.
├── ec2
│ └── main.tf
├── modules
│ └── alb
│ ├── main.tf
│ └── variables.tf
└── terratest
└── alb_test.go
“`# ファイル
#### ./ec2/main.tf
EC2を作成するための t
AWS CloudFormation の Mappings を活用してマルチリージョン展開について
AWS 環境でインフラストラクチャをコードとして管理する際、AWS CloudFormation は強力なツールです。
しかし、マルチリージョン展開を行う場合、特に AMI(Amazon Machine Image) などのリージョン固有のリソースを扱うときには注意が必要です。
CloudFormation の Mappings セクションを活用して、リージョン間で異なるリソースを動的に参照し、テンプレートの再利用性を高める方法について### なぜ Mappings が必要なのか?
– AMI はリージョンごとに異なる
AMI は EC2 インスタンスの OS やアプリケーション設定を含むイメージです。
しかし、AMI はリージョンごとに異なる ID を持ちます。
同じイメージでも、リージョンが異なれば AMI ID も異なります。– 問題点
テンプレート内で AMI ID をハードコードすると、そのテンプレートは
特定のリージョンでしか動作しません。
他のリージョンでスタックを作成しようとすると
AMI ID が存
SOA-C02対策(モニタリング系)
# AWSモニタリング/監視サービス
* **Amazon Cloud Watch**
* **AWS Cloud Trail**
* **AWS Config**
* **AWS Personal Health Dashbord**以下、詳細説明
## Amazon Cloud Watch
メトリクス、ログ、イベントの監視、収集する### メトリクス
* **標準メトリクス**:CPU使用率やディスクI/Oなど
* **カスタムメトリクス**:アプリケーションごとのメモリ使用率やOS内部で取得する必要があるもの。カスタムメトリクスにはCloudWatchエージェントの導入が必要#### Cloud Watchのアラーム設定
* **統計**:メトリクスを指定の期間で集計した値。平均/最大/合計/90%タイルなどから選択
* **期間**:統計を取得する時間のながさ。
* **アラームを実行するデータポイント**:アラーム実行のための閾値超過数。EX)「5/5」とした場合は5回連続して閾値が超過するとアラームが実行する#### アラームステータス
* **OK** :
EC2 Image Builder で CloudBeaver の AMI を作成する
こんにちは。インサイトテクノロジーの松尾です!
以前の投稿で、EC2起動時のユーザーデータを使用してCloudBeaverを簡単に起動する方法を紹介しました。
https://qiita.com/takumats/items/76bb1db8a0ffccc2aad1
ただ、毎回、起動時に指定するのも面倒なので、EC2 Image Builderを使ってAMIを作成する方法を紹介します。
※以前の投稿の方法でEC2を起動した後にそれをAMIにして保存すればいいだけとも言えなくもないですが、本投稿ではEC2 Image Builderを使ってみたかったのであえてEC2 Image Builderを使っています。
## EC2 Image Builderとは
AMIを作るためのCI(一連のスクリプトを自動化したもの)のサービスのようなイメージです。
https://docs.aws.amazon.com/imagebuilder/latest/userguide/what-is-image-builder.html
今まで、イメージ作成を手作業でやっていたようなケースでは、I
AWS Jr.Championsに選出されました
## はじめに
初めまして社会人2年目のBigJunです。この度、AWS Jr.Championsに選出されました!本記事では私の経験やこのプログラムについて、また今後の目標を共有したいと思います。## AWS Jr.Championsとは
AWS Jr.Championsは、AWS Partner Network (APN) 参加企業に所属し、社会人歴1~3年目で突出したAWS活動実績を持つ若手エンジニアに対する表彰プログラムです。2024年度はなんと日本全国から95名の方々が選出されました。
### プログラムの特典
– Japan AWS Jr. Champions 限定 Meetup に招待され、コミュニティ活動への参加権
– 他企業のJapan AWS Jr.Championsとの交流
– 特別セミナー、Lightning Talk、Workshop等、インプットとアウトプットの機会## 応募のきっかけ
#### AWSに興味を持った理由
一昨年の就職活動中に多くの面接官が「クラウド分野に注目している」と話していたことです。当時、IT未経験者だった私はクラウド技術に
AWS CLIのバージョン2をインストールしてもバージョン1のままになる問題の解決方法
## はじめに
AWS初学者です。
AWSの勉強をするのは未経験時代にポートフォリオを作成したとき以来です。
約2年ぶりに学習を再開する際、AWS CLIのバージョンをアップグレードするのに手間取ってしまったため、備忘録としてまとめます。
## AWS CLIをバージョン2にアップグレードできない
ぼくのPCにはAWS CLIのバージョン1がインストールされていました。
“`bash
$ aws –version
aws-cli/1.34.10 Python/3.10.2 Darwin/23.4.0 botocore/1.35.10
“`
バージョン2へアップグレードするため、[公式ドキュメントの手順](https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/getting-started-install.html)にしたがって以下の2つのコマンドを実行します。
“`bash
$ curl “https://awscli.amazonaws.com/AWSCLI