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

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

JavaでAWS S3オブジェクトの削除

AWS SDK for Javaを利用して、S3のオブジェクトを削除できます。

#1つのオブジェクトの削除
bucket名とオブジェクトキーを指定すれば、削除できます。

“` Java
try {
final AmazonS3 s3 = new AmazonS3Client();
s3.deleteObject(bucket_name, object_key);
} catch (AmazonServiceException e) {
e.printStackTrace();
}
“`
#指定フォルダーにある全てのオブジェクトの削除
bucket名とフォルダー名を指定すれば、指定フォルダーにある全てのオブジェクトを削除できます。

“` Java
try {
final AmazonS3 s3 = new AmazonS3Client();
  ObjectListing objListing = s3.listObjects(bucket_name,key_prefixes[2]);
List obj

元記事を表示

AWSに手動でデプロイする

AWSに入って手動でデプロイしたときのコマンドです。

前提
– EC2インスタンス作成済
– RDS DB(mysql)作成済

“`bash
# updateして必要なものを入れる
sudo yum -y update
sudo yum install -y git curl unzip gcc openssl-devel readline-devel mysql-devel

# git config
git config –global user.name “xxxxxx”
git config –global user.email “xxxxxxxx@email.com”

# timezone
sudo timedatectl set-timezone Asia/Tokyo

git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo ‘export PATH=”$HOME/.rbenv/bin:$PATH”‘ >> ~/.bash_profile
~/.rbenv/bin/rbenv init

mkdir

元記事を表示

VPCフローログのカスタム形式をCloudWatch Logs Insightでフィールド抽出してみた

## はじめに
つい先日、久しぶりにAWSのVPCでフローログの作成をしました。
するとなんと、、CloudWatch Logsへの送信で**Custom format(カスタム形式)**にチェックを入れられるではないですか!!( ゚д゚)/
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211371/dfeb58bc-5326-8a57-04da-606ed0e2cc8e.png)

ということで、クラスメソッドさんのDevelopers.IOを検索してみると、GW中にアップデートされていました。

**【参考】**
・[VPCフローログのカスタム形式でCloudwatch Logsがサポートされました][00]

## カスタム形式とは
2019年9月までは、**AWS default format(デフォルト形式)**と呼ばれる決まったログフォーマットを採用していました。

“`text:デフォルト形式

元記事を表示

DynamoDBで条件に一致するレコードをまとめて削除する。

GUIでは一覧表示から全件チェックして削除できるが1度に実施するコマンドはない。
おそらくget-itemし表示しているデータを片っ端からdelete-itemしているのではなかろうか。
前方一致したレコードを全て削除する機会があり手でぽちぽちするのも面倒なので調べてみた。

# そもそものputとdelete(CLI)

## put-item

* 数字もクオーテーションでくくる。
* jsonも入れられる。ただ、クオートをエスケープする必要はある。

“`sh
$ aws dynamodb put-item –table-name test –item ‘{“part”:{“S”:”hoge”}, “num”:{“N”:”1″}, “obj”:{“S”:”{\”test\”: \”aaa\”}”}}’
“`

* 同じパーティションキーで叩くとエラーはしないで勝手に上書きされる。
* そもそもレスポンスは何もない。
* 返値が欲しいときはオプションで色々指定できる。

“`sh
$ aws dynamodb put-item –table-name test –i

元記事を表示

AWS: セキュリティとアイデンティティ

# セキュリティとアイデンティティ
## セキュリティとアイデンティティ
### AWSのアカウントの種類
AWSにはAWSアカウントとIAMユーザーと呼ばれる2種類のアカウントがある。

– AWSアカウント
– AWSのすべてのサービスをネットワーク上のどこからでも利用可能
– ルートユーザーとも言われる
– IAMアカウント
– AWSを利用する各利用者向けに作成されるアカウント
– 必要に応じて*AWSアカウント*ユーザーにより作成される
– AWSの各利用者がWebコンソールログインして操作するとき、APIを利用してAWSを操作するときなどに利用
– IAMユーザーには最小限の権限を付与することでセキュリティの安全性を高めることができる

### IAMの機能
1. AWSサービスやAWSリソースに対する操作権限をIAMポリシーとして定義
2. IAMポリシーをIAMユーザーやIAMグループにアタッチする
3. IAMユーザー、IAMグループに属するIAMユーザーがマネジメントコンソールにログインすると、付与された権限の操作を行

元記事を表示

【AWS SAP】AWS WAF【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第16弾
以下の違いについて覚えておいて損はありません。

・AWS WAF

##AWS WAFとは
そもそも、WAFはWeb Application Firewallの略称です。

