AWS関連のことを調べてみた2021年02月20日

AWS関連のことを調べてみた2021年02月20日
目次

S3 syncコマンドを利用してS3バケット間を同期する

## S3 syncコマンドを利用してS3バケット間を同期する

最近S3バケットデータ移行の要望が来ていました。

バケット間同期用のコマンドを調査しましたので、備忘として残ります。

### やりたいこと

AアカウントにあるS3バケットのデータをBアカウントのS3に移行したい

### 実現方法を簡単に説明

1. BアカウントにS3バケットを作成する
2. オンプレミス環境で実行するので、S3操作権限あるIAMユーザを作成する
3. AアカウントのS3バケットにBアカウントで作成したIAMユーザのアクセス許可ポリシーを追加する
4. S3バケット間でデータを同期する
5. データが正しくコピーされているかを確認する

### 同期コマンド

cpコマンドを利用して再帰的にコピーできますが、今回利用するもっと楽の同期コマンドをご紹介します。

“`
aws s3 sync s3://BUCKET-SOURCE s3://BUCKET-TARGET
“`

**sync** コマンドは CopyObject API を使用して S3 バケット間でオブジェクトの移

元記事を表示

Amazon MQ とは?

## 勉強前イメージ

メッセージ送る系のなにかのサービスかな?

## 調査

### Amazon MQ とは?

Apache ActiveMQ向けのマネージド型メッセージブローカーサービスでsy

### そもそも メッセージブローカーとは?

異なるシステム間でメッセージのやり取りの際に、直接データのやり取りを行うのではなく
中間システムとしてメッセージ格納領域を管理する機能のことになります。

### メッセージキューイング とは?

サービス名にもある `MQ` はメッセージキューイングのことを指しており、
メッセージの送信元・送信先とは別に第三者を介することで、送受信のタイミングを図らずとも処理を行うことが出来ます。
`メッセージキューイングシステムを行う際の中間システムを担うのがメッセージブローカーになります。`

