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

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

AWS Developer Associate 出題分野と関連サービス概要

## 目的
試験の出題範囲と関わるサービス概要をふんわり把握する
そもそも触ったことのないサービスや自身の理解が薄いサービスを発見する
それらを試験対策の目安にする

Sysops編はこちら
[AWS SysOps Administrator Associate 出題分野と関連サービス概要](https://qiita.com/ooooouchi/items/1e971b729ddfc669376d)

Sysops合格期はこちら
[【AWS SOA】AWS 認定 SysOps アドミニストレーター – アソシエイト試験に合格しました!](https://www.ooooouchi.info/entry/2020/06/10/083000)

## 出題範囲

### 分野と出題比率
|分野 | 出題の比率|
|:—————–|——————:|
|デプロイ | 22%|
| セキュリティ | 26%|
| AWSサービスを使用した開発

元記事を表示

AWS S3 Laravelアプリからテキストファイルをアップロードする

# 目次

– AWS EC2に構築したLaravel環境で作成したLaravelアプリからテキストファイルをS3にアップロードする方法をまとめる

# 実施環境

– ハードウェア環境

| 項目 | 情報 |
| — | — |
| OS | macOS Catalina(10.15.5) |
| ハードウェア | MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports) |
| プロセッサ | 2 GHz クアッドコアIntel Core i5 |
| メモリ | 32 GB 3733 MHz LPDDR4 |
| グラフィックス | Intel Iris Plus Graphics 1536 MB |

– ソフトウェア環境(下記の環境をEC2に構築した)

| 項目 | 情報 | 備考 |
| — | — | — |
| MySQL | 8.0.20 for Linux on x86_64 | コマンド`$ mysql –version`で確認 |
| Apache | 2.4.43 | コマンド`$ h

元記事を表示

Amazon AthenaはParquetにすると速くて安いし美味しいし簡単に作れる

# 背景
データレイクとしてS3を使って、そこに対してクエリでELTしていく目的でAthenaを使っていたので、パーティションのみ意識して、あとはtsvファイルでの運用がメインでした。

この度、データ量が多いプロジェクトで、かつ速度も求めてAthenaを使うことになり、Parquetと向き合うことにしました。

# でもParquetって大変なんでしょ?
もちろんParquet自体も、メリットもふわっと知っていたのですが、何か変換めんどそうだし、、、実際その変換が面倒なことはネックです、みたいな話も聴いたし、、、と思ってました。

# 簡単に作れました
Athena上のCTASでParquet作成が出来るようになっています。
しかも、パーティションの作成まで出来るようです。

# やってみる
## Redshiftからunload
Redshiftに置いてあるデータをあれこれして元データを作ります。

“`
unload(‘
select
yyyymm,
nullAllowedItems,
notNullVeryLongSizeStringItems,
notNullMedi

元記事を表示

【AWS Organizations】OUから別のOUへAWSアカウントを移動させる

## はじめに
※個人的備忘録です。

AWS CLIがめちゃめちゃ便利ということを最近知りました。
shellスクリプト自体全然書いたことがないので変なスクリプトかもしれませんが。。

## 本題
jqコマンドを使用しています。

### 実装

“`sh
#!/bin/bash
AWS_PROFILE_NAME= # aws cliのプロファイル
CURRENT_OU_ID= # 移動元OUのID
AFTER_OU_ID= # 移動先OUのID
GET_ACCOUNT_LENGTH= # 移動したいアカウント数

declare -a result=()
for account in $(
aws organizations list-accounts-for-parent \
–parent-id ${CURRENT_OU_ID} \
–profile=${AWS_PROFILE_NAME} \
–max-items=${GET_ACCOUNT_LE

元記事を表示

【Amplify】Unhandled Rejection (Error): Federation requires either a User Pool or Identity Pool in configの対処法

#課題
下記のようなエラーが表示される

“`
Unhandled Rejection (Error): Federation requires either a User Pool or Identity Pool in config
AuthClass.
C:/Users/higuz/Documents/src/Auth.ts:1749
1746 | case 2:
1747 | _b.trys.push([2, 6, , 7]);
1748 | return [4 /*yield*/, this._oAuthHandler.handleAuthResponse(currentUrl)];
> 1749 | case 3:
| ^ 1750 | _a = _b.sent(), accessToken = _a.accessToken, idToken = _a.idToken, refreshToken = _a.refreshToken, state = _a.state;
1751 | se

元記事を表示

Amazon EC2(Amazon linux)のファイルサーバ構築

#Amazon EC2(Amazon linux)のファイルサーバ構築

初めての投稿になります。仕事でAWSの提案、構築をすることがあるので自分用の備忘録およびこれからAWSを利用していく皆さんのお役に立てればと思い、投稿します。
##要件(実現したいこと)

###### 1.Amazon EC2(Amazon Linux)を使って、ファイルサーバを構築したい
###### 2.ファイルサーバ構築にはSambaを利用する
###### 3.別クライアント端末(今回はAWS上のWindows Server OSのEC2)のネットワークドライブにマウントして、ファイル共有できるようにする
###### 4.無料の範囲もしくは必要最低限のコストでできるお試し構築を作る

##イメージ図
![構成図.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/655033/9d08e76d-b8ee-be8f-51a2-a5bdaf60c61b.png)

##

元記事を表示

QRadar Community Edition V7.3.3をAWS環境に導入する

## 目的
IBM QRadar Community Edition Ver 7.3.3がリリースされました。
[IBM Developerサイト](https://developer.ibm.com/qradar/ce/)からイメージを入手出来るのですが、ova形式になっており仮想基盤が想定された配布形式になっています。
AWS環境に QRadar Community Edition を導入するに際して、幾つかの注意事項があったため、本投稿に至りました。

## そのままではAWSには導入できない?
AWSでは [vmimport](https://docs.aws.amazon.com/ja_jp/vm-import/latest/userguide/vmimport-image-import.html) を利用してovaイメージを導入することも出来るのですが、残念ながら、IBM社提供のQRadar CE Ver.7.3.3 ovaイメージでは以下の理由によりそのままの導入が出来ません。

– ovaイメージには初期セットアップが必要
– QRadar CEのインストーラは

元記事を表示

クラウド初心者のAWS入門(第11回)

# 第11回 WordPressのインストール(おしまい)

今回はWordPressをWebサーバ上にインストールしていきます。
インストール後は動作確認として、自端末からWebブラウザを通してWordPressへアクセスします。

|![システム構成図_第11回目.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/626270/5b7e9065-414f-9edb-b3a8-68aee13074e6.png)
|:-:|

## 下準備

PHP関連ソフトウェアと、WebサーバからWordPressのDBへアクセスするためのソフトウェアインストールを行います。

“`
## php最新版を確認する
$ sudo amazon-linux-extras

## php7.4が利用可能最新版だったため7.4をインストール
$ sudo amazon-linux-extras install php7.4

## ライブラリ関連のインストール
$ sudo yum -y install php php-mb

元記事を表示

GitLabの運用をEC2からEKSに移行した話

# はじめに

GitLabを社内運用する際にインフラをEC2からEKSに移行しました。
これによって**冗長性確保**や**GitLab CIにおける料金効率化**を実現することができました。
本記事ではGitLabを運用している人向けに環境構成の変化やデータ移行手順を説明していきます。

# 環境構成

ここでは過去と現在の環境構成を説明していきます。

## 過去構成

past-architecture.jpg

EC2インスタンスを用意し、GitLabとGitLab Runnerをそれぞれインストールした構成となっています。
GitLabは内部にNginxやUnicornなどを全部入りした**Omnibus版**を使用しているので導入は容易です。
GitLab Runnerは**Docker Execu

元記事を表示

接続元IPv4アドレスがAWS CloudFrontかを検証する方法

## はじめに

[Amazon CloudFront](https://aws.amazon.com/jp/cloudfront/)を使ってアクセスした際は接続元IPアドレスが「[X-Forwarded-For](https://ja.wikipedia.org/wiki/X-Forwarded-For)」ヘッダに格納されます。
このヘッダには複数IPアドレスが列挙されることがあり、先頭からひとつずつ検証する必要があります。
このクラスは「CloudFront IPアドレスに一致するか」を[AWS IPアドレスの範囲](https://docs.aws.amazon.com/ja_jp/general/latest/gr/aws-ip-ranges.html)に基づいて検証しています。

HTTP接続用に[Guzzle](http://docs.guzzlephp.org/en/stable/)を使っていますので、必要に応じて[インストール](http://docs.guzzlephp.org/en/stable/overview.html#installation)してください。

元記事を表示

CodeBuild で使用中のイメージを一括で取得するワンライナー

# 背景

2020/05/22 に AWS から CodeBuild の古いイメージのメンテナンスが終了するというメールが来ていたため、メンテナンス終了の影響を受けるイメージを使っているか調べました。
その際に使ったコマンドのメモです。

AWS からのメールのタイトルは以下のようなものです。

> AWS CodeBuild Ending Maintenance of Older Images [AWS Account: xxxxxxxxxxxx]

※ メールの内容によると、イメージ自体は引き続き使用できるものの、ビルド時のレイテンシが増加する可能性があるとのことです。おそらく、CodeBuild 側にイメージがキャッシュされなくなるのだと思います。

# 結論

“`console
$ aws codebuild list-projects –output text \
| awk ‘{ print $2 }’ \
| xargs aws codebuild batch-get-projects –names \
| jq -r ‘.projects[].en

元記事を表示

AWS全サービスの一言メモを、マネジメントコンソールから抽出してみた

エンジニアを生業にしている、くわブロ です。
麦茶や寝袋の話ばっかりしているので、本業のエンジニア関連の話も投稿したいなと思い、AWSクラウドの話をしてみます。

同じ記事を [はてなブログ](https://kuwablo.hatenablog.com/entry/2020/06/16/110049) でも書いています。

# AWSクラウドのサービス

AWSクラウドで提供されるサービスは100個以上あります。
「このサービスってどんなサービスだっけ?」とパッと出てこないことや、
「〇〇サービスは、こうこうこういうサービスです。」と設計書でサービスの前提を説明したくなることもあるかと。

以下の記事を見て「なるほどなるほど」と思ったのですが、

[Gigazine : AWSの膨大で複雑なサービス群をすべて「たった1行」で説明していくとこうなる](https://gigazine.net/news/20200528-aws-one-line-explanation/)

でもやっぱり設計書や提案書に書くなら、公式サイトから引用したい。
そんな時に便利な機能を発見しました、それはマ

元記事を表示

AWS アクセスキーを作成する

# 目的

– アクセスキー(Access key)とシークレットアクセスキー(Secret access key)の作成方法をまとめる

# 実施環境

– ハードウェア環境

| 項目 | 情報 |
| — | — |
| OS | macOS Catalina(10.15.5) |
| ハードウェア | MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports) |
| プロセッサ | 2 GHz クアッドコアIntel Core i5 |
| メモリ | 32 GB 3733 MHz LPDDR4 |
| グラフィックス | Intel Iris Plus Graphics 1536 MB |

# 前提条件

– AWSのアカウントを持っていること。持っていない場合は下記リンク先を参考にアカウントを作成する。
– [AWSのアカウント作成方法](https://miriwo.hatenablog.com/entry/2020/06/03/122128)

# 前提情報

– アクセスキーとシークレットアクセスキ

元記事を表示

AWS SAM CLIでWebアプリをサクッと作ってサーバーレスアプリケーションに親しむ。

AWS Serverless Application Model(AWS SAM)
数分でサーバレスアプリケーションに必要なリソースを揃えてデプロイ&ローカル開発環境も提供してくれるます。
AWSコンソールに慣れていなくても、とりあえず動くものが立ち上がって、いろいろいじれるところから始められるので非常に楽しいです。

# 記事の対象

– Webアプリをつくる人
– AWSをすこしいじったことあるけど面倒そうだなとか思って後回しにしていた人
– AWSでサーバレスウェブアプリを作りたい人

# 準備とインストール

一度もAWSいじったこと無い場合は準備だけ必要です。

## AWS CLIをインストール
AWSをターミナルからコマンドでいろいろいじれるようになります。
インストールして認証するまではちょっと頑張らないとかも。
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-chap-welcome.html

## AWS SAM CLIをインストール
今回インストールしたいもの。下記から手順にしたがってインスト

元記事を表示

AWS Lambda ローカル実行(デバッグ)、デコレータで例外処理統一、引数チェック等 with Python

AWS Lambdaをローカルで実行するサンプルを書きました。Dockerは使いません。

やること
1. 環境変数の読み込み pip install python-dotenv しておくこと
2. lambda_handlerに渡す event引数を記述したJSONファイル読み込み
3. デコレータで例外処理、引数チェックなどを統一する。複数のAWS Lambda関数を使うときに、共通ファイルにデコレータ関数を定義し、各々の関数でlambda_handlerを呼ぶたびにデコレータ関数を呼び出すようにする。そうすると、失敗時にイベント引数をs3等に保存しておけば再処理したり、またはイベント引数の共通チェックを行うという処理を統一できる。

#サンプル
./.env
./.event.json
./lambda_handler.py

.env 環境変数設定用

“`.env:.env
LogLevel=DEBUG
“`

.event.json イベント引数

“`json:.event.json
{
“body” : “{\”key\” : \”valu

元記事を表示

AWS初心者がAWS初心者向けにVPCについてまとめた

# 初めに
ネットワークの基礎も分からない弱弱エンジニアがAWSを触り始めて、最近やっとVPCの概念が少し理解できてきたので、同じ悩みを抱える同士向けにまとめます。
※ 初心者が初心者向けに噛み砕いて書いているので厳密には表現が間違っている箇所があるかもしれません。その場合はご指摘いただけるとありがたいです。

# VPC
まず、VPCはVirtual Private Cloudの略で、その名の通り、**あなた専用の仮想ネットワーク**です。このVPC上にEC2などのインスタンスを設置することができます。VPCは、他のVPCとは論理的に切り離されているので、他の人があなたのVPC上のリソースに直接アクセスすることはできませんので、安全に利用することができます。(あまりこう言う解説は見かけないですが、仮想的なLANのようなものだと私は理解しています)。

2013年以降に作成されたアカウントには、各リージョン毎にデフォルトでVPCが作成されていますが、VPCを自分で新たに作成することもできます。
VPCの作成時には、そのVPCのIPを自分で設定することができます。

# サブネット

元記事を表示

Terraformでインフラを構築しようとして失敗する大学生日記

## Terraformとは
まず、この記事をご覧の方でTerraformをご存知でない方~~数時間前の私~~はこちらをご覧ください。
https://www.terraform.io/

まぁ一次記事を理解できるなら私のQiitaなんか見ないですよね、
初学者なりに理解したTerraformを説明させていただきます。
しっかりとした知見は得ていないので、間違っているならコメントしていただけるとありがたいです。

Terraformとは、インフラ構築をコードで行うツールであり
そのことをInfrastructure as Codeと言います。
メリットしては、同一環境が容易に構築できるという点や
gitでの管理が可能であるため以前の環境に戻すことが簡単である、などたくさんあります。
モダンですね、モダン、もダン、ジダン
 
それでは以下に私がTerraformでAWSを構築していった経緯を記述していきます。
記事を更新していくつもりなので、更新が遅いとか言わないでください。

## 参考のURL
こちらに参考にさせていただいたURLを記述していきます。

元記事を表示

FlutterとAWSで始めるサービス開発 (5)AWS Cognitoでログイン

# はじめに
前回の「[(4)AWS Cognitoへの新規アカウント登録](https://qiita.com/makotomi/items/d2e399d16c0931ad3228)」では、Cognitoユーザープールに新規のアカウントを追加しました。今回はそのアカウントを利用してログインを行いたいと思います。

# 前回からの変更点
前回のコードからの変更点を順に説明します。

## ログインセッション

ログインセッションを保存するためのグローバル変数を追加しました。

“`dart
CognitoUserSession session;
“`

## MaterialAppのroutesにログイン結果画面用の定義を追加

__’/TopPage’__という名前で、ログイン後に遷移する画面の定義を追加しました。

“`dart
routes: {
‘/’: (_) => new MyHomePage(),
‘/TopPage’: (_) => new TopPage(),

元記事を表示

デフォルトのRDSキーで暗号化されたスナップショットの共有

## 概要
RDSのスナップショットを共有する際、デフォルト以外のAWS KMSを利用した暗号化であれば、問題なく行える。
[AWS 公式 – 暗号化された Amazon RDS DB スナップショットを別のアカウントと共有する方法](
https://aws.amazon.com/jp/premiumsupport/knowledge-center/share-encrypted-rds-snapshot-kms-key/)

![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/629414/737e46cd-4f8c-5cb3-6dfa-cab28d5f0f5e.png)

ただ、デフォルトの暗号化キーで暗号化されたスナップショットを共有(上図のShare)できない。
予想ですが、デフォルトの暗号キーを別アカウントに共有できないためだと思われる。

>デフォルトの AWS KMS 暗号化キーを使用して、暗号化されたスナップショットを共有することはできません。

とAWS公式も無理だと言っていますが

元記事を表示

AWSサービスのログまとめ

## はじめに
業務でAWSの各サービスログを使って、ログ分析基盤を構築することが多く
その都度、AWS公式サイトやクラスメソッドさんのDevelopers.IOのお世話になっているので
その情報を一覧性のある表にまとめてみました。

ストックついでに、テレずに、ぜひLGTMも(*´ω`)

## AWSサービスログ一覧
| サービス名 | 取得可否 | ログの内容 | CloudWatch Logs | S3 | CloudTrail | 公式サイト | 参考情報 |
|———|———|———|———|———|———|———|———|
| Amazon Elastic Compute Cloud (EC2) | 可 | OS上のあらゆるログ(CloudWatchエージェント→CloudWatch Logs) | ● | × | × | [CloudWatch エージェントを使用して Amazon EC2 インスタンスとオンプレミスサーバーからメトリクスとログを収集する][01] | [EC

元記事を表示

OTHERカテゴリの最新記事