アプリケーションを保護してくれます。
AWS WAFは、一般的なウェブの脆弱性からアプリケーションを保護します。

(以下、公式サイトより)
> AWS WAF は、可用性、セキュリティ侵害、リソースの過剰消費といった一般的なウェブの脆弱性からウェブアプリケーションまたは API を保護するウェブアプリケーションファイアウォールです。AWS WAF では、SQL インジェクションやクロスサイトスクリプティングなどの一般的な攻撃パターンをブロックするセキュリティルールと、定義した特定のトラフィックパターンを除外するルールを作成できるため、トラフィックがアプリケーションに到達する方法を制御できます。AWS または AWS Marketplace 販売者が管理する事前設定済みのルールセットである AWS WAF のマネージドルールを使用して、すぐに

元記事を表示

【AWS SAP】AWS shield【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第14弾
以下サービスについて覚えておいて損はありません。

・AWS shield

##AWS shieldとは
DDoS対策のためのサービス。
AWS Shield StandardとAWS Shield Advancedが存在します。

*AWS Shield Standard
追加費用なし。
YN/ACK フラッド、リフレクション攻撃、HTTPスローリードなど、今日最も一般的な攻撃の96%から守ってくれます。

*AWS Shield Advanced

ボリューム攻撃に対する追加のDDoS軽減機能、インテリジェントな攻撃検出、アプリケーションおよびネットワーク層での攻撃に対する軽減を提供。

DDoS攻撃の影響で請求金額が急増することを防ぐために、AWSのDDoSレスポンスチーム(DRT)が24時間365日サポートしてくれます。

利用料金は高め。

(以下、公式サイトより)
> AWS Shield はマネージド型の分散サービス妨害 (DDoS) に対する保護サービスで、AWS で実行しているアプリケーションを

元記事を表示

Amazon Rekognition とは

#Amazon Rekognition とは
> Amazon Rekognition では、イメージ分析とビデオ分析をアプリケーションに簡単に追加することができます。Amazon Rekognition API にイメージやビデオを指定するだけで、このサービスによってモノ、人物、テキスト、シーン、アクティビティを識別できます。不適切なコンテンツも検出できます。Amazon Rekognition は、高精度な顔分析、顔比較、および顔検索機能も備えています。顔の検出、分析、比較は、ユーザー検証、カタログ作成、人数計数、公共安全など、多岐にわたって活用できます。

##Amazon Rekognition の仕組み
> Amazon Rekognition には 2 つの API セットがあります。Amazon Rekognition Image はイメージ分析に、Amazon Rekognition Video はビデオ分析に使用します。

#センサー、入力イメージ、ビデオのベストプラクティス
##Amazon Rekognition Image オペレーションのレイテンシー
> イメ

元記事を表示

【AWS SAP】ブルーグリーンデプロイメント【予備知識編】

##AWS SAP取得に向けて予備知識としてあった方が良いもの

・ブルーグリーンデプロイメント

##ブルーグリーンデプロイメントとは
ブルーとグリーンという2つの環境を用意する。
ルーティングは片寄しておく。
例えば、ブルー側でサービスが本番稼働している場合、もう1つの環境(グリーン)で新しいアプリケーションをデプロイし、ルーティングの向け先をグリーンに振り向けることでバージョンアップを行うという手法のこと。

問題が発生した場合は、ルーティングの向け先を戻し切り戻しを行います。

以下サイトの内容が非常に分かりやすかったです。
https://www.google.co.jp/amp/s/cloudpack.media/25426/amp

元記事を表示

【AWS SAP】Amazon Workdocs【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第13弾
以下サービスについて覚えておいて損はありません。

・Amazon Workdocs

##Amazon Workdocsとは
コンテンツの作成、編集、共有が可能。
Workdocsアカウントを持たないユーザに対しては、ReadOnlyで共有できます。

イメージとしては、dropboxやboxのようなサービスです。

(以下、公式サイトより)
> Amazon WorkDocs はコンテンツの作成、ストレージ、コラボレーション用の安全なフルマネージド型サービスです。Amazon WorkDocs を使用すると、コンテンツの作成、編集、共有が簡単になります。また、AWS 内に一元管理で格納されるため、どこからでも、どんなデバイスからでもアクセスできます。Amazon WorkDocs では他のユーザーとのコラボレーションが容易になり、コンテンツ共有、豊富なフィードバックのやりとり、文書の共同編集を簡単に行えます。また、Amazon WorkDocs を使用してファイル共有をクラウドに移行することにより、古いファイル

元記事を表示

【AWS SAP】AWS Discovery Service【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第12弾
以下サービスについて覚えておいて損はありません。

・AWS Discovery Service

##AWS Discovery Serviceとは
オンプレミスで稼働しているサーバの各情報を取得し、アセスメント・分析を行うための支援をしてくれる。

