AWS関連のことを調べてみた2020年04月29日

AWS関連のことを調べてみた2020年04月29日
目次

AWS 基礎

#前提
AWSを学習中に学んだことを殴り書きしていきます。

#本題
・サーバー構築に必要な知識
1、サーバーOSのインストール方法LinuxやWindowsServerなどの
  サーバーOSのインストール、各種設定方法
2、各ソフトウエアのインストールや設定方法Webサーバーソフトや
  データベースサーバーソフト、メールサーバーソフトなど、
  さまざまな機能を提供するソフトウエアのインストールや設定方法。

たとえば、、、
【Webサーバーとして機能させる場合】
ApacheHTTPServernginxなどのソフトウエアをインストールする。

【データベースサーバーとして機能させる場合】
MySQLMariaDBPostgreSQLなどのソフトウエアをインストールする。

【メールサーバーとして機能させる場合】
SendmailPostfixなどのソフトウエアをインストールする。

元記事を表示

インフラ知識が幼稚園レベル→中学生レベルになるまでの1ヶ月でやったこと学んだこと①

## 物語あらすじ〜どんな人向けか〜
– サクッとモダンっぽいインフラ構成を学びたい人
– インフラ何から勉強したらいいのかわからない人

インフラエンジニアの方よりサーバーサイドやフロントエンドの方向けです!
また実際の構築の仕方・作ったものは載せません。あくまで勉強の手引きです。

## 物語本編
これはインフラ幼稚園からインフラ小学に飛び級し、さらにインフラ中学校にまで飛び級したキャベツちゃんの1ヶ月の物語。前編。

3月中旬。インフラ幼稚園に入って3ヶ月くらいの時でした。

**先生 「キャベツちゃん、インフラ小学校に飛び級になったよ!(インフラリソースが足りないという大人の事情)」**

**キャベツ 「はーい!(面白そうだからとりあえず返事)」**

この時のインフラ(AWS)の知識は、

– s3には画像とか保存できるんだな〜

– lambdaは関数を書いてなんかするやつでしょ?

くらい。今考えるとほんとにやばいw
こんな状態から下に示す構成を1ヶ月くらいで学んで作成しました。(先生にも助けてもらいましたが)

今回の記事ではCircleCIで自動

元記事を表示

AWS CLI v2 と Session ManagerでEC2にログインする時のssh config

# 目的

AWSのEC2インスタンスに[Session Manager](https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/session-manager.html)で接続する場合に接続先としてインスタンスIDを指定しなければならないがインスタンスIDは再作成などで変更される場合がある。
インスタンスIDが変更になってもSSH Configを変更しなくて良いように設定する。

# 前提条件

* 利用環境にAWS CLI v2 がインストールされている (インストール方法https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2.html)
* 利用するIAM User は作成済み
* 利用するアクセスキーとシークレットキー も発行済み
* 接続先のEC2インスタンスにはtagにインスタンス名が設定されている

このようにインスタンスにNameタグが付いているとする

“`bash

$ aws –profile foo

元記事を表示

AWSMobileClientのpod installがSWIFT_VERSIONのエラーで止まるときの対応

# AWSMobileClientがインストールできない

新しくiOSアプリを作る場合にはまずあり得ないと思いますが、古いアプリの改修などの場合はコードが全てObjective-Cで書かれているケースも珍しくないと思います。今回、そういうケースでAWSMobileClientがインストールできないという現象に遭遇したので記録しておきます。

## つまり、どういうことかというと

* Objective-Cだけで書かれたiOSアプリにAWSMobileClientをpod installしようとすると失敗します。
* Bridging Headerを生成してあげましょう。
* ダミーのSwiftファイルを作成するだけで、Xcodeが自動生成してくれます。

以下、詳細です。

## 発生した現象

Cocoapodsを使ってAWSMobileClientをインストールしようとすると*Unable to determine Swift version*エラーになる。

### Podfile

“`sh
$ cat Podfile
# Uncomment the next

元記事を表示

大量のIP RangeリストをAWS Security Groupに反映するスクリプト(メモ)

Security Groupのルールを設定する雑スクリプトです。作業メモ的に残しておきます。

Azure PipelineのIPが多すぎ(100個以上)、デフォルトでSecurity GroupのRuleは60個まで。という面倒な状態だったので、雑にPythonスクリプト作りました。

## 背景(前提?)的なもの

– AWS側Security Groupで、IP制限している。
– Azureのサービス(Azure Pipeline等)からAWS側に接続したいがIP制限でNGになる。
– 設定すべきプロトコルとポートは、HTTPS:443 だけで充分。
– Azureで使用されるIPは下記URLで公開されている(JSONファイルでダウンロードできる)。
– https://www.microsoft.com/en-us/download/details.aspx?id=56519
– APIでIPレンジを取得する事もできるが、とりあえず手メンテ。

