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

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

【Redshift】2022年上半期の最新情報まとめ

クラウドデータウェアハウスの雄、Redshiftの2022年上半期最新動向をまとめてみました。

普段からRedshiftを触っていても、最新動向のキャッチアップは優先度が低くなりがちだと思いますので、本記事をお役立てください。

# Redshiftとは

Redshiftは、スピーディ・簡単・安全なクラウドデータウェアハウスです。
– ユーザーはインフラ管理に煩わされない。よって、スピーディな分析で洞察を得ることに集中できる。
– 運用データベース、データレイク、データウェアハウス、サードパーティデータセットに含まれる全てのデータを分析できる
– 他社のクラウドデータウェアハウスと比べ、最大3倍の価格性能比。クエリ速度を向上させるための自動化機能も搭載する。

上記のポイントを念頭に、一言で表現すると、
**Redshiftは、データウェアハウス、運用データベース、データレイクにまたがる構造化・半構造化データをSQLで分析し、AWSが設計したハードウェアと機械学習により、あらゆるスケールで最高のコストパフォーマンスを実現する。**

![Amazon-Redshift-HIW@2x

元記事を表示

Amazon QuickSightについて調べてみた

# 背景
QuickSightについて、それほど使用した経験が無いので、どのような機能や特徴を持っているか整理します。

# 概要
クラウド規模のビジネスインテリジェンス (BI) サービス。
クラウド内のデータに接続し、さまざまなソースのデータを結合できる。
単一のデータダッシュボードに、以下のデータを含めることが可能。
– AWS データ
– サードパーティーデータ
– ビッグデータ
– スプレッドシートデータ
– SaaS データ
– B2B データ
フルマネージド型のクラウドベースのサービスで、以下を提供する。
– エンタープライズグレードのセキュリティ
– グローバルな可用性
– 組み込みの冗長性
– ユーザー管理ツール

意思決定者がインタラクティブなビジュアル環境で情報を探求し、解釈する機会を提供する。
ネットワーク上の任意のデバイスおよびモバイルデバイスから、ダッシュボードに安全にアクセスが可能。

## QuickSight を使用する理由
### 分析、データ視覚化、報告にAmazon QuickSightを使用するメリット
– インメモリエンジン(SPICE)によ

元記事を表示

Terraform 入門から精通まで(variable)

## 概要
Terraformで変数(variable)の使い方をご紹介させていただきます。

## 1.tfファイルに定義
“`
terraform {
required_providers {
aws = {
source = “hashicorp/aws”
version = “~> 3.0”
}
}
}

# Configure the AWS Provider
provider “aws” {
region = “ap-northeast-1”
access_key = “xxxxxx”
secret_key = “xxxxxx”
}
resource “aws_vpc” “test-vpc” {
cidr_block = “10.0.0.0/16”
tags = {
Name = “test-vpc”
}
}

variable “test-subnet-cidr-block” {
description = “cidr block for subnet”
def

元記事を表示

仕事と育児を両立させるためにAWS SAPを取得した話

# 合格体験記
 AWSの最難関資格と言われるSAPに合格しました。
なので、カテゴリといえば合格体験記に入るのですが、SAPの合格体験記なんて、インターネットでググれば腐るほど出てくるので、勉強時間や方法についてはそれらとほぼ同じになります。
 簡潔に書くと、1ヶ月間で50~100hほど使って、過去問を600問ほど解きました。最初のうちは問題の文章の中に聞いたことのない未知の語句が1~3個出てくるので、いちいちその語句をググって概要やハンズオン記事を、過去問全体が理解できるまでひたすら読みました。過去問は本、koiwaiサイト、udemyを使えば十分かと思われます。合格体験記の部分はこれで終わり。

# SESのエンジニアが妊娠して子供を育てるには?
 残したかった部分はこちらになります。中途未経験からキャリアを始め、SESのエンジニアとしては4年目。何もできない新人ではないけれど、一人前とみなしてお仕事を任せるにはちょっと頼りない。そんな、どこにでもいる普通のエンジニアの私です。しかしこの度妊娠が決まり産休/育休に入ることになりました。
 
 我ながらおめでたいことなのですが、喜ん

元記事を表示

Azure Stack EdgeとAWS Outposts serversを調べる

私自身は大枠オンプレのサーバー屋なのだが、最近立て続けにAzure Stack EdgeとAWS Outposts servresの話題を耳にし、あれそういうトレンドなのか?とも思い始めて、ちょっと調べてまとめようと思った。
思い立ったら追記していくかも。

Azure Stack EdgeとAWS Outposts servers、どちらも1~2Uサイズからの物理サーバーを顧客のオンプレに貸し出すというサービスである。
サーバー単位で貸し出しというのが新しく、例えばAWS Outposts(serversじゃない)は以前はラックが最小貸出し単位で、高いし大きいし、あまり食指の動くものではなかった。

# 代表的スペック

**Azure Stack Edge**
https://azure.microsoft.com/ja-jp/products/azure-stack/edge/

現時点で、Azure Stack Edge Pro 2のModel 64G2Tがメインストリームだろう。2Uのラックサーバー。
CPUはIntel Xeon 6209U(物理20コア、ベース2.10GH

元記事を表示

ecs のタスクが頻繁に落ちるようになった

ecs のタスクが頻繁に落ちるようになった際の解決法
めちゃくちゃ時間がかかったので覚え書きのメモ

# 起こったこと
ecsで立てたサイトに接続すると
503 service temporarily unavailable
と表示されるようになった。

AWSを見てみるとタスクが異常終了して再起動を繰り返していた。

# 改善方法
stopしたタスクの詳細を見てみると
停止理由 Task failed ELB health checks in (target-group arn:*************)
と表示されていた。
health checksが失敗しているらしい

調べてみると似たような症状の人を見つけた
参考:https://soypocket.com/it/ecs-cluster-taskfailed-elb-healthcheck/

とりあえずタスクの更新で
ヘルスチェックの猶予期間 を3600まで伸ばしてみる

落ちなくなりました。
が、結局根本的な原因はわかりませんでした…

元記事を表示

rsyncでEC2のディレクトリの権限を書き換えてしまいsshできなくなって死ぬほど焦った話

# 環境

– AWS
– EC2 Ubuntu 20.04.3 LTS

# 経緯

– ファイルを今すぐサクッとアップロードしたい(一部、除外したいファイルがある)
– `scp` だと、除外するのが面倒だ
– よし、`rsync` を使ってしまおう

“`
rsync -av my-special-app my-pretty-ec2:
“`

とコマンドを実行するつもりが、勢い余って

“`
rsync -av my-special-app/ my-pretty-ec2:
“`
とコマンドを実行してしまう

– 「ローカルのフォルダ自体」を「EC2のディレクトリ」に同期してしまう
– (-aオプションを深く考えず付けてしまったので、可能な限りローカル側のファイルがリモートで再現される)

# トラブル

– その後、`Permission denied (publickey)` になり、`ssh` できなくなる

# 原因

– rsyncによって、ディレクトリの権限が書き換わってしまったから
– (焦りすぎて思考能力、状況把握能力が、ほぼゼロになり、.sshフ

元記事を表示

codebuildでのerror対処

こんにちは。anoneです。
今回はcodebuildでプロジェクトを作成し、走らせた時に引いたエラーの話をします。

## 前提
* buildspec.yml内でdiffコマンドを用いて実行している
* codebuildのプロジェクトを実行し、コンソール上で発生したエラー内容を以下に記している

## エラー内容
結論から言うと、原因はbuildspec.ymlの中のdiffコマンドで差分を確認した際のエラーでした。
エラー内容は以下です

“`
Reason: exit status 3
“`

記載していたbuildspec.ymlを修正したところ、エラー内容が変わりました
“`
Reason: exit status 1
“`
調べた感じだと、buildspec.ymlの中でdiffコマンドを実行時に、diffコマンドが確認した差分からエラーが発生していました
戻り値としては以下のようなものが想定されるとのことです
(詳細は参考資料を見てください)
|戻り値|説明|
|—|—|
|0|ファイルは同一です|
|1|ファイルは異なっています|
|2以上|エラー終

元記事を表示

AWS Control Towerでマルチアカウント管理環境を構築してみた

![img](https://day-journal.com/memo/images/logo/aws/controltower.png)

### AWS Control Towerでマルチアカウント管理環境を構築してみました :tada:

[AWS Control Tower](https://aws.amazon.com/controltower)とは、セキュアなAWSマルチアカウント管理環境を構築できるサービスです。[AWS Organizations](https://aws.amazon.com/organizations)や[AWS SSO](https://aws.amazon.com/single-sign-on)も自動で設定されるので、手動でのアカウント作成に比べて手軽に設定可能です。以前会社で導入して便利だったので、今回は個人アカウントにも導入してみました。個人アカウントでは追加でproduction・staging・develop・test環境を構築し管理しています :thumbsup:

詳細として下記について説明します。

元記事を表示

【AWS CDK v2】VPC LambdaからAWS Batchにジョブを投入する構成を作ってみた

# はじめに
AWS Batchにジョブを投入する方法はいくつかありますが、今回はVPC LambdaからAWS Batchにジョブを投入する構成をAWS CDKで作ってみました。

# 構成図
VPC LambdaからAWS Batchにジョブ投入のリクエストを送る流れを示した図です。
VPC Lambdaは実際にはVPCの外にあり、ENI、VPC Endpointを経由してAWS Batchにジョブ投入のリクエストを送信することになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/123126/be54a91f-2075-3b60-c02d-6de27c089d47.png)

# 動作環境
“`bash
$ cdk –version
2.30.0 (build 1529743)
$ node –version
v14.19.3
“`

# やってみた
前提として、VPC、サブネットはすでに作成済であるとします。

## AWS Batchを作る

まず、次のような

元記事を表示

【Athena】Prepared Statementを試してみた

# 背景・目的
[こちら](https://aws.amazon.com/jp/about-aws/whats-new/2022/07/amazon-athena-enhances-console-api-parameterized-queries/)の記事を読んで、Athenaでパラメータ化されたクエリが強化されたということを知ったので、試してみたいと思います。

なお、自分は知りませんでしたが、パラメータ化されたクエリ自体は以前から利用可能で、今回は強化されたとのことでした。
今回のアップデートによりは、コンソールからパラメータ化されたクエリが利用できるようになったようです。

# まとめ
* AthenaでもPrepared Statementが使える。
* マネコン、API、CLIから利用可能。

# 概要
## パラメータ化されたクエリ
実行時に、異なるパラメータ値で同じクエリを再利用することで、再利用性、シンプル化、SQLインジェクション攻撃を防ぐことができます。

## 考慮事項と制限事項
* Athenaエンジンバージョン2のみ
* SELECT、INSERT INTO

元記事を表示

Resolver のクエリのログ記録を他アカウントのS3バケットに保存する方法

やりたいこと

Route53 Resolverのクエリのログ記録先を他アカウントのS3バケットに保存する

参考サイト

バケットポリシー書いてるサイト

ポリシーのリージョン指定方法

S3バケットポリシー

“`

{
“Version”: “2012-10-17”,
“Id”: “CrossAccountAccess”,
“Statement”: [
{
“Ef

元記事を表示

Athenaのunloadが業務で必要だったので試してみた

## 結論
クエリを実行した結果、s3に想定したファイルが出力がされた
また、CLIからも実行可能

## 実行
以下のクエリを記載しathenaのコンソール上から実行
“`
UNLOAD (SELECT
hoge,
fuga,
piyo
FROM
db.table) TO ‘s3://xxxxx/xxx/’
WITH (format = ‘AVRO’)
“`
→指定のS3にavro形式でファイルが出力された

AWS CLIを利用してクエリを出力することが可能なのか?
以下のCLIを実行
“`
aws athena start-query-execution \
–query-string ”UNLOAD (SELECT hoge, fuga, piyo FROM db.table) TO ‘s3://xxxxx/xxx/’ WITH (format = ‘AVRO’)”
“`
結果を確認
“`
aws athena get-query-execution –query-execution-id xxxxxxxx | jq ‘.QueryExec

元記事を表示

[AWS] CloudFront に適用されてるセキュリティポリシーをリストアップしたい

AWSダッシュボードで表示されたり検索できればいいんだけど、できないので
(表示可能な列にセキュリティポリシーを表示されればよかったんですが…
![スクリーンショット 2022-07-12 18.24.33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25964/7cff76b8-26e3-c900-d466-cea06893ea2a.png)

ってことで、aws-cli で出力して、jq で整形しましょうかね

“`bash
$ aws cloudfront list-distributions –max-items 100 \
| jq -r ‘.DistributionList.Items[]|[.Id,.ViewerCertificate.SSLSupportMethod,.ViewerCertificate.CloudFrontDefaultCertificate,.ViewerCertificate.MinimumProtocolVersion]|@csv’

“EXXXXXX

元記事を表示

AWSの無料利用枠超過はどうやって判断するの?

# 概要
久々の投稿になりますが、AWSが提供している無料利用枠を活用してAWSの学習を行っています。
UdemyやAWSが提供しているハンズオンを活用して、AWSのサービスを使っている時に「無料枠」に収まっているのか気になりました。
というか、このまま放っておいて、課金破産とか想像すると夜も眠れません。なので、確認方法を調べてみました。既に誰かが調べているかもしれませんが、備忘として残しておきます。

# 前提・注意事項
・2022年7月時点の情報です。画面イメージは頻繁は時期によって変化するはずです
・他に適切な方法もあるかもしれません。あくまでも個人的な調査結果、判断なので、もし間違ってたり、他に簡単な方法等あればコメント頂けると泣いて喜びます私もアップデート事項等あればこのページを更新します。
・個人情報に関する項目についてはマスクしています

# 調査内容
## 今どのくらい使っているのか確認する
アカウント名を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/367069

元記事を表示

「OCI Functions」と「 AWS Lambda」の比較

# 全体な比較

||OCI Functions|AWS Lambda|
|–|–|–|
|リリース|2019年7月|2014年11月|
|ベース|[Fn Project](https://fnproject.io/)|N/A|
|サポート言語|✔ Java
✔ Python
✔ Ruby
✔ Go
✔ Node.js
✔ C# (.NET)
[ドキュメント](https://docs.oracle.com/ja-jp/iaas/Content/Functions/Tasks/languagessupportedbyfunctions.htm)をご参照ください。|✔ [Java](http://docs.aws.amazon.com/lambda/latest/dg/java-lambda.html)
✔ [Python](http://docs.aws.amazon.com/lambda/latest/dg/python-lambda.html)
✔ [Ruby](https://docs.aws.amazon.com/lamb

元記事を表示

Cloudwatchでインスタンスを監視をする

# 概要
CloudwatchAgentを用いたEC2インスタンスの監視をやります。

## エンドポイントを作る
プライベートサブネットからCloudWatch Agentを利用する場合は下記のエンドポイントを作成する必要があります。
VPCからエンドポイントを作成してください。

“`
com.amazonaws.ap-northeast-1.monitoring
com.amazonaws.ap-northeast-1.ec2
com.amazonaws.ap-northeast-1.logs
“`

## IAMポリシーを作る
下記の権限を持つポリシーを作成し、CloudwatchAgentを入れるEC2にアタッチします。
– CloudWatchAgentServerPolicy

エラーに苦しんだら下記を当ててください。正直権限的にやりすぎなので切り分けなどの目的で行うことを推奨します。
– AmazonEC2ReadOnlyAccess
– CloudWatchFullAccess
– AmazonSSMFullAccess

## セキュリティグループに穴をあける

元記事を表示

[AWS]オンプレミスからSite-to-Site VPNを利用してS3にアクセスする

オンプレミスからS3にアクセスするには色々な方法がありますが、今回は 「AWS Site-to-Site VPN」を使い、オンプレミスとAWS間をVPN接続し、オンプレミスからS3にアクセスするパターンをご紹介します。

## オンプレミスとAWSの接続方法
専用線、またはVPNを利用した接続は以下の3つがあります。
・ Direct Connect
・ Client VPN
・ Site-to-Site VPN

「Direct Connect」は専用線を利用した接続になるので最もセキュアかつ安定した通信が行えますが、導入は時間がかかり費用も高額になります。
「Client VPN」、「Site-to-Site VPN」はインターネット回線を利用できるので比較的安価に利用出来ますが、通信の安定性では「Direct Connect」よりは劣ります。
今回はオンプレとAWSを常時接続するイメージで「 Site-to-Site VPN」を利用します。

## Site-to-Site VPNの概要
・ VPCに関連付けされたトランジットゲートウェイ、または仮想プライベートゲートウェイを経由

元記事を表示

AWS認定高度なネットワーキング専門知識勉強メモ

はじめに

[AWS認定高度なネットワーキング-専門知識](https://aws.amazon.com/jp/certification/certified-advanced-networking-specialty/)受験のために整理した勉強メモです。

受験当時の私の知識がベースになっているため、網羅的な内容になっていないことをはじめにお断りしておきます。

– 参考文献
[要点整理から攻略する『AWS認定 高度なネットワーキング-専門知識』](https://www.amazon.co.jp/%E8%A6%81%E7%82%B9%E6%95%B4%E7%90%86%E3%81%8B%E3%82%89%E6%94%BB%E7%95%A5%E3%81%99%E3%82%8B%E3%80%8EAWS%E8%AA%8D%E5%AE%9A-%E9%AB%98%E5%BA%A6%E3%81%AA%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AD%E3%83%B3%E3%82%B0-%E5%B0%82%E9%96%80%E7%9F%A

元記事を表示

【AWS CDK Workshop】CDK PipelinesのセクションをCodeCommitではなくGitHubでやってみた

# はじめに
AWS CDKの勉強のために[CDK Workshop](https://cdkworkshop.com/)をやりました。このWorkshopの[CDK Pipelinesのセクション](https://cdkworkshop.com/20-typescript/70-advanced-topics/200-pipelines.html)ではCodeCommitを使っています。ただ、実際の業務ではGitHubを使うことが多いので、勉強がてらGitHubに変更してやってみました。

# [CDK Pipelinesのセクション](https://cdkworkshop.com/20-typescript/70-advanced-topics/200-pipelines.html)をCodeCommitではなくGitHubでやる方法
Workshopのセクション毎に手順を記載します。

## [GETTING STARTED WITH PIPELINES](https://cdkworkshop.com/20-typescript/70-advanced-topics/200

元記事を表示

OTHERカテゴリの最新記事