- 1. Lambda(Python)のテストイベントを作成するために、関数の先頭に入れる1行
- 2. CloudFormationでWordpressを構築する
- 3. LINE から Raspberry Pi の LED を操作する 3 つのパターンを試した
- 4. AWSにおけるバックアップの種類
- 5. 機械学習のためのDockerと、AWS SageMakerを最低限使うための本を書いた
- 6. Cloud9でRailsアプリをデプロイする手順(開発環境)
- 7. AWS API Gateway Lambda オーソライザーを使用してアクセス制御を行ってみる
- 8. AWSでWordPressサイトを構築してSSL化する方法【EC2 ELB ACM Route53】
- 9. 【AWS】ストレージまとめ(インスタンスストア、EBS、S3、EFS)
- 10. AWSでVue.jsのスマホレイアウトを確認する方法
- 11. On-DemandキャパシティになっていないDynamoDBテーブルをクロスアカウントで探す
- 12. AWS の CloudWatch Synthetics Canaries + Secrets Manager で、Basic認証付きページを外部監視する
- 13. Aurora PostgreSQL ver13からver14で増減するパラメータまとめ
- 14. AWSにおいてのThe DB subnet group doesn’t meet Availability Zone (AZ) coverage requirement.が出た時の対処法
- 15. Amazon Translate とは
- 16. AWS LightsailでWordPress開発を行う時のメモ
- 17. EC2(Amazon Linux2)でZabbixの構築
- 18. ソリューションアーキテクト対策_EFS篇
- 19. AWS CloudFrontとS3とRoute53でwww.ありドメイン名をwww.なしドメイン名にリダイレクトする
- 20. 画像生成AI Stable DiffusionをAWS Lambdaで動かす(img2img対応)
Lambda(Python)のテストイベントを作成するために、関数の先頭に入れる1行
# はじめに
「API Gateway→Lambda」などのLambdaを書くときに、最初にlambda_handlerのeventに渡ってくるデータを取得したい場合のワンライン、コピペ用メモです。# Lambda
“`Python
print(json.dumps(event, ensure_ascii=False))
“`
まず、この1行を入れて、APIを送信するなどして、Lambdaを動かします。
eventの内容をCloudWatchLogsから取得して、テストのイベントJSONに使います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155165/19be57b9-0eb1-043e-b8a8-e5d3a25adf9c.png)# おわりに
小技として記事にしてみました。
CloudFormationでWordpressを構築する
## 目的
CloudFormationのテンプレートファイルを用いて、EC2上にWordpressを構築する## CloudFormationとは?
CloudFormationはInfrastructure as Code(IaC)の一種です。
AWSリソース定義や構築をコードで行うことが可能で、大規模かつ長期的に運用する際に非常に効率的です。コードベースで管理するため、再現性と品質の担保ができるところが最大の強みです。詳細は公式ページを参照してください。
https://aws.amazon.com/jp/cloudformation/
今回作成するのは単一のインスタンスのみなので、コンソール上でポチポチ作成したほうが早いと思います。
あくまで練習用ということでお願いします。## 作業
### AWSに登録する
[登録ページ](https://portal.aws.amazon.com/billing/signup#/start/email)からAWSのアカウントを作成します。
アカウント作成の流れは公式の説明がわかりやすいです。https://aws.a
LINE から Raspberry Pi の LED を操作する 3 つのパターンを試した
## 作った物
こんなものを、3 つのパターンで作ってみました。
アドベントカレンダーに向けて、LINE→AWS→SORACOM→ラズパイでLチカ操作を準備中…。いくつかの方法があるのでそれぞれを試してみる。 pic.twitter.com/5uR6vyHP49
— Naoki Mikuni (Mick) (@n_mikuni) November 21, 2021
## はじめに
2021 年にあった SORACOM のイベントで、個人的に印象的だったのは [SORACOM IoT Meetup #4 〜LINE 通知を使いこなそう!〜](https://blog.soracom.com/ja-jp/2021/11/18/soracom-iot-meetup-4-report/) や [SORACOM UG の LINE DC とのコラボレーションイベント](https://soracom-ug.jp/soracomug-linedc-handson1/) です。このイベントで紹介していたのは、LINE は開発者が簡単に bot を作れるため、SORACOM と組み合わせることでデバイスの温度・位置といった様々な情報を簡単に通知できることでした。これも個人の感想ですが、このイベントをもって、デバイスからデータが送信された時に [LINE Notify](
AWSにおけるバックアップの種類
# AWSにおけるバックアップの種類
## 初めに
何となくしか理解できていなかった分野。5回目はAWSにおけるバックアップの種類についてです。
AWS上ではEC2のバックアップ、RDSのバックアップ、AWSBackupでのバックアップなどいろいろと種類があり、業務で扱っていながら何となくの理解で済ましてしまっているのでこれを機にしっかりとまとめたいと思います。## バックアップの種類
まずこの記事で扱うAWSにおけるバックアップの種類ですが、下記についてかいせつしていこうとおもいます。
・EC2のバックアップ
・RDSのバックアップ
・AWSBackup(AWSのサービス名)で取得できるバックアップ### EC2のバックアップ
そもそもEC2のバックアップはEBSスナップショットとAMIがあります。#### EBSスナップショット
EBSスナップショットは、EBSのバックアップでS3上に作成されます。S3に保管されたスナップショットはリージョン内の複数のAZ間で同期されます。#### AMI
AMIにはEBSのスナップショット情報、AWSアカウントがAMIを使用してイ
機械学習のためのDockerと、AWS SageMakerを最低限使うための本を書いた
機械学習のためのDocker/AWS 入門/SageMakerの統一的な本を書いたので紹介していきたいと思います。
![frontpage.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/232088/9f6c090f-efd2-6c97-f9fa-6eb54192dd70.jpeg)
## Dockerとは?機械学習との関わりとは?
Dockerとは、「コンテナ仮想化を用いてアプリケーションを開発・配置・実行するためのオープンプラットフォーム」(Wikipediaより)です。![docker_logo.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/232088/5f48d607-7beb-3f8a-4fb8-e093959f2823.jpeg)
Dockerの基本的な説明は多数解説記事があるので割愛しますが、Dockerの大きな特徴として「使い捨てできる環境」が紹介されることがあります。機械学習での使い捨て環
Cloud9でRailsアプリをデプロイする手順(開発環境)
## こんな方向け
・ Cloud9でアプリのデプロイのやり方を知りたい
・ データベースの作成までのやり方を知りたい## 大まかな手順
1. データの反映
2. Rubyのバージョン確認
3. MySQLのインストール
4. MySQLのパスワードの修正
5. database.ymlのファイルの修正
6. データベース(DB)の作成
7. Railsアプリを起動### 1. データの反映
・git cloneでアプリ格納場所のリポジトリをローカルに落とす“`
$ git clone
“`### 2. Rubyのバージョン確認
・Railsのバージョン確認
“`
$ ruby -v
“`### 3. MySQLのインストール
“`
sudo yum -y update# mariadbを削除
sudo yum remove -y mysql-server
sudo yum remove -y mariadb*# インストール
# Amazon Linux2MYSQL_PACKAGE_URL=”https://d
AWS API Gateway Lambda オーソライザーを使用してアクセス制御を行ってみる
# Lambdaオーソライザーとは
API Gatewayを使うとインターネット上にREST APIを公開できます。
そしてLambdaオーソライザー(以前のカスタムオーソライザー)は、Lambda関数を使用してAPIへのアクセスを制御するAPI Gatewayの機能です。(公式より抜粋)# 実行イメージ
Lambdaオーソライザーの実行イメージは以下の通りです。(公式より抜粋)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/273110/0b1b4a73-96e1-2231-95e3-214d25dc96ea.png)
1. ClientがAPI Gatewayにアクセス
1. API Gatewayは必要情報をLambda Auth functionに送信
1. Lambda Auth functionは入力情報を元に認証を行った後、アクセス許可orアクセス拒否を返す
1. アクセスが拒否された場合、API GatewayはHTTP403等のエラーステータスをClientに返す
AWSでWordPressサイトを構築してSSL化する方法【EC2 ELB ACM Route53】
# はじめに
これまで何度か**WordPressサイトのSSL化**を実施していく中で、やっと自分なりに手順がまとまってきたので、忘れないようこちらに載せておきます。
## 1. 事前に準備しておくもの
#### 1-1. AWSアカウント
[AWSアカウントの取得はこちらから](https://aws.amazon.com/jp/register-flow/ “AWS アカウント作成の流れ”)
#### 1-2. ドメイン
(今回は検証のため、「freenom」というサイトで無料のドメインを取得しました。)[freenomドメインの取得はこちらから](https://my.freenom.com/ “freenom トップページ”)
## 2. 使用するサービス
### **2-1. EC2 (Elastic Compute Cloud)**
| アイコン | OS | 用途 |
| :————: | :————————:
【AWS】ストレージまとめ(インスタンスストア、EBS、S3、EFS)
# はじめに
AWSについて調べていた際にストレージにさまざまな種類があることは理解したが、
それぞれの特徴やメリデメが混同しがちであったためまとめてみた。# ストレージ各種概要
EBS、S3、EFSはそれぞれ以下の言葉の略
EBS : **Elastic Block Store**
S3 : **Sinple Storage Service**
EFS: **Elastic File System**それぞれの大まかな仕様と比較は以下の通り
||インスタンスストア|EBS|S3|EFS|
|-|-|-|-|-|
|ストレージ種類|ブロック|ブロック|オブジェクト|ファイル
|ストレージ最大サイズ|60TB※1|16TB|制限なし※2|制限なし※3|
|スピード|最も速い|速い|遅い|普通|
|料金|EC2に内包|普通|安い|最も高い|※1 インスタンスタイプによってサイズは異なる
※2 1ファイル5TBまで
※3 1ファイル47.9TBまで## インスタンスストア
EC2の一時的なデータ(バッファ、キャッシュ、スクラッチデータなど)を
保持するためのストレージ。
EC
AWSでVue.jsのスマホレイアウトを確認する方法
メモ書き
AWSでVue.jsのレイアウトを確認する方法
・VScode内で、npm run buildを叩いてdistフォルダを作成
・S3のバケット内にそれを配置する。この際、css,js,img,index.html,favicon.icoを分けて配置する。
・バケットのプロパティから、一番下らへんにある静的ウェブサイトホスティングにhttpリンクがあるので、そのリンクでスマホから飛ぶ。iPhoneのノッチがヘッダーにかかっていないかを確認したかったが、そもそもブラウザから見ているのでかかるわけがなかった。。。
ああああああああああああ
On-DemandキャパシティになっていないDynamoDBテーブルをクロスアカウントで探す
AWS Config Advanced Query(高度なクエリ)が便利です
“`
SELECT
resourceId,
accountId,
configuration.provisionedThroughput.readCapacityUnits,
configuration.provisionedThroughput.writeCapacityUnits
WHERE
resourceType = ‘AWS::DynamoDB::Table’
AND (
configuration.provisionedThroughput.readCapacityUnits > 0
OR configuration.provisionedThroughput.writeCapacityUnits > 0
)
“`
スキーマは以下のリポジトリを参照
https://github.com/awslabs/aws-config-resource-schema/tree/master/config/properties残念ながらSCP等で封鎖はできま
AWS の CloudWatch Synthetics Canaries + Secrets Manager で、Basic認証付きページを外部監視する
# やりたいこと
タイトルの通り、AWSのCloudWatchで利用可能なSynthetics Canriesを使って外部監視をするのに、Basic認証がかかっているページを監視します。
[ClassMethodさんの記事](https://dev.classmethod.jp/articles/monitor-websites-with-basic-authentication-with-amazon-cloudwatch-synthetics/) のように環境変数などで設定する情報はいくつか在ったのですが、こちらの記事内の注意書きにもある通りSecrets Managerを使うなどして秘匿情報を隠す形でのやり方をそのもの紹介しているページが見つけられなかったので、自分で試行錯誤して実践できた方法をまとめました。# 必要なもの
AWS Consoleが扱える必要があります。
IAMの設定等も必要となりますので、そうした権限を持っているアカウントをご用意ください。# やったこと
以下、実際のソースコードを修正していきますが、基本的には、できるだけAWS上で生成されるSample
Aurora PostgreSQL ver13からver14で増減するパラメータまとめ
## はじめに
Aurora PostgreSQLのバージョンを14に上げるために、パラメータについて調査する必要があったのでまとめました。## 対象の読者
– Aurora PostgreSQL利用者
– パラメータについて調査したい方
– この記事を読んでる方## パラメータグループについて
RDSのパラメータグループには`DBクラスターパラメータグループ`と`DBパラメータグループ`がある。
パラメータグループの詳細は[こちら](https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html)下記は`ver13`から`ver14`に変わることで増えたパラメータ、なくなったパラメータを纏めました。
#### DBクラスターパラメータグループ
##### 増えたパラメータ
– client_connection_check_interval
参考:https://postgresqlco.nf/doc/en/param/client_conn
AWSにおいてのThe DB subnet group doesn’t meet Availability Zone (AZ) coverage requirement.が出た時の対処法
# この記事の概要
“`
The DB subnet group doesn’t meet Availability Zone (AZ) coverage requirement.
“`のようなエラーがRDSを作成する時に出てくるので困っていました。
しかし以下の記事を参考にして解決できました。# 原因
RDSではアベイラビリティゾーンで別のサブネットが2つ必要でしたが、
1つしかなかったみたいでした。
なのでサブネットを作成していきます。最初は
|public1-ap-northeast-1a|
|–|
|private1-ap-northeast-1a|だけでしたが、
|public1-ap-northeast-1a|
|–|
|public1-ap-northeast-1c|
|private1-ap-northeast-1a|
|private2-ap-northeast-1c|で作成しました。
VPCを作成する時に気をつけた方がいいです。
そしてRDSではアベイラビリティゾーンは複数作るので忘れないようにしましょう。# 資料
http
Amazon Translate とは
## 勉強前イメージ
翻訳的な?
## 調査
### Amazon Translate とは
サービス名の通り、自動言語翻訳サービスになります。
現在では75言語の翻訳がサポートされています。
また、翻訳はニューラル機械翻訳(ディープラーニングを適用した翻訳システム)を使用しており、自然で正確な翻訳が可能になります。### Amazon Translate の特徴
– カスタム用語機能
翻訳の際に特定のジャンルや業界で使用されている名称を自由に設定できます。
毎回設定した名称がそのまま適応され、使用したユーザのみがアクセス可能です。– リアルタイム翻訳
文章の入力と同時に翻訳してくれます。
APIを利用することも可能です。### 実際の翻訳の画面
実際の翻訳の画面が以下になります。
よくある翻訳の画面で、感覚的に操作ができます。![1Amazon Translate – Google Chrome 2022-09-20 10.47..png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.co
AWS LightsailでWordPress開発を行う時のメモ
[AWS Lightsail](https://aws.amazon.com/jp/lightsail/)のWordPressインスタンスはBitnamiを用いて構築されていて少し癖があるので、初期構築時に編集しそうな箇所をメモとして残しておきます。
# 単語解説
– Bitnami ( https://bitnami.com/ )は、WordPressなどのWebサービスと、その動作に必要なphp,mysqlなどのミドルウエアのパッケージです。
– Amazon Lightsailは、AWSの月額制のサービスです。従量課金ではなく月額課金なので、レンタルサーバ的な使い方ができます。
# 初期設定の確認
## Bitnami上のWordPressの初期ID/PWなどを調べる
“`sh
# WordPress初期ユーザーのID/PWの出力
$ cat /home/bitnami/bitnami_credentials
“`
## php.iniの場所、エラーログの場所
“`shell
# エラーログの場所
/opt/bitnami/apache2/logs/error_log
EC2(Amazon Linux2)でZabbixの構築
今回はEC2(Amazon Linux2)でオープンソースの監視アプリケーションのZabbixをお試し構築していきます。サーバにSNMPを設定する要件があり、動作確認のためSNMPを受けられる環境が必要になりましたので、さくっと検証できる環境を作っていきたいと思います。
そもそもZabbixってなに?って方は[こちら](https://www.ashisuto.co.jp/product/category/system-management/zabbix/)# 今回のゴール
Zabbixの管理コンソール画面(GUI)にWebブラウザーでログインできる状態する。
具体的には以下の画像のような状態になるところまでやっていきます。
![スライド6.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/655033/5d918e1d-2df2-b69b-cf24-55d513e38522.png)
正常に構築できているとZabbixをインストールしたサーバのCPUの利用状況などのグラフが見えます。
![スライド7.
ソリューションアーキテクト対策_EFS篇
## はじめに
試験勉強した際のメモを自分用に記事化。
内容は公式やBlack Beltの写経ですので目新しいことはありません:pray:## EFSへのアクセスが急増する可能性があるケースの対応策
EFSを利用して、複数のEC2インスタンスでファイルを共有するアプリケーションを構築している場合。ファイルアクセスにかかるリクエスト数が一定ではなく、突然増加する場合は`バーストスループットモード`を選択する。
### バーストスループットモード
スループットがファイルサイズに合わせてスケールされ、ファイルベースの多数のワークロードの不規則な性質に対応するために、必要に応じて動的にバーストされる。
これによって、EFSは一時的な高負荷に対応できるパフォーマンスを発揮することができる。他にも汎用モード、最大I/Oモードがある。
### 汎用モード
一般的な用途を想定したモード。デフォルトでは汎用モードとなり、推奨されている。
レイテンシーが最も低く、1秒あたりのファイルシステム操作が7000に制限されている。#### 最大I/Oモード
何十〜何千というクライアントからの同
AWS CloudFrontとS3とRoute53でwww.ありドメイン名をwww.なしドメイン名にリダイレクトする
ドメイン名でWebページを表示できるようになって気づきました。
ドメイン名は「www.」無しで取得して設定もしたので、「www.」ってつけても大丈夫なのかなと。早速試して見たところ。。。。
#### 見事にタイムアウトでした。。。じゃあ「www.」つけてもアクセスできるようにする必要があるよね、ということで。
今回は下記のページを参考に項番2から実施してみました。
https://techblog.finatext.com/redirecting-www-subdomains-with-cloudfront-and-s3-8330a616dbc0# まずはS3で静的ホスティング機能の設定
1. 「www.ドメイン名.com」というバケットを作成
2. 静的ウェブサイトホスティングで「ドメイン名.com」にリダイレクトするように設定これでS3の設定は終わり
# 次にCloudFrontの設定
1. オリジンドメインに同様にURLを選択
1. ビューワープロトコルポリシーはRedirect HTTP to HTTPSを選択して作成
1. 「ディストリビューションドメイン
画像生成AI Stable DiffusionをAWS Lambdaで動かす(img2img対応)
# はじめに
本記事はAWS Lambda上でStableDiffusion(img2img)を動作させることをゴールとします。
ソース一式はGitHubに置いてあるため、使い方の解説など特に必要ない方はそちらを参照してください。https://github.com/densenkouji/stable_diffusion.openvino.lambda
:::note info
本プロジェクトは「stable_diffusion.openvino」プロジェクトを基にAWS Lambdaに移植したものです。
https://github.com/bes-dev/stable_diffusion.openvino
:::# 実行結果
次節に示す手順を進めていただくことにより、AWS Lambda上で画像を作成することができます。
(コマンドの–function-nameにはデプロイしたLambda関数名を指定します)
“`sh:実行例
aws lambda invoke \
–function-name mySdFunction-yty7mdazmzzlywey \