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

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

DynamoDBをJson形式でエクスポート・インポート

Amazon DynamoDBのデータをエクスポートする方法はいろいろとあります。
Pythonを使ったツールだと[dynamodb-json](https://github.com/Alonreznik/dynamodb-json)、[DynamoDBtoCSV](https://github.com/edasque/DynamoDBtoCSV) あたりが星多めですね。

本記事ではシェルスクリプトでJSON形式でデータをエクスポート・インポートする手軽な方法をまとめます。

### 使用ツール
– [bash](https://www.gnu.org/software/bash/) (Macの3.x系で動作確認)
– [AWS CLI](https://aws.amazon.com/jp/cli/)
– [jq](https://stedolan.github.io/jq/)

### 実行前確認
下のコマンドでテーブル内容を取得できることを確認します(追加で指定が必要な環境もあります)。

“`sh
aws dynamodb scan –table-name [テーブル名]

元記事を表示

AWS Windows サーバーがリモートデスクトップで手が滑りワンクリックで文鎮化?! 救済手段はあるのだろうか…

下図の場所(Windows Securityの”Incoming Connections”チェックボックス)を誤ってクリックしてリモートデスクトップが切断、再接続不能になり、文鎮化…
ドメインに参加しておらずグループポリシーによるスタートアップ時の強制配信もできず、他のリモートツールもインストールされておらず、クラウドから蒸発させるしか道は残されていないようでした。英語で検索すると他の人も困っているようで、
https://serverfault.com/questions/919736/windows-server-2012-unblock-windows-firewall-ec2
のようなリカバリー手段もなくもなさそうですが、現実的なのだろうか。
一つ可能性を考えたのは内部IPで別のWindows サーバーを構築し内部IPからリモートデスクトップを行う方法。ただし、画面の説明通り、”Public Network”としてしか元々認識されていなければ(初期のデフォルト値では)アウトですよね…
ドメインに参加しておらず内部ネットワークとしての認識もされておらず外部ネットワークのみ

元記事を表示

AWS WAF のアクセスログをとりあえず S3 で確認したい

今回は AWS WAF(Web アプリケーションファイアウォール)を利用するうえで、何かあったときに WAF のログを確認する方法を知っておきたい方という方へ、S3 Select でアクセスが拒否されたログを確認する方法をお送りします。

## AWS WAF のログ出力先について
Web アプリケーションを保護する目的で AWS WAF を導入した場合、WAF のログを Kinesis Data Firehose 経由で S3 に保存することができます。
そして、S3 に保存された WAF ログを S3 の機能である S3 Select を利用して確認することができます。

ちなみに、WAF のログの
出力先は Amazon S3、Amazon ElasticSearch、Amazon RedShift を指定できます。(2019年11月25日時点)
大量のログデータを確認する場合は、ElasticSearch と RedShift を選んでいきたいですね。

## WAFの設定方法
「WAF のアクセスログを Kinesis Data Firehose 経由で S3 に保存す

元記事を表示

AWS Coud9でphpMyAdmin画面へアクセスしたときに 404|not foud エラーを解決する方法

# Cloud9で開発環境を整えて、時間がたってからなぜかphpMyAdminへアクセスできず、ログイン画面で見れなくなる症状に躓きました。

いくら調べても解決しなかったんですが、もしかしたら稀にいるかもしれないと思って記事を書くことにしました。

解決のために事前チェックその1

サーバーを起動しているか確認

“`qiita:サーバー起動コマンド(1)
$ ec2-user:~/environment/project1 $ php artisan serve
Laravel development server started: http://127.0.0.1:8000
“`
上記コマンドで下記のようにエラーが出た場合は
![oops.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/531595/74400c51-542b-a941-27a4-a4ccc28ec1f9.png)

“`qiita:サーバー起動コマンド(2)
$ ec2-user:~/environment/

元記事を表示

AWS APIGateway + Lambda プロキシ統合 の利用でCORS設定にはまった話

#要約
AWSのAPIGatewayを利用してAPIを作ったが、CORSの設定がどうも上手くいかない、、、
という所にはまった話です。
(昔作ったAPIは動くのに、、、なんで!?( ゚д゚)ハッ! )
 

結論から言うと、
**「Lambda プロキシ統合」利用の場合、
CORSに関するレスポンスヘッダの設定は各自のプラグラム上でやれよ!:smirk:
**
という事です。
 
 
GUI上で、CORSの有効化をしても、レスポンスヘッダの「Access-Control-Allow-Origin」は反映されません。
(統合リクエストのタイプがLambdaの場合に有効になります。)
CORSの有効化ボタンが押せちゃうので混乱しちゃいますよね;;

AWS公式にも記載があります。
https://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/how-to-cors.html
 

#1.過去のAPIGateway
AWS APIGatewayは以前からあるサ

元記事を表示

クレカ登録無しでAWSを無料で使える! AWS Educate Starter アカウントで出来る事をまとめてみた

#AWSとは?
AWS(アマゾンウェブサービス)とは、インターネット通販で有名なAmazonの子会社がサービスを提供いる「クラウドコンピューティングサービス」である。
元々、このAWSは、Amazon自身のインフラを支えるために作られたものである。世界中から集まる膨大なアクセスに対応するため、日々サーバー機器などの増強を続けていく中で、自社だけではなく、他社にも提供しようという事でスタートしたのがこのサービスである。AWSのサービスは2006年7月に公開された。

#AWS Educateとは?
クラウドに強い従業員の需要は高まっており、AWS Educateでは、次世代のITとクラウドのプロフェッショナルに向けた学習の機会を提供している。AWS Educateは、Amazonのグローバルイニシアティブで、クラウド関連の学習を促進するために必要な資料、その他を学生や教員に提供している。未来のクラウド技術者を育成する事を目的としている。

☞ 簡単に言えば、AWS Educateは、誰でも自由に参加できるクラウド学習プログラム。(14歳以上の学生もしくは教員が参加可能)

###AWS

元記事を表示

C言語を勉強する初めの一歩をまとめてみた#42tokyo

#はじめに
42tokyoという学校の入試に挑むにあたり、C言語の勉強をしておこうかなと思いました
どんな感じで勉強したらよいか考えてみたので簡単にまとめます

#開発環境
開発環境は手軽なものがよいです
クラウド上で開発環境が用意できるAWSのCloud9というものが良いと思います
↓こちらの記事を参考にしたらとても簡単にできました!
https://dx.nissho-ele.co.jp/blog/aws-beginner-cloud9_20190419.html

#教材(無料)
基礎を抑えるという意味では無料のもので十分かと思います
下記の2つがよさげです
(自分はまだほぼやってませんが、、)

###ドットインストール
https://dotinstall.com/lessons/basic_c
「C言語入門」というレッスンが22動画無料で見れます
ドットインストールは色々他のレッスンもよかったのでオススメできます

###苦しんで覚えるC言語
http://9cguide.appspot.com/index.html
なんか良いみたいです
42tokyoのグループ(非公式)

元記事を表示

AWSのロードバランサーをCLBからALBへの移行する

# 概要
・AWSのロードバランサーをCLBからALBに移行する

# CLB/ALBとは・・・
・こちらに詳しく記載されていました。
https://www.wafcharm.com/blog/difference-between-alb-and-elb/
・こういうところの言語化は人任せな私をお許しください。
・とにかくこれから使う方には不要な知識になりますが、とにかくALBの方が断然良いので移行しないと!

# 手順
1. ALBの作成
2. AutoScalingGroupへ作成したALBのターゲットグループを紐付け
3. DNS登録(CLBのDNS名からALBのDNS名に変更)
4. AutoScalingGroupからCLBを外す

# 実施
### 1.ALBの作成
・AWSコンソールでロードバランサーの一覧画面を表示し、
・移行対象のロードバランサーで種類がclassicになっているものを選択
・詳細表示枠の移行タブを選択
・「ALB移行ウィザードを起動」ボタンを押下
![image.png](https://qiita-image-store.s3.ap-northe

元記事を表示

AWS認定 デベロッパー アソシエイト(DVA-C01)の合格記録

**2019/11/22に試験に合格しました。**

[AWS認定 ソリューションアーキテクト プロフェッショナル(SAP-C01)の合格記録](https://qiita.com/murapon/items/ae5778ae221a62ed9d21)

[AWS認定 SysOps アドミニストレーター アソシエイト(SOA)の合格記録](https://qiita.com/murapon/items/15d511d18d6575a620eb)
に続けて、今年3つ目の試験です。
こちらも、SAAに合格できたらあまり学習しなくても合格できるという話を聞きますが、人によりますので、注意してください。

##今回の学習内容
###1. 試験ガイドの確認
https://aws.amazon.com/jp/certification/certification-prep/
「開発者 – アソシエイト」の欄にある、「AWSホワイトペーパーおよびよくある質問」の、
ホワイトペーパーやよくある質問、対象サービスのBlackbeltを全て読みます。
読んでも全然頭に入らないので、1,2回ざっと読んで

元記事を表示

②パブリックサブネットの作成

## 目標
本章ではパブリックサブネットの作成を目標に解説を行います。

## ゴール
本章のゴールは以下の構成図までの完成となります。
![AWS構成図_pubsubを作成.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/538656/f9a7910f-12a6-9f97-b21e-2214950359d4.jpeg)

## 作成
それでは実際に作成をしていきましょう。

#### 今の画面を確認
作成を始める前に、今の画面を確認しましょう。
[①VPCの作成][①]を完了した直後から画面を変更していなければ以下の画面かと思います。
![3.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/538656/08633c4f-6b05-b55e-5555-22b06f9a5731.jpeg)
※この画面でない場合は、前回の内容から[こちら][①-2]を参照にこの画面に切り替えてください。

### 1. サブネットを開く
左端

元記事を表示

Lambda + S3 + Transcribe で、日本語で自動音声吹き替え機能を作ろう!

こんにちは!
BeatFit エンジニアの飯塚です。
半年ぶりの投稿となります。

エンジニアになって半年たち、今は、フロントエンドとバックエンドを主に担当しております。
が、そろそろ社内のインフラを Heroku から AWS へ完全移管する話が出たため、今年の6月頃から、AWSの勉強を開始しました。
先日、AWS ソリューションアーキテクトの資格をとりました。(1回落ちました。。)
が、実務では、まだまだ全然使いこなせていないので、これからも頑張っていきたいところです。

今回、職場のコンテンツチーム(社長)より、動画の音声起こしができたら嬉しいと言う声が上がりました。
ちょうど、AWS Transcribe が 11/21に[日本語対応](https://tech.nikkeibp.co.jp/atcl/nxt/news/18/06528/?i_cid=nbpnxt_ranking)されたので、この機会に触ってみたいと思います。

S3 アップロード → Lambda → Transcribe と言う流れで、実装します!
Lambda は全然詳しくないため、間違いや不適切な

元記事を表示

CloudFormationの既存リソースインポート機能を触ってみた

お世話になっている開発案件にて、

既存のリソースをCloudFormationに適応してみてはどうか?

というお話が上がりまして、早速最近解禁されました既存リソースのインポート機能が使えないかとおもい触ってみました。

新機能 – CloudFormation スタックへの既存リソースのインポート
https://aws.amazon.com/jp/blogs/news/new-import-existing-resources-into-a-cloudformation-stack/

今回初めてCloudFormationを触ったこともあり、つっかかった点や、便利だなと思った点があったので、何か参考になればと思い共有できればと思います^ ^

## なにが便利なのか?

CloudFormationへ既存リソースを移行したり再構築する手間が省けました。

今まではCloudFormationに既存リソースを組み込むとした場合、Stackに新規でリソースを紐づけたあとに、データの移行なりインスタンスの内部設定だったりを行う必要がありました。RDSとか大変そうですね^ ^;

また

元記事を表示

【Rails】we’re sorry, but something went wrongでハマった話(2)

こんにちは!スージーです!
ローカル環境では問題なかったのに本番環境で発生した`we’re sorry, but something went wrong`の解決までを備忘録として

## we’re sorry, but something went wrong
このエラーは本番環境でちょいちょい見るので`production.log`でエラーログを確認する

“`terminal:ターミナル
[ec2-user@ip-~~]$ cd /var/www/app-name
[ec2-user@ip-~~]$ cd log
[ec2-user@ip-~~]$ cat production.log
D, [2019-11-18T07:06:44.834244 #5661] DEBUG — : hogehoge~~
D, [2019-11-18T07:06:44.834597 #5661] DEBUG — : hogehoge~~

・・
・・・
“`
この時は`production.log`にエラーログが無かった

## デバックを考える

– `タイポ`→×
開発環境でもエラー

元記事を表示

RDS(Oracle)にDMPをインポート(datapump)してみた!

#OracleRDSにDMPをインポート
ちょっとハマってしまったので、以下参考までに。
ポイントは
・S3が必要
・SQLで処理している頭に切り替える。(OSコマンドは使えない。)
・ファイルの大文字小文字が判別必要
・DMPは大きいのでgzipにしたいのですがアップロードしても解凍できないので回答してからファイル転送が必要

#必要なもの
S3バケットが必須です!
S3にDMPファイルをアップロードして、RDSにアップロード(転送みたいなイメージ)し、インポートを行いました。

よく解説サイトにはAWSのEC2にOracleデータベースサーバがあれば、DBリンクでインポートできる等々が記載がありますが、EC2にOracleデータベースサーバがあればRDSいらないですよね。。。

#使ったSQL
RDSはOSコマンド等が使えないので、OracleのSQLを変更した専用のコマンドをSQLで使用します。
SQLPLUSが一番いいみたいですが、ちょっとわかりにくいのでosqleditでも十分操作できます。
(私的にはosqleditのほうがわかり易かったです。)

##ファイルコピー
下記

元記事を表示

初心者でも試せる!AWS上でwordpress構築方法

# 概要
AWSを使うと様々なメリットがありますよね。
根本的なインフラの管理やAPIを使って簡単にインスタンスを作成したりなど・・・。

サーバーサイドエンジニアとして最近AWSを使い始めたのですが、ECS + ECR を用いたDocker環境等…を触ることが多くあります。

思い返してみると素のEC2等をあまり触ったことが無いので、初心に振り返ってみようと思ったのがこの記事を書くきっかけです。
純粋な `EC2 + ELB + RDS + Route53` という構成でwordpressを用いて、ブログサイトの環境構築をしてみました。

※ 基本的に無料枠で作っているけど、使用状況に応じてインスタンスタイプの変更をしたほうがよい。
※ この記事ではRDSは一台構成でつくっていますが、必要に応じてクラスタ構成を組んで読み取り専用エンドポイントを
ReadOnlyとして使用するように設定すると尚よし。

# 完成予定図
![Untitled Diagram.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/

元記事を表示

unexpected status “ROLLBACK_IN_PROGRESS” while waiting for CloudFormation stack … が起きたら

ちょっとハマったので、同じ轍を踏む人が少しでも早く解決できるようにUP

## 環境

eksctl : 0.10.1

## 対応

eksctl を 0.10.2 以降に上げる

## エラーメッセージ

“`console

[centos]$ eksctl create cluster –name=k8s –region=ap-northeast-1 –nodes=3 –nodes-min=1 –nodes-max=3 –version=1.12 –node-type=t2.medium –vpc-private-subnets=subnet-1,subnet-2,subnet-3 –vpc-public-subnets=subnet-4,subnet-5,subnet-6
Mon Nov 25 01:42:32 UTC 2019

[?] eksctl version 0.10.1
[?] using region ap-northeast-1
[?] using existing VPC (vpc-xxxxxxxxxxxxxxxxx) and su

元記事を表示

keycloakをAWS上にインストール・RDSと連携まで

# この記事について
開発中のソフトウェアのログインにKeycloakを使用するので、セットアップ中に起こった問題とそれらに対するトラブルシューティングを備忘録として残す第二弾です。今回はAWS上に公式版(Github版ではない)のkeycloakをインストールし、RDSと連携させる手順を説明します。RDSはMySQLを使用しました
バージョンとクラス
keycloak: 6.0.1
AWS EC2: t2.micro
RDS: db.t2.micro, MySQL
日付:2019/11/22

##目次
– [AWSの設定(VPC)](#AWSの設定(VPC))
– [AWSの設定(EC2)](#AWSの設定(EC2))
– [AWSの設定(RDS)](#AWSの設定(RDS))
– [インストール各種](#インストール各種)
– [MySQLの設定](#MySQLの設定)
– [keycloakの設定](#keycloakの設定)

##AWSの設定(VPC)
まず最初に、AWSサーバーがインターネットからアクセスできるようVPCを使ってネットワークを構築していきます。Am

元記事を表示

【GKE】Serviceリソースの外部IPアドレスに対してroute53で名前解決する方法

## GKEの外部IPアドレスについて知っておきたい予備知識

※本記事は、GKE上にコンテナをデプロイしてServiceリソースを作成した前提でお話を進めます。(GKEの公式ドキュメントが分かりやすすぎるので、あえてドキュメントを書くまでもないと思っています。)

Dockerfileの作成方法については以下にまとめたので参考にしていただけると幸いです。
参考:https://qiita.com/arthur_foreign/items/fca369c1d9bde1701e38

ただ、前提の前にGKEにおいて知っておきたい知識も、Google公式から引用しておきます。

>デフォルトで、Kubernetes Engine 上で実行するコンテナは、外部 IP アドレスを持たないため、インターネットからアクセスできません。

>アプリケーションのポッドにネットワーキングと IP サポートを提供する Service リソースを作成します。Kubernetes Engine は、アプリケーションの外部 IP とロードバランサ(課金対象)を作成します。
引用:https://cloud.go

元記事を表示

気象×Ruby 〜Mechanizeを使ってRubyスクレイピング〜

#今回の試み
###・ 気象データAMeDASの10分ごとの値を一気に取得する
###・ PythonとRubyの両方でスクレイピングしてみる

スクレイピングするデータは[こちら](https://www.data.jma.go.jp/obd/stats/etrn/view/10min_s1.php?prec_no=44&block_no=47662&year=2019&month=01&day=01&view=p1)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/354874/13bf9771-17c0-c790-a403-251492816bfa.png)

#1. Pythonによるスクレイピング
“`python
# -*- coding: utf-8 -*-
import pandas as pd
import urllib.request
from bs4 import BeautifulSoup

url = ‘https://www.data.jma.go.jp/ob

元記事を表示

AWSにdjango開発環境構築メモ(VSCode Remote SSH用)

# 前提

この構築のゴールは、AWS環境ではsshのみ開けて、サーバサイドの開発、デバックをClientPCのVSCodeでできるようにすることです。

Client
  Windows10
サーバ 
 CentOS7(AWSで動作)

※手順全部書いたつもりです。参考になるところあったら使ってください。
※毎回これするのも大変なのでansible化するかdokerイメージにしたい。
※VSCodeでのdjangoデバック環境は次の機会に。

# ssh 設定
.ssh/sshconfigにAWSで起動したCentOSののログイン情報を記載してSSHでパス無しでログインできるようにする。
LocalForwardの行は、Djangoのポートへの。PCでlocalhost:8000を開くとサーバ側に転送されて便利。

“`
# Read more about SSH config files: https://linux.die.net/man/5/ssh_config
Host myserver
HostName xxx.xxx.xxx.xxx
User cento

元記事を表示

OTHERカテゴリの最新記事