- 1. 話題の「AWS Cloud Quest」をやってみた!
- 2. [アップデート]Cost Anomaly DetectionがChatbotと統合されたのでCDKで実装してみた
- 3. PyCharmのPYTHONPATHが上書きされてしまう
- 4. 【AWS環境構築メモ②】お名前.comで取得したドメインをRoute53に登録する
- 5. FrontISTRをAWS ParallelCluster バージョン3で利用する③
- 6. CloudFormation「1 validation error detected: Value ‘[AWS::EC2::VPC…]’ at ‘typeNameList’ failed to satisfy constraint」
- 7. 【AWS環境構築メモ①】お名前.comで独自ドメイン取得する
- 8. AWSタグ付け方法
- 9. DynamoDB StreamsのイベントをフィルタリングしてLambdaを実行する(おまけ付き)
- 10. AWS での分散負荷テストを試してみる
- 11. IPとVPC EndpointでIAM Userが使えるプリンシパルを制限
- 12. 【AWS Summit 2021】日立がチャレンジするクラウドネイティブな社会イノベーション!②
- 13. FrontISTRをAWS ParallelCluster バージョン3で利用する②
- 14. AWS公式資料で挑むSCS認定(21)-こんな時どうする(分野3:インフラストラクチャのセキュリティ)
- 15. AWSの主なサービスをまとめてみた
- 16. AWS CloudEndureを使ってMigrationを仕掛ける際の考慮事項
- 17. Laravelバッチ(コマンド) のログをバッチ毎にCloudWatch Logsへ出力する
- 18. Transcribe ではやぶさ2記者会見を文字起こししてみた
- 19. AWS CDK v1(TypeScript)でVPC作成時のAZを指定する
- 20. 新卒クラウドエンジニアの1年間を振り返ってみる③
話題の「AWS Cloud Quest」をやってみた!
# はじめに
“エンジニアファーストの会社 [株式会社CRE-CO](https://www.cre-co.jp/#top)”のクワバラと申します。
社内で共有されて情報を知ることができましたが、Amazonさんが無料のオンラインロールプレイングゲーム「[AWS Cloud Quest: Cloud Practitioner](https://explore.skillbuilder.aws/learn/course/external/view/elearning/11458/aws-cloud-quest-cloud-practitioner)」を公開してました。
クワバラ自身、経験は浅いもののAWSエンジニアとしての業務経験がありますので、AWSの知識、知恵がゲーム感覚で養えることはとても嬉しいことです。
ゲームの概要等は後述にてご説明させていただきます。
それでは、レッツゴー!!
# AWS Cloud Quest: Cloud Practitionerってどんなゲーム?
AWS Cloud QuestはWebブラウザオンラインゲームです。プレイヤーは自分のキャラ
[アップデート]Cost Anomaly DetectionがChatbotと統合されたのでCDKで実装してみた
## 背景
最近円安が進んでますね。
AWSの請求レートが上昇して心穏やかじゃない日々を過ごしています、という方に読んで欲しい改めて確認したいAWSの予算設定
ついでに導入しておきたい**Cost Anomaly Detection(コスト異常検出)**そんなCost Anomaly Detectionですが、3/14に以下のアップデートが発表されてSlackで通知を受け取ることが出来るようになりました!
折角なのでCDKで実装して動作を確認してみました。
※ついでにBudgetのslack通知も>本日より、AWSチャットボットを介してSlackとAmazonChimeでAWSコスト異常検出アラート通知を受信できるようになります。AWS Chatbotとの統合により、SlackまたはAmazonChimeチャットチャネルを使用してコスト異常アラートサブスクリプションを簡単に構成できます。これにより、既存のチャットチャネル内で個々のAWS Cost Anomaly Detectionアラートを受信できるようになり、コラボレーションの向上とアラートのタイムリーな解決がサポート
PyCharmのPYTHONPATHが上書きされてしまう
docker-compose環境をinterpreterに設定しています。
interpreterの設定で環境変数に `PYTHONPATH=/library_path` を指定しています。
PyCharmのGUIからunittestをrunするとPYTHONPATHで設定したパスのライブラリを見つけることができません、どうやらPYTHONPATHが上書きされている様子。回避方法は2つある。
* site-packagesにもライブラリ入れておく→ちょっと2重管理になって気持ち悪い
* GUIでの実行を諦めてコマンドラインにてテスト実行→今回はこれを採用lambda layerにpipライブラリ群を入れているためこのような状況になってます。
lambda layer便利だけど、このあたりのlambdaの実行環境とローカルの開発環境を差を吸収する部分でちょっと工夫が必要。
あまりスッキリした解決方法ではないのも悩ましい。
【AWS環境構築メモ②】お名前.comで取得したドメインをRoute53に登録する
## 0.はじめに
お名前.comで取得したドメインをRoute53に登録します。
こちらも前回同様そんなに難しくないので、登録までは時間かかりませんが、
反映までに最大で72時間かかる場合があります。## 1.前回のタスク
**[【AWS環境構築メモ①】お名前.comで独自ドメイン取得する](https://qiita.com/yuuichimizuta/items/d56608a21891e4bbc296)**
## 2.前提条件
– **AWSアカウント作成済み**
– **お名前.comでドメイン取得済み**## 3.登録手順(サマリー)
|順番|手順|
|—|—|
|1|Route53のホストゾーン作成|
|2|NSレコードを確認|
|3|NSレコードの情報をお名前.comに登録する|
|4|反映の確認|## 4.登録手順
### 1.Route53のホストゾーン作成
![スクリーンショット 2022-03-23 21.54.34.png](https://qiita-image-store.s3.ap-northeast-1.amazon
FrontISTRをAWS ParallelCluster バージョン3で利用する③
# 0. はじめに
前回の記事では,ParallelClusterの立ち上げとログインまでを扱いました.そちらをご覧になっていない方は,下記「シリーズの流れ」にリンクを記載していますので,参考にしてください.今回は,ParallelCluster上でのFrontISTR実行について,ジョブスケジューラであるSlurmの使い方・ジョブスクリプトの書き方を中心に見ていきます.
# 1. シリーズの流れ
1. [ParallelCluster バージョン3用のカスタムAMIの作成](https://qiita.com/chikasuiro/items/b4b7899437e6e8e126ff)
1. [ParallelCluster バージョン3用の設定ファイルの作成〜起動](https://qiita.com/chikasuiro/items/f95fdffc4e56e58fc27e)
1. Slurmを利用したFrontISTR並列実行 (この記事)—
# 2. ログイン〜領域分割
[前回の記事](https://qiita.com/chikasuiro/items/f
CloudFormation「1 validation error detected: Value ‘[AWS::EC2::VPC…]’ at ‘typeNameList’ failed to satisfy constraint」
# はじめに
他人が書いたCloudFormationのyamlコードの動作確認をしたところ、以下のエラーが出力しました。
>1 validation error detected: Value ‘[AWS::EC2::VPC, AWS::EC2::RouteTable,AWS::EC2:Route, …<略>]’ at ‘typeNameList’ failed to satisfy constraint: Member must satisfy constraint: [Member must have length less than or equal to 204, Member must have length greater than or equal to 10, Member must satisfy regular expression pattern: [A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}(::MODULE){0,1}]これまた些細なことなのですが、10分以上解決に時間がかかりました。
【AWS環境構築メモ①】お名前.comで独自ドメイン取得する
## 0.はじめに
AWSで本番環境構築するに当たり、お名前.comで独自ドメインを取得してみたことを書いてみました。
とても簡単なので、誰でも簡単に取得できます。多分。あくまでもメモなので、詳しい説明等は参考にした記事などをご紹介する形で記載します。
## 1.ドメイン取得手順(サマリー)
|順番|手順|
|—|—|
|1|取得したいドメイン名を決める|
|2|お申込み内容確認、メールアドレス、パスワード入力|
|3|会員情報登録|
|4|支払い方法選択|
|5|申し込み完了|
|6|メール確認|## 2.ドメイン取得手順
### 1.取得したいドメイン名を決める
![スクリーンショット 2022-03-23 17.35.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/891391/8a53ac4c-6ac3-4fe0-a00a-56d35af55301.png)
– [お名前.com](https://www.onamae.com/) にアクセス
– ページ中央の「取得
AWSタグ付け方法
## そもそもなんでタグ付けする必要あるの
https://aws.amazon.com/jp/blogs/news/cost-allocation-tag/一番のメリットとしてはコストをグループ化できるというところにあると思います。
システムの規模が大きくなれば大きくなるほど、どのプロジェクトで何のコストが発生し、結果このような料金になっているかの説明がしにくくなっていきます。
規模が小さいうちにタグ付けのルールを決めて付与してあげることで、プロジェクト単位や使用ユーザ単位などでコストを確認できるのです!!## AWSタグエディター
タグエディタを使用することにより特定のタグが付いているリソースを検索したり、逆にタグがついていないリソースにまとめてタグを付与できたりします。
GUIで使うので誰でもわかりやすく操作できるでしょう
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878032/084a8770-c709-47b6-8712-6d9e2ad208ae.png)##
DynamoDB StreamsのイベントをフィルタリングしてLambdaを実行する(おまけ付き)
# はじめに
Lambdaでは、DynamoDB Streamsでデータの変更を検知して実行することができます。以前は、変更のたびに毎回Lambdaが実行され、Lambdaのコード内で追加、更新、削除を判断して処理を行う必要がありました。この方法では、毎回Lambdaが実行されるため、その分、費用がかかる状態でした。
それが2021年11月のアップデートでLambda実行前に処理を実行するかどうかフィルタリングすることができるようになり、コードの簡略化や不要な実行がなくなり費用も低減できます。
今回は、実際にフィルタリングを設定し、実行してみます。# 事前準備
トリガーとなるDynamoDBのテーブルを作成し、ストリームを有効化しておきます。その後、ストリームARNをコピーしておきます。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129814/8da1e5c4-7959-3a56-75b4-defebfb66c2a.png)
![image.png](https://
AWS での分散負荷テストを試してみる
AWSで負荷テスト環境を簡単に構築出来るようなので試してみます。
https://aws.amazon.com/jp/solutions/implementations/distributed-load-testing-on-aws/
## 構成
公式から。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199673/8634e8ce-21dc-7519-bc6c-41bcf7fe8f86.png)
フロントにAmplifyが用いられテストシナリオを作成するコンソール画面が提供されます。
実際に負荷をかける環境はECSによって管理されたコンテナから実行されます。コンテナイメージにはコンテナイメージにはTaurusというテストツールが使用されているようです。## コスト
こちらも公式から。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199673/a24f5b1d-181b-64
IPとVPC EndpointでIAM Userが使えるプリンシパルを制限
# 概要
IAMユーザを使用できる[プリンシパル](https://docs.aws.amazon.com/IAM/latest/UserGuide/intro-structure.html#intro-structure-principal)をIPやソースのVPCエンドポイントで絞りたいです。※プリンシパル:AWSのリソースに対してアクションやオペレーションを実行できる人、もしくはアプリケーションのこと
図にすると以下となります。
![スクリーンショット 2022-03-15 16.35.27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2109911/ce14d9ac-0ae9-c16a-716e-02412802f68e.png)# 要件を満たすIAM ポリシーを作成する
**やりたいこと:プログラム経由(CLI、SDK等)のIAMを使うプリンシパルが以下の場合はアクセスを許可したい**1. アカウントAのVPCエンドポイントを経由している
2. 特定のパブリックIP
3.
【AWS Summit 2021】日立がチャレンジするクラウドネイティブな社会イノベーション!②
みなさんこんにちは。子育てしながらクラウド推進!日立のモフママです。
前回に引き続き,AWS Summit Online Japan 2021 での日立セッションについてご紹介していきます。![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358174/c6d60a35-8ea8-095a-0a3a-9007f988428c.png)
![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358174/47339e72-43fb-3e19-f7f9-da898cca8140.png)
https://qiita.com/mofu_mother/items/97eb4701c36c67819984
![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358174/2b811247-ee75-44ec-f3b
FrontISTRをAWS ParallelCluster バージョン3で利用する②
# 0. はじめに
前回の記事では,カスタムAMIの作成とAWS ParallelCluster (コマンドラインツール)のインストールまでを行いました.これらの作業がまだの方は,下記「シリーズの流れ」より1回目をご覧ください.
今回は,AMIを利用して実際にParallelClusterを起動するところまでを扱います.具体的な内容は,設定ファイルの作成とコマンドの確認・実行になります.
—
# 1. シリーズの流れ
1. [ParallelCluster バージョン3用のカスタムAMIの作成](https://qiita.com/chikasuiro/items/b4b7899437e6e8e126ff)
1. ParallelCluster バージョン3用の設定ファイルの作成〜起動 (この記事)
1. [Slurmを利用したFrontISTR並列実行](https://qiita.com/chikasuiro/items/2878a8834d130d7d0a76)—
# 2. 設定ファイルの作成
## 2.1. バージョン2用との違い
書籍のサポートリポ
AWS公式資料で挑むSCS認定(21)-こんな時どうする(分野3:インフラストラクチャのセキュリティ)
##### [前回] [AWS公式資料で挑むSCS認定(20)-こんな時どうする(分野2:ログと監視)](https://qiita.com/mingchun_zhao/items/1bd86bf67119be51fd19)
## はじめに
前回に続き「こんな時どうする」をまとめ中です。
今回は「分野3: インフラストラクチャのセキュリティ」となります。## 「分野3: インフラストラクチャのセキュリティ」基本知識のおさらい
### エッジセキュリティに使用されるサービス
– Amazon Route 53
– ドメインネームシステム(DNS)ウェブサービス
– AWS WAF
– アプリケーションファイアウォール
– 機能: SQLインジェクションやクロスサイトスクリプト攻撃をブロック
– Amazon CloudFront
– コンテンツ配信ネットワーク(CDN)サービス
– AWS Shield
– 分散サービス妨害(DDoS)のマネージド型防御サービス
– 機能: AWSで実行しているアプリケーションを保護###
AWSの主なサービスをまとめてみた
# はじめに
当記事はAWSの主なサービスを備忘録として簡潔にまとめていこうと思います。
個人開発者目線での記事となっています。
初学者なので間違っていることや分かりにくい部分があると思いますが、ご指摘いただけたら幸いです。# AWSとは
`AWS`とは`Amazon Web Service`の略でAmazonが提供する`クラウドサービス`です。
AWSではWebサイトの運営やビッグデータ分析、機械学習などをすることができます。様々なニーズに合わせた多様なサービスがあるので必要なサービスを学習していくことが重要になってきます。
今回はWebサイト運営を目的とした記事となります。
# VPC (Virtual Private Cloud)
AWS上でネットワークを提供する仮想ネットワークサービス。
扱うサービスの作業範囲を決めるような認識。|アイコン|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/547651/d396bd59-dad1-b272-f57a-339c2d10
AWS CloudEndureを使ってMigrationを仕掛ける際の考慮事項
# CloudEndure Migrationとは
– – –
“CloudEndure Migration” はAWSが提供するサービスで、いわゆる「イメージ転送」にて移行ができるものです。 元々は有償サービスで、AWSを始めとした各種クラウドへの移行が行えるサービスでしたが、AWSが買収したことにより無償提供されAWSへの移行専用サービスとなりました。AWSが提供するサーバーイメージ移行サービス(ツール)としては、VMImport や Server Migration Service がありますが、前述のサービスより手軽で幅広いシーンに対応できることから非常に使い勝手がよく、個人的には第一選択とすべきと考えています。
| サービス名 | 特徴 | データ同期 |
| — | — | — |
| VMImport | VMwareからエクスポートしたサーバイメージをインポートしEC2に変換| 無し |
| Server Migration Service | 仮想化基盤(VMware、Hyper-V)からサーバイメージを抽出しEC2に変換 | 無し |
| Clo
Laravelバッチ(コマンド) のログをバッチ毎にCloudWatch Logsへ出力する
## はじめに
EC2上でLaravel APIサーバーが稼働しています。
このAPIサーバーでは`$schedule->command`を使用して定期的にバッチ(コマンド)の実行もしています。
(バッチサーバーも兼ねているわけです。)APIとバッチがあいのりしている件はあまり良くないですが、今回はその改善には触れません。
今回の問題はログです。
`storage/logs`配下へログを出力していますが、
1つのログファイルにAPIとバッチのログがまじってしまっており、さらにバッチが10個程度存在していたため、
どれがどのログなのかを理解する・探すのも難しい状態になっていました。そこで各ログファイルを分け、ついでにCloudWatchLogsへ連携してみました。
## バッチごとにログを分ける
### logging.phpへチャンネルの設定を追加する
バッチごとに使用するログチャンネルの設定を記載します。
日毎にローテーションしていたり、debugログすべて出力していたりするのでそこは調整してください。“`php:config/logging.php
~省略~
Transcribe ではやぶさ2記者会見を文字起こししてみた
専門用語多く含む宇宙科学分野の内容を Transcribe で文字起こしするとどうなるか試しました。
また、カスタム語彙を追加した場合も試しました。## まずは普通にやってみる
### Input Data
YouTube に公開された下記の記者会見動画のうち 4:26 以降、約 5 分間の音声を使用。
QuickTime Player で録音して iTunes で .m4a から .mp3 ファイルに変換。[【録画】小惑星探査機「はやぶさ2」の記者説明会(22/1/13)](https://youtu.be/4DlL7ydS9fA?t=267)
### カスタム語彙なしの場合の結果文字起こし結果全文
> はい では スタート いたし ます 本日 は あの 記者 会見 として えっ と カタログ の えー 話 を し、 たい と 思い ます 皆さん お 集まり いただき まし て どうも ありがとう ござい ます えー 内容 と いたし まし て は 二 千 二 十 二 年 の 一月 十 三 日 つまり 本日 初 の
AWS CDK v1(TypeScript)でVPC作成時のAZを指定する
## 概要
AWS CDKでVPCと同時にサブネットを作成するとき、AZが自動で選択されてしまう
旧AZ(apne1-az3)[^1]ではできないことがいくつかあるため、AZを指定したい[^1]: AZ名ではなくAZ IDで書いている。AZ IDについては[こちら](https://dev.classmethod.jp/articles/use-az-id-for-identify-az-crossing-over-account/)を参照
https://blog.serverworks.co.jp/tech/2019/10/02/apne1-az3/
## 実行環境
“`bash
:~ $ cdk version
1.148.0 (build 69a50f1)
“`## 解決方法
availabilityZones()を、指定したいAZ名を返すようにオーバーライドする
こんな感じ
“`typescript
import * as cdk from ‘@aws-cdk/core’
import * as ec2 from ‘@aws-cdk/aws-ec
新卒クラウドエンジニアの1年間を振り返ってみる③
# 昨日の記事の続きです
https://qiita.com/cakofei/items/5859f9ffafa18a1b2046# 1、2月(覚醒期)
年が明けて2022年、ようやく覚醒期を迎えることが出来ました。実を言うと2021年はプライベートの時間にJavaScriptやRubyなどのプログラミング言語の学習も並行でしていたのですが、なかなか継続的に続かず週に合計4~5時間がようやくという感じでした。結果として勉強は中途半端になりプログラミングスキルは身に付かず、クラウド知識も身に付くのが遅れてしまいました。
何故クラウドエンジニアなのにプログラミング言語の勉強をしていたかと言うと、自分もサービス開発をしたい思いがあったからです。
ですが時間は有限で、したいことを全部するにはあまりにも時間が足りません。
なので2022年の目標は「やるべきこと以上にやらないことを決断すること」としました。そこで一旦プログラミング言語を学習するのは辞めて、1~2月はAWSの勉強だけに絞ることにしました。
その結果、以前とは比べ物にならないくらいAWSを理解し始め、少しずつですが自