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

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

LINEBotをみんなで作ろう〜コードを実装編〜【GWアドベントカレンダー最終日】

この記事は下記の [#GWアドベントカレンダー](https://gw-advent.9wick.com/calendars/2020/72) の 8日目の記事になります。

1週間でサーバレスLINEBotを生み出す( @inoue2002 ) | GWアドベントカレンダー

# はじめに
こちらの内容は超初心者向けです。
[公式ドキュメント](https://developers.line.biz/ja/docs/messaging-api/overview/#messaging-api%E3%81%AE%E4%BB%95%E7%B5%84%E3%81%BF)を読める方はこちらをお読みいただく方が正確です。

[昨日の記事](https://qiita.com/inoue2002/items/ab226d9836a891b01bc9)をご覧になってない方はぜひ。
こちらの記事はGWアドベントカレンダーを通してLINEBotをサーバレスで作れるようになろう!ということを目標に書いている記事です。

LINEBotは作れるけどAWSでサーバーレスを作ってみたい!方向けの記事です

元記事を表示

LINEBotをみんなで作ろう〜レイヤーとAPIgateway設定編〜【GWアドベントカレンダー7日目】

この記事は下記の [#GWアドベントカレンダー](https://gw-advent.9wick.com/calendars/2020/72) の 7日目の記事になります。

1週間でサーバレスLINEBotを生み出す( @inoue2002 ) | GWアドベントカレンダー

# はじめに
こちらの内容は超初心者向けです。
[公式ドキュメント](https://developers.line.biz/ja/docs/messaging-api/overview/#messaging-api%E3%81%AE%E4%BB%95%E7%B5%84%E3%81%BF)を読める方はこちらをお読みいただく方が正確です。

[昨日の記事](https://qiita.com/drafts/ad945981150c859911fc)をご覧になってない方はぜひ。
こちらの記事はGWアドベントカレンダーを通してLINEBotをサーバレスで作れるようになろう!ということを目標に書いている記事です。

LINEBotは作れるけどAWSでサーバーレスを作ってみたい!方向けの記事です

昨日の記事でAWSア

元記事を表示

EC2 mariaDBのパスワードが入力できないときの対処法

#EC2 mariaDBのパスワードが入力できない対処法

EC2サーバーにアクセスし、mariaDBにログインする際、Enter passwordにて設定したパスワードがキーボード入力できないときの対処法。

“`
[ec2-user@ip- ~]$ mysql -u root -p
Enter password:
“`

##解決方法
通常通りキーボードで入力し、Enterをクリック。
└ 画面に表示されないだけで、実際は入力できている。

▼接続完了

“`
[ec2-user@ip- ~]$ mysql -u root -p
Enter password:

Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 26
Server version: 5.5.64-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others

元記事を表示

AWSのEC2でmariaDBを使う方法(対話モードまで)

#EC2でmariaDBを使う方法

・AWSのEC2でmariaDBを起動し、対話モードに入る手順。
・パスワードの設定方法

##はじめに
**ここに至った背景(このページの対象者)**

– ローカルに作成したnode.jsのWEBページをEC2にデプロイ
– ローカル内では、DBにmySQLを使用
– テスト用なのでRDS(EC2と別)を作成する必要性がない
– RDS:AWSのDB構築・運用のサーバー
– 無料枠あり(期間制限)
– EC2内のmaridDBからRDSへの移行は比較的簡単にできそう
– mySQLである必要性がない
– AWSにはmariaDBがデフォルトでセット
– mariaDBはオープンソースで、googleなども使用している(信頼性◯)
– mySQLとmariaDBで性能に大差ない(性能◯)
– 特に小規模のテスト用なら尚更
– mySQLは使えるので、mariaDBも使えるようになっておきたい。

##インストール手順
**EC2サーバーにログインした状

元記事を表示

AWS EC2サーバーにアクセスする方法(windows gitbash)

#AWS EC2サーバーにアクセスする方法(windows gitbash)

AWSのEC2サーバーにアクセスするコマンドのメモ。
windowsで接続する場合、gitbashを使うと便利。
3つのコマンドラインで簡単に接続できる。

####※前提条件
– AWSでEC2のインスタンス作成済み
– プライベートキー(.pemファイル)をローカルに保存
– ユーザー名はデフォルト(ec2-user)

##コマンド
gitbashを立ち上げる。(windowsのコマンドだと、chmodが使えない)

▼[ ]は自分の設定により変わる。(入力時は[ ]不要)

“`
#EC2のプライベートキーがあるフォルダに移動
$ cd [*.pemのあるフォルダへのパス]

#アクセス権変更
$ chmod 400 [pemファイル名].pem

#Linuxインスタンスに接続
$ ssh -i “[pemファイル名].pem” ec2-user@[パブリックIPアドレス]

“`

以下が表示され接続完了

“`
Last login: ~

__| __|

元記事を表示

AthenaのSaved Queriesをコンソール以外から取得する

# はじめに

AWSアカウントをクローズする際にAthenaのバックアップを行ったのがきっかけです。
コンソール上でSaved Queriesをまとめて取得する方法が見つからず、またS3に保存されているわけでも無さそうだったため、備忘録として試した内容を以下にまとめます。

# Saved Queries
何度も使うクエリに名前と説明を付けて保存しておく機能です。
ワークグループごとに分けて保存できます。
saved_queries.png

# 取得方法

以下の2つの方法でSaved Queriesを取得します。

* AWS CLI
* AWS SDK for Python

### 実行環境
* macOS High Sierra 10.13.6
* aws-cli 1.16.128

元記事を表示

Vue.js、AWS Amplifyおよびboto3でサンプルアプリを作ってみる(第一回:Vue.jsセットアップ編)

フロントエンド初学者です。
Vue.jsの勉強のためにインストールからアプリ公開まで一通りやってみたので、手順とハマリどころをメモ。

## やりたいこと
– Vue.jsをフロントエンドにしたデータカタログアプリ(のサンプル)を作る
– せっかくなのでAWS Amplifyも使ってみる
– バックエンドはPython 3 + boto3※で作る
– Amazon API Gateway、AWS Lambda、AWS Glueでサーバーレスにやる(EC2やEC2的なものには最後まで触らないで済ませる)

※ AWSのPython用SDK。

## 完成品イメージ
スクリーンショット 2020-05-08 00.28.01.png

## 道具の選定
それぞれのパーツについて、使う道具を選んでいく。

– フロント

元記事を表示

EC2のWindowsインスタンスの操作中にパーソナルFWを無効化して接続できなくなった場合の復旧手順

# トラブルの原因
AWSにて作成したEC2のWindowsインスタンスに対してRDPでログインした後、WindowsのパーソナルFWを操作中にRDP接続を無効に設定すると、RDP画面がブチっと切れて操作できなくなります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/252317/f695dccc-37eb-b3ec-098e-3a819dfe9c99.png)

EC2としては起動しているのですが、外からRDPが拒否されてしまい、OSレイヤーでの設定やローカルのファイルにアクセスすることが出来なくなってしまいます。

# 対処法
– EC2のバックアップ、スナップショットを取得していれば設定変更前に戻すことは出来ます…が、私は残していませんでした。
– AWS Systems Managerを使ってEC2にアクセスし、復旧させる方法もあるようです。
https://docs.aws.amazon.com/ja_jp/systems-manager/latest/usergui

元記事を表示

aws-sdk-goでFargateタスクを実行する

# 背景
GolangのSDKからFargate起動タイプのECSタスクを起動したかったが、意外と情報が無かったのでまとめます。

# 検証環境
– goバージョン
– go version go1.14.2 darwin/amd64
– OS
– macOS Catalina バージョン 10.15.1

# コード
“`golang
package main

import (
“fmt”
“github.com/aws/aws-sdk-go/service/ecs”
“github.com/aws/aws-sdk-go/aws”
“github.com/aws/aws-sdk-go/aws/awserr”
“github.com/aws/aws-sdk-go/aws/session”
)

func main() {
svc := ecs.New(session.New(aws.NewConfig().WithRegion(“ap-northeast-1”)))
input := &ecs.RunTaskInput

元記事を表示

AWS 基礎

#前提
AWSについて復習したことを書いていきます

#本題

#システムをインフラから構築
インフラができるようになるメリット
どのようにインフラを構築するのか

##メリット
・自分でサービスを作れる
自分自身でインフラを構築し、サービスをリリースできるようになる
開発する際のテスト環境を自分で作れるようになる
・システム全体で対応できる
障害があった時にどこに問題があるか、切り分けされるようになる

##どのようにインフラを構築する?
###1サーバーの構成
どのようなサーバーが必要か考える
サーバーの設置
サーバーのOSをインストール各種設定
必要なソフトウェアをインストールし、設定する

###2ネットワークの構成
ネットワークで使用するIPアドレスの範囲を決める
サーバーにIPアドレスを割り当てる
ドメイン名をIPアドレスの対応を割り当てる

##AWSってなに?
アマゾン社が提供するクラウドサービス、世界最大規模

##AWSの特徴
###1サービスが豊富
EC2やRDSなど、100以上のサービスが存在している
高負荷に耐えられる信頼性の高いシステムを少ない手間で運用で

元記事を表示

「ちゃんと在宅ワークしてますよ」ボタン作ってみた。

#あらすじ
SORACOM LTE-M Button を使って、勤務開始と勤務終了を知らせるボタンを作りました。
ボタンを押すと、 Lambda が動いて Slack が飛びます。

えっ、「そんなの Slack だけでいいじゃないか」って?

**なんと SORACOM LTE-M Button を使うことで、ちゃんと自宅にいることが伝えられるのさ!**
**位置情報を取得できるからね!**

**さぁ、君もワンクリックで上司に連絡、はじめよう!**
あっ、スマホでも位置情報取得はできるってツッコミは勘弁してね(・ω<) #なぜ SORACOM LTE-M Button ? 主な理由は2つです。 - 最近 SORACOM LTE-M Button を買ったから試してみたかった。 - ちょうど Try! SORACOM キャンペーンがやっていて、題材が Stay at Home だった(ホンネ)。 在宅ワークだと、毎朝上司に連絡取るじゃないですか?(うちだけ?) **SORACOM LTE-M Button を使えば、それをワンクリックで出来ちまうわけです!** #機能概要 機

元記事を表示

AWS ミニ用語集

VPC: ユーザー専用のプライベートなクラウド環境を提供するサービス Virtual Private Cloud

EC2: AWSが提供する仮想サーバ Amazon Elastic Compute Cloud

IAM : AWSの認証機能を提供するサービス

リージョン : 領域

アベイラビリティーゾーン : 領域を細分化したもの

S3 : Simple Storage Service

セキュリティ・グループ : 通信の許可・拒否を設定する。

元記事を表示

Aurora Severless Data API を使ってみての気づき

# この記事は何?
Aurora Severless Data API を利用した開発活動中に気づいたことを随時記載します。
Data API については、昨年(2019年)に東京リージョンでリリースされたばかりであるため、日本語の情報が少ない状況です。この記事が今後利用される方のお役に立てば幸いです。

# RDS 利用環境

– リージョン:ap-northeast-1
– ロール:サーバーレス
– エンジン:Aurora PostgreSQL

# Aurora Severless (PostgreSQLエンジン)を使ってみての気づき

– :one: **最小キャパシティーを1Aurora Capacity Unit (ACU) から設定できるのはMySQLエンジンのみ**。PostgreSQLエンジンの最小キャパシティーは2ACU。
「[Amazon Aurora Serverless が 1 ユニットのキャパシティーと新しいスケーリングオプションのサポートを開始](https://aws.amazon.com/jp/about-aws/whats-new/2019/04/

元記事を表示

AWS SAA資格取得~RDS編①~

今日はRDSについてまとめていきたいと思います。

#RDS(Amazon Relational Database Service)とは
⇨マネージド型のリレーショナルデータベース。
下記のデータベースエンジンをサポートしています。
・Amazon Aurora(1/10のコストで商用データベースと同等の可用性を実現)
・PostgreSQL(ビジネス、モバイルアプリケーションを実行するオープンソースのリレーショナルデータベース)
・MySQL(人気高め!コスト効率○)
・MariaDB(MySQLからフォーク)
・Oracle Database(高いシェアがある商用DB)
・Microsoft SQL Server(高いシェアがある商用DB。Windowsとの親和性○)

★マネージドなデータベースサービスの特徴について★
・最初からデータベースがインストールされている状態のためすぐにデータベースが利用可能。
・データベースサーバが動作しているOSや、データベースソフトウェアのパッチの適用はAWSが行う。
・自動バックアップが可能
・データベースのスケールアップ、スケールアップはAW

元記事を表示

アカウントを作成しました

はじめまして、Chanmitsu_です。
簡単ですが自己紹介させていただきます。

# 経歴、経緯

__前職__
流通小売系の店舗向けシステム運用保守を2年半、
プロジェクトマネジメント業務約3年半
Iaasサービス運用業務 約1年

__現職__
AWSエンジニア now !

中でもプロジェクトマネジメント業務は店舗向けサーバやシステムのリプレイス案件であったり、システム開発の上流工程からリリースまでの経験させて頂きました。
プロジェクトに参画したばかりの頃は分からない事だらけで、つらい日々が毎日続きましたが、
徐々に形になっていくプロジェクトや自分の成長を感じる事に喜びを感じていました。

特に30年ぶりとされる店舗レジのリプレイス案件にて関連するI/Fの構成変更やリプレイスに
携われた事は今の自分を形成している一つなのかなと思っています。

そしてその一つの案件を通してアプリケーションを支えるインフラエンジニアに魅力を感じ、人やシステムを管理する立場では無く自分から技術を身に着けて対等な関係で物事を進めれるようになりたいと思いました。その中でもクラウドサービスで大きなシェア

元記事を表示

AWSのALBでヘルスチェックで詰まった話

#はじめに
 今回はALBのヘルスチェックが通らず、ルーティングに苦戦した時の対処を備忘録として記事にします。結論から言うと、インスタンス側の設定が原因でした。途中までチームメンバーが担当して用意していたものを引き継いで問題解消したので、前提となる環境からメモしておきます。

#環境
– ALBはパブリックサブネットに配置
– ターゲットのインスタンスはプライベートサブネットに配置
– ターゲットインスタンスはRHEL8のEC2
– EC2はインスタンスを立ち上げたあと特に操作なし
– 後々アプリをデプロイするための環境を整える作業中

#確認したこと
– ALBやEC2インスタンスのSG(セキュリティグループ)の設定
– リスナーの設定
– ヘルスチェックの設定
– SELinuxの設定
– httpdのステータス
– index.htmlの存在

 ヘルスチェックを正常化するために上記の6点を確認しました。そのうち原因は下3つ、つまるところEC2インスタンス側の設定が悪さをしていたので説明をします。
 上3つの観点はAWS公式のユーザーガイドを中心に調べればすぐわかると

元記事を表示

terraform入門

#参考文献

– [TerraformでVPC・EC2インスタンスを構築してssh接続する](https://qiita.com/kou_pg_0131/items/45cdde3d27bd75f1bfd5)
– [Terraformでawsのec2インスタンスを立ち上げる](https://qiita.com/bunty/items/5ceed66d334db0ff99e8)
– [AWS CLI の profile を追加する](https://qiita.com/itooww/items/bdc2dc15213da43a10a7)
– [お金をかけずに、TerraformでAWSのVPC環境を準備する](https://qiita.com/CkReal/items/1dbbc78888e157a80668)

#基本コマンド

###Terraformインストール
“`
$ brew install terraform
“`

###AWS CLIのprofile追加
“`
$ aws configure –profile XXXXXXX
“`

元記事を表示

APP IDの取り方Parse Server Certified by Bitnamia(Swift)

今までFirebaseでしか利用してこなかったのですが、
AWSデビューしてみました?✨

勉強でただ利用しているため、無料枠を使用したいと考え、
今回は“`『Parse Server Certified by Bitnami』“`
を使ってみました!!!☀️

しかし、applicationIdとclientKeyの取り方がネットで探し、やってみても
結果は

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/407730/d27edb63-cbb7-488e-e471-ddfaaab4b336.png)

のように
“appId”は “myappID”と中々コードらしいものが出てきませんでした……。

結構困ったので
私のように、困っている人がもしかしたらいるかもしれないと思い、今回は記事を書いておきます。

## 1. 旧バージョンをダウンロード

1. AWS ログイン
2. インスタンスの作成
3. 『Parse Server Certified by Bitnami』を

元記事を表示

AWS Lambdaでネイティブライブラリを含む場合の環境

## はじめに
Pythonの依存ライブラリにおいてネイティブライブラリを使う場合は、
ビルド(pipする)する環境と、AWS Lambda側の環境を揃えておくという話は昔から聞いていました。

ただ、実際に何がどう影響してダメなのか?全然調べたこともなかったので、
ハマったついでに`pip install`で取得したライブラリを確認してみたメモです。

## Lambda実行時に発生したエラー
### エラー内容
`pyproj`という距離計算を行うモジュールを使用した場合に発生しました。
(このエラーだけ見ても、最初は何が悪いか全然分かりませんでしたが。。。)

“`python
[ERROR] Runtime.ImportModuleError: Unable to import module ‘lambda_handler’: cannot import name ‘_datadir’ from partially initialized module ‘pyproj’ (most likely due to a circular import) (/var/task/

元記事を表示

wkhtmltopdfをECSで動かす

## 背景

wkhtmltopdfを使ってPDF出力をさせたときにローカルで出力できても、実稼働環境でうまく動かず500エラーが出る事があった。
ローカルと実稼働環境の違いはnginxの有無とECSのOSで、nginxの方は別途検証し問題なさそうだった。

結論を言うとGemのバージョンの問題だったが、特定に少し時間かかったのでメモ。

## 実稼働環境
– ECS
– amzn-ami-2017.09.g-amazon-ecs-optimized(ami-872c4ae1)

## 問題の特定

実稼働環境のログを確認すると下記のようになっていた。

“`
Command Error: /usr/local/bundle/gems/wkhtmltopdf-binary-0.12.5/bin/wkhtmltopdf:40:in `

‘: Invalid platform, must be running on Ubuntu 14.04/16.04/18.04 CentOS 6/7, Debian 8/9, or intel-based macOS (missing bin

元記事を表示

OTHERカテゴリの最新記事