- 1. 初めに
- 2. 勉強させていただいたYoutube動画
- 3. AWSでサービスを使うには「仮想ネットワーク」を構築する必要がある
- 4. 初めに
- 5. エラーの内容
- 6. 解決策
- 6.1. AWS Systems Managerによるオンプレミスのリモートサポート
- 6.2. AWS Certified Data Analytics – Specialty (DAS-C01) 試験に合格しました
- 6.3. AWS Lamdaの構築
- 6.4. [AWS] Amazon EC2
- 6.5. 【AWS】MediaConvertを用いてHLS VOD配信
- 6.6. 【EC2】 AWSのEC2についてわかりやすくまとめます(サーバーの作成方法も記述しております!)
- 6.7. AWSの基礎知識について
- 6.8. AWS Amplifyで認証+ユーザごとの画像フォルダ+API(GraphQL)+ホスティングの基盤を構築(Vue.jsコード例付き)
- 6.9. DBサーバー用のEC2の起動からMySQLのインストール
- 6.10. Springで作成したアプリをAWSとRDSとElastic Beanstalkを用いてデプロイする方法②
- 6.11. AWS Cognito にトライしてみた
- 6.12. OpenCV(python)をLambdaで動かす
- 6.13. 複数サブドメインを1つのCloudFrontディストリビューションに向ける
- 6.14. Dynamic Partitioning in AWS Kinesis Data Firehoseをさっそく利用してみた記録
- 6.15. 【備忘録】Wordpress(EC2)をELB経由でHTTPS通信にするときにハマったポイント
AWS VPC でIPアドレスを10.0.1.0/16 を設定しようとするとmust be a valid ipv4 cidrのエラー
VPCやサブネットのIPアドレスは、EC2のような固有のIPアドレスではなく、ネットワークアドレスである必要があります。
ですので、IPアドレス設定時にネットワークアドレスを指定する必要があり、ネットワークアドレスのホスト部はすべて0になります。
10.0.1.0/16の場合だと、ホスト部がすべて0になっていない為、must be a valid ipv4 cidrのエラーになっていました。
10.1.0.0/16 とすることで正しく設定ができました。
AWS IoT CoreをRaspberry Piで使ってみた その2
## 概要
* AWSにはIoT機器と接続、管理するためのAWS IoT Coreというサービスがある
* 公式にもハンズオンがあるが、最小限の手順、構成で動作を確かめてみる
https://aws-iot-core-for-beginners.workshop.aws/phase2/step2.html
* 前回に引き続きRaspberry Pi側のセットアップを進めていく![aws-iot-core.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/701445/5b2e455f-a8b2-e09b-ba52-9fdeb020073d.png)
前回の記事
https://qiita.com/cami_oshimo/items/2a09048203d5c6223246## Raspberry Piの操作
aws-iot-device-sdk-python をgit cloneする
https://github.com/aws/aws-iot-device-sdk-python`
AWS WEBサーバーからDBサーバーのMySQLにアクセスする
*[DBサーバー用のEC2の起動からMySQLのインストール](https://qiita.com/ebtiag/items/4449825d2542bc961259)の続き
##構成
*パブリックEC2
Linux 2
LANPサーバー*プライベートEC2
MySQL8.0##DBアクセスに使用するユーザーの状況を確認する
ローカル環境で作った場合、データベース接続に使用するユーザーがローカルホストからのみになっていることがあります
下記コマンドで表示内容のhostを確認します
“`mysql> select user, host from mysql.user;“`ユーザーの権限変更ができるユーザーを作成します
“`mysql> create user ‘[ユーザー名]’@’%’ identified by ‘[パスワード]’;“`特定IPから、もしくはどこからでもアクセス可能に変更します
(%はどこからでもアクセス)
“`mysql> grant all on *.* to ‘[変更したいユーザー名]’@’%’;“`
[MySQL|外部のホスト
[AWS基礎①]仮想ネットワーク構築用語 VPC サブネット ルートテーブル インターネットゲートウェイ
初めに
クラウド学習開始数日目です。
プログラミングスクールのカリキュラムで、仮想環境を構築しましたが、
正直何をやってるのか分からなかったので、Youtube動画を見て理解し直しました。今回、構築時に出てきた用語の解説だけです。
現状理解がおかしい点はご指摘いただきたいです。勉強させていただいたYoutube動画
AWSでサービスを使うには「仮想ネットワーク」を構築する必要がある
そこで構築するのがVPCです。
バーチャル プライベート クラウド の略です。
図にすると以下のような感じになります。![スクリーンショット 2021-09-05 9.21.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1633266/c9d54158-5e68-a6c4-4a99-c1414588711f.png)
VPCが持つIPアドレスの範囲を定
[エラー]EC2からRDSに接続できない ERROR 2003 (HY000): Can’t connect to MySQL server
初めに
先日からAWSの学習を始めましたが、非常に苦戦しております。
とにかくひとつずつ学んだこと理解したことをアウトプットしていきたいと思います。エラーの内容
EC2からRDSに接続しようとしたところ、以下のようなエラーが出ました。
“`ERROR 2003 (HY000): Can’t connect to MySQL server on 〜〜’ (110)“`
解決策
RDSのセキュリティグループの設定を変更します。
![スクリーンショット 2021-09-05 8.34.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1633266/c32d0102-5529-ab5d-c238-d9ef8722652a.png)
![スクリーンショット 2021-09-05 8.34.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1633266/c
AWS Systems Managerによるオンプレミスのリモートサポート
# オンプレミス エッジデバイス サポート
モチベーション: `顧客に送ったエッジデバイスのドライバとかを一括でアップデートしたい`
## やりたいこと
– 顧客ネットワーク上のオンプレミスサーバーの管理
– Ansibleによる一括管理
– プロキシ環境サポート
– リモートシェルサポート## やったこと
AWS System Manager Session Manager を使って、自宅外から自宅内のデバイスをAnsibleで一括アプリバージョン更新。
## 検証
やったことの詳細を書いていく。
### 準備物
– Mac x 1 (ラップトップ (Ansible実行) PC)
– Raspberry Pi x 1 (管理対象エッジデバイス1)
– Jetson Nano x 1 (管理対象エッジデバイス2)### 手順
基本的には [公式のSystems Managerセットアップ](https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/systems-manager-set
AWS Certified Data Analytics – Specialty (DAS-C01) 試験に合格しました
2021/9/4 に DAS 試験を受験してギリギリ合格しました。対策したことと、感想を書いておきます。
![score.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/780549/33f7ac31-4535-e3c2-741e-1e0b0840358b.png)## 経験
php とか python を使って開発しているサーバーサイドよりの開発者です。DAS 試験で問われるほとんどのサービスの使用経験はないです(使ったことがあるのは S3 くらい)。## 対策
問題集を解きまくりました。間違えた問題について、解説を読んでも分からない問題は公式ドキュメントを読んで理解するようにしました。Black Belt よりも公式ドキュメントの方が情報量が多いので、最初は読むのが大変でしたが、圧倒的に役に立ちました。
### 問題集
[こちら](https://aws.koiwaclub.com/)を使用しました。問題集を何周もして、全体として9割くらいの正答率になるまで解きました。
### 参考書
AWS Lamdaの構築
#はじめに
SAA-C02取得時にUdemyのコースで色々とハンズオンしたのですが復習となり、構成図はそのコースより引用します。
https://www.udemy.com/course/aws-associate/
![lamda.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1949705/fd1ca68a-c3b0-a2d1-1e24-e502b2e5dbaa.png)
#作業環境
“`
API Gateway
Lamda
DynamoDB
“`#作業結果
![lamda3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1949705/0e4aa662-7b17-4595-7c8f-50866c7f26a0.png)DynamoDBにあるサンプルデータを取得するメソッドテストを実行し、取得できることを確認
![lamda2.png](https://qiita-image-store.s3
[AWS] Amazon EC2
EC2の略は、「Elastic Compute Cloud」です。
Elasticとは、翻訳すると「弾力」です。
クラウドサービスの特徴の1つに「必要な時に必要な分だけ使用したりできる」があります。
この特徴から「Elastic」がついています。インターネット(クラウド)を通じて「必要な分だけサーバを借りることができる」サービスです。
【AWS】MediaConvertを用いてHLS VOD配信
# はじめに
今回はWEBアプリ作成にあたり動画をアップロードし、閲覧できる機能を実装したいため
**MediaConvert**を使用して**HLS(HTTP Live Streaming)**で配信する環境をAWSで構築しました![HLS VOD配信](https://aws-mediaservices-jp.workshop.aws/handson5.html)
AWSのハンズオンをほとんどを採用しているんですが笑
今回実装にあたりつまずいた点(ハンズオンで指示してるのに・・・)
や、少しカスタマイズした点があるのでその手順をアウトプットします。カスタマイズしたのは処理した動画の出力先をバケットのトップではなく
動画がアップロードされた階層に出力するという点です。
**Lambda**へアップロードするファイルの記述を変更してます^^またハンズオンの画面は古いものがあり迷った点がありました(^ー^;
今回は最新の画面で対応してます!!# なぜHLSなのか
私も最初は大きすぎる動画ファイルを一定のサイズにするものかという認識でしたが、
それでは充分ではありませんでし
【EC2】 AWSのEC2についてわかりやすくまとめます(サーバーの作成方法も記述しております!)
# はじめに
今回はAWSが提供しているEC2についてなるべく専門用語や難しい言葉を使わずに初心者に向けてまとめさせていただきます。
そもそもAWSとは?と疑問に思った方は過去にまとめたこちらの記事を参考にしていただければと思います。https://qiita.com/kenta-nishimoto-1111/items/86ba0156c71b91dbc999
こちらの記事ではサーバーの作成方法についても記述しておりますので、
これからサーバーを作成したい方はぜひ参考にしていただければと思います。# EC2とは?
EC2とはAWSが提供しているサービスの一つで、仮想サーバーを作成することができます。
そもそもサーバーとはユーザーがwebサービスを使用するために必要な情報を提供している側のことを表しています。
webサービスを使用するためにはプログラムのコードが書かれたファイルや、画像ファイルなどを読み込む必要がありますが、
それらの情報が入っている提供者側のことをサーバーと指します。EC2ではサーバーのこと”インスタンス”と呼びます!
サーバ
AWSの基礎知識について
#はじめに
研修にてAWSのクラウドサービスを利用しているが操作のイメージがなかなかできないので基本的なことについて調べて理解する。
今回は基礎知識、キーワードについて理解するためにまとめた。#目次
1.AWSのメリットデメリット
1-1.メリット
1-2.デメリット
2.リージョン(Region)について
3.アベイラビリティーゾーン(AZ)について
4.VPCについて
5.サブネットについて#1. AWSのメリットデメリット
AWSを使用する上でのメリット、デメリットをまとめた。1-1.メリット
・管理,メンテナンスが不要(運用負荷の低減)
・初期導入コストが抑えれる(従量課金)
・継続的な値下げあり
・環境設定が簡単
2-2.デメリット
・AWS側のメンテナンスでシステム停止する
・変動するコスト#2. リージョンについて
・東京、シドニーなどの各地域のデータセンター群
・リージョンには必ず2つ以上のAZがある#3. アベイラビリティゾーン(AZ)について
・リージョン内の一部のデータセンター(1つ以上のデータセンター)
・AZを分ける理由はリージョン内の
AWS Amplifyで認証+ユーザごとの画像フォルダ+API(GraphQL)+ホスティングの基盤を構築(Vue.jsコード例付き)
# 目指すもの
* 以下の様なサーバレスアーキテクチャを構築します。
* Amazon Cognitoを使用してBasic認証およびGoogle認証を行う
* WEBページはGitHubと連携してCI/CDを設定しホスティングする。
* メディア用のS3バケットを作成しユーザごとのディレクトリを作成する
* APIはAPI GatewayおよびAppSyncを用いた2種類を用意
![amplify構成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679549/50ff37f5-2d8b-6577-726a-b969bb86166f.png)
* ※ 正確には今回はS3 メディアをCloudFrontに通してないです。
* ※ REST API(Lambda+SESでのメール送信)は今回は扱わないです。* 扱わない事項
* 要所でVue.jsのコード例を載せますが、1つのアプリを完成させるようなことはせず、非常に簡単な動作検証を確認する程度です。
* ログの保管につい
DBサーバー用のEC2の起動からMySQLのインストール
*[WEBサーバー用EC2の起動からWEBページの表示まで](https://qiita.com/ebtiag/items/c75140c59d59a620f89e)の続き
アプリケーションデプロイ用の基本構成のEC2インスタンス起動方法についてメモ
簡単なことですが、たまに不安になるので。VPC内に、パブリックサブネットにWEBサーバー用のEC2と
プライベートサブネットDBサーバー用のEC2を構成していきます##事前準備
###VPC
WEBサーバーのインスタンスを起動したときVPCを用意(何用かわかりやすい名前を付けましょう)###サブネット
WEBサーバーのインスタンスがるVPCにプライベート1aを用意
(冗長構成用にプライベート1cがあってもなくても)##DBサーバー用のインスタンス起動設定
###インスタンスタイプの選択
無料利用枠のt2.micro###インスタンスの詳細設定
ネットワーク:事前に用意したデフォルトのものではないVPC
サブネット:プライベートサブネット1a
自動割り当てパブリックIP:無効###タグの追加
キー:Name
値:
Springで作成したアプリをAWSとRDSとElastic Beanstalkを用いてデプロイする方法②
#はじめに
この記事は「Springで作成したアプリをAWSとRDSとElastic Beanstalkを用いてデプロイする方法①」
の続きです。
前回までは、RDSからDBを作成しました。
今回はMySQLの設定とElasticBeanstalkの設定について執筆していきます。#MySQLの設定
MySQLの設定は下記のような作業を行います。##事前にRDSのDBのエンドポイントをコピーしておく。
理由は後程、MySQLに接続する際に利用するためです。
![スクリーンショット 2021-09-03 16.20.17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912583/ea49cea1-1d5f-224c-5b7b-1cef5b5dae2e.png)##MySQLWorkbenchのインストール
公式サイトのダウンロードページよりインストールする。(2021年9月3日現在の最新バージョンは8.0.26)https://dev.mysql.com/downloads/work
AWS Cognito にトライしてみた
# なにをしたか
* AWS Cogniteでログイン周りを作れそう?と思ったのでその調査# 結論
* できたよ
* 最小構成は、登録(Signup)、有効化(Activation)、サインイン(SignIn)でできそう# 本編
## 実施内容(基本的にはこの通り)
* https://www.tdi.co.jp/miso/amazon-cognito-javascript
* https://www.tdi.co.jp/miso/amazon-cognito-activation-sign-in## アレンジ
jsのパスが3画面で違ってる部分は合わせた
### 画面遷移を追加
#### signup -> activation“`js:
// サインアップ成功の場合、アクティベーション画面に遷移する
location.replace(‘activation.html’);
“`
#### activation -> signin“`js:
// アクティベーション成功の場合、サインイン画面に遷移
loc
OpenCV(python)をLambdaで動かす
すでに他の人が記事で書いているのですが、そもそもSAMについてよくわかっていなかったので自分の備忘録としてリンク集貼っておきます。
https://note.com/rooxim/n/n8631eb634167
AWSのインストール系リンク
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2-mac.html
https://docs.aws.amazon.com/ja_jp/serverless-application-model/latest/developerguide/serverless-sam-cli-install-mac.html
そもそもSAM使ってDeployすることを丁寧に書いてくれている記事
http://hack-note.com/infra/aws-sam-lambda-deploy/
複数サブドメインを1つのCloudFrontディストリビューションに向ける
slackって、チームごとにサブドメインが発行されますよね。たとえば、私がSlackチームを作ると
`k5trismegistus.slack.com` といった具合に。こういう風に、ユーザーとかグループごとにサブドメインをわけてサービスを提供できるWebサービスってどう作るのかなと思い、実験してみました。
## 前提
– インフラはAWS
– アプリケーションのフロントエンドはCloudFrontが配信する
– サービスは \*.app.example.com で配信する。\*に入る文字列をアプリケーションが使う(example.comは適宜お持ちのドメインに読み替えて)
– すでにexample.com はRoute53に登録されている## アプリケーション側
アプリケーション側は、きちんと到達できてサブドメインの情報がとれればよいので、Nuxt.jsで簡単にサブドメインを表示するだけのアプリを実験用に作成し、S3においておきました。
1番下位のサブドメイン、つまりa.b.example.com だったら、a を表示するだけのサービスです。
https://gi
Dynamic Partitioning in AWS Kinesis Data Firehoseをさっそく利用してみた記録
DMMデータインフラ部Trackingチームに所属している津久井です。
先月の8月31日にリリースされたばかりの
[Dynamic Partitioning(動的パーティション) in Kinesis Data Firehose](https://docs.aws.amazon.com/firehose/latest/dev/dynamic-partitioning.html) について
さっそく試す機会があったので、
取り急ぎこの場に仕様と実際に利用した記録、気づいたこと等を記載いたします。# 前提
AWS Kinesis Data FirehoseでのS3出力のパスのカスタマイズには、
・固定文字列の指定
・”Firehoseに読まれた時点での”日付による指定(UTC)
のカスタムプレフィックスのパーティショニングのみに対応していました。<例>
“`
s3://bucket-name/year=!{timestamp:YYYY}/month=!{timestamp:MM}/day=!{timestamp:dd}/hour=!{timestamp:HH}/
“`
【備忘録】Wordpress(EC2)をELB経由でHTTPS通信にするときにハマったポイント
# AWSでWordpress立ち上げようと思ってしまった
きっかけは、[AWSのハンズオン](https://scalable-webapp-on-ec2.workshop.aws/)。
ここまで構築はなんなく出来た(資料あるし)。
「折角作った環境だから、セキュアなHTTPS通信にしよう」と意気込んだ途端、いろんな落とし穴に落とされてしまった。このつまずいたポイントを列記した。
流れは、以下の通りである。詳しい方法はいくつかのURLを参照した。
※[料金](https://aws.amazon.com/jp/pricing/)が発生する作業もあるため、予め確認してほしい。## プロセス
1. VPCを作成
2. EC2を作成(WordPressインストール)
3. RDSを作成
4. ELBを作成
5. WordPress設定(RDS等)
6. マルチAZ化
↑ここまでは[AWSのハンズオン](https://scalable-webapp-on-ec2.workshop.aws/)で詳しく解説されている。7. Route53でドメイン購入(ドメイン登録は[公式ドキュメ