AWS関連のことを調べてみた2019年12月27日

AWS関連のことを調べてみた2019年12月27日
目次

Amazon Web Services (AWS)サービスの正式名称・略称・読み方チートシート

Amazon Web Services (AWS)のサービスの正式名称・略称・読み方を調べて、まとめきったのでチートシートを作成しました。(2019/12/26時点でドキュメントに記載があるサービス)

まとめ方については下記をご参考ください。

Amazon Web Services (AWS)サービスの正式名称・略称・読み方まとめ #1 (コンピューティング) – Qiita
https://qiita.com/kai_kou/items/a6795dbab7e707b0d1a6

サービス名が読めない、なんとなく読んでた人のお役に立ちますように。

|名称|読み方|略称|俗称|
|—|—|—|—|
|Amazon Web Services|アマゾン ウェブ サービス|AWS||
|||||
|Compute – コンピューティング|https://qiita.com/kai_kou/items/a6795dbab7e707b0d1a6|||
|Amazon Elastic Compute Cloud|エラスティック コンピュート クラウド|Amazon EC2|

元記事を表示

Amazon Athenaでパーティション数が多いJSONのテーブルをParquet形式のテーブルに変換できずにハマった

Amazon Athenaを利用してS3バケットにあるJSONファイルをParquet形式に変換するときに`HIVE_TOO_MANY_OPEN_PARTITIONS` というエラーが発生したので原因調査して対策を考えてみました。

## Parquet形式とは

なんぞ?という方は下記が参考になると思います。

カラムナフォーマットのきほん 〜データウェアハウスを支える技術〜 – Retty Tech Blog

Amazon Athena: カラムナフォーマット『Parquet』でクエリを試してみた #reinvent | Developers.IO

Amazon Athena: カラムナフォーマット『Parquet』でクエリを試してみた #reinvent

Apache Parquet
https://parquet.apache.org/documentation/latest/

データを列指向フォーマットにすることで、クエリ実行時のデータ読

元記事を表示

M5StackでAmazon FreeRTOSを使用する 3

# はじめに

