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

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

大戦略の設計フレームワークを作成する

# DIMEをベースとした大戦略の設計フレームワークを作成する
下記の記事で、進化心理学のマズローの要求階層モデルを利用して大戦略レベルにおける戦略の判断モデルを作成した。
https://qiita.com/aLtrh3IpQEnXKN7/items/e7552ffc1ec31de1b8c5
大戦略において戦略の判断も重要だが、大戦略を設計、運用する設計図も重要である。
2020年のアメリカ、中国、ロシアは**DIME**と呼ばれる概念で大戦略を設計、運用している。
**DIMEとは・・・国家戦略を考える際に重要となる、外交(Diplomacy)、インテリジェンス(Intelligence)、軍事(Military)、経済(Economy)の4要素を組み合わせた国家の安全保障の基本戦略。**
今回の記事では**DIME**をベースとして、大戦略の設計、運用を行うフレームワーク作成する。

#21世紀の新しい戦争のスタイル、超限戦
## 超限戦とは
中国人民解放軍の喬良、王湘穂によって提唱された21世紀の新しい戦争の形態。
超限戦の記載されている以下の文言が21世紀の新しい戦争の形態で

元記事を表示

rails サーバー途中から立ち上がらない

$cd アプリ名
$rails s
でいつも立ち上げているのですが立ち上がらなくなりました。
どうしたら立ち上がりますか?スクリーンショット 2020-07-11 9.09.27.png

元記事を表示

(AWS初心者)なんのためにVPC構築するのか?

## (結論)EC2(Webサーバー)をつくるためにVPCを構築する 
▼EC2を作成するためには?
VPCをつくって、更にそこからネットワーク(サブネット)を分けて、その中にサーバーを設置する。

▼じゃあそのVPCを作成するためには?
リージョンを選択してアベイラビリティーゾーンにまたがってVPCをつくる。

見返した時、パッと思い出せるよう,一つ一つ調べてみた。

## リージョンとは
AWSの各サービスが提供されている地域のこと。日本にあるのは東京リージョンのみ。
日本でサービスを展開する場合は東京リージョンに提供してもらえばよい。

## アベイラビリティーゾーンとは
独立したデータセンターのこと。

【用語】
・データセンター・・・顧客のサーバー機などを収容し、運用管理している施設。ドラマとかでよくみるやつ。

元記事を表示

AWS System Manager Session ManagerでEC2にSSH,SCP接続する

# はじめに

Session Managerというものを今更知った。
セキュリティグループでsshを開けたり、踏み台サーバを経由してEC2にアクセスしたり、といったことがより楽に、安全になるようだ。

本記事では

– Session Managerの基本的な設定手順
– 監査ログの出力設定手順
– Session Manager + ssh,scpコマンドでEC2にアクセスする手順
– Session Managerでのアクセスを無効にする手順

を示す。

## Session Managerとは

[公式ユーザガイドより](https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/session-manager.html)

>Session Manager はフルマネージド型 AWS Systems Manager 機能であり、インタラクティブなワンクリックブラウザベースのシェルや AWS CLI を介して、EC2 インスタンス、オンプレミスインスタンス、仮想マシン (VM) を管理できます。Se

元記事を表示

AWS EC2インスタンスの終了方法(セキュリティGの削除とキーペアの削除)

## インスタンスの終了
* AWSにログイン
* 「EC2」をクリック
* 左ペインから「インスタンス」をクリック
* 右ペインに表示されたインスタンス一覧から削除したいインスタンスにチェック
* 「アクション」→「インスタンスの状態」→「終了」を選択
![del_instabce1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/618171/f6460af3-f7ac-ef93-41e8-acd30c7cebc6.jpeg)

##セキュリティグループの削除
* 左ペインから「セキュリティグループ」をクリック
* 該当のセキュリティグループを選択する
* 右上の「セキュリティグループを削除」をクリック
![del_instance2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/618171/dc560ee0-65b0-0580-c74d-332d7d619350.jpeg)
* 表示されたポップアップの「削除」をク

元記事を表示

AWS RDSにローカルから接続できないときの対策

# AWS RDSにローカルから接続できないときの対策

備忘録を兼ねて。

AWSのRDSインスタンスにローカルから接続できないときに考えることはいくつかあります。

* セキュリティグループの設定
* ポートの確認
* ユーザーIDが正しいか確認

などなどやっても接続できないときは、**パブリックアクセシビリティ**が無効になっているかもしれません。

確認・変更するときは、DBインスタンスの概要画面から変更をクリック:

「ネットワーク & セキュリティ」の「パブリックアクセシビリティ」が「**いいえ**」になっている場合、セキュリティグループを開放していても接続できません。

「**はい**」に変更しましょう。

初歩的なところですが、DBインスタンス作成時のデフォルトはパブリックアクセシビリティがオフになっているようなので、少しハマりました。

##参照
[EC2からRDS(MySQL)に接続できない。セキュリティグループの設定について・・・](https://qiita.com/nao-otsu/items/8cabd447d73b621cd07d)
[Amazon

元記事を表示

[AWS]CloudwatchエージェントをRunCommandのみでインストールする

# 概要
CloudWatchエージェントをEC2インスタンスにインストールする時に毎回忘れる(主にコマンドドキュメント名)ので、自分用の備忘録として記事にしておきます。
要するに、SSM(SystemsManager)のRunCommandを用いて設定する内容です。
また、RunCommandの前提となる[SSMエージェントのインストール](https://docs.aws.amazon.com/systems-manager/latest/userguide/getting-started-agent.html)や[IAMポリシーの設定](https://docs.aws.amazon.com/systems-manager/latest/userguide/setup-instance-profile.html)は割愛しました。
上記、公式ドキュメントを参照してください。

# エージェントインストール
まずは、CloudWatchエージェントのインストールです。

1. マネジメントコンソールの[Systems Manager](https://console.aws.ama

元記事を表示

AWSをゼロから勉強する。vol.1

7/10
まずは使う単語を覚えようと思います。

[Region(リージョン)]
 AWSを運用している基盤のある地域の事
 地理的に近ければ遅延が少なくて済む。
 選ぶリージョンによって料金が変わる(現地の電気代、土地代などの影響)
 頻繁にアクセスしないようなものはコスト安いところに置くなど、工夫できる。
 
[Availability Zone(AZ)]
 簡単に言うとデータセンターの事。
 複数のAZに分けてサーバーを配置することで負荷分散、冗長化が図れる。

[Virtual Private Cloud(VPC)]
 AWS内に構築できる仮想のネットワーク環境。
 同じVPC内であれば、複数のAZに分けてサーバーを配置しても
 同じネットワーク内にいる認識なので、片系が落ちても継続してサービス提供が可能。
 VPCにはサブネットが一つ以上必要。
  パブリックサブネット (トラストゾーンみたいなイメージ)
  プライベートサブネット (イントラゾーンみたいなイメージ)
 など。自由に何個でも作れる

[Route53]
 DNSのこと。
 ルーティングの機能とヘルスチェックの

元記事を表示

AWS Well-Architected Framework 2020/07 の更新点まとめ

2020/7/10 のアップデートで「AWS Well-Architected Framework」が更新されました。
ホワイトペーパーの更新履歴いわく **「ほとんどの質問と回答を見直して書き換えました」** というくらいの、**大々的な更新**のようです。
一体何が変わったのかをまとめ、執筆時点において、AWS を利用する場合に重視すべきことは何かを紐解いてみます。

# 定義
「AWS Well-Architected フレームワークの柱」 は5本ありますが、これらの定義が微妙に変わっています。

* 運⽤上の優秀性
* (旧) ビジネス価値を提供し、サポートのプロセスと⼿順を継続的に向上させるためにシステムを稼働およびモニタリングする能⼒
* (新) **開発をサポートし、ワークロードを効率的に実⾏し、運⽤に関する洞察を得て、ビジネス価値をもたらすためのサポートプロセスと⼿順を継続的に改善する能⼒**
* セキュリティ
* (旧) リスク評価とリスク軽減の戦略を通してビジネスに価値をもたらす、情報、システム、アセットのセキュリティ保護機能
* (

元記事を表示

[AWS] CloudFront +Lambda@Edge + S3 / DynamoDB 連携

# はじめに

[こちらの記事](https://qiita.com/ksh-fthr/items/e033156756aa182d8eb1) で IP アドレスによるフィルタリングが実現できたので、本記事ではフィルタリングに用いる IP アドレスのリストを

– S3
– DynamoDB

に持たせる方法について見ていく。

# 注意

本記事は 2020年7月10日 時点の情報です。
ご覧になられた時点で UI が変更されている可能性がありますので、その点ご注意ください。

# 前提

– [こちらの記事](https://qiita.com/ksh-fthr/items/e033156756aa182d8eb1) の構築が完了していること

# 環境

| サービス | 概要 |
| ————————————

元記事を表示

家庭ネットワークからVPNでAWSと動的ルーティング接続する(NATトラバーサル) – VyOS編

# はじめに
皆さんこんにちは。仕事でAWSを使っているのですが、これまで自分でVPNを用いたことが無かったため、検証として自宅のネットワークからAWSへのSite-Site VPN接続を試してみました。

# 前提条件
AWSとの接続はSite-Site VPN構成による接続を行ってみます。
我が家はプロパイダー経由によるNTT光回線を利用しており、宅内にはNTTから送られてきた標準タイプひかり電話ルータなるものが設置されています。ルータからはPPPoE (PPP over Ethernet)による認証を用いて、インターネットプロパイダに接続され、インターネットへの接続が行われています。
グローバルの固定IPアドレスは契約していないため、今回はルータで取得したグローバルIPアドレスを用いて、NATトラバーサルによるVPN接続を行うことにしました。
ルータはテスト用途で、仮想環境で構築できるVyatta (VyOS)を用いました。

# NAT-T (NATトラバーサル)とは?
NATトラバーサルとは、アプリケーションがNATによるIPアドレス変換に対応するために定義された規格です。I

元記事を表示

AWS Solution Archietct Professional 自分まとめ[合格]

以下の内容で85%で合格
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/159589/8622b7a2-7044-2608-1bd8-8baf0d08e64c.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/159589/c3e5df54-d357-bb75-bb75-e31bfbb140a9.png)

# セキュリティ・認証系

## CloudFront
### 署名付きURL
CloudFrontの署名つきURLを発行して、S3への直接アクセスを防ぐ
S3署名つきURLを発行して、他のユーザーからのアクセスを削除する。

### 地域制限
CloudFrontのGeo-Restrictionで国単位でのアクセス制限をかける。

### OAI
S3でCFrontディストリビューションを経由してアクセスさせたい場合はOAIを使って、オリジンアクセスIDを許可し、S3 UR

元記事を表示

ZshでAWS Profileの可視化と切り替えの容易化

# 本投稿では

Zshを用いてAWS Profileの可視化と切り替えを容易にする方法を説明します。
設定すると以下のようにAWS Profileを可視化・切り替えできるようになります。

複数のAWSルートアカウント/リージョン上にリソースを作成する必要がある方の参考になれば幸いです。
また、もっと良い方法をご存知の方、ぜひ教えてください。よろしくお願いします。

![awsp-example.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/510218/64c882b0-f0d0-4c76-a1b5-cd1d6d05d424.gif)

# 前提
Zshが設定済であることを前提に説明します。

# 設定方法

## 1. AWS Profileの可視化

[spaceship-prompt](https://github.com/denysdovhan/spaceship-prompt)を利用することで容易にAWS Profileを可視化できます。

以下のコマンドでインストール、
※npm以外にも

元記事を表示

AWS SAA-C02 結局何を勉強すればええんや

先日AWS SAA(Solutions Architect Associate)に合格しました。
社内向けに記事を書いたのですが、社外の友人も知りたいと言ってきていたのでQiita記事化しようかと思います。(ほぼ丸コピ)

# AWS認定資格って何や

AWS Certificate(AWS認定)という枠組みで、AWSについての高い知識を持つことを証明する資格。
領域や担当分野に応じて複数の資格がある。
参考:https://aws.amazon.com/jp/certification/?nc2=sb_ce_co

# Solutions Architect Associateって何や

アーキテクト系のアソシエイト資格で、AWSでのアプリケーション設計やシステム設計系のスキルを証明するもの。
同じアソシエイト系のSysOps Administrator AssociateやDeveloper Associateの内容を包括し、AWS学習の中ではより一般的な領域の知識が問われる。

試験内容はAWSのサービス変化によって変動し、2020年3月23日以降から新バージョン(SAA-C02

元記事を表示

【Laravel6.0.4】の フォームリクエストで「This action is unauthorized. 」のエラーメッセージが出たら。

##【開発環境】
Amazon EC2 Linux
Windows 10 HOME
Apache/2.4.43
Laravel Framework 6.0.4
vsftpd: Ver 3.0.2

Tera Term 4.1.105
FFFTP Ver 4.7

##【エラーメッセージ】

自作のサイトでフォームボタンを押したら画面にこんなエラーメッセージが・・

“`
This action is unauthorized.
“`

##【対応】

[Laravel6.0日本語](https://readouble.com/laravel/6.x/ja/validation.html) のドキュメントによると

“`
フォームリクエストの認可

authorizeメソッドがfalseを返すと、403ステータスコードのHTTPレスポンスが自動的に返され、コントローラメソッドは実行されません。

アプリケーションの他の場所で認証のロジックを行おうと設計しているのでしたら、authorizeメソッドからtrueを返してください。
“`

との事だったので「true」に修正した

元記事を表示

AWS認定ソリューションアーキテクト – アソシエイト(SAA-C02)に合格したので、学習方法をまとめてみた

先日、AWS認定ソリューションアーキテクト – アソシエイト(SAA-C02)に合格しました。

学習期間は約1ヶ月、点数は8割ちょっととまずまずの結果でしたが、同じくAWS認定試験の合格を目指されている方の参考になればと思い、学習方法をまとめさせていただきました。

#前提
– 普段の業務ではRailsをメインとしたバックエンドの開発を行っています。AWSの業務経験はなし。
– AWS認定クラウドプラクティショナーに合格していたので、AWSの基礎知識は多少あり。

#学習時間
約1ヶ月、1日2~3時間学習。
学習できない日もあったので、全体で50時間程度の学習時間だったと思います。

#教材
使用した教材は、以下のとおりです。

1. [AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト]
(https://www.amazon.co.jp/AWS%E8%AA%8D%E5%AE%9A%E8%B3%87%E6%A0%BC%E8%A9%A6%E9%A8%93%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88-AWS%E8%AA%8D

元記事を表示

copilot betaを触ってみる

ecs-cliの第二世代、copilotのベータが出ていることは知っていたが、大々的に[ブログで紹介](https://aws.amazon.com/jp/blogs/news/introducing-aws-copilot/)されていたのと、担当プロジェクトで近い将来採用される可能性があるので、試してみる。

## やりたいこと
– copilotベータを触って、理解する

## Step by Step

1. インストールする。ecs-cli同様、ワンライナーで完了。

“`
% curl -Lo /usr/local/bin/copilot https://github.com/aws/copilot-cli/releases/download/v0.1.0/copilot-darwin-v0.1.0 && \
chmod +x /usr/local/bin/copilot && \
copilot –help
% Total % Received % Xferd Average Speed Time Time Time Curren

元記事を表示

AWS CLI で InvocationType が RequestResponse なのにLambda関数が複数回呼び出される

# TL;DR
–cli-read-timeout オプションで0を設定するか、呼び出すLambda関数のタイムアウト時間の秒数を指定する。

# 事象
Lambda関数で60秒を超える処理を行った際に AWS CLI で InvocationType が RequestResponse なのにLambda関数が複数回呼び出される。

# 原因
AWS CLI の lambda invoke はデフォルトでは60秒間でタイムアウトし5回まで再実行されるため。

# 確認
以下のようなLambda関数を用意します。指定した秒数、スリープで停止するLambda関数です。Lambda関数名は sleep とします。
タイムアウト時間は900秒(15分)にでも設定しておいてください。

“`python
import json
import time

print(‘Loading function’)

def lambda_handler(event, context):
print(“Received event: ” + json.dumps(event, indent=2

元記事を表示

AWS Batchでスポットインスタンスを使ってハマった話

## 概要
AWS Batchで使用するコンピューティング環境でスポットインスタンスを使用する事ができます。これによってコスト削減が狙えるのですが、配分戦略で`BEST_FIT`を選ぶ際に指定する`スポットフリートロール`でめちゃくちゃハマりました。
具体的にはスポットフリートロールをドキュメントの通りに作成しても、エラーとなってスポットインスタンスリクエストが失敗しました。

`Linux/UNIX: The provided credentials do not have permission to create the service-linked role for EC2 Spot Instances.`

こんな感じです。ドキュメントの通りにロールを作ったのですが、それだと権限が足りないようです。検索して出てくる解決策もバラバラで、ようやく解決したので記録として残しておきます。

## 結論
– ロール作成で選ぶユースケースは [EC2 Spot Fleet Role]です。`arn:aws:iam::aws:policy/service-role/AmazonEC2Spot

元記事を表示

prefix listを作成し2つのAWSアカウントで共有する

## 概要
VPCでprefix listが利用できるようになったと聞いて…!

IPアドレスをまとめられるだけでなく、アカウント間での共有も可能という点に惹かれ
設定を試しました。

[Amazon Virtual Private Cloud (VPC) customers can now use their own Prefix Lists to simplify the configuration of security groups and route tables](https://aws.amazon.com/about-aws/whats-new/2020/06/amazon-virtual-private-cloud-customers-use-prefix-lists-simplify-configuration-security-groups-route-tables/?nc1=h_ls)

## 今回試すこと
– 自宅のIPアドレスを設定したprefix listを作成
– 作成したprefix listを2つのAWSアカウント間で共有する
– EC2のセキュ

元記事を表示

OTHERカテゴリの最新記事