移行時、情報収集に苦労する場合があるがADSを利用すると楽に情報収集が可能です。

・収集したデータはAWSのDBに安全に保持
・データを収集するにあたりエージェントのタイプが2つある

*エージェントレス
osパッケージなどは取得不可。

*エージェントベース
サーバにエージェントをインストールし、情報を収集。サーバ上の詳細な情報(パッケージ、プロセス、ネットワーク通信など)を収集できます。

元記事を表示

[aws-cli tips] aws-cliを使ってEC2インスタンスのEBSのスナップショットを作成する

# はじめに
大量のEC2インスタンスのEBSのスナップショットを作成しようとすると、AWSコンソール上からポチポチやるのでは辛いところがあります。そこで、aws cliを使いコマンドライン上で、EC2インスタンス名からEBSのスナップショットを作成する手順を備忘録として残します。

# aws cli
まず、今回使用するaws cliについて軽く解説をします。[本家の解説ページ][awscli]より引用。
> AWS Command Line Interface (AWS CLI) は、コマンドラインシェルでコマンドを使用して AWS サービスとやり取りするためのオープンソースツールです。

aws cliには大量のサブコマンドがあり、それらを用いてaws上の各種リソースにアクセスします。今回使用するコマンドは以下の二つです。

– `aws ec2 describe-instances`
– `aws ec2 create-snapshot`

`describe-instances`はインスタンスの情報を取得するためのコマンド、`create-snapshot`はEBSのスナップ

元記事を表示

【AWS SAP】AWS SQS FIFO【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第11弾

以下のサービスについて覚えておいて損はありません。

・AWS SQS FIFO

##AWS SQS FIFOとは
重複削除、単一実行、順序取得に対応。

FIFOでないSQSでは以下のデメリットがある。
・順番が保証されない
・メッセージが重複する可能性がある
・呼び出し側が2回呼んだら、2回実行しちゃう

一方で、FIFOキューでは、
・順番が保証される
・複数回実行しません
・同じ呼び出しをしたら削除します。

(以下、公式サイトより)
> FIFO (先入れ先出し) キューは、オペレーションやイベントの順序が重要である場合、または重複不可の場合などにアプリケーション間のメッセージングを強化します。たとえば、次のような場合です。
ユーザーが入力したコマンドが正しい順序で実行されていることを確認します。
価格の変更を正しい順序で送信して、正しい製品価格を表示します。
アカウントを登録する前に受講者がコースに登録できないようにします。
FIFO キューはまた、1 回だけの処理を提供しますが、1 秒あたりのトラ

元記事を表示

【AWS SAP】AWS EBSのタイプ【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第10弾
以下の違いについて覚えておいて損はありません。

・プロビジョンド IOPS SSD
・スループット最適化 HDD
・最適化インスタンス

##プロビジョンド IOPS SSDとは
I/Oの性能を保証する。

(以下、公式サイトより)
> プロビジョンド IOPS SSD (io1) ボリュームは、ランダムアクセス I/O スループットにおけるストレージパフォーマンスと整合性が重要な、I/O 集約型ワークロード (特にデータベースワークロード) のニーズを満たすように設計されています。バケットとクレジットのモデルを使用してパフォーマンスを計算する gp2 とは異なり、io1 ボリュームでは、ボリュームの作成時に一定の IOPS レートを指定できます。Amazon EBS は、プロビジョンドパフォーマンスを 99.9% 提供します。

##スループット最適化 HDDとは
SSDほどの性能を必要とせず、コスト削減したい場合に利用。

(以下、公式サイトより)
> スループット最適化 HDD (st1) ボリュームは、I

元記事を表示

【AWS SAP】Route53の4つのルーティングポリシー【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第9弾
以下の違いについて覚えておいて損はありません。

・加重ラウンドロビン
・レイテンシーベースルーティング
・位置情報ルーティング
・フェイルオーバールーティング

##加重ラウンドロビンとは
各レコードに重み付けをし、任意の名前に対するクエリに指定された比率で異なる値を応答。

##レイテンシーベースルーティングとは
クライアントが任意の名前にアクセスした際、レイテンシーが小さくなるような近場のリージョンから応答。

##位置情報ルーティングとは
クライアントのIPアドレスを元に、チリデータベースでクライアントの接続地域を特定。
地理的に近い場所から応答。

##フェイルオーバールーティングとは
ヘルスチェックでNGだった場合に、冗長構成であれば片寄するといったことが可能。

参考)
ルーティングポリシーの選択
https://docs.aws.amazon.com/ja_jp/Route53/latest/DeveloperGuide/routing-policy.html

元記事を表示

