- 1. AWS SageMakerでYOLOv3の推論エンドポイントを立てて物体認識をやってみた
- 2. AWSのGPUインスタンス構築 値段を抑えて最短で構築する
- 3. Cloud9でデバッグしてみよう
- 4. CodeCommitからCloud9(EC2)にClone
- 5. Cloud9のプロジェクトをCodeCommitで管理
- 6. Jetson NanoにつないだMIPIカメラからAWS kinesis video streamsに動画配信してみた
- 7. NodejsでDynamoDB使ってみた
- 8. アラサー未経験フリーターがITインフラ業界に放り込まれてawsの資格をプロフェッショナルまで取った話 ①クラウドプラクティショナー
- 9. cloudwatcheventでAWSコンソールログインを検知する際にハマったこと
- 10. 【AWS】MySQLサーバーの設定で使うコマンド
- 11. HTTP5xx と ELB5xx の違い
- 12. AWS Lambda
- 13. ECS (Fargate) サービスをHTTPSで公開し、CodePipelineでCI/CD環境を構築するCloudFormationテンプレート
- 14. AWS EC2のsshがすぐ切れてしまう件について
- 15. Amazon S3 ライフサイクルルールを利用して特定タグを持つオブジェクトを削除する
- 16. [Node]AWS LambdaからDynamoDBを操作する
- 17. AWSアソシエイト試験に向けて6(S3関係)
- 18. AWS Security Jam (AWS Summit Online 2021にて) に参加してみた
- 19. Amazon Interactive Video Service (IVS) を使って特定ドメインでのみ再生可能なライブ配信を行う
- 20. AWS App Runner がすごそう。 Fargate や Heroku の代替になりそう
AWS SageMakerでYOLOv3の推論エンドポイントを立てて物体認識をやってみた
# はじめに
どうも、皆川です。YOLOv3を使って推論エンドポイントを立てて実際に画像を物体認識させてみます。悪名高いSageMakerのコンソールの操作手順や推論エンドポイントの叩き方に慣れることを目的としています。以下が記事の流れです。### AWSマーケットプレースで物体認識のDeepLearningモデルのYOLOv3を手に入れる
↓
### そのモデルを推論エンドポイントとしてデプロイする
↓
### 自分のMacOSでAWS CLIとPythonを使った2種類の方法で推論を実行してみる。推論にはローカルの画像ファイルを使う。1と2の手順が明確に分離できないのでまとめて一気に紹介しています。
# 推論させる画像
今回推論させる画像はこちら!筆者の好きなアメリカのシットコム「サインフェルト」からのワンシーンです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1001699/484880fc-e59d-037d-2ded-0b1bcf6c4f5e.png)# 注意
AWSのGPUインスタンス構築 値段を抑えて最短で構築する
# はじめに
本記事はAWSでGPUインスタンスの値段を抑えてかつ、最短で構築する方法について記載しています。例えば、AWSクラウドを利用してGPUインスタンスを構築する場合、安易に有料のAMIを利用してGPUインスタンスを構築するのはナンセンスです。
AWSのサービス内容を正しく理解した上で導入することにより、コストを抑えることができます。また、Terraformを活用することで構築時間を短縮してGPUインスタンス環境を用意することができます。
GPUを利用する場合は、前提としてNVIDIAドライバ、CUDA、cuDNN等の知識が必要です。これらについては以前書いた[UbuntuでGPUマシーンを構築する](https://qiita.com/Brutus/items/2db051ec2bcfa726cc2f)を参照。
## GPUの導入における検討事項
オンプレミスやクラウドに関わらず、GPUを導入する場合は、色々と考えないといけないことがあります。AWSクラウドにおいてEC2のGPUインスタンスを使用して、ディープラーニングや学習済みモデルを動かす場合は、以下につい
Cloud9でデバッグしてみよう
##転載元
当記事は以下ブログからの転載です。
[TECH BACK](https://techback.info/aws-cloud9-debug/)##はじめに
Cloud9でデバッグする手順をまとめます。Cloud9環境でプロジェクトをデバッグします。
##デバッグ環境設定
環境設定というか、前の環境に戻してデバッグしましょうといった内容です。
2020年の後半位で、Cloud9のアップデートがありました。コレにより、従来の方法でのデバッグができない(?)ため、旧バージョンの状態に戻してデバッグしましょうというのが、本手順です。
まずはデバッグの環境設定をします。環境設定は初回のみでOK。
**Cloud9アイコン → Preferences**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/450952/2524dc1c-882e-0405-78c8-c783401136fb.png)**AWS Settings → AWS Toolkit** をOFFにし
CodeCommitからCloud9(EC2)にClone
## 転載元
当記事は以下ブログからの転載です。
[TECH BACK](https://techback.info/aws-cloud9-codecommit-clone/)## はじめに
[前回](https://qiita.com/teckback/items/70fbad957e98c91b9252)の記事で、Cloud9で開発しているプロジェクトをCodeCommitにPushしました。今度は、Cloneしてくる側の手順をまとめます。
## この記事で出来ること
CodeCommitにあるプロジェクトを、Cloud9環境にCloneして来ます。 今回CloneしてくるCodeCommitのリポジトリは下記の記事で作成したものを使っています。
[Cloud9のプロジェクトをCodeCommitで管理](https://qiita.com/teckback/items/70fbad957e98c91b9252)
## Cloud9で環境作成
Cloud9を開き、**Your enviroment** → **Create enviroment**[![](ht
Cloud9のプロジェクトをCodeCommitで管理
##転載元
当記事は以下ブログからの転載です。
[TECH BACK](https://techback.info/cloud9-codecommit/)## はじめに
Cloud9で開発している既存プロジェクトをCodeCommitでバージョン管理。Githubでもいいんですが、今回はCodeCommitを使ってみます。## この記事で出来ること
> Cloud9で開発しているプロジェクトをCodeCommitにリポジトリ登録します。
ま、これだけです。 なので、Cloud9で開発してるプロジェクトが有ることが前提で、話を進めます。
## バックアップ取得万一に備え、プロジェクトのバックアップを取っておきましょう。 Cloud9を開き、**File** → **Download Project**プロジェクト名のZipファイルがダウンロードされます。 [![](https://techback.info/wp-content/uploads/2021/02/img_6036b3bae750f.png)](https://techback.info/wp-conten
Jetson NanoにつないだMIPIカメラからAWS kinesis video streamsに動画配信してみた
こんな人向けの記事です。
+ Kinesis video streams を試してみたい
+ Jetson nanoにUSBカメラじゃなくてMIPI Cameraを繋いだけどなんかうまくいかなかった構成はシンプルですがこんな感じです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1001712/330b4800-d63f-d2e1-c4e7-d2f5a5bf5fe8.png)
#環境
+ NVIDIA Jetson Nano 開発者キット B01
– Ubuntu 18.04.5 LTS
– jet pack 5.1
– aws-cli/1.19.25 Python/3.6.9 Linux/4.9.201-tegra botocore/1.20.25
+ SainSmart IMX219カメラモジュールこんなカメラ
![image.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0
NodejsでDynamoDB使ってみた
## 背景
はじめて業務でDynamoDBを使用したため、基本的なものだがメモを残して、自身のナレッジとして蓄えようかと## 環境
– node.js
– DynamoDB
– Lambda## 経験した関数
### 登録
– put#### パラメータ
– TableName: テーブル名
– Item: 登録対象“`
ex))
TableName: ‘test-table’,
Item: {
‘id’: 1,
‘name’: ‘test’,
}
“`
### 取得
– get#### パラメータ
– TableName: テーブル名
– Key: AttributeValueのカラム名(一般的なTableのprimary key)“`
ex))
TableName: ‘test-table’,
Key: {
‘id’: 1
‘sort’: 1
}
“`
### 検索
– scan#### パラメータ
– TableName: テーブル名
– FilterExpression: SQLの条件式
– Express
アラサー未経験フリーターがITインフラ業界に放り込まれてawsの資格をプロフェッショナルまで取った話 ①クラウドプラクティショナー
これからawsの資格を取得しようと考えている、IT及びaws未経験者の方に少しでも参考になればと思いこの記事を書きました。
入社1年が経つ位にアソシエイト3つ取得、2年経つ直前位までにプロフェッショナル2つを取得し5冠を達成しました。
現在保有しているaws資格は以下です(取得順)
・クラウドプラクティショナー
・ソリューションアーキテクト(アソシエイト)
・SysOpsアドミニストレイター(アソシエイト)
・デベロッパー(アソシエイト)
・ソリューションアーキテクト(プロフェッショナル)
・DevOpsエンジニア(プロフェッショナル)筆者は現職に就くまで、某黄色い看板のラーメン屋で「ニンニク入れますか?」とか言っていたり秋葉原で「お探しの商品ありましたらどうそ~」等と飲食サービス業にいることが長く、ITとは無縁の環境で過ごしてきました。
就職が決まり業界経験者の友人にlinuxの基礎を教えていただいてた際、ターミナルで叩く cd や ls について「これは何のプログラム言語?」と聞いてとても渋い顔をされたのは今でも覚えています。見捨てないでくれてありがとう。まず、勤続2ヵ月
cloudwatcheventでAWSコンソールログインを検知する際にハマったこと
#CloudWatchEventのコンソールログインイベントを使う
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/659469/cfa49048-a7a8-f967-6859-74917499e96f.png)
CloudWatchEventのコンソールサインインイベントでlambdaをトリガーし、slackに通知しようとした。
しかし、コンソールにログインしてもlambdaが起動せず、cloudwatchevntのruleのメトリクスを見ても、ログインを検知している様子がなかった。#CloudWatchEventのコンソールイベントの対応リージョンについて
https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/events/EventTypes.html#console_event_type
どうやらus-east-1でのみコンソールログインイベントに対応している模様
#cloudwatcheventのルールとla
【AWS】MySQLサーバーの設定で使うコマンド
#プログラミング勉強日記
2021年5月20日
MySQLを設定するときにコマンドを使うので、そのコマンドを備忘録としてまとめる。#MySQLサーバーの設定
MySQL8.0版のリポジトリをローカルに保存してインストールの準備をするコマンド。ローカルインストールというコマンドでリポジトリのローカルにファイルをダウンロードする。“`:URL先からMySQLのファイルをダウンロードする
yum localinstall https //dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
“`“`:MySQLのコミュニティエディションをインストールする
yum install mysql-community-server -y
“`“`:MySQLサーバーを起動する
systemctl start mysqld
“`“`:インスタンスを起動・MySQLサーバーを自動的に起動するように設定
systemctl enable mysqld
“`#MySQLサーバーのデータベースの作成
HTTP5xx と ELB5xx の違い
ロードバランサーの画面で、HTTP 5xxs は増加しているのに、ELB 5xxs は増えていない現象を目の当たりにした。
この2つの違い、というか区別されていたこと自体を認識できていなかったのでちゃんと調べる。↓ロードバランサーのモニタリングタブより
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/619762/0ee230a0-7960-b8b3-f65d-706b748c9d60.png)# 結論
ELB 5xxs = ロードバランサーが返す 5xx
HTTP 5xxs = ターゲットが返す 5XX# ドキュメントを見てみる
https://docs.aws.amazon.com/ja_jp/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html#load-balancer-metrics-alb5xx で引っ掛けて検索すると2つヒットした。
### HTTPC
AWS Lambda
#Lambda サーバレス
EC2インスタンスの代わりにコードを実行することで、効率的なアーキテクチャを実現する。
利用者は、ソースコードだけを準備すればすぐに実行できるようになり、自動的にスケール等をおこなてくれる。##Lambdaの特徴
・実行基盤は全てAWSが管理
・AWSサービスと連携させることで簡単にイベントドリブンなアプリケーションを実行可能
・Node.js/javaで書かれたコードを実行可能
・100ミリ秒単位でコード実行時間に対しての課金でありコスト効率が非常に高い
・オートスケール##Lambdaがサポートしている言語
・Node.js
・Ruby
・PowerShell
・Python
・C#
・Java
・Go##Lambda関数
Lambdaを利用するには、Lambda関数という単位で、実行プログラムとその実行トリガーとなるイベントを事前に定義します。実行数に応じて支払いが発生するため、 Lambda関数が無期限に実行されないようにタイムアウト設定がなされています。 指定されたタイムアウトに達するとLambda関数は実行を終了します。そのた
ECS (Fargate) サービスをHTTPSで公開し、CodePipelineでCI/CD環境を構築するCloudFormationテンプレート
# はじめに
30代未経験からエンジニアを目指して勉強中のYNと申します。
自分の学習記録としてまとめます。# 全体像
下図のような開発環境をバシっとCloudFormationでつくります。
Githubのmainブランチに変更をpushするたびに自動でデプロイされます。![Untitled Diagram-Page-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/572098/276465db-fe42-d725-20fb-986085b99a74.png)
※Docker Hubアカウントにログインせずにビルドを行っているため、Docker Hubの制限に引っかかる場合があります。詳細は[こちら](https://fu3ak1.hatenablog.com/entry/2020/11/22/122241)
# 前提条件
* AWS-CLIを設定済み
* ドメインを取得後、ネームサーバーの設定済([参照](https://blog.i-tale.jp/2020/04/13_02/))
AWS EC2のsshがすぐ切れてしまう件について
AWSのEC2をターミナルで起動している際、sshがすぐ切断されて
client_loop: send disconnect: Broken pipe
と表示されてしまうことが多くあります。
私もこれに悩まされてどうにかならないか調べてみたところ、解決方法があったので記載します。#### 動作環境
Mac OS ターミナル1.EC2のsshd_configを修正する
“`sample1
sudo vi /etc/ssh/sshd_config
“`
すると、viが開くので、“`sample2
ClientAliveInterval 0
ClientAliveCountMax 3
“`
という項目を探します。
ClientAliveIntervalは、クライアントのチェックを行う頻度
ClientAliveCountMaxは、クライアントがチェックをカウントする最大回数
を表すので、ここを修正します。“`sample3
ClientAliveInterval 60
ClientAliveCountMax 120
“`こうすることで、60秒ごとにチェック
Amazon S3 ライフサイクルルールを利用して特定タグを持つオブジェクトを削除する
## 概要
– 特定のタグを付与したオブジェクトを[S3 ライフサイクルルール](https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/object-lifecycle-mgmt.html)で削除
– LambdaなどからAPIでオブジェクト削除を実行する際は、Lambdaの実行時間等が掛かりますが、ライフサイクルルールを使うことで無料で削除可能
– なお、削除までに少なくとも1日掛かります。## ライフサイクルルールの設定
ライフサイクルルールを設定したいAmazon S3バケットをコンソールで開きます。
ライフサイクルの作成を選択し、以下のように空欄を埋めていきます。なお、ここではオブジェクトに`is_translated: True`というタグがあった場合、ルールの対象とします。![20210519171841.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/484840/13982492-77c5-45c4-8d
[Node]AWS LambdaからDynamoDBを操作する
こんにちは take-2405です。
今回はnodeでAWS Lambda関数を作成しました。(DymanoDBも触りました)
今後開発する際のテンプレートとして残しておきたいと思います。
(今回はDynamoDBのデータを取得しています)
“`javascript:index.js
const AWS = require(“aws-sdk”);
// DBと接続 (regionを指定するとaws accountに紐づくDynamoDBに接続されます。)
const dynamoDB = new AWS.DynamoDB.DocumentClient({
// region は人によって変わります。日本だとap-northeast-1かな?
region: “ap-northeast-1”
});
exports.handler = async (event) => {
//DynamoDB のクエリを記載する
let getDatas = async (argument) => {
const params = {
AWSアソシエイト試験に向けて6(S3関係)
ある程度整理はしたと思うけれど、これでもまだ理解レベルとしてはかなり好意的に見ても50%あるかないかという感じなので、先に進んでベストプラクティスとか Well Architected
Frameworkあたりに触れたらもう一度サービス同士のつながりとかユースケースを想定した構成とかの観点で振り返らないとダメそう。## 概要
Simple Storage Serviceの略。
AWSにおけるストレージサービスの1種であり、EC2の枠組みであったEBS(といっても管理自体は独立している)とインスタンスストアと違い独立したサービスになる。
ストレージ形式としてはオブジェクトストレージにあたる。
S3 Intelligent-Treringで保存されているオブジェクトに対して期間を指定し、それ以下のアクセスであるオブジェクトを低頻度のアクセスと見なして自動的に低頻度アクセス層へと移動することでコストを削減することができる。### 主な用途
#### コンテンツ配信・保管
CMS(コンテンツマネージメントシステム)と呼ばれる体型のサービスのコンテンツデータの保存場所として用いる。
AWS Security Jam (AWS Summit Online 2021にて) に参加してみた
# 1. 初めに
– 「AWS Summit Online 2021」にあわせて、セキュリティ学習イベントの「AWS Security Jam」が日本で開催されたため、勉強のため参加してみた。非常に楽しくかつ有益だったため、どんな感じだったかをまとめておきたい。# 2. AWS Security Jam とは
– AWS社公式ブログ「[AWS Security Jam開催のご案内](https://aws.amazon.com/jp/blogs/news/aws-summit-online-2021-security-jam-announcement/)」より引用すると、
>AWS Security Jam は AWS Jam の1つで、 Security 系のユースケースに特化した体験型イベントです。
AWS Jam では様々なユースケースや運用関連のタスクを一連のシナリオで参加者に提供し、参加者はチームごとに提供されるインフラストラクチャへAWSマネージメントコンソールやAWS CLIを利用してアクセスし、課題の解決に取り組みます。– 過去参加した人の話を聞いて、一度チ
Amazon Interactive Video Service (IVS) を使って特定ドメインでのみ再生可能なライブ配信を行う
# はじめに
[Amazon Interactive Video Service(IVS)](https://aws.amazon.com/jp/ivs/) を利用することで、非常に簡単にライブ配信の仕組みを作ることができる。
しかし、個人でライブ配信を行いたいのであれば、YouTube やニコニコ動画、Twitch など、個人が無料で利用可能な様々なサービスがある。 そのため、IVS のような仕組みを利用したいのは、商用、あるいは利用規約的に既存のライブ配信システムが使えないため、独自でライブ配信システムを作成する場合になるだろう。
商用のライブ配信システムを作成する場合、要件として「会員でないと動画を見ることができない」ことは必須事項となる。 例えば動画配信システムとして Vimeo を利用し、ウェブサイトで組み込みプレイヤーを利用する場合、動画・ライブイベント単位で「どのドメインであれば組み込みプレイヤーでの再生を許可する」という設定を行うことができるので、これで動画のURLが外に漏れても、その動画を再生できないようにしている。Amazon IVS には「トークンによる認証
AWS App Runner がすごそう。 Fargate や Heroku の代替になりそう
ついに AWS から Heroku っぽいサービスが登場した模様。その名も “App Runner” 。
既に東京リージョンでも使えるっぽい。
https://aws.amazon.com/about-aws/whats-new/2021/05/aws-announces-aws-app-runner
※まだ自分で試したわけではないので、リリースを見て感じたことです。
# 特徴
スクショを見ていると、 Heroku の WebApp 機能だけを切り取ったようなサービス。ランタイムには予め用意された実行環境か、コンテナから選べるのも Heroku っぽい。(個人的にはコンテナ一択だが)
WebApp を複雑なロードバランサーやデプロイの設定が要らず、 HTTPS の設定も Route53 と連携して自動的に行ってくれるみたい。
https://aws.amazon.com/blogs/aws/app-runner-from-code-to-scalable-secure-web-apps/
上記によると、特徴は下記のよう。
– 簡単にデプロイできる
– ロードバランサー