## スクリプト

Python3で、ソースコードを3ファイルに分けてます。同じフォルダに入れてください。

元記事を表示

AWSのVirtual MFA Deviceを失ったときどうなるかとその予防

#最初にざっくりいうと
「MFA デバイスの割り当て」(Virtual Multi-factor Authentication device)にスマホを使うなら、
機種変するときに気をつけましょうね。デバイスなくなるとホントに入れないからね。
という話。その後の大変だったお話と、その後ワタシが見つけた他に乗ってない(はずの)予防法についても記載します。
参考になったらLGTMしてね!(「いいね!」じゃなくていいにくい…)

#ことのはじめ
AWS好きなので日々いろんなサービスをありがたーく使わせております。
で、2016年ごろから「rootで作業するな、認証は2段階にしろ」というお達しがあったので、素直にポリシ、グループ、ユーザを細かく作った上で、root他多数のユーザはスマホをデバイスとしたMFA(Multi-Factor Authentication)で2段階認証するようにしました。

時を経て、すっかりrootのMFAのことを忘れていたワタシはある時
:angry:今のスマホは大きすぎる!
と思ってスマホを[unihertz Atom](https://www.unihertz.

元記事を表示

AWS(AmazonLinux2)・EC2、Laravel7.x/PHP7.4でのデプロイ

#はじめに
意外に記事少なくて困った点、AmazonLinux2にてちょっと変わってた点、Laravelに関してvimいじったところなんかのまとめです。
なんど色々と弄ったり、削除したりインスコしたり、EC2作り直したりしたことか。

#めっちゃ参考にしたページ、スペシャルサンクス!
・まず、一番最後にでも一番参考になった神まとめページ
[・AmazonLinux2でLaravelの開発環境構](https://qiita.com/h19e/items/02d1301d4fdd8dfa88ac#%E5%BF%85%E8%A6%81%E3%81%AA%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)

・AmazonLinux(無印)だけどデプロイの参考になったページ
https://qiita.com/masataka715/items/6e46f1f5e53bdff6cd3d

他色々試しまくった記事
https://

元記事を表示

Dockerコマンドおさらい① Docker Hub, AWS ECRへのpushもあるよ

やったことの整理を含めてDockerコマンドのおさらいとして書きました
ECRのpushとかも書きました(ECRにリポジトリ作ったら手順は書いてあるものですが…)

## コンテナ一覧表示と削除
– 現在起動中のコンテナの一覧表示
`$ docker ps`

“`
★ 使うオプション
停止中を含め全てのコンテナの一覧を表示
$ docker ps -a

コンテナIDのみを表示
$ docker ps -q

停止中含め全てのコンテナのIDのみ表示
$ docker ps -aq

–filter(-f) でコンテナ情報を抽出して表示
停止中のコンテナ一覧を表示
$ docker ps -f “status=exited”
NAMESにmysqlを含むコンテナを表示(=としているが完全一致ではなく、含むものも抽出する)
$ docker ps -f “name=mysql”
“`

– dockerコンテナの削除
`$ docker rm [コンテナIDs]`

“`
★ 使うオプション
コンテナ起動中でも強制的に削除
$ do

元記事を表示

ElastiCacheのリーダーエンドポイントとphp-fpmについて

ElastiCacheのリーダーエンドポイントを導入し、サービス中に台数を増減させた際の挙動メモ

前提情報
・phpで動くwebサービス
・インフラは全てAWS
・キャッシュはElastiCahceのredisを利用
・非クラスターredisを利用しておりphp側ではホストにリーダーエンドポイントを指定
・redisの接続オプションは「persistent:true」

状況
・セールにより一時的に負荷上昇
・オンサービス中にノード追加を実施
・php-fpmプロセスは「pm.max_children」数分だけ既に立ち上がっておりredisとの接続を1度は確立済み

挙動
・リーダーエンドポイントでホストを指定しているが追加されたノードへはリクエストが振り分けられない
・「persistant:true」としているのでリーダーエンドポイントの先にある特定ノードとの接続情報がプロセスに保存されている状態

対処法
1. 手動でphp-fpmを再起動し全プロセスを作り直す (※ただし瞬断する
2. 1プロセスがpm.max_requests分だけリクエストを処理すれば1プロセスごとに自動

元記事を表示

awspec を Docker で動かして、AWSのリソースが正しく設定されているかを確認する

awspec ( https://github.com/k1LoW/awspec ) を使って、AWSのリソースが意図した通りに設定されているかを確認します。

CloudWatch event を使ってるシステムがありますが、サービスを運用していく過程で、CloudWatch event の設定が増え、設定漏れがでてくるようになりました。

CloudFormation 化することも上記の課題の対応になると思いますが、今回は awspec を利用して、 CloudWatch event の設定内容が意図通りに設定されているかを確認します。

サーバー環境に依存させたくないので、 awspec を Docker で動かします。

# この記事でわかること

– awspec を Docker で動かす方法
– awspec で AWSリソース CloudWatch event をテストする方法
– この記事内のソースは以下で公開しています。
– https://github.com/katsuhiko/awspec-example

# 準備

## Gemfile の準備

元記事を表示

Django Heroku S3(AWS) 画像表示

#前提
画像をS3に保存し、本番環境で画像を表示させる方法をメモします。

DjangoアプリケーションをHerokuにデプロイ済み。
AWSアカウント設定済み。

環境
python-3.7.6
Django 2.2

##AWS設定
AWS登録をS3を使用するのに、AWSアカウントが必要になります。

###1、バケット作成
①S3を検索してクリック

②バケット作成

③バケット名とリージョンを選択

④オプションなし

⑤アクセス権限設定

⑥内容を確認して作成

⑦バケット完成

###2、CORS設定
①CORSの設定に移動
作成したバケットをクリックして、アクセス制限CORSの設定に移動します

②CORS構成エディターに追加
以下を記入。

“`

CORS



<

元記事を表示

EC2にYellowfinのベストなテスト環境を構築するまでのメモ

テストや検証目的でAWSにYellowfinを構築することがよくあります。いろいろ試した結果、現時点で最適だと思える構築手順を公開します。

# AWSコンソールでの作業

まずはAWSコンソールでEC2のインスタンスを立ち上げます。

## EC2インスタンスの作成

今回の例ではAmazon Linux 2を選択します。
![cap001.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/116818/21e5154d-831e-9c48-a3d9-b1ad749a3e69.png)

インスタンスタイプはr5a.largeを選択。
![cap002.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/116818/9b9cf398-49ac-aa10-5891-d2124536a26d.png)

ストレージは64GBまで追加しておきます。
![cap003.png](https://qiita-image-store.s3

元記事を表示

「Amazon AppFlow」を利用して、Google AnalyticsのデータをS3に保存してみた

AWSでSaaSアプリケーションのデータをAWS内に取り込むサービスが発表されました。

私が注目したのは、Google AnalyticsのデータをS3に簡単に取り込めるようになったことです。今までは、Google AnalyticsのデータをS3に落としてこようとすると、Google AnalyticsのAPIを利用するか、360を契約してBigQueryで引っ張ってくるしかありませんでした。

私の会社はGCPが使えないので、今まではAPIを利用するしかありませんでした。そこで登場したのがAmazon AppFlowです。早速設定してみました。

## 公式での使い方をチェック
[Requirements for Amazon AppFlow – Google Analytics](https://docs.aws.amazon.com/appflow/latest/userguide/requirements.html#google-analytics)から翻訳して引用します。
>Google API Console at https://console.developers.

元記事を表示

Laravel~portfolio -first deploy

#はじめに
ポートフォリオ作成してみました。

##環境
・Laravel ver7.x
・AWS(AmazonLinux2)
手動デプロイ

ローカル環境
・Homestead+vagrant

#(ポートフォリオ)自転車店における顧客登録と所有自転車管理システム
・[ポートフォリオ:管理システム](http://18.182.15.189/)

・[Github](https://github.com/MensExperience)
※無駄にコミットしてるの無視してください

#Laravelローカル編

#AWS設定(Laravel7.x&AmazonLinux2)

とりあえず今日は疲れたので、近日LaravelとAWSにて詰まった所追記予定。
タスクは、、、無視してください。
今後Vueにて便利機能追加予定です。

元記事を表示

音楽素人がAWS DeepComposerで星野源の「うちで踊ろう」のアレンジ作曲に挑戦してみた

#概要
本記事は2020年4月23日に行われた[【オンライン】ゆるふわマシンラーニング Vol.3](https://enebular.connpass.com/event/167636/)の
登壇内容をまとめたものになります。
※ウフルさんのenebular developersコミュニティ主催 
※[ゆるふわマシンラーニングVol.3のツイートまとめ](https://togetter.com/li/1498404)

機械学習の技術を利用して自動で作曲ができる「AWS DeepComposer」を使って、
音楽素人の私が(しかもリズム感ゼロ。笑)、作曲してみたという内容で話していきます。

##AWS DeepComposerとは
AWS DeepComposerは2019年の秋頃Amazon Web Servicesから発表された
世界初の機械学習対応のキーボードサービスの総称です。
[AWS DeepComposer公式サイト](https://aws.amazon.com/jp/deepcomposer/)

専用のMIDIキーボードを利用し、入力された音を学習済みのモデル

元記事を表示

AWS CloudFrontのキーローテーションを考えてみた

# はじめに
CloudFrontの署名付きURLを使用して画像などを配信する際に、
キーペアのローテーションをどうすれば良いのか?検討する必要があったため考えてみました。

AWSの推奨としてはセキュリティ担保のため、90日以内にキーローテーションすべきとのこと。

# 結論
結論から言いますと、[AWSのドキュメント](https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/private-content-trusted-signers.html#private-content-rotating-key-pairs)に丁寧に書いてあったため、 基本はそちらの手順に従いました。。

サマリだけ記載すると、以下になります。

* キーペアは2つまで作成できるため、更新時は2つ目を作成する
* キーペアを利用しているアプリケーションの環境変数などを更新する
* 古いキーペアの使用がなくなった時点で無効化→削除する

# 自システムに適用するなら、、
実際にシステムに適用する場合をイメージしてみ

元記事を表示

【試験合格記】AWS 認定 クラウドプラクティショナー(CLF-C01)

お疲れさまです。
表題の試験に合格したため記録として残したいと思います。

# 結果
合格

|分野|名称|割合|
|:—————–|:——————-|:——————-|
|1|クラウドの概念|28%|
|2|セキュリティ|24%|
|3|テクノロジー|36%|
|4|請求と料金|12%|

# 所有資格

| 資格名 |取得年月日 |
|:—————–|:——————-|
|AWS Certified Solutions Architect – Associate (SAA)|2018-06-14|
|AWS Certified SysOps Administrator – Associate (SOA)|2018-06-22|
|AWS Certified Developer – Associate (DVA)|2018-06-25|
|AWS Certified Solutions Architect – Professional (SAP)|2018-

元記事を表示

誰でも簡単にビデオ通話できる「オンライン帰省.com」作ってみた【Webサービス】

# はじめに
このサービスは、**コロナ**が**大きな影響**を及ぼしている現在の世の中で、
**個人開発者**の自分が少しでも**Stayhome**のきっかけになればと思い**開発したサービス**の工程です。

今までなかなか忙しくて帰省出来なかった人も
**オンラインで帰省**できる**きっかけ**になれば嬉しいです。

ソースコードを後半で公開しています。興味ある方は使ってみてください。

開発者の**[Twitterアカウントはコチラ](https://twitter.com/nsk_dev)**

# サービスイメージ
サービスイメージ
**パソコン**や**タブレット**、**スマートフォン**をお持ちの方であれば、
**誰でも簡単**に**ビデオチャット**ができる**サービス**
「**オンライ

元記事を表示

【試験合格記】AWS 認定 アドバンスドネットワーキング – 専門知識(ANS-C00)

お疲れさまです。
表題の試験に合格したため記録として残したいと思います。

# 結果
合格

|分野|名称|割合|
|:—————–|:——————-|:——————-|
|1|大規模なハイブリッド IT ネットワークアーキテクチャを設計し、実装する|23%|
|2|AWS ネットワークを設計し、実装する|29%|
|3|AWS タスクを自動化する|8%|
|4|アプリケーションサービスとネットワークの連携を構成する|15%|
|4|セキュリティとコンプライアンスを設計し、実装する|12%|
|4|ネットワークの管理、最適化、トラブルシューティングを行う|13%|

# 所有資格

| 資格名 |取得年月日 |
|:—————–|:——————-|
|AWS Certified Solutions Architect – Associate (SAA)|2018-06-14|
|AWS Certified SysOps Administrator – Asso

元記事を表示

Redis SentinelをEC2で構築する

# 1. 参考
– Redis Sentinelで自動フェイルオーバー
– https://qiita.com/wellflat/items/8935016fdee25d4866d9
– ※この記事をかなり参考にさせていただいております。

– Redis Sentinel Documentation – Redis
– https://redis.io/topics/sentinel

# 2. 今回作る構成(Redis Sentinel Documentationより引用)
“`
+—-+
| M1 |
| S1 |
+—-+
|
+—-+ | +—-+
| R2 |—-+—-| R3 |
| S2 | | S3 |
+—-+ +—-+
“`

Configuration: quorum = 2

Masters are called M1, M2, M3, …, Mn.
replicas are c

元記事を表示

OTHERカテゴリの最新記事