- 1. Amazon Lightsail Wordpressでブログサイトを作る
- 2. 【ベストプラクティス】Amazon VPC の構築方法を分かりやすく解説
- 3. 【Terraform】S3のライフサイクルルールの設定
- 4. Amazon Kinesis Video Streams: GStreamer plugin の認証情報(Credentials)
- 5. CloudTrailの証跡を作成する
- 6. Athenaでパーティションを使って、Microsoft365の監査ログを見る
- 7. Figmaと連携できると話題のAWS Amplify Studioを使ってみた
- 8. AWSクラウドプラクティショナー取得には無料WEB問題集を使おう
- 9. AWSで作ったインスタンスを調べたい
- 10. AWS認定ソリューションアーキテクト – プロフェッショナルの勉強方法
- 11. [AWS CloudFormation] VPC Lambda & EFS定義
- 12. CloudWatchのログでメールアドレスをキーに検索する
- 13. アクセス権限を設定
- 14. CloudwatchLogsへ出力設定を行った後に必ず確認すること
- 15. AWSに用意された便利なツール
- 16. EC2を定期的に自動バックアップする
- 17. eclipseで作ったSpringBootアプリをAWSを使って公開する#2
- 18. ALBが使用予定のIPをつかんでしまった話
- 19. [AWS.4] Lambda関数のテスト
- 20. eclipseで作ったSpringBootアプリをAWSを使って公開する#1
Amazon Lightsail Wordpressでブログサイトを作る
公式チュートリアル
https://lightsail.aws.amazon.com/ls/docs/ja_jp/articles/amazon-lightsail-tutorial-launching-and-configuring-wordpress
(補足)https://www.takoboolog.com/wordpress1/公式チュートリアル – DNSの設定
https://lightsail.aws.amazon.com/ls/docs/ja_jp/articles/lightsail-how-to-create-a-snapshot-of-your-instance
(補足)https://www.takoboolog.com/domain2/公式チュートリアル – スナップショットの手動作成
https://lightsail.aws.amazon.com/ls/docs/ja_jp/articles/lightsail-how-to-create-a-snapshot-of-your-instance公式チュートリアル – スナップショットの自動作成
【ベストプラクティス】Amazon VPC の構築方法を分かりやすく解説
# はじめに
**Amazon VPC**は、**AWS上で仮想ネットワークを構築**できるサービスです。
VPCの**概要や理論**については**以下の記事**で詳細に解説しました。https://qiita.com/c60evaporator/items/2f24d4796202e8b06a77
一方で、「**理論だけでなく実践も重要!**」
と思われる方も多いと思いますので、
**本記事では実際にVPCによる仮想ネットワークを構築**する方法を解説します。構築の指針として、以下の**ベストプラクティスを極力満たすよう**進めていきたいと思います。
https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/vpc-security-best-practices.html
特に[**VPCフローログ**](https://qiita.com/c60evaporator/items/2f24d4796202e8b06a77#vpcとログ)や[**VPCピアリング**](https://qiita.com/c60evapo
【Terraform】S3のライフサイクルルールの設定
## はじめに
TerraformでS3のライフサイクルルールを設定する方法について書きます。:::note warn
本記事では、基本的な設定のみ紹介しております。
:::## ライフサイクルルールとは?
– 一定時間経過した後にS3のオブジェクトを別のストレージクラスに移行させるための設定になります。
– S3のコストを抑えるために使用します。## 前提
– 使用するTerraformのバージョン情報“`
% terraform –version
Terraform v1.1.8
on darwin_amd64
+ provider registry.terraform.io/hashicorp/aws v4.22.0Your version of Terraform is out of date! The latest version
is 1.2.7. You can update by downloading from https://www.terraform.io/downloads.html
%
“`– コード適用の流れについては省きます。
Amazon Kinesis Video Streams: GStreamer plugin の認証情報(Credentials)
## 概要
GStreamer プラグインを使って Kinesis Video Streams に送信 (Produce) する際、認証情報を指定する方法は複数あります。
1. 環境変数 (AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY) で指定する
1. kvssink にパラメーター access-key/secret-key を指定する
1. 認証情報をテキストファイルに記述し、kvssink にパラメーター credential-path を指定する参考) [GStreamer Element Parameter Reference](https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/examples-gstreamer-plugin-parameters.html)
最初の 2 つは実行時に指定された認証情報を使い続けます。長時間送信を続けるために、更新が必要になる一時的な認証情報は使えません。
## 例
### 1. 環境変数 (AWS_ACCESS_KEY
CloudTrailの証跡を作成する
AWSのDay1対応の1つである、CloudTrailの有効化として、CloudTrailの証跡を作成します。
初期設定では、ログは90日間で削除されてしまいます。
ログをS3に保存されるように、証跡を作成します。AWSマネジメントコンソールを表示し、CloudTrailを検索します。
検索した結果から、[CloudTrail] – [証跡] をクリックしてください。
![スクリーンショット 2022-08-14 7.26.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/14202/445f9d18-f141-6c3d-bafa-296c09a54177.png)[証跡の作成]をクリックしてください。
![スクリーンショット 2022-08-14 7.28.22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/14202/a766ac73-fd7a-25de-9f85-81d7b03c3266.png)証跡
Athenaでパーティションを使って、Microsoft365の監査ログを見る
# はじめに
前回はMS365の監査ログをAthenaで見るためテーブルを作成しました。https://qiita.com/a_b_/items/2f94d2326963dc8b65fd
Athenaの課金は、検索時にスキャンされたデータサイズに依存しますので、このままだと都度全データをスキャンします。
監査ログは直近の分だけ欲しいことがほとんどとおもわれますので、このままだと毎回スキャンの度に大昔の不要なデータ分まで課金することになってしまいます。そこで、日付単位でパーティションを設けることで、スキャンするデータサイズをコントロールすることができますので、今回それを試してみました。
参考にしたページは以下になります。
https://docs.aws.amazon.com/ja_jp/athena/latest/ug/partitions.html
またMS365の監査ログの取得方法は、以前の記事の途中にあるコンテナを使用しています。
https://qiita.com/a_b_/items/84d6ae3cf8a21b8b332c
# やったこと
## S3上
Figmaと連携できると話題のAWS Amplify Studioを使ってみた
# TL; DR
AWSのローコードツールであるAmplifyStudioがスゴい(ざっくり)とのことだったので、
どういうことができるかざっくり試してみました。# AWS Amplifyとは
https://aws.amazon.com/jp/builders-flash/202103/amplify-app-development/?awsf.filter-name=*all>AWS Amplify は
・サーバーレスなバックエンドをセットアップするための Amplify CLI
・フロントエンドからバックエンドに接続するための Amplify Libraries
・CI/CD やウェブアプリのホスティングに向けた Amplify Console
・ユーザー管理や CMS 的なコンテンツ管理を一元化するコンソール Amplify Admin UI
などから構成される、Web およびモバイルアプリ開発のためのフレームワークです。上記のように、サーバーサイドのコードを書くことなく、
Web/モバイルアプリを開発することができるフレームワークです。# AWS Amplif
AWSクラウドプラクティショナー取得には無料WEB問題集を使おう
# はじめに
私の専門は情報工学ではなく、ましてやクラウドなんて???といった状況であったが、私の所属する会社でも昨今はDXという言葉が流行りだし、クラウド活用の動きが始まっている。
しかし、社内でクラウドを理解している人はほとんどおらず、何が何だかわからないまま
「クラウド便利なんでしょ?」「AWSがクラウドで一番流行ってるし、AWSでいいんじゃないか?」
となんとも残念な推進のされ方をしている。そのためAWSとは何か、またソリューションアーキテクトの方と話をする上で向こうの言っていることを理解できるようにと勉強してみたくAWS資格の中でもエントリーレベルに位置する、
AWSクラウドプラクティショナーの受験をしてみた。しかし、会社は非IT系ということもあり、業務に関係する資格以外は補助が出ない。
そのため、受験料の1万円は自腹、参考書類も自腹となる。
受験料はどうしようもないが、参考書くらいはなんとかコスト削減をしようと試み、タイトルにもある無料WEB問題集を利用した。# 使用した参考サイト
タイトルにある無料WEB問題集は以下のサイトである。
https://aws-e
AWSで作ったインスタンスを調べたい
### やりたいこと
とあるAWS環境全体で、自分が作ったインスタンスを削除したい### 前提
会社から貸与されたアカウントであり、使えるサービスに制限がある。### 方法
Cost Explorerでタグ検索し、IAMユーザごとの料金を表示させることで、なんのサービスに課金されているかを調べる。### 手順
1. マネジメントコンソール右上、AWSアカウントが表示されているところをクリック
1. 請求ダッシュボードをクリック
1. Cos & Usage Reportsをクリック
1. 「その他のレポート」から、「AWS Cost Explorerを使用してコストと使用状況を分析する」をクリック
1. 右側にある「フィルター」から、タグ>aws:createdBy>自分のIAMユーザ名をクリック。フォーマットは IAMUser:(アカウントID or アクセスキー):ユーザー名
1. 表示されたグラフの上部にある「グループ化の条件」で「サービス」をクリック
1. 表示されたグラフと凡例をもとに、使っているインスタンスを確認する### 補足
もっといい検索方法あれば
AWS認定ソリューションアーキテクト – プロフェッショナルの勉強方法
# はじめに
2022年8月に、AWS認定ソリューションアーキテクト – プロフェッショナル(以下、AWS SAP)に合格したので、その勉強方法を書いていきます!
スコアは765/1000(750点以上で合格)、かなりギリギリでした。![スクリーンショット 2022-08-13 140541.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1615121/96630647-4d31-68dd-fd4d-0dfc7fa59384.jpeg)
# これまで取得したAWS資格
– 2021年5月 AWS認定ソリューションアーキテクト – アソシエイト
– 2021年8月 AWS認定デベロッパー – アソシエイト# 勉強時間
– 勉強期間 2022年4月~7月(4か月間)
– 勉強時間 約200時間# 勉強内容
### AWS SAPの対策本
はじめに、メジャーな[AWS SAP対策本](https://www.amazon.co.jp/AWS%E8%AA%8D%E5%AE%9A%E3%82%B
[AWS CloudFormation] VPC Lambda & EFS定義
# 目的
LambdaからEFS(Amazon Elastic File System)を使用するためのCloudFormationテンプレートを作成する
VPC内にLambdaを配置する必要があるため、以下の定義を行う– VPC関連リソース
– EFS関連リソース
– Lambda(SQSトリガ)
– VPC LambdaからAWSリソースへアクセスするためのVPCエンドポイント# テンプレート
“`template.yaml
vpcSample:
Type: AWS::EC2::VPC
Properties:
CidrBlock: 10.0.0.0/16
EnableDnsSupport: true
EnableDnsHostnames: true
InstanceTenancy: default
Tags:
– Key: Name # タグで名前を設定する
Value: !Sub ${EnvName}-vpcSamplesubnetSam
CloudWatchのログでメールアドレスをキーに検索する
「Aws::CloudWatchLogs::Errors::InvalidParameterException (Invalid filter pattern)」って出るだけで、なんかうまくいかないなーと思ったんですが、なんてことはなくて、コンソールで「**”test@sample.co.jp”**」とするように、「”」で囲むだけで出来ました。
これより難しいfilter_patternの書き方については色々情報が出てくるんですが、こういう初歩的な情報が思うように見つからず(もしくは読み解けず)結構苦労しました。
start_time、end_timeの方も微妙に詰まって、「UNIX時間の**ミリ秒**」と書いてあったのを「秒」で指定していただけでした。
1000倍すればよかったんですね。以下、コードはrubyです。
“`
client = Aws::CloudWatchLogs::Client.new({credentials: Aws::Credentials.new(API_KEY, API_SECRET)})
resp = client.filter
アクセス権限を設定
# AWS IAMとは
AWS IAMとは「Identity Access Manegement(IDとアクセス管理)」の略でAWSの認証機能のこと。
AWSアカウントは契約を管理するアカウントであるのに対し、
**IAMは各種サービスへのアクセルを管理する機能**。
人に対して与えるIAMは**IAMユーザー**という。
一方、サービスやプログラムに与えるIAMを**IAMロール**という。
IAM自体は追加料金なしで利用でき、作成したユーザーが使用したAWSサービスに課金がさせる。なお、ユーザー認証に、**MFA**(Muti-Factor Authentication)の使用を推奨している。
# IAMグループとIAMポリシー
**IAMユーザー・IAMロールともに、必要最低限の機能をつけて、必要な人に渡すのが基本**。あらかじめたくさんの機能や権限をつけて渡すのはセキュリティ的に良くない。また、何かがあったときに誰が行ったかわからなくなるので、ひとつのアカウントを複数の人が使い回すのも良くない。
一方で、AWSでは複数のEC2インスタンスやS3バケットを扱うことがよくある。
そ
CloudwatchLogsへ出力設定を行った後に必ず確認すること
# はじめに
CloudwatchLogsへログの出力設定ができるサービスは数多く存在し、
どれもそれぞれのサービス設定上より出力の有効化が可能かと思います。出力設定後にログの**有効期限**を設定しなければ、
CloudwatchLogsにて自動でログが削除されず永遠とログを貯めこんでしまうため注意が必要です。# CloudwatchLogsでログの有効期限設定
①[コンソール](https://ap-northeast-1.console.aws.amazon.com/cloudwatch/home?region=ap-northeast-1#logsV2:log-groups)を開く
②ロググループを選択する
![2022-08-13_12h06_53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1764568/a06ac2ef-7885-ad4d-9df8-7527c46de6df.png)
③アクション > 「保持設定を編集」を選択する
![2022-08-13_12h09_20.p
AWSに用意された便利なツール
# AWSはサービスを総合的に管理できる
AWSは複数のサービスを使うケースが多いため、サービスを総合的に管理できる便利な機能が提供されている。
|ツール名|内容|
|-|-|
|マネジメントコンソール|サービスの設定などを行う画面。Webブラウザで使用できる|
|CLI|コマンドで操作できるコマンドラインツール。マネジメントコンソールでできないことも可能|
|IAM|サービスを使用するためのユーザーアカウント。グループやポリシーで一括管理できる|
|コストマネジメント|コストやグラフなどで確認できる。予算に基づく管理なども可能|
|CloudWatch|監視ツール。閾値を超えた場合にアクションを起こすこともできる|
# AWSアカウント
AWSを利用するためのアカウントを**AWSアカウント**という。
※買い物のAmazonアカウントとは別
AWSのサービスではサーバーやストレージをレンタルすることができ、個人でも使用できるが、団体の方がメリットが大きいため企業ユーザーも多い。しかし、複数のプロジェクトで同じAWSアカウントを使用すると費用などが曖昧になり、管理が煩雑になるため、プ
EC2を定期的に自動バックアップする
EC2を定期的に自動バックアップする方法を解説します。
## バックアップ方法
EBSのスナップショットとAMIの2種類があります。
* スナップショット
* データコピーのイメージ。インスタンスを構成する管理情報は含まれない
* 圧縮されS3に保管される。(直接参照は出来ない)
* 差分バックアップ
* AMI
* スナップショットに加えて以下の管理情報を含む
* インスタンスのルートボリュームのテンプレート (オペレーティングシステム、アプリケーションなど)
* AWSアカウントがAMIを使用してインスタンスを起動可能にするための起動許可
* インスタンスの起動時にインスタンスにアタッチするボリュームを指定するブロックデバイスマッピング上記のとおりAMIはスナップショットを包含しています。
既存のEC2インスタンスのAMIを作成するとインスタンスにアタッチされている全てのボリュームのスナップショットが作成されます。## 自動バックアップを行うためのサービス
スナップショット、AMIは以下のAWSサービス
eclipseで作ったSpringBootアプリをAWSを使って公開する#2
# AWSでサーバを構築しSSHで接続する
| 項番 | ページ内リンク |
|:—-:|:————-|
| 1 | [1. VPCの作成](#1-vpcの作成) |
| 2 | [2. サブネットの作成](#2-サブネットの作成) |
| 3 | [3. ルーティング](#3-ルーティング) |
| 4 | [4. EC2インスタンスの設置](#4-ecインスタンスの設置) |
| 5 | [5. ファイアウォール設定](#5-ファイアウォール設定) |
| 6 | [6. SSHログイン](#6-sshログイン) |
| 7 | [7. 続き](#7-続き) |## 1. VPCの作成
リージョンは「東京」
VPCのサービスを選択→「VPCを作成」
「名前タグ」、「IPv4 CIDR」を記入。IPアドレスは/16くらいで広めにとる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2781422/366d302b-ad4c-76bc-431b-90d028e
ALBが使用予定のIPをつかんでしまった話
# はじめに
※2022/5頃の情報です。
環境を構築しようとしていた時の出来事です。
EC2を立てようとAWSコンソールをポチポチしていたところ、以下の表示が出ました。
![EC2起動失敗.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2743619/cb8affb7-38f9-aef8-65af-874a796f67fa.jpeg)
どうやらすでにIPを使用されており起動できなかったようです。
「空いてるIPだったと思うけど…」と考えながら調査開始。# 原因
同じサブネット上にALBが配置されており、使用予定のIPをつかんでいました。
ALBはスケールアウトや時間経過とともにIPが変わるようで、その際にたまたま今回使用予定のIPをつかんでしまったようです。# 対処
たまたま該当ALBは作業時間当時に使用していなかったため、一度ALBを別サブネットに付け替えました。
そうすると30分~1時間程度でALBが使用していたIPを離してくれたので、その隙にEC2を立てて、当初使用予定だったIPを取
[AWS.4] Lambda関数のテスト
# 1. 概要
API Gateway に対応した Lambda関数をテストするには、API Gateway の管理画面から対象APIを選んで「テスト」画面を開き、テスト用の入力パラメータを指定して当該関数を呼び出す必要があります。
また、VisualStudio のテストプロジェクトから Lambda関数を呼び出して動作をテストすることも可能です。本記事では、次の二つのテスト方法について記述します。
1. API Gateway の API 呼び出しテスト
1. VisualStudio テストプロジェクトからの呼び出しテスト# 2. API Gateway の API 呼び出しテスト
API Gateway管理画面から、作成した API(EchoSample-API)を選択します。
その後、ツリー項目の「ANY」をクリックすると、リクエスト〜レスポンス の流れを示すフロー図が表示されます。
![スクリーンショット 2022-08-03 22.08.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.co
eclipseで作ったSpringBootアプリをAWSを使って公開する#1
# eclipseからGithubにpushする
かなり手間取ったのでメモしておく。
Githubでトークン取得、リポジトリ作成ののち、EclipseでプロジェクトをGitにより連携する。## 1. Githubで個人アクセストークンによる認証準備
### 1.1 アクセストークン作成
「Setting」→「Developer settings」→「Personal access tokens」と進んで「Generate new token」をクリックします。(https://github.com/settings/tokens)![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2781422/957e2141-fb25-e89d-9c3c-f7b6e47f8218.png)
ここで出てくるトークンをコピーして保存しておく。ページ遷移すると消えてしまうので注意。
### 1.2 リポジトリの作成
「Repositories」→「New」→名前を入力して「Create reposi