- 1. AWS CLIの設定(WindowMs
- 2. amplify-authenticator のサインアップを無効化する方法メモ
- 3. ECSでタスクが起動しない場合に確認すべきこと
- 4. VyOS で site-to-site VPN をしてみた
- 5. VPCピアリングを設定してみた
- 6. AWS CLIのコマンド補完設定時の戒め
- 7. AWSのDescribeAvailablePatchesを使ってみた
- 8. AWS Organizationsのタグポリシーを使ってみた
- 9. ConfigをCloudFormationにより有効化して色々やってみた
- 10. Access Analyzerを全リージョンで有効化してみた
- 11. CloudWatchイベントでスケジュールされたECSタスクをAWS SDK for Javaで直接起動する
- 12. EC2 [Amazon linux] -> S3 ファイルアップロード
- 13. AWS ソリューションアーキテクト 資格取得タイムトライアル 2日目
- 14. 個人で作成したAMIを使ってEC2(Windows)を起動したら、IAMロールが割り当てられているのに他サービスにアクセスできない事象が発生した件について
- 15. AWS_WEB3層環境構築③
- 16. EC2インスタンスのJupyter Notebookにローカルのブラウザから接続する
- 17. Amazon GuardDutyをはじめてみた
- 18. AWS ベストプラクティス 読んでみた
- 19. 【初心者向け】S3, Athena, QuickSightを使用してcsvデータを可視化する
- 20. 【AWS】EC2を間違えて終了(削除)してしまわないよう、終了保護の設定をする
AWS CLIの設定(WindowMs
AWS CLIを設定する。
AWS CLIでS3のリスト、アップロード、ダウンロードをしたい。#インストール
公式ガイド:https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-chap-install.htmlAWS CLI Version2であれば以下からインストーラをダウンロードできる。
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2-windows.html↓入った。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/342082/4f8336f5-517f-8cf0-aba9-13e30eed675a.png)#構成
####(なければ)アクセスキーとシークレットキーを作成する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws
amplify-authenticator のサインアップを無効化する方法メモ
## はじめに
ユーザーの登録は管理者側で行いたいので、amplify-authenticator(@aws-amplify/ui-vue) のサインアップリンクを無効化しようとしてハマったのでメモを残す。
`isSignUpDisplayed: false` を食わせれば良いという記事はたくさんあるが、
肝心の食わせ方がまちまちでなかなか適用することができなかった。## 結論
“`vuejs
“``amplify-sign-in` に `slot=”sign-in” hide-sign-up=”true”` を渡すことで無効化できた。
## 参考リンク
https://github.
ECSでタスクが起動しない場合に確認すべきこと
タスク起動に失敗する原因は主に下記ですが、ここでは上記2つに関する事象に対応するための確認事項を記載していこうと思います。
– ネットワークエラー
– IAM権限不足
– リソース不足もし、ECSを利用してみたが、タスクが起動しなくて困っているなどあれば、下記の内容を見て実際の環境で確認してみてほしい。
## まず、エラーの確認
なにはともあれ、起動しなかったタスクのエラーログを確認しましょう。
[停止されたタスクでのエラーの確認 – Amazon Elastic Container Service](https://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/stopped-task-errors.html)
ここに下記のメッセージが出ている場合は、デプロイしたアプリケーションが正常に動作していない可能性が高いです。
– Essential container in task exited
– Task failed ELB health checksこの場合、**タスクは一度起動したが、アプ
VyOS で site-to-site VPN をしてみた
# はじめに
site-to-site VPN を使うことで、オンプレミスネットワークと VPC 間でセキュアな接続が出来ます。今回は、ソフトウェアルーターの VyOS を使って、site-to-site VPN の手順を紹介します。
# NW構成図
オンプレミス (10.0.0.0/16) と AWS VPC (10.1.0.0/16) 間で、VPN を設定します。
図の中の Public IP は既に削除しているので、アクセスできません![1611501513243.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/eebe8257-6c88-be57-5fd4-210c35e2fde2.png)
# オンプレミス側に、VyOS を作成
適当にオンプレミス側でVyOS の仮想マシンを作成します。詳細は Google さんに聞いてみましょう。
# Customer Gateway を作成
AWS側で、VyOS に対応する Customer Gateway を作
VPCピアリングを設定してみた
## VPCピアリングのおさらい
VPCピアリングとは `異なるVPCを接続する` ことができます。
CIDRブロックの重複や異なるリージョン間でのVPCピアリングはIPv6非対応です。## 構成図
今回構築する構成図はこちらになります。
10.0.0.0/16 と 192.168.0.0/24 の構成図があります。
こちらをVPCピアリング設定して内部のインスタンス同士でping接続出来るか確認してみます。![2021-01-20 VPCピアリング.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/b999e20f-c40f-558d-755a-ebe94b2a9d60.png)
構築しながら書いてるので、順序がバラバラでわかりにくくてすみません
## 構築
### VPC・subnetの構築 : 10.0.0.0/16
– VPCの作成します
VPC > VPCでこの画面になります
![2021-01-20 VPC構築お使いの VPC _ VPC Manageme
AWS CLIのコマンド補完設定時の戒め
# 戒め
将来の自分に向けて残します。
文章はちゃんと読みましょうという話です。ちなみに環境はmacOS,シェルは`zsh`です。
# AWS CLIコマンド補完設定方法(AWSドキュメントのとおり)
本来はこちらのAWS公式ドキュメントのとおりにコマンド補完の設定を行えば何も問題はありませんでした。
はい、私はなぜかドキュメントどおりに行いませんでした。。。https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-configure-completion.html#cli-command-completion-configure
上のリンクのAWS日本語版は少し古い上に分かりにくいので、英語版を見てください。
私は英語が得意ではないので、該当部分を一文ずつ選択してgoogle翻訳で確認しました。ドキュメントどおりに`~/.zshrc`の末尾に以下のコマンドを入力し、`. ~/.zshrc`を実行。
“`:~/.zshrc
autoload bashcompinit && bashcompinit
“`
AWSのDescribeAvailablePatchesを使ってみた
【執筆中】コードとかきれいにしてないけど現時点のメモ書きを載せておく
とりあえずセキュリティのパッチを取得してみる“` C#
public static async TaskSayHelloAsync([ActivityTrigger] string name, ILogger log)
{
//log.LogInformation($”Saying hello to {name}.”);
var ssmClient = AwsSsmService.GetClient();// Windows Server 2019
var request = new DescribeAvailablePatchesRequest();
var productFilter = new PatchOrchestratorFilter();
productFilter.Key = “PRODUCT”;
AWS Organizationsのタグポリシーを使ってみた
# タグポリシーとは
タグポリシーをOU(組織単位)にアタッチすることで、タグの標準化を推進してくれます。
タグポリシーの機能として
キーの大文字小文字の統一
バリューの制限
があり、非準拠のリソースを作成しないようにすることもできます。
ただし、タグを強制できる機能ではありませんので、その点はしっかりと覚えておく必要があります。
大文字小文字の統一では、作成するキーが`name`,`Name`とばらけるのを防いでくれます。
指定したキーを正しく入力さえしていれば、指定したバリューでしかリソースを作成できません。指定外のバリューを設定して作成すると、エラーが起きます。
しかし、タグポリシーでキーを`name`と指定し、実際に設定したものが`named`であれば、バリューの制限はできません。
キーは一言一句一致していなければなりません。
なお、以上の作成を防いでくれる機能は、デフォルトでは無効化されているので有効化する必要があります。# タグポリシーを使ってみる
![01Organizationsポリシー.png](https://qiita-image
ConfigをCloudFormationにより有効化して色々やってみた
# はじめに
1リージョンのみの`Config`の有効化は簡単・迅速に行えますが、マルチアカウント・マルチリージョンに対して有効化する場合、とても面倒な作業になります。
そこで、`CloudFormation`により`Config`を有効化することで、簡単にマルチアカウント環境に`Config`を有効化できるようにします。
ただ、この記事ではスタックセットは作成しません。
小さく始めたいので、まずはスタックから作成します。スタックセットは今後の記事で作成しようと思います。この記事で行うことは
+ Aアカウントの一つのリージョンで`Config`を有効化する
+ Bアカウントの一つのリージョンで`Config`を有効化し、配信先`S3`をAアカウントの`S3`にする
ことであり、上記作業を通して
+ `Config`の仕組み・挙動
+ `Config`の配信で`SNS`を設定した場合の通知量
+ `Config`配信を受信した`S3`の階層構造
+ `PutObject`の無料利用枠が他と比べて簡単に超える理由(超えない方もいると思いますが……)
+ 既存
Access Analyzerを全リージョンで有効化してみた
# はじめに
`Access Analyzer`は、外部エンティティと共有されているリソースを検出しますので、意図しない公開設定がないか可視化でき、セキュリティに役立ちます。
グローバルサービスだと思っていましたがリージョン別サービスだったので、`CloudFormation`でまとめて有効化を目指します。
なお、利用は無料です。# Access Analyzer有効化(コンソール)
![スクリーンショット 2021-01-24 20.33.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/344711/2ae30def-67a3-565d-3b12-25954af1af21.png)
右上のリージョン名をご覧いただければ分かる通り、グローバルではなく`東京`と記載されていることが分かります。
`IAM`のコンソールにあるのでグローバルだと思ってしまうかもしれませんが、リージョン別サービスです。![スクリーンショット 2021-01-24 20.35.31.png](http
CloudWatchイベントでスケジュールされたECSタスクをAWS SDK for Javaで直接起動する
## TL; DR
CloudWatchイベントでスケジュールされたECSタスクを、AWS SDK for Javaを利用して直接起動する機会があったので、備忘録がてら知見としてまとめます。## 環境
– AWS CLI: `2.1.16`
– Kotlin: `1.3.50`
– AWS SDK for Java: `2.8.7`## AWS CLI
やること自体はとても単純ですので、簡単にAWS CLIで動作確認していきます。まず、[list-targets-by-rule][list-targets-by-rule]でCloudWatchイベントでスケジュールされたECSタスクのパラメータを取得します。
“`bash
$ aws events list-targets-by-rule –rule “batch-schedule”
“`レスポンスを確認すると、`Arn`にクラスター名、`EcsParameters`以下にECSタスクの起動に必要なパラメータが色々設定されているのが分かります。
“`json
{
“Targets”: [
EC2 [Amazon linux] -> S3 ファイルアップロード
EC2 -> S3
“`
aws s3 cp [転送したいファイル] s3://[バケット名]
“`
AWS ソリューションアーキテクト 資格取得タイムトライアル 2日目
## 目次
1. [AWS ソリューションアーキテクト 資格取得タイムトライアル 1日目](https://qiita.com/marc-town/items/ea51f59d245294f332c2)
1. AWS ソリューションアーキテクト 資格取得タイムトライアル 2日目 ★今回の内容## 本日(2021/01/24)の学習時間
* 16:45〜17:45までの約1時間# 以下勉強内容
## AWS Direct Connect
### VPCピアリング
異なるVPCをプライベートネットワークでつなぐサービス### AWS Transit Gateway
外部接続するVPCが増えた場合に管理が煩雑になるが、それを一元管理するためのゲートウェイ### VPCエンドポイント
通常はインターネット接続が必要な他AWSサービスへのアクセスやAPI呼び出しを、プライベートネットワークからAWSサービスにアクセスするためのもので、方法は以下の2種類ある### ゲートウェイ型(ネットワークレイヤー)
ルートテーブルにターゲットを追加する(S3やDynamoDBなど)#
個人で作成したAMIを使ってEC2(Windows)を起動したら、IAMロールが割り当てられているのに他サービスにアクセスできない事象が発生した件について
#はじめに
表題にある通り、AWSから提供されているAMIをベースとして個人でAMIを作成し、そのAMIを使ってEC2(Windows Server 2019)を起動したら、IAMロールが割り当てられているにも関わらず、EC2からAWSの各サービスにアクセスできない事象が発生しました。
本記事は、現象の要因や対処等を備忘録としてまとめたものです。#問題詳細
###使用したAMIの詳細
ベースとしたAMIは以下です。
**Windows_Server-2019-Japanese-Full-Base-2020.12.09 – ami-027a63125bb60c403**
**Microsoft Windows Server 2019 with Desktop Experience Locale Japanese AMI provided by Amazon**上記AMIでEC2を起動後に個別にアプリをインストールし、AWSコンソールの「イメージを作成」で新しいAMIを作成しました。
![image.png](https://qiita-image-store.s3.ap-n
AWS_WEB3層環境構築③
前回の記事
https://qiita.com/shinichi_yoshioka/items/e358f57a3ecb7735c091
前々回(初回)の記事
https://qiita.com/shinichi_yoshioka/items/7226b9ebaad06c569c80
構成図
![構成図_v4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1032344/04b0c8ca-0c93-c0f9-2ae6-be4595574f25.png)前回の続きをやっていく。
VSCodeすら使ったことなかったが、VSCodeの拡張機能にdrawioというものがあって、
カッコ良いアイコンなどが使えるのを教えてもらった。
さっそく使ってみたが、色のセンスはお察しだ。初回記事ではDBの切り替えをしたいと書いたが、まずは正常な状態を作りたい。
WEBサーバにはリバースプロキシの設定(To:APサーバ)をし、APサーバでJSPを使って、
DBを参照できることを正常な状態とすることにした。◆リバー
EC2インスタンスのJupyter Notebookにローカルのブラウザから接続する
# 初めに
atmaCup オンサイトデータコンペ #9 に参加するにあたって、AWSのg4dnを動かしたいと思った。
(Azure使いたい!枠で参加表明しているので、計算資源には困らない)
手順を残しておこうと思い、自分用のメモとしてこの記事を書くことにした。
メモなので、雑に書いてる。本来、ある程度自動化するべき内容なのだろうけど…。
# 手順など
GPUインスタンスを初めて作るときは、予めGタイプのインスタンスを作れるようにしておくこと
## インスタンスを作成する
コンソールから上げた。Deep Learning AMI を選ぶ。Deep Learning AMI (Ubuntu 18.04) Version 39.0を選択した。
![Screenshot_2021-01-24 インスタンスウィザードを起動 EC2 Management Console.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/948481/0a647182-36ec-b40e-5ece-4f9b2d92
Amazon GuardDutyをはじめてみた
# はじめに
`Amazon GuardDuty`はAWSのリージョン別脅威検出サービスです。
CloudTrailログ、VPCフローログ、DNSログなど複数のAWSデータソースにより何百億件ものイベントを分析します。
今回はGuard Dutyがどのようなものかコンソールにより有効化してみて、最後に`CloudFormation`でも作成してみます。# GuardDuty有効化(コンソール)
![スクリーンショット 2021-01-24 16.35.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/344711/fc4647c0-c28b-f296-d202-ef1eb7a2097e.png)
サービスロールのアクセス権限を見てみます。
![スクリーンショット 2021-01-24 16.39.54.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/344711/80dd524e-0078-2e7a-
AWS ベストプラクティス 読んでみた
# はじめに
AWSのベストプラクティスを読んだり読まなかったり。
# IAM でのセキュリティのベストプラクティス抜粋
– https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/best-practices.html
## インラインポリシーではなくカスタマー管理ポリシーを使用する
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies
– インラインポリシー : IAM アイデンティティ (ユーザー、グループ、またはロール) に埋め込まれたポリシー
– カスタマー管理ポリシー : スタンドアロンポリシー、arn:aws:iam::〜の形でpolicyを利用できる`推奨理由`
– 再利用可能性
– 1つの管理ポリシーを複数のプリンシパルエンティティ (ユーザー、グループ、ロール) にアタッチすることができます。
– 一元化された変更管理
–
【初心者向け】S3, Athena, QuickSightを使用してcsvデータを可視化する
# はじめに
この記事ではデータをAWS上で分析・可視化するための1つの方法を紹介いたします。
実際に手順の通りに手を動かしていただき、各サービスの理解を深めていただければ幸いです。
作業で発生する料金は1$かかるかかからないかくらいになりますのでご安心ください。(無料枠を使用した場合)
以下は作業の流れです。
1. 可視化する対象のデータを入手する
2. 対象のデータをAWSへアップロードする
3. 対象のデータのカラム情報を登録する
4. 対象のデータを可視化サービスに取り込む
5. 対象のデータを可視化する# 各AWSサービスの紹介
今回使用するAWSサービスについて簡単に説明いたします。
## [Amazon S3(Simple Storage Service)について](https://aws.amazon.com/jp/s3/?nc=sn&loc=1)
S3はAWSが提供するオブジェクトストレージサービスになります。
### [特徴](https://aws.amazon.com/jp/s3/features/#Access_managemen
【AWS】EC2を間違えて終了(削除)してしまわないよう、終了保護の設定をする
#はじめに
本記事では、AWSのマネジメントコンソールからEC2インスタンスの管理をする時に、
誤操作でうっかりインスタンス(サーバー)を**「終了」(削除)**してしまわないように対策する方法をご紹介します。
(インスタンスを一度削除してしまうと、**もう復元することはできない**ので要注意です。。!)![スクリーンショット 2021-01-24 16.20.25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/613419/cf3fb222-db19-39ca-7753-0b73c7c1a3a7.png)
画像の例では、EC2のマネジメントコンソールで「Test」という名前のインスタンスを選択した状態で、**「インスタンスの状態」**タブを開いています。
すると、**①インスタンスを停止**
**②インスタンスを終了**等