AWS関連のことを調べてみた2021年03月22日

AWS関連のことを調べてみた2021年03月22日

EC2にJavaWebアプリ環境を構築 #4

[EC2にJavaWebアプリ環境を構築 #1](https://qiita.com/harusiso/items/551a0a438c68586eca3d)
[EC2にJavaWebアプリ環境を構築 #2](https://qiita.com/harusiso/items/80ffb3201d65078a4c4d)
[EC2にJavaWebアプリ環境を構築 #3](https://qiita.com/harusiso/items/103760e7ba20ffe2032d)
__EC2にJavaWebアプリ環境を構築 #4__

#目次

__1.はじめに__
__2.プログラム作成__
__3.データベース作成__
__4.動作確認__
__5.アップロード__

##はじめに

* 前回
* インストール作業終了

##プログラム作成

簡単なプログラムを動してみる

eclipse起動

新規→動的Webプロジェクト
今回はプロジェクト名を”sample”にする

Tomcatは10を使用する
プロジェクト作成AWS Fault Injection Simulatorを使ってみる

# 1 AWS Fault Injection Simulatorってなに?
– AWS FIS
– フォルトインジェクションテストを実行することのできるフルマネージドサービス
– AWSにて構築した環境にて障害を意図的に発生させることができ、その時のシステムの挙動を確認することができる
– 結果より、システムの弱い点を洗い出し、機能やサービスのパフォーマンス向上につなげることができる

# 2 早速使っていく (チュートリアル編)
AWSのドキュメントを見ながらチュートリアルを進めていく
https://docs.aws.amazon.com/fis/latest/userguide/what-is.html

## 2.1 事前準備

### 2.1.1 テスト内容の決定
– どのようなテストを実行するか決定する
– 1つのテストに複数アクション、複数ターゲットを設定することができるが、組み合わせる必要のないものは分けて実験テンプレートを作成する方が良い

### 2.1.2 IAMポリシー、ロールの設定
– デフォルトではAWS FISから各サービスを実行する権限

元記事を表示

AWS OpsWorks とは

## 勉強前イメージ

自動でインフラ作るイメージ

## 調査

### AWS OpsWorks とは

ChefやPuppet を使って運用を自動化する構成管理のサービスで
システムの構成などを一元的に設定することができます
EC2インスタンスやオンプレの環境でのサーバ設定やデプロイ、管理を自動化できます。
OpsWorks には3つの種類が存在します。

### ChefやPuppet とは?

– Chef

シェフ と読み、
ファイルに記述した設定内容に応じて自動的にユーザーの作成やパッケージのインストールを行う
サーバ管理ツールになります。

– Puppet

パペット と読み、
Chefと同様にサーバーの環境設定やインストールなどを自動化する設定管理ツールになります。

どちらも古くからあるansibleみたいなやつだなぁと思いました。

### AWS OpsWorks の3つの種類

– AWS OpsWorks スタック

サーバの管理サービスとAWSのアプリケーションの管理サービスで、
データベースやアプリケーションなどスタックとして作成し、EC2などを設定し

元記事を表示

Amazon FSx とは

## 勉強前イメージ

ファイルシステムな感じがする・・・ただのイメージだけど

## 調査

### Amazon FSx とは

フルマネージド型のファイルストレージサービスになります。
FSxにはファイルシステムのタイプが以下の2種類あります。

– Amazon FSx for Windows File Server
– ビジネス向けで、Active Directoryとの連携が可能
– SMBプロトコルを介してアクセス
– Amazon FSx for Lustre
– 機械学習や動画処理など速度が必要な高性能ファイルシステム
– ミリ秒未満のレイテンシーや最大1秒あたり数百ギガバイトのスループットで処理が可能

![1Amazon FSx – Google Chrome 2021-03-17 20.57.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129517/c96261f4-e29f-a07d-4570-591c46b7b962.png)

### Amazon FSx

元記事を表示

t4g.nanoのスポットインスタンスは$0.0016 /1 時間(月$1.152!!)※2021/03/21現在

タイトルのとおりです。
月1ドル強って安すぎません?
タイトルは東京リージョン価格です。バージニア北部だと$0.0013 /1 時間(月$0.936)と、1ドルを切ります。。

ちなみにスペックは、、、

| vCPU | ECU | メモリ(GiB) | インスタンスストレージ (GB) | オンデマンド料金(東京リージョン) |
| –: | — | –: | — | –: |
| 2 | 該当なし | 0.5GiB | EBS のみ | 0.0054USD/時間 |

オンデマンドだとしても月$3.888です。

元記事を表示

AWSアカウントの解約方法

基本はAWSのドキュメントに従って解約すればよい。

[AWS アカウントを解約するにはどうすればよいですか? | AWS ナレッジセンター](https://aws.amazon.com/jp/premiumsupport/knowledge-center/close-aws-account/)
[アカウントの解約 | AWS Billing and Cost Management ユーザーガイド](https://docs.aws.amazon.com/ja_jp/awsaccountbilling/latest/aboutv2/close-account.html)

ルートユーザーのメールアドレスを使ったログインは、メンバーのログインとはページが別なので注意。
注意事項があるのでよく確認すること。以下抜粋。

– ルートユーザーでしか解約できない
– ルートユーザーのメールアドレスは、別アカウントの新規作成に利用できなくなる(事前に変更可能)
– 解約後の90日間を解約後期間という
– 解約後期間はサインインでき、サポート機能を使える
– 解約後期間内ならアカウントを再開できる

元記事を表示

EC2にJavaWebアプリ環境を構築 #3

[EC2にJavaWebアプリ環境を構築 #1](https://qiita.com/harusiso/items/551a0a438c68586eca3d)
[EC2にJavaWebアプリ環境を構築 #2](https://qiita.com/harusiso/items/80ffb3201d65078a4c4d)
__EC2にJavaWebアプリ環境を構築 #3__
[EC2にJavaWebアプリ環境を構築 #4](https://qiita.com/harusiso/items/5b8c99799efe0a41e7ba)

#目次

__1.はじめに__
__2.続き__

##はじめに

* 前回
* JDK、nginx、Tomcatのインストールをした

##続き

__nginx、Tomcat連携__

nginxのページにアクセスしたときTomcatのページにリダイレクトする設定を行う

前回参考にした記事[^1]にもやり方が書いてあるが、
私がやった限りうまくいかなかったため、別の方法でやっていく

下記コマンド入力

>
“`bash
sudo vi /et

元記事を表示

弱小インフラエンジニアでもAWS CLIを使えるようになりたい

#ご挨拶
今年に入り部署移動やら一人暮らしやらでばたばたしていてQiitaへの投稿がなかなかできない状況でしたが、知識がだいぶ溜まってきたのでアウトプットのために簡単な記事を書きます。
#AWS CLIを使ってみよう
###環境
Ubuntu 20.04
Python 3.8.5
※AWS CLIを使用するにはPython 2 バージョン 2.7以降のバージョンが入っている必要があります。

###AWS CLIバージョン2をインストールします。
公式ドキュメントどうりに進めていきます。
以下のコマンドを実行することで最新のバージョンをインストールできます。

“`text:Ubuntu20.04
curl “https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip” -o “awscliv2.zip”
unzip awscliv2.zip
sudo ./aws/install
“`
上記コマンドが正常に終了したらバージョンを確認しましょう

“`text:Ubuntu20.04
aws –version
“`
私の場合

元記事を表示

AWS for JavaScript で S3 の getObject で NoSuchKey を期待してたのに AccessDenied が返ってくる

## 問題

以下のようなコードコードを実行し

“`javascript
let prev = null;
try {
prev = await S3.getObject({
Bucket: ‘my-bucket-hogehoge’,
Key: ‘path/to/object’,
}).promise();
} catch(e) {
// オブジェクトが存在しない場合(NoSuchKey)は無視,それ以外は throw し直す
if (e.code !== ‘NoSuchKey’) {
throw e;
}
}
“`

存在しないオブジェクトへのアクセスは `NoSuchKey` が返ってくるものと期待していて、[s3rver](https://github.com/jamhall/s3rver) を利用したローカル環境での動作確認はそれで問題なかった。

しかし、デプロイして実際にどうさせると AccessDenied が返ってくる。

#

元記事を表示

AWS認定クラウドプラクティショナーを受けてきた

# 概要
「AWS認定クラウドプラクティショナー」の試験を受けてきました。
その合格体験記という形で、記事にしました。これから受講する方は参考にしてください。
※私自身は、クラウドを触った事のない初心者です。

ただ、一応アプリケーションエンジニアをやっているので、
それなりにインフラ&サーバー周りは、普通の人よりかは知見があると思います。

# 書籍購入
以下の書籍を購入しました。

「一夜漬け AWS認定クラウドプラクティショナー」
![shopping.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/644011/745cef51-ed67-41f7-4a61-7edd899fd8cc.jpeg)

クラウドプラクティショナーの書籍の中で一番読みやすく、
ボリュームがあまりなかったからです。(※やはり勉強時間は短く取得したいもの…)
ただ、今思ってみると、本書籍を購入してよかったなと思います。

クラウドプラクティショナーの試験は、勉強する書籍の内容も大事ですが、
<

元記事を表示

【AWS】用語を整理しながら学ぶAWS – part5 Cloud Formation – 2

# はじめに

この記事では AWS Cloud Tech を通して Cloud Formation を学習して実践していく記事です。
主な内容としては実践したときのメモを中心に書きます。(忘れやすいことなど)
誤りなどがあれば書き直していく予定です。

AWS CloudTech

## 前回までのおさらい

Cloud Formation とは
IaC を利用して AWS のインフラ構築をコードで管理できるサービス

形式は YML(YAML Ain’t a Markup Language)と呼ばれる形式であり

YAML の特徴としてはパレンティスといったカッコ書きで
ブロックを表すのではなくタブでブロックを表す。

単一のリソースは
論理 ID、Type、プロパティの 3 つで成立しており
Resources にまとめられることでスタックとして定義できる。
また、プロパティ内でリソースの細かい設定を行うことで
リソースを変更することができる。

[【AWS】用語を整理しながら学ぶ AWS – part5 Cloud Formation-1](http

元記事を表示

AWS FSx for Lustre 一人スキルアップセミナー

# 利点

良さそうだと思った箇所を引用します。

## 使いやすい S3 データ

– S3 からのデータ転送を管理しなくてもワークロードを実行できる
– 最新のデータに基づいて、FSx for Lustre でファイルシステムが自動的に更新される

## コスト効率が高い

– SSDストレージは、レイテンシーの影響を受けやすいワークロード向けに最適化されている
– HDDストレージは、スループット重視のワークロード向けに最適化されている

## あらゆるLinuxワークロードのための設計

– ファイルシステムへは、EC2、EKS、Direct Connect、VPN を使用してオンプレミスからアクセス可能

## シンプルでフルマネージド型

– AWS マネジメントコンソール、AWS CLI、AWS SDKでAmazon FSx for Lustre ファイルシステムを作成してスケーリング可能

## 安全性とコンプライアンス

– 保管中および転送中のデータを自動的に暗号化
– POSIX パーミッションやセキュリティグループを使用して、ネットワークアクセスを制御
– FS

元記事を表示

サービスコントロールポリシー (SCP)の継承を試してみた!

# サービスコントロールポリシー (SCP)の継承を試してみた!
以前、
[サービスコントロールポリシー (SCP)について調べてみた – Qiita](https://qiita.com/mn87/items/28338d8cfef97f997d40)
という記事を書いたときに、SCPには継承の仕組みがあることを初めて知りました。
SCP自体設定したことがなかったので、まずは前回
[サービスコントロールポリシー (SCP)を試してみた! – Qiita](https://qiita.com/mn87/items/4f8e70f0d089f59c0283)
という記事で、実際にSCPを設定してみました。
初歩的なSCPの設定ができたところで、今回は継承についても試してみたいと思います!

## 参考手順
調べてみたの記事でも参考にさせて頂いた、クラスメソッドさんの以下のブログを参考にやっていきたいと思います!
[[Organizations] SCP(サービスコントロールポリシー)の継承の仕組みを学ぼう | DevelopersIO](https://dev.classmethod.j

元記事を表示

【AWS】基本的なブログサービス(シングル構成)を構築してみた。

#はじめに
この記事はインフラ初心者の私がAWS Cloudtechを通して学んだことを
記録&アウトプットするための備忘録です。

#ゴール
自宅PCからインターネット経由でWord PressがインストールされたEC2にアクセスしてブログ閲覧ができるようにする。

#目的
・RDSの作成方法の理解
・WordPressの構築方法の理解
・基本的なシングル構築方法の理解

#環境
・Windows10
・TeraTerm Version 4.105
・Word Press Version 5.7

#環境構築
今回作成する構成は以下の通り。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1086543/64a66c8c-f552-1e72-a660-519a0dafb324.png)

#手順

##VPC作成からEC2ログインまで
ざっくりとした手順(詳細手順を確認したい方は以前書いた[こちら](https://qiita.com/hargen888/items/f5011ee895

元記事を表示

AWS認定フルコンプリート(12認定)までの流れと学習内容

AWS認定をフルコンプリートしましたので、コンプリートまでの流れや私が実践した学習、勉強方法を記載します。

## 取得状況(2021.2)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1219565/4fae82f4-4d03-233d-cb03-ce5082d7b7b1.png)

## 経験等
* 20年以上ソフトウェアエンジニアリングに従事
* ソフトウェア開発の案件が多かったのでインフラ経験は少ない
* 社会人になってからの資格試験はAWS認定が初めて
* 本格的にAWSに触れ始めたのは6~7年前ぐらいから
* 業務としてAWSマネジメントコンソール/CLIに触る頻度は週1回あるかないか

## コンプリートまでの流れ
* 難易度は、スコアや学習期間、学習難易度などで個人的な主観から決めています
* 学習期間は、資格試験から次の資格試験までの間の休日(土日祝日)を利用していました

|取得順 |年月 |資格 | スコアの良い順 |難易度の高い順||
|—|—|-

元記事を表示

CodePipelineでpush順にデプロイしたい

CodePipelineでデプロイすることに取り組んできましたが、リリースがたまると不都合が発生してきたので、その課題と回避策をまとめてみます。

## 現在の流れ
Commit -> Build -> マニュアル承認 -> Deploy

* CodePipelineは、main(master)ブランチをトリガーに動く
* CodeBuildでDockerイメージを作って、latestタグを付与している
* CodeBuildまで成功したら、マニュアル承認でデプロイを制御する
* CodeDeployで実行するスクリプトはlatestのイメージを使っている

## 課題:ブランチが複数回更新されると、更新順通りの最新(latest)がデプロイできない
* 1回目の更新で動くCodePipelineでデプロイのマニュアル承認前に、2回目のブランチ更新が来ると
* 2回目の更新に連動して、CodeBuildが動くので、latestイメージが更新される(**ここが問題**)
* この状態で、1回目のマニュアル承認すると、latestがデプロイされるので、1回目の更新に関するデプロイができな

元記事を表示

gitlab-ceのレポジトリをAWS CodeCommitにミラーする

自前で管理している[gitlab-ce](https://www.gitlab.jp/install/)のレポジトリを、AWS CodeCommitにミラーリングした時の流れをまとめてみました。

今までは、EC2上にgitlab-runnerを走らせてCI/CDを頑張ってきましたが、主のプラットフォームをAWSに移していってるし、CI/CDはAWS側に寄せて行こうと思い、まずはレポジトリミラーリングから始めてみた。

1. 受け側を作る(AWS CodeCommit)
2. ミラーリング用IAM設定を行う(AWS)
3. 送る側を設定する(gitlab-ce)

## AWS CodeCommitの受け側を作る
[AWS CodeCommit](https://ap-northeast-1.console.aws.amazon.com/codesuite/codecommit/start)を開いて、「レポジトリを作成」を行います

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1219

元記事を表示

自分のタグを取得するスクリプト

CodeDeployは、CodeBuildの様に環境変数がPipelineから指定できないので、AppSpecFileの中でデプロイ内容をタグの値に応じて制御したいような場合に有効活用できるかも知れません

1. EC2インスタンス自身のメタ情報のインスタンスIDを取得する
1. インスタンスIDを指定して、特定のタグの値を取得する

例えば、「TagNoNamae」の値を取得したい場合、以下の操作で取得できる

“`shell:コマンド例
AWS_REGION=ap-northeast-1
MYINSTANCEID=`curl -s http://169.254.169.254/latest/meta-data/instance-id`
VALUE=`aws ec2 describe-tags –region $AWS_REGION –filter “{\”Name\”:\”resource-id\”,\”Values\”: [\”$MYINSTANCEID\”]}” –query ‘Tags[?Key==\`TagNoNamae\`][Value]’ –output te

元記事を表示

文系新卒エンジニアがAWS認定ソリューションアーキテクト – プロフェッショナルに一発合格した話

#概要
まだぎりぎり文系新卒エンジニアを名乗れる社会人1年目の年度末。
この度AWS認定ソリューションアーキテクト – プロフェッショナル(以下SAP)に合格したので、[アソシエイトのとき](https://qiita.com/yuki_ink/items/a7fa95d02e23bdedab70)と同様、合格体験記的なものを書いておこうと思います。
これからSAPを受験される方の参考になれば幸いです。

#対策
まず、SAP対策で何をしたか、ということをまとめます。
前提として、私は2020年12月下旬にSAA合格した後、すぐにSAP対策を始めました。
SAA対策で得た知識は100%残っている状態でのスタートだったので、今考えるとそれがよかったのかなあと思います。
それから約4か月での合格となりました。

さて、その4か月で何をしたかですが、結論だけ言えば、2冊の書籍を読みました。
どちらも良著でしたので、紹介させていただきます。

##AWS認定ソリューションアーキテクト-プロフェッショナル~試験特性から導き出した演習問題と詳細解説~
1冊目。大変お世話になりました。
タイトルに「

元記事を表示

EC2にJavaWebアプリ環境を構築 #2

[EC2にJavaWebアプリ環境を構築 #1](https://qiita.com/harusiso/items/551a0a438c68586eca3d)
__EC2にJavaWebアプリ環境を構築 #2__
[EC2にJavaWebアプリ環境を構築 #3](https://qiita.com/harusiso/items/103760e7ba20ffe2032d)
[EC2にJavaWebアプリ環境を構築 #4](https://qiita.com/harusiso/items/5b8c99799efe0a41e7ba)

#目次

__1.はじめに__
__2.インストール__

##はじめに

ざっくり説明するとeclipseで作ったアプリをEC2で動かす

* 前回
* インスタンスの作成が完了

##インストール
__JDK__

開発環境と同じjdk11を使用する
インストールはamazonが提供しているパッケージからおこなう

>__インストール__
>
“`bash
sudo amazon-linux-extras install java-openjdk

元記事を表示

OTHERカテゴリの最新記事