S3に保存されているgz圧縮されたjson形式ログを確認する

# 概要
アプリケーションログやDBログなどS3にgz形式で保存した場合のログの確認方法についてまとめます。

# 前提
– AWS CLIが使用できる

本記事ではバケット内のファイルをダウンロードしておりますが、jsonなどのテキストファイルであればS3 SelectやAthenaも選択肢に入れておくと良いです。

# 今回使用するもの
AWS S3
ターミナルなどの

# 方法
## 1. ダウンロードする

`ダウンロードする前にダウンロードしたいフォルダに移動しておきましょう。`

### まずはS3内のバケットを確認

“`
aws s3 ls
“`

下記のようにバケットが表示されます

“`
2020-01-17 20:36:54 バケットA
2020-01-17 21:42:54 バケットB
“`

### ダウンロード

“`
aws s3 sync s3://バケットA
“`
バケットAの中身全てローカルにダウンロードされます

## 2. ログを確認する

“`
find {フォルダA} -type f | xargs gzcat | jq | g

元記事を表示

【AWS SAP】Route53のヘルスチェックおける正常性確認について【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第8弾

・Route53のヘルスチェックにおける正常性確認について

##Route53とは
DNSサービス。

(以下、公式サイトより)
> Amazon Route 53 は、可用性と拡張性に優れたクラウドのドメインネームシステム (DNS) ウェブサービスです。Amazon Route 53 は、www.example.com のような名前を、コンピュータが互いに接続するための数字の IP アドレス (192.0.2.1 など) に変換するサービスで、開発者や企業がエンドユーザーをインターネットアプリケーションにルーティングする、きわめて信頼性が高く、コスト効率の良い方法となるよう設計されています。Amazon Route 53 は IPv6 にも完全準拠しています。

##Route53のヘルスチェック
エンドポイントをモニタリングするヘルスチェックを作成すると、エンドポイントが正常であるかどうか確認します。

##エンドポイントの正常性確認

・HTTP/HTTPS ヘルスチェック
HTTP ステータスコード 2

元記事を表示

【AWS SAP】ElastiCacheのMemcachedとRedisの違い【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第7弾
以下の違いについて覚えておいて損はありません。

・ElastiCache Memcached
・ElastiCache Redis

##Memcachedとは
マルチスレッドで動作する。
CPUのコア数を上げると、パフォーマンスも上がる。

(以下、公式サイトより)
> 以下がお客様の状況に当てはまる場合は、Memcached を選択します。
できるだけシンプルなモデルが必要である。
複数のコアまたはスレッドを持つ大きなノードを実行する必要がある。
システムでの需要の増減に応じてノードを追加または削除するスケールアウトおよびスケールイン機能が必要である。
データベースなどのオブジェクトをキャッシュする必要がある。

##redisとは
シングルスレッドで動作する。

(以下、公式サイトより)
>以下の状況が当てはまる場合は、Redis を Redis 用 ElastiCache のバージョンと共に選択します。
Redis 用 ElastiCache バージョン 5.0.0 (拡張)
プロデューサーが新しいアイテム

元記事を表示

【AWS SAP】AWS Trusted Advisor【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第6弾

・AWS Trusted Advisor

##AWS Trusted Advisorとは
「コスト最適化」、「パフォーマンス」、「セキュリティ」、「フォールトトレーランス」の4つの項目で、AWSが自動で利用状況を精査し、アドバイスを送ってくれるものです。

##ポイント
ビジネスサポートもしくはエンタープライズサポートを契約する必要がある。

元記事を表示

【AWS SAP】AWS Config と AWS cloudtrail【頻出】

##AWS SAP取得に向けて勉強する中で覚えてよかったもの 第5弾
以下サービスについて覚えておいて損はありません。

・AWS Config
・AWS cloudtrail

##AWS Configとは
AWSリソースの利用において、いつ、誰が何を使って何をしたのか、全て記録。

(以下、公式サイトより)
> AWS Config は、AWS リソースの設定を評価、監査、審査できるサービスです。Config では、AWS リソースの設定が継続的にモニタリングおよび記録され、望まれる設定に対する記録された設定の評価を自動的に実行できます。Config を使用すると、AWS リソース間の設定や関連性の変更を確認し、詳細なリソース設定履歴を調べ、社内ガイドラインで指定された設定に対する全体的なコンプライアンスを確認できます。これにより、コンプライアンス監査、セキュリティ分析、変更管理、運用上のトラブルシューティングを簡素化できます。

##AWS cloudtrailとは
AWSマネジメントコンソールやAWS の SDK やコマンドラインツールなどのユーザーアクティビティとAPI使用状

元記事を表示

OTHERカテゴリの最新記事