- 1. (自分用)AWS_1(Linux仮想マシンとインスタンスの起動/インスタンス周りを整理)
- 2. [エラー]自動デプロイ実行時のrbenv: ruby 2.5.1 is not installedot〜に関して
- 3. laravel web.phpで解決 データベース項目追加できなかった件
- 4. 【AWS】CloudFormationでRoute53 Private Hosted Zoneを構築してみる
- 5. Amazon Honeycode 上でのデータの扱いとAWS上のデータを扱うためには
- 6. AWSコスト情報をZabbixでモニタリングする
- 7. 【AWS】請求アラート設定方法(CloudWatch)
- 8. AWS AppSyncを使ってみた
- 9. [EC2]計画メンテ情報のキャッチ
- 10. AWSでデプロイしちゃおうってわけ(AWS登録編)
- 11. [CloudWatch]各サービスのメトリクス
- 12. AWSで構築したシステムの通知はまずAWS Chatbotを試そう! ~CodePipeline編~
- 13. 【AWS CloudFormation デザイナー】VPCを作ろうとしたら、Property CidrBlock cannot be empty.エラーが出た。
- 14. Bitbucket PipelinesとAWS CodePipelineを連携する!
- 15. Cognitoの環境構築から、Angularでログインするまで
- 16. Amazon HoneycodeでAPIを使う為に、料金プランを変更した。
- 17. [超超易しい] クラウドコンピューティング周りのこと(AWS寄り)
- 18. 備忘録
- 19. 【総集編】6月ふりかえり
- 20. TerraformでAWS VPCを削除する
(自分用)AWS_1(Linux仮想マシンとインスタンスの起動/インスタンス周りを整理)
# 項目
1. Linux仮想マシンの起動と整理# 1.Linux仮想マシンの起動
## 1-1.AWSコンソールにアクセス
– AWSにサインアップ後、ページからコンソールにアクセスする
– ルートユーザとIWA?ユーザが有るけど多分`ルート`で良いと思う…## 1-2.インスタンスを作成(仮想マシンを起動)
1. コンソールから`EC2`を選択
2. 先に右上の所から東京リージョンを選択しとく
3. `インスタンスを作成`を選択
4. `Amazon Linux AMI`か`Amazon Linux2 AMI`を選択、取り敢えず無印を選択で良いはず
5. インスタンスタイプは`t2 micro`ってやつが無料枠なので取り敢えずそれ選択
6. インスタンス作成の確認→`作成`
7. キーペアを作成みたいなポップアップが出る、上のメニューバーから`新しいキーペアを云々`を選択、キーペア名は適当に
`キーペアのダウンロード`をし、後生大事に保存## 1-3.パブリックIPアドレスを作成
– このままだと見るたびにIPアドレスが変わってなんかめんどくさい
– なのでI
[エラー]自動デプロイ実行時のrbenv: ruby 2.5.1 is not installedot〜に関して
## はじめに
今回の投稿は私が自動デプロイを実行した時にエラーにハマったので、その内容を共有させていただきます。## エラー内容
“`
[Deprecation Notice] Future versions of Capistrano will not load the Git SCM
plugin by default. To silence this deprecation warning, add the following to
your Capfile after `require “capistrano/deploy”`:require “capistrano/scm/git”
install_plugin Capistrano::SCM::Git00:00 rbenv:validate
WARN rbenv: ruby 2.5.1 is not installed or not found in $HOME/.rbenv/versions/ruby 2.5.1 on 54.95.87.53
“`## 仮説を立てる
*
laravel web.phpで解決 データベース項目追加できなかった件
課題で入力フォームを増やすというものがあったが、どれだけフォームを変更してもデータベースが更新されず常におなじ値になっていた。
原因は、以下の// Eloquent モデルが定数になっていたこと
“`php
use App\Book;
use Illuminate\Http\Request;/**
* 本のダッシュボード表示(books.blade.php)
*/
Route::get(‘/’, function () {
$books = Book::orderBy(‘created_at’, ‘asc’)->get();
return view(‘books’, [
‘books’ => $books
]);
//return view(‘books’,compact(‘books’)); //も同じ意味
});/**
* 新「本」を追加
*/
Route::post(‘/books’, function (Request $request) {//バリデーション
$validator = Vali
【AWS】CloudFormationでRoute53 Private Hosted Zoneを構築してみる
皆さんはEC2インスタンスなどAWS上のリソースの名前解決はどのようにしているでしょうか?
オンプレだとInternal DNS構築して管理すると思います
AWS上で管理するならマネージドの方がいいですよね
そこで今回はRoute53 Private Hosted Zoneを利用してマネージドで内部向けのDNS管理してみます
手ポチやawscliで地道に構築するより、CloudFormation (以下CFnと略) で構築した方が早いですしレコードの管理もしやすいので、CFnを使用した構築方法をご紹介します# CloudFormation
今回はシンプルルーティングポリシーという極一般的なDNSを構築していきます
## テンプレート
Private Hosted Zoneの作成には`AWS::Route53::HostedZone`のVPCsでVPCオブジェクトを指定するだけです
“`yaml
AWSTemplateFormatVersion: “2010-09-09”Parameters:
HostedZoneName:
Type: String
H
Amazon Honeycode 上でのデータの扱いとAWS上のデータを扱うためには
[Amazon Honeycode](https://www.honeycode.aws/)の概要や操作感は公式ブログやレビュー記事があるので、実際のアプリケーション開発に必要となるデータの扱いについて調べました。
– [公式ブログ](https://aws.amazon.com/jp/blogs/aws/introducing-amazon-honeycode-build-web-mobile-apps-without-writing-code/)
– [Amazon Honeycode を触ってみた](https://www.r3it.com/blog/try-amazon-honeycode)**[6/24 9:40 追記]**
IoT デバイスからのデータを AWS Lambda を通じて Amazon Honeycode で表示している様子が掲載されています。
“Amazon HoneycodeにIoTデバイスからデータを送ろう”: https://blog.soracom.jp/blog/2020/06/26/send-data-to-amazon-honeycod
AWSコスト情報をZabbixでモニタリングする
## やりたいこと
最近、ようやくAWSを触り始めました。いやー楽しいですね。全然わかんないけどw。
趣味のため、無料枠でAWSのいろいろなサービスを使って遊んでします。
が、何が無料枠か否か理解しておらずコストが突然跳ね上がったときに気付きたいと思い、
Zabbixで、一日に一回、AWSのコストをモニタリング(以下)するようにしました。![Screenshot from 2020-06-25 21-04-04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/82244/223f542e-9f5b-eb5a-b819-aecf4b161f2b.png)
## もうちょっと具体的に
* AWSのトータルコストと各サービスのコストをモニタリング(1日1回)
* トータルコストに対して、閾値(WARN/HIGH)のトリガーを設定できます。
* zabbix-agentとaws-cli(aws ce)を使用します。
* aws-cliの実行方法(awsコマンド+jq)は、以下URLを参考(ありがとうござ
【AWS】請求アラート設定方法(CloudWatch)
# はじめに
CloudWatchでの請求アラートの作成方法についてアウトプットしていきたいと思います。
料金超過に気づくために、設定しておいた方がいい監視設定になります。# 作業前提
– ルートユーザーに多要素認証を設定している。
[多要素認証設定手順](https://qiita.com/satton6987/items/31e0eecdc9fa33d9c609)
– 作業用IAMユーザーを作成済みである。
[作業用IAMユーザー作成手順](https://qiita.com/satton6987/items/b36e5920ddecd6cb6419)**※今回は作業用IAMユーザーにて実施**
# 今回の設定内容
– 12USD(約1300円)を超過した場合、アラートを発砲
– 登録したメールアドレス宛にアラートを通知# 作業手順
## 請求アラート許可設定
①マネジメントコンソール右上のユーザー名をクリック→ 「マイ請求ダッシュボード」を選択
![1.jpg](https://qiita-image-store.s3.ap-northea
AWS AppSyncを使ってみた
# はじめに
* AWS AppSyncとは、GraphQLをベースとしたアプリケーションのバックエンドを提供するAWSのフルマネージドサービスです。次の機能を利用できます。* リアルタイムアプリケーションの作成
* 同期を使ったオフラインプログラミングモデルの構築
* 必要なデータだけ GraphQL で取得
* 複数のデータソース(Amazon DynamoDB、Amazon Elasticsearch Service、AWS Lambda、Aurora Serverless)へのアクセスこのAppSyncでAPI構築し、ToDo管理Webアプリケーションを開発してみました。
## 前提知識
* HTML, CSS, JS, JQuery, etc.
* DynamoDB
* GraphQL但し、それほど深い知識は必要ない。
## DymanoDB table作成
この[ページ](https://www.pressmantech.com/tech/serverless/4684)を参考にしてUser tableとTodo table
[EC2]計画メンテ情報のキャッチ
# 経緯
保守システムのとあるエラー通知を受けて調査しているとEC2インスタンスが謎の停止をしていることがあった。仕方ないので対象インスタンス(ubuntu)を起動して“/var/log/syslog“を見ると、
「exiting on signal 15」という普通にシャットダウンした記録が。意味がわからん・・・といろいろ調査していたところ、
https://teratail.com/questions/35247の記事でAWSのメンテかもよ?というのがあり、
えっ、EC2のメンテってそもそもどうやって知るの?とググったら、https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/monitoring-instances-status-check_sched.html
の公式記事がヒット。
中には
– EC2コンソールのイベントから見れるぜ
– そもそもメールで通知いくぜという内容が書いてあった。
そうだったんだ・・・。これ関連で色々調べたことをまとめておく。
# 計画メンテ情報をEC2コン
AWSでデプロイしちゃおうってわけ(AWS登録編)
こんばんはですね。
お久しぶりになってしまい非常に私反省しております。
昨日は地震が酷かったですね。
寝ていて若干起きたけど、眠気に負けてすぐ寝ましたが。気になったのはニュースで
「余震には気をつけましょう!」
っていってるけど####気をつけようがないだろ!!!予測できないんだし!!!
と思ってしまう私は悪い子でしょうか。
さて今回はデプロイに関してAWSを使ってデプロイしていくわよっ!!
#1 まずはAWSのHPへアクセスっ!!
こちらから飛んで頂戴
[AWS](https://aws.amazon.com/jp/)開くとへいっ
そんで右上への無料サインアップから登録して頂戴!!
###※住所、電話番号を登
[CloudWatch]各サービスのメトリクス
# 概要
EC2のメトリクスしか知らなかったが、
あるとき保守しているシステムのELBで異常を検知し、そのときに初めてELBのメトリクスを見て色々知った。
いい機会なので、ELBをはじめとし、今後知ったものをここへまとめていく。# ELB(Classic Load Balancer)
AWSの名前空間 > ELBで確認できる。さらに、以下に分類した結果が表示される。
– LB・AZ別
– AZ別
– LB別
– 名前空間別
– サービス別
– すべてのLBにわたりただ、見た感じだと
– すべてのLBにわたり、名前空間別、サービス別:同じ結果
– LB・AZ別:AZ混合の結果になっていておかしい
– AZ別:こちらもなぜか結果がおかしいという状態で、実用に足るのは「LB別」のみという感じだった・・・
https://docs.aws.amazon.com/ja_jp/elasticloadbalancing/latest/classic/elb-cloudwatch-metrics.html#loadbalancing-metrics-clb
メトリクス名|意味
–
AWSで構築したシステムの通知はまずAWS Chatbotを試そう! ~CodePipeline編~
よくAWSに触れるものです。
以前ECSに合わせたCodepipelineの構築について書きましたが…
・codepipeline構築についての記事
そのCodePipelineのシステム通知には **AWS Chatbot** がおすすめです。
コストパフォーマンスがよく構築も簡単です。
構築のためのCloudformationテンプレートも用意したので、ぜひご参考ください。
■ヘヴィメタルエンジニアリング(はてなブログ)
・Chatbot構築の記事
【AWS CloudFormation デザイナー】VPCを作ろうとしたら、Property CidrBlock cannot be empty.エラーが出た。
#AWS CloudFormation デザイナーとは
GUI形式でAWS CloudFormationテンプレートを作成・参照・変更ができる。
テンプレートリソースで作りたいものを追加していき、統合されたJSONおよびYAMエディタを使用して詳細を編集する。#VPCを作ろうとするも、「Property CidrBlock cannot be empty.」エラーが出た
リソースタイプでEC2>VPCを選択し、キャンパスペインにドロップすると下記のようになった。
チェックボタンを押して有効かを検証し問題ないので、試しに雲のマークを押してスタックの作成をしてみた。
そうするとS3にすでに作ったテンプレートが載っているようだ。
Bitbucket PipelinesとAWS CodePipelineを連携する!
# 背景
とある案件でCI/CD パイプラインをAWS CodePipelineで実装することになったのだが、以下の諸々の制約を解消する連携方法を模索することになった。
– ソース管理にはBitbucketを使用する
– 作成するパイプラインでは複数のAWSサービス(CodeDeployやSSM Automation、CloudFormation)と連携が必要
– 一つのBitbucketリポジトリから起動したいパイプラインの種類が複数ある関連する各種サービスの仕様は以下の通り。
– CodePiplineのソースとしてはBitbucketはサポートされていない
– CodePipelineのソースとしてS3はサポートされている
– CodeBuildはBitbucketと連携可能ということで、当初はこんな感じの構成を考えていた。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/5259/a9069713-2a63-ffaf-b8fd-1d7ee6ecff4c.png)と
Cognitoの環境構築から、Angularでログインするまで
ユーザー認証を担うAWS サービスであるCognitoの環境を作り、SPAのAngularでCognitoで作成したユーザーでログインするまでを記す。
## 要件
– ユーザーは管理者が作成する(ユーザー自身がサインアップすることはない)
– ユーザーは管理者、事業者、一般ユーザーの三種
– 作成されるユーザーのユーザーID、パスワードはランダムに生成する## 必要なサービス・環境
– Cognito
– ユーザープールを利用
– Pythonの実行環境
– 今回はlambdaから実行する
– Angular## Cognitoの設定
Webサービスにログインするユーザーを管理することができるユーザープールを作成する。
これは、Webサービスごとに用意する。> 自分の今の理解(マサカリ待ってます)
>
> – ユーザーがシステムにサインインしたり、ログインしたり、パスワードを変更したり、MFAなどをする機能を提供しています。
> – 認証・認可のうちの認証の部分を担っています。
> – このユーザープールには管理者ユーザーを含むシステムの利用者のユーザー
Amazon HoneycodeでAPIを使う為に、料金プランを変更した。
スプレッドシートを元にウェブサービスが作れるAWSの新サービス [Amazon Honeycode](https://aws.amazon.com/jp/blogs/aws/introducing-amazon-honeycode-build-web-mobile-apps-without-writing-code/) が発表され、ベータ版が利用できるようになりました。
ベータ版の為なのか、AWSコンソール内ではなく、[専用ドメインからのサービス登録](https://www.honeycode.aws/)でした。
Amazon Honeycodeのサービス登録は普通でした。
しかし、専用APIを利用する為には料金プランをアップグレードする必要がある事、AWSコンソールと画面をいったり来たりする必要があり手間取りました。AWSを日頃使い慣れている方なら問題ないのでしょうが、私は迷ってしまったので、このエントリー記事で残します。##### 参照した公式ドキュメント
[Getting Started with Honeycode APIs](https://honeycodecom
[超超易しい] クラウドコンピューティング周りのこと(AWS寄り)
仕事で、AWS,EC2,EKS・・・という単語が出てきて何やらわからず、さっと調べた時のメモ
# AWSって?
Amazon Web Service
Amazonが提供するクラウドコンピューティングシステムですMicrosoftやGoogleもクラウドコンピューティングシステムを提供していますが、その中でもAWSは高いシェアを誇り、高いシェア率=利用者が多いという図式のもと、情報が豊富に出揃っています
[【EC2ってなに?】初心者でもわかる簡単 AWS 用語解説](https://www.wafcharm.com/blog/ec2-for-beginners/)
# EC2とは?
Amazon Elastic Compute Cloud
AWSで利用できるシステムの一つこのシステムを使うことで、AWS上に仮想サーバーを構築し利用することができる
この仮想サーバーの単位をEC2では「インスタンス」という単位で扱います
EC2インスタンス上でコンテナを動かします[【EC2ってなに?】初心者でもわかる簡単 AWS 用語解説](https://www.wafcharm.com
備忘録
【】
・ps -ef |grep jar (実行中のjarプロセスを確認するコマンド)・kill -9 「jarプロセスのID」 (実行中jarプロセスを停止するコマンド)
・java -jar 「プロジェクト名」 & (プロセスを実行するコマンド)
・java -jar 「プロジェクト名」
・jar -uvf shared_shop-0.0.1-SNAPSHOT.jar -C shared_shop-0.0.1-SNAPSHOT BOOT-INF/classes/application.properties
【総集編】6月ふりかえり
# はじめに
今月のふりかえりです。
月1で振り返り
今後は何を勉強するかを決めます。——————————–
# 6月 1週目2020/06/03 [【プログラミング】吾輩は関数である名前はまだない](https://qiita.com/ymd65536/items/ab17bc0b1d47d37c1b9e)
2020/06/07 [【SQL】最初に覚えるSQLの話](https://qiita.com/ymd65536/items/c9537e5525143c31a551)
——————————–
# 6月 2週目2020/06/08 [【データベース】正規化について知る](https://qiita.com/ymd65536/items/d69f106eca0fe25bf047)
2020/06/10 [【ExcelVBA】オブジェクト指向プログラミングをしよう](https://qiita.com/ymd65536/items/c88881f630ed1125fa6
TerraformでAWS VPCを削除する
TerraformでAWS VPCを削除するコード(コマンド)
## 実行環境
– Windows 10 Home (1919)
– Git Bash (git version 2.25.1.windows.1)
– AWS CLI (aws-cli/2.0.3 Python/3.7.5 Windows/10 botocore/2.0.0dev7)
– Terraform (v0.12.26)## 削除する構成
まっさらなVPCが1つだけある状態で、そのVPCを削除
![20200623.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/660929/44f3c342-a8b0-f543-7378-309fdf02600d.png)
## main.tf
“` main.tf
provider “aws” {
profile = “prj01-profile”
region = “us-west-2”
}resource “aws_vpc” “prj01VPC” {
cidr