AWS関連のことを調べてみた2022年10月15日

AWS関連のことを調べてみた2022年10月15日
目次

Lambda (Node.js) から SNS 経由で IOSデバイス にプッシュ通知

# はじめに
LambdaからSNS経由でアプリをインストールしたIOSデバイスにプッシュ通知する方法についてまとめました。

# 事前構築
– プッシュ通知用証明書(p12)は、発行済とする
– IOSデバイスのデバイストークンは、取得済みとする
– 参考記事
– https://kahoo.blog/howto-aws-sns-ios-push-notification/

# SNS作成
SNSでプッシュ通知の設定をします。
## プラットフォームアプリケーションの作成
`プラットフォームアプリケーションの作成`をクリックします。
![スクリーンショット 2022-10-14 16.00.24.png](https://qiita-image-store.s3.ap-northeast-1.amazon

元記事を表示

デフォルトのコンポーネントを使わず AWS でかんたんな VPC を構築する

# 本記事の目的

* AWS においてデフォルトの VPC とかインターネットゲートウェイを用いずに、手元の PC から接続できる WindowsServer を用意するための手順メモ。
* イメージは以下の通り。
– VPC の中にサブネット作る。そしてサブネットの中に WindowsServer のインスタンスを作成し、自分の PC からそこに接続してみる、というシンプルなもの。

![vpc-image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2902882/89dd09b1-e019-156d-6b7a-b701f13211ef.png)

* 本記事作成にあたり以下参考にさせていただきました、ありがとうございました!

https://qiita.com/kono-hiroki/items/6863aa06754fb25f28fc

# 事前知識

* 本記事で扱う用語について、以下にざっくりとしたイメージをまとめておく。

| 用語 | 説明 |
|—|—|
| VP

元記事を表示

VPCエンドポイントを作成して、S3にアクセスする

AWSマネジメントコンソールにログインしてください。
VPCダッシュボードを表示してください。
[エンドポイント]をクリックしてください。
![スクリーンショット 2022-10-15 6.59.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/14202/f36cb1be-e3ec-227e-265b-e957683fc629.png)

エンドポイントページが表示されます。
[エンドポイントを作成]をクリックしてください。
![スクリーンショット 2022-10-15 7.00.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/14202/f4e0417a-5f65-811c-bcab-84bf0f44f8b2.png)

エンドポイントを作成ページが表示されます。
[名前]にお好きな名前を入力してください。
[サービスカテゴリ]は、「AWSのサービス」を選択してください。
![スクリーンショット 2022-10

元記事を表示

GlueのGit Integrationを試してみた

# 背景・目的
GlueのGit統合が、[こちら](https://aws.amazon.com/jp/about-aws/whats-new/2022/10/aws-glue-git-integration/)の記事で発表されましたので試してみたいと思います。
なお、今回使用するリポジトリはCodeCommitを使います。

# まとめ
– Glue がGitまたはCodeCommitと統合された。
– 操作はGlue Studioまたは、AWS CLIから可能

# 概要
## Git統合とは?
GitHubと AWS CodeCommitを使用して、Glueジョブの変更履歴を維持し、デプロイできるとのこと。また、CodeDeployと組み合わせてジョブのデプロイまで簡単にできるようになりました。
(以前は、独自にコード管理システムと統合をセットアップしてデプロイしていました。)

具体的には、以下の事ができるようです。
– バージョン管理システムとの統合
– AWS CodeCommit および GitHub
– AWS Glue Studio で AWS Glue ジ

元記事を表示

then-request モジュールを用いて、Lambdaで HTTPリクエスト を同期処理

# はじめに
Lambdaが同期処理でAPIを叩くために、モジュールを探すと、sync-requestがありましたが、商用では非推奨で、then-requesを推奨されておりました。

`then-request`は、非同期処理ですが、`await`を使えば、同期処理できますので、Lambdaで`then-request`を使い、同期処理でAPIを叩き、結果を返す方法をまとめます。

同期的に WebページやAPIの取得をしたい場合に参考になるかと思います。

# then-requestモジュール

`then-request`モジュールを使用するため、ローカルで`then-request`モジュールをインストールします。
“`terminal
$ mkdir nodejs
$ cd nodejs
$ npm init -y
$ ls
package.json

$ npm install then-request

$ touch index.js

$ tree
.nodejs
├── index.js
├── node_modules
├── package-lock.jso

元記事を表示

【Python/AWS】第5回 AthenaでクエリしたデータをQuickSightで可視化【データ分析】

# 1. はじめに

本記事は【Python/AWS】の第5回として前回に引き続き、
AWSのサービスを利用した一連のデータ分析の続きとなります。

**▼前回の記事はこちら▼**

https://qiita.com/kawanago_py/items/f2dd2da9b7c3618a5146

私自身、AWSのサービスを触るのは初めてだったので、
細かい説明など不足する点はあるかと思いますが、
大まかな流れをこちらで解説していきたいと思います。

本分析の全体像は以下のようになります。
![AWSアーキテクチャ.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2512226/b791565c-37c8-2bb6-2e52-5c94703fb6ec.png)
全体の分析目的は以前の分析から継続/発展して、
**「Splatoon3」におけるコンテンツのユーザー満足度調査** です。

収集したデータか

元記事を表示

さいきょうのクラウドストレージを Amazon FSx for NetApp ONTAP + Nextcloud で作る!(その4)

# はじめに
この記事は、NetApp のストレージ OS である ONTAP の機能を活用して、
自前のクラウドストレージを構築する為のアイディア紹介と手順のメモです。

前回までの記事で、AWS 上に Nextcloud + Amazon FSx for NetApp ONTAP (以下 FSxN) の環境を構築しつつ、ファイルサーバーとしても並行利用できる環境の作り方を取り上げました。

↓シリーズの過去記事はこちら↓
[「さいきょうのクラウドストレージを Amazon FSx for NetApp ONTAP + Nextcloud で作る!(その1)」](https://qiita.com/takuo_yamazaki/items/0e8aff7549fc54a156bd)
[「さいきょうのクラウドストレージを Amazon FSx for NetApp ONTAP + Nextcloud で作る!(その2)」](https://qiita.com/takuo_yamazaki/items/821acb308594d7df6a37)
[「さいきょうのクラウドストレージを Am

元記事を表示

PrivatesubnetにあるEC2からNatGatewayを繋げる

# PrivatesubnetをPublicsubnetにあるNatGatewayに繋げる
PrivatesubnetにあるEC2をNatGatewayに繋げようとしてハマったので記事にしておきます。
NatGatewayってPrivatesubnetをインターネットに繋げるために使うんでしょ?という思い込みでPrivatesubnetにNatGatewayに繋げました、すみませんでした。
正しくは、PrivatesubnetをPublicsubnetにあるNatGatewayに繋げて使います。
システム構成図はこうです。

公式資料はこちらです。
https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/VPC_Scenario2.html

NLBでPrivatesubn

元記事を表示

CloudFormationでAuroraとLambdaを構築。LambdaでLOAD DATA FROM S3コマンドを実行しS3のCSVファイルをAuroraにインポートする。

# 本記事の内容

– AWSが提供するCloudFormationサービスを利用し、以下を行う。
– データベースの一つであるAurora(MySQLエンジンタイプ)をシングルインスタンスで建てる。
– サーバレスアプリケーションであるLambdaを建てる。
– 構築したAuroraに対してテーブル作成とデータ投入(LOAD DATA FROM S3)をLambdaを使って実行する。

本記事の手順で以下のような構成のクラウド環境を作成します。
![aws_lambda_direct_aurora.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2017667/d835cb9c-b08e-58b3-8afa-c6d0a769980e.png)
※AWSの操作画面はサービスリリースと共に更新されていくため、本記事をご覧いただくタイミングによっては、現在の画面と異なる場合があります。ご了承ください。本記事内の画面キャプチャーは2022年10月時点。

DBへのテーブル作成・データ投入の方法

元記事を表示

チームラボ新卒エンジニアがAWS JumpStart for NewGradsに参加してきました!

こんにちは!
私は[チームラボ](https://www.team-lab.com/)に2022新卒入社した駆け出しエンジニアです。
この度、パッケージチーム新卒エンジニアの研修の一環としてAWSに外部研修に行ってきました!
今回はその研修の概要とそこでの課題で作成した成果物について書き記しておこうと思います。

## AWS JumpStart for NewGradsとは

> 新卒1年目のエンジニアの方々を対象とした、3日間の実践的な研修プログラムです。
将来的にAWS活用をリードする人材になるための第一歩をスムーズに踏み出せるようなコンテンツをというコンセプトで企画されているため、単なるAWSサービスの学習だけでなく、グループに分かれて要件に合った適切なアーキテクチャを検討・設計する経験を積む部分にフォーカスした内容となっています。
AWS Japan様

今年度はオンライン開催でしたが、Web系やゲーム系の企業含めて新卒1年目のエンジニアが250名以上参加する大規模なイベントになりました。

### 研修の概要

研修はAWSサービスやアーキテクチャ設計の説明とグループワ

元記事を表示

AWSの12ヶ月無料期間が終了した話

# はじめに

– 少し前にAWS(Cloud9,S3)を利用していましたが、12ヶ月経ったので無料期間が過ぎました。
その時に、課金が発生してもこのまま使い続けるか、1から作り直すかで迷ったので備忘録を残すことにしました。

# S3を課金利用をするリスク

– 不正アクセスによる莫大な料金発生
私が作っていたSNSサイトではプロフィール画像の読み込みにS3を採用していました。
12か月の無料利用枠では、S3の標準ストレージは5GBとなっています。
S3は容量が無制限の従量課金制です。サイト利用者が増えることで多くの料金が発生する可能性もありますが、今回は不正アクセスされた場合を考えてみます。データが大量に送りつけられた場合、従量課金により額が跳ね上がってしまいます。

# Cloud9の場合
– 現在、Cloud9を課金利用していますが100~200円ほどしかかかっていないので、AWSアカウントの作り直しはしませんでした。
# おわりに

今回はS3の場合を考えましたが、自分がAWSのどのサービスを利用しているのかで
・AWSアカウントを作り直す
・課金して継続利用する
の選択は

元記事を表示

EKS上のステートフルアプリケーションをまるごとバックアップ・リストアしてみた【④リストア&クローニング篇】

# はじめに
[前回の記事](https://qiita.com/yshimizu22/items/9e021dabc7db3c30a07b)ではEKS上にデプロイしたWordPressアプリケーションに対して、Astra Control Service(以下、ACS)の**スナップショット**ならびに**バックアップ**の機能をお試ししてみました。

今回はその際のバックアップデータを**リストア**していきます。
また、ACSにはバックアップを経由せずにアプリケーションを直接複製できる**クローニング**という機能もありますので併せて検証していきたいと思います。

– [Astra Control Service(ACS)の導入](https://qiita.com/yshimizu22/items/11967a351e3b1ddde00f)
– Astra Control Service(ACS)の使い方
1. [アプリケーションの登録](https://qiita.com/yshimizu22/items/5b6a77a652b3a0b0ec22)
1. [アプ

元記事を表示

EKS上のステートフルアプリケーションをまるごとバックアップ・リストアしてみた【③スナップショット&バックアップ篇】

# はじめに
[前回の記事](https://qiita.com/yshimizu22/items/5b6a77a652b3a0b0ec22)ではAstra Control Service(以下、ACS)にEKS上にデプロイしたWordPressアプリケーションを登録しました。
今回はそのアプリケーションに対してスナップショットならびにバックアップの取得を行なっていきます。

– [Astra Control Service(ACS)の導入](https://qiita.com/yshimizu22/items/11967a351e3b1ddde00f)
– Astra Control Service(ACS)の使い方
1. [アプリケーションの登録](https://qiita.com/yshimizu22/items/5b6a77a652b3a0b0ec22)
1. **アプリケーションのスナップショット&バックアップ ←イマココ**
1. [アプリケーションのリストア&クローニング](https://qiita.com/yshimizu22/items/9

元記事を表示

EKS上のステートフルアプリケーションをまるごとバックアップ・リストアしてみた【②アプリケーションの登録篇】

# はじめに
[前回の記事](https://qiita.com/yshimizu22/items/11967a351e3b1ddde00f)でk8sアプリケーションのバックアップや移行といった機能を持つ**Astra Control Service**(以下、ACS)の導入を実施しました。
今回は検証用のEKSクラスタ上に**ステートフルアプリケーションをデプロイし、ACSの管理下に置く**というところまでを試していきたいと思います。

– [Astra Control Service(ACS)の導入](https://qiita.com/yshimizu22/items/11967a351e3b1ddde00f)
– Astra Control Service(ACS)の使い方
1. **アプリケーションの登録 ←イマココ**
1. [アプリケーションのスナップショット&バックアップ](https://qiita.com/yshimizu22/items/9e021dabc7db3c30a07b)
1. [アプリケーションのリストア&クローニング](http

元記事を表示

CloudWatch Logs Insights 備忘録

# 日付+UserAgent毎に アクセス数を集計
@messageの中のフィールドに **userAgent** というキーがある場合

“`
stats count(*) by datefloor(@timestamp, 1d) as day, userAgent
|limit 10000
“`
デフォルトでは、1000行までしか出力してくれない為、limit 10000(最大)を指定
limit は別行 に書く必要あり

元記事を表示

【Python/AWS】第4回 AWS Glueを使ってS3のデータを成形する【データ分析】

# 1. はじめに

本記事は【Python/AWS】の第4回として前回に引き続き、
AWSのサービスを利用した一連のデータ分析の続きとなります。

**▼前回の記事はこちら▼**

https://qiita.com/kawanago_py/items/9f86f9d3f4acdb7a5096

私自身、AWSのサービスを触るのは初めてだったので、
細かい説明など不足する点はあるかと思いますが、
大まかな流れをこちらで解説していきたいと思います。

本分析の全体像は以下のようになります。
![AWSアーキテクチャ.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2512226/bf9b928b-88cb-7247-9ff0-f90ee93a994b.png)
全体の分析目的は以前の分析から継続/発展して、
**「Splatoon3」におけるコンテンツのユーザー満足度調査** です。

収集したデータから

元記事を表示

【初学者】RailsをECS(Fargate)にNginxを使用せずにデプロイしようとした際に、ブラウザで「このサイトにアクセスできません」と出力されてしまった際の暫定対処

初学者のため誤り等あるかもしれませんが、本事像で丸3日ほど苦労し参考となる記事がなかったため、雑な記載になりますが備忘もかねて投稿させていただきます。
記載の内容で一旦解決しましたが、今後学習を進める中で根本原因や対処が誤っていた場合は修正するようにいたします。
特殊なケースかもしれませんが、どなたかのお役に立てば嬉しいです。

# 事象の概要

・Railsで作成したAPIをECS(Fargate)にNginxを使用せずにデプロイしたところ、
CloudWatch上ではRailsサーバが問題なく立ち上がっているにもかかわらず、
ブラウザでECSタスクのPublicIPに接続すると「このサイトにアクセスできません」と出力される。
## 詳細の状況
・インフラ構成は以下の通り
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2710784/fc3d50f3-308d-0109-5eae-4988f45544c7.png)

・RailsはDockerfileで3000番ポートで立ち上げ。
`

元記事を表示

AWS Lambdaで動かすStable Diffusion(ネガティブプロンプト対応 Diffusers v0.4.2)

# はじめに
先日(2022/10/7)、Diffusers v0.4.0がリリースされました。
9月にリリースされたv0.3.0ではONNXがサポートされてCPUでの実行がやりやすくなり、今回のv0.4.0ではポジティブプロンプトとネガティブプロンプトの両方を指定できるようになるなどの機能が追加されています。
これまでCPUでStable Diffusionを使用する場合はopenvino版を使用していましたが、本記事ではこれらの追加された機能を活用し、openvinoを使わずにAWS Lambdaにて動作確認をしてみたいと思います。

:::note alert
費用に関する注意、および、免責事項
– 注意事項
本記事ではLambda関数に設定可能なメモリ上限の割り当てを行います。
また、画像の作成には1枚に数分程度かかるなど費用が高額になる可能性があるため内容を検証する場合は十分ご注意ください。
– 免責事項
当方はこの記事を使用して生成されたコンテンツについて責任を負うものではなく、また、このプロジェクトを違法、有害、攻撃的なコンテンツの作成に使用しないでください。
:::

元記事を表示

EKS上のステートフルアプリケーションをまるごとバックアップ・リストアしてみた【①Astra Control Service導入篇】

# はじめに
突然ですが皆さんは**Kubernetes上のアプリケーションのバックアップや移行**ってどうしてますか?
シンプルなアプリであればデプロイ時のマニフェスト(YAMLファイル)を保管しておけばいつでも再デプロイできるので「k8sって便利だなぁ」と思う反面、永続ストレージ(PV)が絡む所謂**ステートフルアプリケーション**になると途端に面倒くさくなってきます。

具体的にはアプリを構成する**DeploymentやconfigMapなどのリソース群**はマニフェストをGitで管理するであったり、**PVの中のデータ**はvolumeSnapshot使ったりストレージ製品の機能を使ってみたりと、従来システムバックアップ等で一気通貫にバックアップ出来てた部分がk8sでは個別に考える必要が出てきます。
バックアップが二度手間になるだけでも面倒ですが、この2つに別れたバックアップデータの整合性を取ろうとしたりすると「GitのコミットIDとvolumeSnapshotの名前を紐づける?」とか更にややこしいことに考えるハメに…。

そんな折に**ステートフルアプリケーションのバックア

元記事を表示

【AWS】エラー:The request is rejected because the current account does not have an invitation from the requested master account の解決

こんにちは。
AWSマルチアカウント環境を管理している者です。

AWSマスタアカウントからメンバーアカウントに対してAWS GuardDutyとAWS Security Hubを開始させる際にInvitationの問題がよく発生してましたので記録します。

# エラー内容

**ResourceLogicalId:Master, ResourceType:AWS::GuardDuty::Master, ResourceStatusReason:The request is rejected because the current account does not have an invitation from the requested master account. (Service: null; Status Code: 0; Error Code: null; Request ID: null; Proxy: null).**
→ マスタアカウントを管理者にするGuardDutyをメンバーアカウントで開始するには、マスタアカウントよりInvitationを事前にもらう必要があり

元記事を表示

OTHERカテゴリの最新記事