[前々回](https://qiita.com/fukuebiz/items/54f765d12c084ceea392)、前回と、M5StackでAmazon FreeRTOSが動作して、アプリケーションが作れそうな気がしてきました。といっても、せっかくの画面が使えないとM5Stackを使っている意味がなくなってしまいます。

仕事で関わっている[Record Meeting](https://www.recordmeeting.jp/)という自動議事メモ作成サービスでも、操作メニューやQRコードを表示させるなど、スマートスピーカーの補助としてM5Stackが大活躍しています。

![COET Record Meeting](https://www.tis.co.jp/images/jp/news/2019/tis_news/0725_1/20190725_1_01.png)

TFTのライブラリーは、[Boris Lovosevic の ESP32_TFT_Library](https://github.com/loboris/ESP32_TFT_library) を

元記事を表示

M5StackでAmazon FreeRTOSを使用する 2

# はじめに

[前回](https://qiita.com/fukuebiz/items/54f765d12c084ceea392)、M5StackでAmazon FreeRTOSが動作することが確認できたので、今回はアプリの作成方法を確認しながら、LEDを点滅(いわゆるLチカ)したいと思います。

仕事で関わっている[Record Meeting](https://www.recordmeeting.jp/)という自動議事メモ作成サービスでM5Stackを利用しているのですが、デバイスが増えてくると管理が大変です。Amazon FreeRTOSがM5Stackで使えるようになるととても魅力的です。

![COET Record Meeting](https://www.tis.co.jp/images/jp/news/2019/tis_news/0725_1/20190725_1_01.png)

Amazon FreeRTOSのアプリケーション作成を始めるにあたり、ドキュメントを探しましたが、まだリソースが少ないようです。次のあたりを参考にしました。[「Using Amazon

元記事を表示

投稿テスト

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/348348/df81c5af-5bce-7082-593b-b8188f6f560b.png)

元記事を表示

お名前.com / DNS に無料でフロントのラウンドロビンのロードバランサーをさせてみた – – – AWS S3 と Azure Blob Storage に静的WebをActive-Activeさせた話

#Webホスティングのサイズが大きくなくトラフィックが軽微ならほぼ無料でWebサイトのホスティングと手前のロードバランスも
AWSやAzureでロードバランスの機能があってWebサーバーの行き先を変えるという行為はAWSでもAzureでも認定試験の試験範囲であったりするのだがどちらのロードバランサーも金がかかる。クラウド技術を新たに習得する人はこれがデファクトスタンダードだと思う。私にも意外な盲点ではあったのだが金かけたくないなあと思って調べていたところラウンドロビンのロードバランスであればドメイン名解決でやってしまうのも手かなあと思ってテストしたら上手くいった。調べてみたところ意外にオーソドックスではあるものの広く知られていない手法のようだ。静的なWebページをAWS S3とAzure Storageに放り込んだが**私が管理しているWebホスティングがほとんど無料になったのとしかもロードバランスまで無料でできるようになった。**片方が死んでももう片方にラウンドロビンされるので今年の夏にあったAWS死亡の際はタイミングによって自動でAzureにいくし、その逆も可能になった。「負荷分

元記事を表示

システムの定期的ではない使い捨ての予約処理をCloudWatchEventで実装した話

# 概要

様々なシステムの機能の中で特定処理を予約する場合は頻繁にあります。その予約処理が定期的な時間で処理する場合はcronをよく利用してました。

しかし、定期的ではない使い捨ての予約処理の場合、皆さんはどのように実装してますか?例えば、ウェブサイトの管理者ページでお知らせを作成して予約時間を設定すると、その時間に公開関連処理(データ変更、メール送信など)のような場合になるんですかね。システムの環境と技術によって方式は色々あると思いますが、恐らくcronは適切じゃないと思います。

# 問題の話
昔に構築したシステムで自分はそのような使い捨ての予約処理もcronを利用してました。予約時間があるデータを確認して、データがあったらそれに対する処理をするシェルスクリプトを作って、なるべく短い間隔の時間でそのシェルスクリプトが処理するようにcronを設定しておきました。

しばらくはこの構造が特に問題なく想定した通りに処理してくれました。システムで処理してるデータの量と対象が多くなるとシェルスクリプトが重くなると起きる懸念でFileLock処理を入れるなどの対応はたまたまありましたが、い

元記事を表示

【初心者】Amazon RDS 証明書の更新と影響確認

# 目的
– 2020/2/5 までに、RDSの証明書更新が推奨されている。作業手順及び影響(どれくらい止まるのか?)を実機で確認する。

# やったこと
– 検証用のRDS(MySQL 5.7, シングル構成)を立てる。
– RDSに対して1秒間隔でINSERTを実行している状態で、証明書の変更処理を行い、応答不可となる時間を確認する。

# 構成図
![構成図.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/189302/55d07be2-73c9-8279-db6a-2bdc2b99cd86.png)

# 作業手順

## 事前準備(1秒間隔でのINSERT)
– RDS内に適当なDatabase及びTableを作成する。

“`
mysql> create database mksambadb;
mysql> use mksambadb;
mysql> create table mksambadb.mytable(id int, stamp varchar(30));
“`

– EC

元記事を表示

TerraformでElasticCacheを立ち上げてEC2から疎通確認する

運用しているプロダクトでキャッシュをしたい場面があり、ElasticCache(Redis)を導入したのでメモ的に残します。

# 前提
– AWS CLI設定済み
– Terraform設定済み

# 公式ドキュメント
– [Terraform](https://www.terraform.io/docs/providers/aws/r/elasticache_cluster.html)
– [EC2からElasticCacheに接続](https://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/red-ug/nodes-connecting.html)

# TerraformでElasticCacheを立ち上げる
Elastic CacheのクラスタをTerraformで作ります。

“`elastic-cache.tf
provider “aws” {
profile = “default”
region = “ap-northeast-1”
}

resource “aws_elasticach

元記事を表示

terraformerをmaster accountからassume roleでアクセス&MFA必須なAWS環境で使う

# TL:DR

– AWSではMaster AccountにIAM Userでログインし、他のアカウント(OU)へアクセスできる権限をもったRoleへSwitch/AssumeRoleして必要な作業を行うケースが多いです。
– ポリシーとしてSwitch/AssumeRoleの際に、”MFAが有効化”されていることを必須としていることも多いです。
– 上記環境にてSwitch/AssumeRole先の情報をterraformerで引っ張る場合、AssumeRoleとMFAへの対応を行う必要があります。
– STSのToken管理はaws-vaultにお任せ。aws-vaultでAssumeRoleとMFA対応をします。
– なので実態としては、aws-vaultでterraformerをAssumeRole&MFA対応させるお話です。

# aws-vaultでterraformerをAssumeRole&MFA対応させる

aws-vault
https://github.com/99designs/aws-vault

terraformer
https://github.co

元記事を表示

AWS Amplifyまとめ&よくある質問集

皆さんおはこんばんにちは、現在12月2日の592時を回ったところですが、いかがお過ごしでしょうか。
(大変反省しております)

この記事では「AWS Amplify」についてのまとめとよくある質問について書いています。

## 「AWS Amplify」とは?

AWS Amplify(以下、Amplify)は、WebアプリとMobileアプリの開発を容易にするためのライブラリ、フレームワーク、UIコンポーネント、コマンドラインインターフェイス、コンソールからなるサービスです。
このように、一口にAmplifyと言っても様々なサービスがあります。
まずは、様々なサービスからなるAmplifyファミリーについてまとめていきます。

## Amplify CLI

Amplify CLIはサーバーレスバックエンドをコマンドラインから構築するためのツールキットです。
以下のようなコマンドで、やりたいことから対話的にバックエンドを構築できます。

“`
$ amplify add api # バックエンド用のAPIどデプロイするための設定ファイルが生成される
$ amplify push

元記事を表示

Amazon Linux2でSelenium環境を最短で構築する

この記事は、[Amazon LinuxでSelenium環境を最短で構築する](https://qiita.com/onorioriori/items/4fa271daa3621e8f6fd9)のAmazon Linux2版です。
Amazon LinuxでのSelenium環境を構築したい方は上記リンクを参考にしてください。

# 概要
2020年6月30日に Amazon Linux のセキュリティ更新提供が終了するということで、
Amazon Linux2でもSelenium環境を構築出来るようにしました。
ほとんど手順は変わりませんが、一部変更点がありました。以下は全てrootで実施したものです。

# 手順
・**Google Chrome** のインストール
・**GConf2** のインストール ※変更あり
・**ChromeDriver** のインストール
・**Google Noto Fonts** のインストール
・**Selenium** のインストール ※変更あり

## Google Chromeのインストール
`yum install google-chro

元記事を表示

近くで開催される勉強会を定期的にslackへ流す。

### Connpassで勉強会行ってますか?

自分はConnpassでそこそこ興味があって近い所があれば聞きに行きたいなくらいの人間です。

今回は、近くで開催されるイベントを定期的にslackに通知してみようと思います。

※connpassにはapiが公開されてたんですね、知らずに地道にスクレイピングしてしまった・・・
(まあ、スクレイピングを学ぶいい機会になったので良しとしよう。。)

## StepFunctions

> 視覚的なワークフローを使用して、分散アプリケーションとマイクロサービスのコンポーネントを調整できるウェブサービスです。

公式より引用

### StepFunctionsを使う背景

これまで連続する処理はlambdaを分けて、親lambdaが子lambdaをキックするような設計でエラー時のslack通知を実装してきましたが、以下の記事にもあるようにlambda間が密結合で、メンテナンス性に優れているとは言えないと思います。

https://qiita.com/ketancho/items/147a141c9f8a6de86c97

> 2.複数の

元記事を表示

Cognitoのログイン、認可エンドポイント役割、挙動の説明

## 概要

Cognitoのログイン、認可エンドポイント役割、挙動の説明。

### cognitoログインエンドポイント

https://yyyyyyyyy.auth.ap-northeast-1.amazoncognito.com/login?client_id=xxxxxxxxxxxxxxxxxxxxxxxxxx&response_type=token&scope=openid&redirect_uri=https://www.google.com

* ログインという名前がついているが感覚としては、”認可する”ことを許可するための認証が正しい。
* ログイン後、set-cookie: cognito=”XXXX” され、認証のやり取りはこのクッキーを使って行う。
※1度認証済みになった後、ログインエンドポイントへアクセスした場合、認証済みの画面が表示される。
* 認証後(認証情報用のクッキー有りの状態)、指定したリダイレクトエンドポイント(redirect_uri)へ認可情報付きでリダイレクトされる。

### cognito認可エンドポイント

https://yy

元記事を表示

AWSエンジニアを目指しているAWS運用未経験の私がAWS認定デベロッパーアソシエイト(DVA)に合格したお話。AWS認定アソシエイト3資格対策の書評

2019年12月26日にAWS認定デベロッパーアソシエイト試験(以下DVA)を受験し合格しました。
スコアは845でした。
この記事は合格するために使用した教材の所感を記録した記事です。

m(・____・)m(未経験でもAWSエンジニアになれる良い転職先があればご連絡ください。[@shiro_rep](https://twitter.com/shiro_rep))

# きっかけ
2019年12月5日に、友人から「いまや、ECサイトすら、サーバーレスで作れる」というコメントともに https://reinvent.aesworkshops.com/arc316/ このリンクが届きました。

Amazon API Gateway、AWS Lambda、Amazon DynamoDBなどによるサーバーレスの環境をCloudFormationで構築し、Amazon X-Rayで分析・トレースする様子を聞いて「AWSを使用していない自分がすぐに時代遅れになる」という危機感を覚えました。AWSに携わっている方は「今更なにを・・・」と思われるかもしれないですが、きっかけはこれでした。

元記事を表示

DirectConnectでBGPのセッション上限超えて業務停止した話

#BGPのセッション数が100を超えてしまった
先日、AWS DirectConnectでBGPのセッションが100超えのルートにアドバタイズしてしまい

AWSとの疎通が出来なくなり、全拠点のシステムが終日業務停止してしまったので備忘録としてブログでも書こうかと

前提として、弊社は一次受けでAWS設計、A社にAWSインフラ構築を委託、A社はB社にネットワーク敷設を委託していました(ネットワーク周りの詳細設計は弊社ほぼノータッチ)

で、約50拠点(1拠点1~2台)くらいに端末展開しており、セキュアなネットワーク構築のためDirectConnectを利用していました

元々設計的にもネットワークに関しては他社とVPCピアリングすることも含めて余裕を持ったネットワーク設計にしていたので、IP枯渇系のトラブルは発生しないだろうと過信していました。。。

そんなある日、弊社拠点で保守業務中のSEから

「S3つながらないです」

ん?と思い調査開始。とりあえずデフォルトゲートウェイにはPINGが飛ぶものの、それ以降飛んでなさそうなのでネットワーク障害かなと思いB社へ問合せ

そしたら「いや

元記事を表示

AWS Lambdaで並列処理を行うことで処理を高速化する(Python編)

## はじめに

みなさんAWS Lambda(以降はLambdaと表記)使ってますか?
Lambdaには対応している言語が複数あるので、Go言語で記述されている方、Node.jsで記述されている方、Pythonで記述されているかたなど、
様々いらっしゃるかと思います。
APIのバックエンドとしてLambdaを設置する場合、Lambdaの処理時間は出来る限り短くしたい、と思われる方がほとんどだと思います。
理由としては、下記が挙げられるかと思います。

* API Gatewayの時間制限が29秒のため、29秒を超える処理が出来ない
* APIの呼び出しに時間がかかると、ユーザービリティを著しく損なう

では、Labmbdaの処理時間を短くしたいのですが、方法としては下記があります。

* Lambdaの性能を上げる
* Lambdaの中で並列処理(マルチスレッド化、マルチプロセス化)を行う

今回は、Lambdaでの並列処理について解説したいと思います。

## 実践

それぞれの検証は、下記共通の条件で実施しています。

メモリ:3008 MB
タイムアウト:1分

### 並列

元記事を表示

AWS IAM User と Policy で S3 にアップロードしか出来ないユーザを作る

ユーザ権限の設定はちょっと AWS を触るだけでも必須の機能ですが、すぐ忘れるのでメモします。例えば自動的に S3 にファイルをアップロードしたいという場合を考えてみます。この時、アップロードするスクリプトは特定の S3 にだけアクセス出来て、他の余計な事は出来ないようにしたいと思います。できるだけ awscli を使い、awscli では面倒臭い操作だけ AWS Console を使います。

## やりたい事

* S3 バケットを作成して、ローカルディレクトリの内容をコピーしてブラウザから見える状態にする。
* ファイルのアップロード用に最低限の権限だけを持つユーザを作成する。

## AWS の権限とは?

AWS では、「誰が」、「何処に」、「何を」、「出来る/出来ない」。という形式で権限を設定し
ます。それぞれ、AWS 用語では Principal, Resource, Action, Effect と呼
びます。例えば今からやろうとしている設定はこんな風になります。

* Principal (誰が)
* 例: `hoge-user` (hoge-user という

元記事を表示

[2018文系卒 実務経験0 勉強期間1ヶ月]AWS ソリューションアーキテクト 合格

#はじめに
 今回記事を書こうと思った経緯は、業務で訳の分からんAWSとか言うのを使うにあたって***資格勉強したら理解深まるんじゃね?***です。浅い。浅すぎる。

 文系でなぜプログラマになろうかと思ったかについては、単純に就活が早く終わったからでした。自分の脳みその出来の悪さに情けなくなってきます。

 本題は、どのようにして`AWSの高い受験料を無駄にすることなく資格に受かるのか`の話なので、オーソドックスな流れで他のブログと同じことを言います。
試験を受ける前は自分もブログ記事などで一生懸命試験の範囲や情報などをせっせと集めていました。結局、ブログをたくさん見たところで***本番になんねえと何が出てくるかわからない***ので一緒なのではと思ったりもしました。はい。

こういう文章の長さに頭の悪さが感じれると思いますが、言いたいことは

***アホでも受かるよって話***

です。
は?って感じですが、一応受かった身としてこれから受ける皆さんのために少しでも情報を共有できたらと思ってます。試験問題については触れないです。確か禁止されてるはず。。。
#受験日
2018/11/28

元記事を表示

AWS上のRHELでファイルシステムの拡張が必要になったらどうする?

# はじめに
AWSの大きなメリットとして「スモールスタートが可能」が歌われています。ストレージの観点で言うと、AWS上の既存インスタンスにEBSを追加したり既存EBSを拡張したりするのは簡単です。したがって、スモールスタートして、ビジネスの拡大に応じてディスク容量を拡張していくのは容易に思えます。ただし、本当に必要なのは、EBSの容量を増やすことではなく、ファイルシステムの容量を増やす事であり、且つ拡張作業をビジネスへの影響を最小限にとどめながら行う事です。特に、クラスタリングされているようなシステムの場合、いかにしてサービスの停止時間をゼロもしくは少なくしながらファイルシステムの拡張が行えるかが重要です。

前述したように、AWS上のインスタンスのストレージ容量を増やす手法は、以下の2種類があります。

**1.既存EBSの拡張**
**2.EBSの新規追加**

本記事では、上記2つについて、それぞれの特徴と拡張の際の手法について、クラスター構成である事を前提に説明します。尚、前提となるクラスター構成は以下の図の通りです。

VCS_R</p></blockquote>
</blockquote>
<aside class='widget widget-post'>
<div class='tag-cloud-link'>AWS</div>
<div class='tag-cloud-link'>ファイルシステム</div>
<div class='tag-cloud-link'>拡張</div>
<div class='tag-cloud-link'>Veritas</div>
<div class='tag-cloud-link'>InfoScale</div>
</aside>
<div><a style='width:100%;' class='btn__link' href='https://qiita.com/vxse_japan/items/5e9beb7d937078f328a6'>元記事を表示</a></div>
</div>
      </section>
	        
      
      
      
	        <!-- 記事下シェアボタン -->
        <aside>
<ul class=

  • OTHERカテゴリの最新記事