![メッセージブローカーAWS MQとは? – diagrams.net – Google Chrome 2021-02-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/

元記事を表示

DatadogでAWSイベントを定期監視する

金曜の夜に見たくないアラートが。

![Screen_Shot_2021-02-20_at_8_40_26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/27454/9c6e6074-de4b-268d-e3b7-95447cfa08d7.png)

続いて複数プロダクトで強制シャットダウン祭り。

![Screen Shot 2021-02-20 at 8.08.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/27454/b56fffc9-1f15-b66a-63c5-2972e4faa4ff.png)

DatadogでAWSイベントを監視していたのでアラートは飛んできたけど、全てのイベントが通知されてないことに気付いた。8イベント中、最初と最後の2件しかきてない。

![Screen Shot 2021-02-20 at 8.04.24.png](https://qiita-image-store.s3.ap-

元記事を表示

AWSのEC2へのデプロイ②(必要なパッケージのインストール)

AWSのEC2へのデプロイをしたいと思い備忘録のために手順を記録します。
初学者の為、ご指摘等ありましたらご連絡いただければ幸いです。

前回の記事はこちら
[AWSのEC2へのデプロイ①(EC2インスタンス作成からログインまで)](https://qiita.com/mumucochimu/items/e29ac4db293c12990f61)

前回の内容は言語関係ないのですが今回から必要なパッケージが言語によって異なるのでご注意ください。

## はじめに

私自身この手順で無事にデプロイができましたが、途中でエラーが出たことによりいろいろな記事を参考にさせて頂きました。
この場を借りて御礼申し上げます。

そのため、私に知識がないばかりに私の環境に必要のない操作もあるかもしれません。
初学者のためご承知おきください。
お気づきの点ございましたらご連絡いただければとても喜びます。

## 環境

| | Version |
|:—————|————:|
| PHP | 7.4.14

元記事を表示

Docker,CircleCI,AWS,Railsでポートフォリオを作成

#前書き
就職活動用のポートフォリオをDocker,CircleCI,AWS(ECS)を用いてWebアプリケーションを作成しました。
バックエンドにRuby on Railsを用いました。
今回は作成したポートフォリオの機能、参考記事などを紹介したいと思います。

#概要と作成背景
今回作成したアプリはスイーツのデリバリーに特化したECサイトです。

* ケーキ屋のアルバイト経験からお店の業務改善をしたい
* 手軽にお店のスイーツを食べたい
* 店舗で販売しているようなスイーツを配達するサービスが存在しない(自分調べ)

上記の理由により飲食店にもユーザーにもメリットのあるサービスを作成しようと思いました。

アプリのURL: http://sweetsdeli.com

GitHubのURL: https://github.com/sekine617/sweetsdeli

#画面イメージ紹介
###トップページ
新着商品、人気商品などを表示
人気商品はユーザーの購入履歴から購入数が多い商品を表示しています。
![スクリーンショット 2021-02-19 15.07.58.png]

元記事を表示

AWS初心者がお名前ドットコム、S3、CloudFront、CertificateManager、Route53を使ってHTTPS化されたサイトを公開してみた(パート①)

皆さんこんにちは!

最近、暖かったり寒かったり気温の変化が激しく大変ですね。

インドア大学生の僕にはあまり関係ないんですけどね(笑)

ってことで今回はAWS初心者がHTTPS化されたサイトをアップロードしていく流れをご紹介したいと思います。

タイトルが長いということは、書く内容も必然と長くなっていくので2つに分けて説明していきます。

流れとしては以下のようになります。

1. 静的サイトをS3へデプロイ
2. お名前ドットコムでドメイン登録
3. Route53で独自ドメイン登録(ここまでがパート①)
4. CertificateManagerでSSL証明書の発行(ここからパート②)
5. CloudFrontで独自ドメインでアクセス

こんな感じになります。

パート1に関しては、他の方が記事を挙げているのでそれらを見て頂く形になります。

パート2からはつまずくポイントが少しあるので、それらをしっかりと理解しながら説明していきます。

何事も最初ってかなり時間がかかったり、つまづいたりすることが多いのでぜひこの記事を参考にして頂けたらなと思います。

よかったら、LGTM

元記事を表示

OpenSSL::Cipher::CipherErrorの解決【超初心者】

超初心者につき違ったら本当にごめんなさい。備忘録です。

OpenSSL::Cipher::CipherErrorが出た

config/master.key: No such file or directoryとかのエラーが出た時も使えるかも。AWSにてEC2とかMySQLとかRDSとかで開発環境・本番環境の勉強中、OpenSSL::Cipher::CipherErrorが出ました。これは鍵の受け渡しが上手くいっていない時に出るエラーです。

credentials.yml.encとmaster.keyが鍵穴と鍵の関係性になっているのですが、本番環境(私でいうとEC2)に鍵穴と鍵が無かったり、鍵穴と鍵が正しいものでは無かった時にOpenSSL::Cipher::CipherErrorが出ます。

↓これは正しく送

元記事を表示

S3のバケットポリシーだけでウェブサイトにAPIキー認証をかける方法

# 概要

S3を使ったウェブサイトの開発で、開発途中の画面をクライアントに見せたい。

![website-to-client.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/233180/8aa68026-dcf6-c993-cb0a-cf4b37621e0d.png)

でもCloudFrontやApiGatewayを使って真面目な認証を作るのは面倒。

そんな時に便利な、S3だけで簡単にAPIキー認証をかける方法があります。

## 構成図

必要な構成はS3だけです。S3のバケットポリシーだけでAPIキーを設定します。

![kousei.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/233180/3f2087b0-ced2-1c37-3778-061d59e72d56.png)

## 使用感

ウェブページにアクセス制限をかけることができます。
Chromeの起動オプションで正しいAPIキーを設定したブラウザ

元記事を表示

AWS ELBとは?

# ELBとは?
**「アクセスを複数台のEC2インスタンスに分散する役割を持つ」**

アクセスを分散させる目的
**①負荷分散**
**②可用性確保:他のインスタンスに障害が発生した場合でも、他のインスタンスでサービスを継続して提供できる**

##シングルAZ構成とマルチAZ構成
複数EC2インスタンスが存在する場合、ドメイン名にELB作成時に各AZのELBのグローバルIPアドレスが登録される。

**DNSラウンドロビン方式**
ELBにリクエスト → 各AZのELBにリクエストが分散される → AZで稼働するEC2インスタンスにリクエスト分散
![スクリーンショット 2021-02-19 20.44.41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1096361/6aaab126-35f7-dc5a-4fcc-b4d2ae991106.png)

![スクリーンショット 2021-02-19 20.52.42.png](https://qiita-image-store.s3.ap-nor

元記事を表示

【AWS】初の環境構築② ~踏み台サーバー経由でプライベートサブネット内のインスタンスに接続してみた~

# はじめに
インフラ初心者の私がAWS Cloudtechを通して学んだことを記録&アウトプットするための備忘録です。
[こちら(初の環境構築①)](https://qiita.com/hargen888/items/f5011ee8955215351ae4)の記事の続きです。
※実際に手を動かしたあとにこちらの記事を作成しているため、キャプチャの内容に多少の違和感を感じるかもしれませんが、あまり気にしないでください笑

# 動作環境
・Windows10
・Tera Term(Ver4.105)

#実現したいこと
自宅PC(Windows10環境)からssh接続でプライベートサブネット内のインスタンスにログインする。

# 環境構築(最終的な環境)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1086543/baf56d13-ebba-d663-0aa2-d347b04ecf0a.png)

##構築~ログイン手順

###自宅PC~Public subnet内のEC2(踏み台サ

元記事を表示

【AWS】初の環境構築① ~VPC、EC2インスタンスを構築してみた~

# はじめに
インフラ初心者の私がAWS Cloudtechを通して学んだことを
記録&アウトプットするための備忘録です。

# 動作環境
・Windows10

#実現したいこと
VPC、EC2インスタンスの構築

# 環境構築
講座で解説されている手順に従い、以下の構成で環境構築予定。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1086543/8eb4865c-12a1-efb7-909e-3b3de60f2ea8.png)

##構築手順

###VPCの作成
リージョンはアジアパシフィック(東京)が選択されていることを確認してVPCを作成する。

1.検索窓にVPCと入力後、左ペインから[VPC]を選択。
 [VPCを作成]を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1086543/3fe0f21a-82b2-e554-910d-3194f3c9c939.png)

元記事を表示

デフォルトで記録されないS3のデータイベントをCloudTrailで取得できるようにする

# 問題
IAMの[認証情報レポート](https://console.aws.amazon.com/iam/home?region=ap-northeast-1#/credential_report)をダウンロードして見たときに、アクセスキーを使用してS3にアクセスしている履歴を確認できたがCloudTrailのイベント履歴を検索しても一致するものがない。

※例えばこういう状態
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286189/1c6a9a56-e94b-318b-aebf-c84d420bf567.png)

# 原因
CloudTrailではGetObject、DeleteObject、PutObject等オブジェクトレベルのAPIオペレーションのログはデフォルトでは記録されない。

# 解決方法
CloudTrailで全てのS3のデータイベントを記録するために証跡を作成する。
**※追加料金かかります。**

1. [AWS CloudTrail](https://a

元記事を表示

Amazon Linux2 で Permission denied (publickey) が出た時の対処法

Amazon Linux2 の EC2 インスタンスに SSH しようとしたら `Permission denied (publickey,gssapi-keyex,gssapi-with-mic).` が出てしまったのでそれの対処をメモとして残しておきます。

## 事象
起こっていた事象としては**入ろうとしているインスタンス側に公開鍵がなかった**でした。
なので、その場合の解決方法を AWS が[解決方法](https://aws.amazon.com/jp/premiumsupport/knowledge-center/ec2-linux-fix-permission-denied-errors/)を提示しています。

確かに SSM なりで公開鍵を追加してあげれば済む問題ですが、ほぼ同じ条件(後述)で別のインスタンスは SSH できていたため腑に落ちなかったので色々調べてみました。

## 調べてみた
まず、 SSH できなかったインスタンスのベースの AMI は Amazon Linux2 をベースにしています。
[packer + CentOS で authorized

元記事を表示

知識0でもAWSを使ってmlflowサーバーを無料で立ち上げる方法

# なぜAWSでmlflowサーバーを立ち上げようと思ったか

はじめまして,機械学習を勉強し始めて1年になるものです。

この度はkaggleに初参加してみようと思ったのですが,kaggle notebookの実行ログをmlflowで管理したかったので,AWSを使って**無料の範囲内で**サーバーを立ち上げようと思いました。ただ,ネットにその情報が上がっていなかったので,他の方のために,知識0の人間が四苦八苦しながらmlflow serverを立ち上げた際の手順を記事にします。

※セキュリティ的にはガバガバなので,今回立ち上げるサーバーに重要な情報をアップロードしないでください。

# step1: アカウント作成とログイン

これは誰でもできるはずです。途中でクレジットカードの登録が必要です。
下のような画面が見えたら成功です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/816697/5897ba6c-4379-bafe-0bb2-f5847f9a4e0b.png)

# st

元記事を表示

新規iOSアプリ開発でServer Side Swift使ってみた

こんにちは。お久しぶりです。[株式会社ウォールオブデス](https://wall-of-death.com)代表のmasatojamesです。

この度、ロックに特化した機能を詰め込んだiOSアプリ[「Rocket for bands II」をリリース](https://prtimes.jp/main/html/rd/p/000000001.000074352.html)しました。
創業期にしては技術要件がけっこう面白いのでご紹介させてください。
![サムネイル.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/243995/770d2c10-6201-6294-0473-d09fa1c6b6e6.png)
ためしにアプリも触りながら読んでみてください↓
https://apps.apple.com/jp/app/rocket-for-bands-ii/id1550896325

# 技術要件

## フロントエンド

– Swift 5.2
– UIKit
– MVVM
– Combine

## バッ

元記事を表示

AWS CloudTrailでrootユーザーの証跡を取得する

# コマンド

lookup-eventsコマンドに対して、下記の属性キーと値のペアを一つだけ指定できます。
1. AccessKeyId
2. EventId
3. EventName
4. EventSource
5. ReadOnly
6. ResourceName
7. ResourceType
8. Username

例:UserNameの値がrootのイベントを取得

“`terminal
aws cloudtrail lookup-events –lookup-attributes AttributeKey=Username,AttributeValue=root
“`

イベントがある場合

“`terminal
{
“Events”: [
{
“EventId”: ““,
“EventName”: “イベント名”,
“ReadOnly”: “Boolean値”,
“EventTime”: “2021-02-19T17:55:07

元記事を表示

EC2でCloudFront署名付きURL発行用PHPを実行しようとして躓いた話

### 【やりたいこと】
CloudFront署名付きURLを発行したい

参考:[【初心者向け】CloudFrontで署名付きURLを発行する【やってみた】](https://dev.classmethod.jp/articles/sap-exam-study-2/)

### 【環境】
AmazonLinux2のEC2インスタンスを作成して、PHPをインストール

参考:[AWS EC2上にPHPサイトを立ち上げて、独自ドメインでアクセスできるようにするまでの全手順](https://qiita.com/harufuji/items/4fcd8f991fab5ad3354a)

### 【やったこと】

Composerをインストール
参考:[AWS SDK for PHPバージョン 3 のインストール](https://docs.aws.amazon.com/ja_jp/sdk-for-php/v3/developer-guide/getting-started_installation.html)

署名付きURL作成用の「test.php」は
[【初心者向け】CloudFro

元記事を表示

EC2からDocumentDBに接続してみた

業務でDocumentDBを利用する場面があったので、慣れるために一旦EC2からDocumentDBに接続してみました。
どうやらDocumentDBはMongoDB互換のデータベースらしいです。
私はMongoDB自体も初めてだったので、なんのこっちゃという感じでした。
この記事が、私と同じように困っている方の参考になれば幸いです。

# 前提
* DocumentDBに`mongo`コマンドでアクセスしたい場合は`mongo-org-shell`をインストールする必要がある
* Linuxに`mongo-org-shell`をインストールするにはリポジトリを追加する必要がある
* 普通に`yum install`のではダメ。リポを追加しないと
* 今回のOSには「Amazon Linux2」を利用する
* Amazon Linux2のパッケージ管理ツールは`yum`

# 事前準備
* VPC(サブネットなどの周辺リソースも)とEC2インスタンスを作成
* 上記で作成したVPCでDocumentDBを作成
* セキュリティグループを適切にEC2インスタンス・Doc

元記事を表示

【AWS】S3 Glacier アーカイブの削除からボールトの削除(Win)

負の遺産を整理するために仕方なくAWSをコマンドラインから操作した記録です。

[とても丁寧な取説が用意されている](https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-chap-welcome.html)んですが、とにかく初級者には敷居が高い。
そもそものAWSの仕組みを理解していないので厳しいものがありました。

手順は↓こんな感じで、ひとつずつ見ていきましょう。

“`
1.AWS CLI(Ver2)をインストール
2.ユーザと認証キーの作成
3.セットアップ
4.Glacierのジョブの開始
5.アーカイブリストの取得
6.アーカイブの削除
7.ボールトの削除
“`

### 1.AWS CLI(Ver2)をインストール
これは難しいことはありません。
インストーラーをダウンロードしてインストールするだけです。
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2-windows.html

バージョンが1と2がありましたが2

元記事を表示

AWS cloud9接続時にずっとConnenting状態になってしまう時の対応方法

いろいろと調べたが、この方法で解決した情報を見つけられなかったのでがネット上になかったので投稿しておきます。

不得意な事をいろいろして無駄に時間を使いました…。疲れた。

# 起こったこと
AWSのCloud9接続時「Connecting…」の画面が出て接続できない。
特にAWSの設定等変更していない、突然発生。

# やったこと
以下対応したが解決せず。

https://qiita.com/somarihair/items/759d525153ae68ce4a7f
→再起動しても変わらず

https://docs.aws.amazon.com/ja_jp/cloud9/latest/user-guide/vpc-settings.html
→設定確認しても変わらず、色々と作り直したりしたが変わらず

# 解決した方法
家のルータを再起動したらなおった。

# 原因?
Chromeのデベロッパーツールでcloud9接続時のコンソールを確認した時に、
cloud9のコンソール画面で使用されている「environment-default.js」内、「https://~~~.vfs

元記事を表示

OTHERカテゴリの最新記事