- 0.0.1. ECS(FARGATE) と ECR
- 0.0.2. AWSでCloudWatchエージェントを入れてみた
- 0.0.3. ServerlessFrameworkでcron実行する(Node.js)
- 0.0.4. AWS ElastiCache for Redis オンラインアプリケーション用の高速セッションストアを構築するチュートリアルをやってみた
- 0.0.5. Redmine のバックアップをとろう!(工事中)
- 0.0.6. AWS Amplify サーバーレスウェブアプリケーションを構築するチュートリアルをやってみた
- 0.0.7. AWS Lambda Ruby2.7でヘッドレスChromeを動かす
- 0.0.8. AWSグループの作り方
- 0.0.9. AWSユーザの作り方
- 0.0.10. ゲストログインおよびログアウトした際、The page you were looking for doesn’t exist.と表示される
- 0.0.11. 【トラブルシューティング記録】本番環境デプロイ後のレイアウト崩れ
- 0.0.12. オンプレミスとクラウドについて
- 0.0.13. 【AWS】「Athena」と「CloudWatch Logs Insights」の違い・使い分けについて
- 0.0.14. 【AWS DVA学習】Amazon KinesisとLambdaを使用するチュートリアルをやってみた
- 0.0.15. 【1日目】AWS認定ソリューションアーキテクト合格までの道
- 0.0.16. Flutter×Amplifyの環境構築(2021年7月現在最新版)
- 1. 環境
- 2. 概要
- 3. 手順①Amplifyをインストール&初期化する
ECS(FARGATE) と ECR
教材
–https://kleinblog.net/ecs-ecr-hello-world.html
前提
–
https://qiita.com/sanajima/items/cfbac6635b48890a1ba9
の通りローカルでDockerコンテナ作成しておきHelloWorldできるようにしておく完成形
–作業(ローカル)
–
①Windows10のターミナルを開きUbuntuのウィンドウを開きます
②作業ディレクトリを作成してDockerFileを作成しますmkdir ecs_test
cd ecs_test
code Dockerfile(VSCodeを使用している場合)
FROM nginx:latest
COPY ./src /usr/share/nginx/html③htmlファイルを作成します
mkdir src
code src/index.html
Hello world from ECS nginx!!!
④Dockerファイルのある
AWSでCloudWatchエージェントを入れてみた
# はじめに
AWSでCloudWatchエージェントをEC2に入れてメトリクスをとってみました。# CloudWatchエージェントとは?
公式ドキュメントには以下の内容が記述されています。“`
・オペレーティングシステム全体で Amazon EC2 インスタンスから内部システムレベルのメトリクスを収集します。このメトリクスには、EC2 インスタンスのメトリクスに加えて、ゲスト内メトリクスを含めることができます。収集することができる追加のメトリクスについては、「CloudWatch エージェントにより収集されるメトリクス」を参照してください。・オンプレミスサーバーからシステムレベルのメトリクスを収集します。これには、ハイブリッド環境のサーバーや AWS によって管理されていないサーバーも含まれる可能性があります。
・カスタムメトリクスは、StatsD および collectd プロトコルを使用して、アプリケーションまたはサービスから取得します。StatsD は、Linux サーバーと、Windows Server を実行するサーバーの両方でサポートされています。col
ServerlessFrameworkでcron実行する(Node.js)
Serverless Frameworkでcron実行するサンプルコードです。
AWS LambdaではJST未対応のようで、-9時間する必要有ります。
時間設定の際にご留意ください。“`shell:ディレクトリ構成
~/develop/study/serverless/cron $ tree -I node_modules
.
└── aws-node-scheduled-cron
├── handler.js
├── package.json
├── serverless.yml
└── yarn.lock
“`
“`yaml:serverless.yml
service: aws-node-scheduled-cron2frameworkVersion: ‘2’
provider:
name: aws
runtime: nodejs12.x
lambdaHashingVersion: 20201221functions:
cronHandler:
handler: handler.run
even
AWS ElastiCache for Redis オンラインアプリケーション用の高速セッションストアを構築するチュートリアルをやってみた
# 初めに
以下のチュートリアルをやってみました。ElastiCache はセッションデータの保持や、DB 処理の高速化など資格勉強でよく見かけますので、実際に使ってみたいとずっと思っていました。ElastiCache の起動、キャッシュの追加・削除、TTL の設定を学ぶことができました。
https://aws.amazon.com/jp/getting-started/hands-on/building-fast-session-caching-with-amazon-elasticache-for-redis/
# 1. Redis クラスターを作成する
クラスターエンジンには「Redis」を選択し、ロケーションには「Amazon クラウド」を選択します。
![1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621414/5f413090-2adc-fda7-bb29-6376688ec5ea.png)
以下のように設定します。
![2.png](https://qiita-ima
Redmine のバックアップをとろう!(工事中)
#1 やったこと
Amazon Lightsail(仮想プライベートサーバー)で立てた Bitnami Redmine のバックアップを、ローカル(自分のパソコン)でとった。### 動機
データ保管料金を取られない環境に、バックアップを取りたいから!です。
Lightsail で立てた Redmine の ‘スナップショット’ をAWS (EC2, S3など) で保存しておけば、バックアップにはなるだろう。しかし、ケチな僕にとって、スナップショットを溜めておくだけでお金が発生するのは嫌じゃ。
そこで、Redmine のデータをローカルに落とせば、無料でバックアップを取れるだろうと目論んだ。
#2 具体的な手順
大きく分けて、2つだ。1. バックアップ:必要なファイルを Lightsail からローカルに落とす。
1. リストア:落としてきたファイルから本当に Redmine を再現できるか確かめる。さあ、それぞれ詳しく見ていこう。
## 1. 必要なファイルを Lightsail からローカルに落とす。
### 必要なファイルとは?
バックアップ対象として、次の
AWS Amplify サーバーレスウェブアプリケーションを構築するチュートリアルをやってみた
# 初めに
以下のチュートリアルをやってみました。Amplify と CodeCommit の連携、CodeCommit を使用した開発、Cognito を使ったオーソライザー、Lambda プロキシ統合など、普段使わないサービスばかりで勉強になりました。
https://aws.amazon.com/jp/getting-started/hands-on/build-serverless-web-app-lambda-apigateway-s3-dynamodb-cognito/
## 1. CodeCommit にリポジトリを作成する
CodeCommit を使用してローカルで開発を進める場合、GitHub などと同様に認証情報を作成する必要があります。GitHub では 「SSH」 や GitHub アカウントの「ユーザー名・パスワード」を用いますが、CodeCommit では IAM を使用した認証を利用することができます。
> AWS CodeCommit リポジトリへの接続を設定する最も簡単な方法は、IAM コンソールで CodeCommit の Git 認証情報
AWS Lambda Ruby2.7でヘッドレスChromeを動かす
ネットで調べてもあまり正解に辿り着けなかったので。
書き殴りなので、すみませんが動作保証はしないです。## やりたいこと
タイトル通りですが、AWS LambdaでWebスクレイピングをしたい。
諸事情あって言語はRuby2.7になります。
RubyでのスクレイピングにはCapybara + selenium-webdriver を利用します。Lambdaのデプロイには[Serverless Framework](https://www.serverless.com/)を使うので、この記事はServerlessについての知識を事前条件としています。
Capybaraやselenium-webdriverの説明はしないので、ググってくだしあ。
## 注意
Ruby2.5はサポート終了が宣告されているので今からやるにはRuby2.7一択です。
実は今現在(この記事が公開された日)ネット上に溢れている「Lambda(Ruby)でスクレイピングする」系の記事はほとんどがRuby2.5だったりするので、注意しましょう。
後述しますが、Ruby2.5とRuby2.7ではランタ
AWSグループの作り方
# はじめに
AWSのグループを作る方法もメモしておく。
あと、権限の付け方によってどんな画面表示になるのかも併せて検証してみようと思う# 手順
1. ユーザ(権限なし)を作成する
1. グループを作成する
1. グループに権限を付与する
1. メンバーをグループに割り当てる## 1. ユーザ(権限なし)を作成する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/416263/d1b64c97-caf8-cf7a-df9b-3ec7aa4769e7.png)グループの権限によってアクセス許可がどう変わるのかが見たいので
あえて何も選択せずにユーザを作る。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/416263/e588d357-188c-a27b-49d9-300e47e47561.png)アクセス権限無いよ、の警告が来る。
想定の範囲内。よしよし。
![image.p
AWSユーザの作り方
# はじめに
AWSのアカウントを作る機会があったこともあって
簡単な手順を残す# やり方
TOP画面からIAMをクリックして
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/416263/2cc1158a-61bb-ad8d-a126-0e03d9c85f13.png)左ペインの「ユーザ」クリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/416263/796eae08-717c-e866-7e0c-c31422b72479.png)[ユーザーを追加]クリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/416263/d1c15b68-ec98-58e8-132e-d3091ffcdf78.png)ユーザ登録画面で必要事項を入力。。。
ユーザ名:watyanabe164
ゲストログインおよびログアウトした際、The page you were looking for doesn’t exist.と表示される
#現状
ゲストログインおよびログアウトボタンを押すとThe page you were looking for doesn’t exist.と表示されました。最近になってこのような現象が起こり、それまでは通常通りできておりました。#エラーメッセージ
![スクリーンショット 2021-07-21 13.54.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/832099/66031194-d1ac-baec-de0b-a9bfdcf226e7.png)#該当するソースコード
“`app/views/devise/shared/_header.html.erb:
App
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<%= stylesheet_link_tag 'application', media: 'all', 'data-t
【トラブルシューティング記録】本番環境デプロイ後のレイアウト崩れ
#目次
[1.はじめに](#はじめに)
[2.前提](#前提)
[3.事象](#事象)
[4.調査内容_アセットプリコンパイル](#調査内容_アセットプリコンパイル)
[5.調査内容_検証ツールでの確認](#調査内容_検証ツールでの確認)
[6.原因](#原因)
[7.対応内容](#対応内容)
[8.まとめ](#まとめ)#はじめに
先日、個人開発したWebアプリをAWSのEC2上にデプロイしたところ、想定外の場所で画面のレイアウト崩れが発生しました。原因を調査し、解消することができましたので、同様の事象が発生した方へのちょっとした手助けになればと思い、記録として残しておきます。#前提
<開発環境>– Mac Catalina(10.15.4)
– Visual Studio Code
<フロントエンド>
– HTML/CSS
<バックエンド>
– Rails:6.0.3
– Ruby:2.6.5
<インフラ>
AWSのEC2上にデプロイしており、独自ドメイン名「www.memory-tank.ga」でHTTPS接続できます。
![全体.png](https:
オンプレミスとクラウドについて
オンプレミス
メリット
ハードウェアを部品単位で調整できる。
特殊な要件に対応できる
導入後は電気代などの運用費用のみで済むデメリット
定期的なメンテナンス、機械故障対応クラウド
メリット
初期費用が安い
サーバの保守が必要ないデメリット
大規模運用の場合、維持費用が高額になるAWS(アマゾン)
Azure(マイクロソフト)
Google Cloud Platform
【AWS】「Athena」と「CloudWatch Logs Insights」の違い・使い分けについて
# まず用語整理
| サービス | 概要 |
| —- | —- |
| CloudWatch | リソースモニタリングサービス(Datadog的なもの。Datadogは自由なダッシュボードが便利で人気の要因) |
| CloudWatch Logs | loudWatchで収集したログの分析を行えるサービス |
| CloudWatch Logs Insights | CloudWatch Logsのロググループに対してSQLを用いたクエリーを投げてログを集計できるサービス |
| Athena | S3で収集したログに対してクエリを投げてログを分析できるサービス |# 最初に結論
「Athena」と「CloudWatch Logs Insights」は、ほぼ同じ。
若干の違いは存在する。# 共通項目
| 比較項目 | 答 |
| —- | —- |
| 検索対象 | どちらもS3 |
| 課金体系 | どちらも従量課金 |# 異なる項目
| 比較項目 | CloudWatc
【AWS DVA学習】Amazon KinesisとLambdaを使用するチュートリアルをやってみた
# はじめに
AWS DVA取得のためのアウトプットが目的です。
# 対象チュートリアル
公式ドキュメントの`チュートリアル: Amazon Kinesis で AWS Lambda を使用する`
https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis-example.html
# やってみた
チュートリアルがCLIで書かれていたので、最後までコンソールではなくCLIで実行しています。
AWS CLIのバージョンが2のため、バイナリ関係で追加オプションを記載しています。
“`
# aws –version
aws-cli/2.1.3 Python/3.7.4 Darwin/20.3.0 exe/x86_64
“`## Lambdaの実行ロール作成
CloudWatch Losgへの書き込み権限と、Kinesisからの読み込み権限を持つIAMロールを作成します。
まず、Lambdaに対して信頼関係のある、IAMロールの信頼ポリシーをJSON形式で作成します。
“`
# vi lambda.jso
【1日目】AWS認定ソリューションアーキテクト合格までの道
# AWS Well-Architected フレームワーク
## AWS Well-Architected フレームワークの概要
2006年に下記二つのサービスから始まる。
– Amazon Elastic Compute Cloud(EC2)
– Amazon Simple Storage Service(S3)## AWS Well-Architected フレームワーク5つの柱
| | 記載されている項目 | 具体例 |
|:-:|:-:|:-:|
| 運用上の優秀性 | システムがビジネスにおいて価値を提供し続けられるか | システムのモニタリング/変更管理/継続的な運用プロセス |
| セキュリティ | システムとデータをどのように保護するか | データの機密性・整合性の担保/権限管理/セキュリティイベントの監視・制御 |
| 信頼性 | 障害の防止/復旧をどのようにしていくか | 障害時のコンピューティングリソースの獲得 |
| パフォーマンス効率 | コンピューティングリソースをどのように効率的に使用していくか | 性能要件に応じたリソースの選定/パ
Flutter×Amplifyの環境構築(2021年7月現在最新版)
環境
Flutter 2.2.3
nodejs v12.14.0
AWSアカウント開設済
Flutter PJを作成済概要
AWS公式のflutterチュートリアルに基本沿って今回の環境構築を行っています。
https://aws.amazon.com/jp/getting-started/hands-on/build-flutter-app-amplify/module-two/
2021年7月の現時点で変わっている部分(本記事の手順②のpubspec.yaml設定以降)がわずかながらあったので最初から記事に残してみました。手順①Amplifyをインストール&初期化する
AmplifyのCLIとAmplify-Flutter デベロッパープレビューバージョンをダウンロードします。
“`
npm install -g @aws-amplify/cli@flutter-preview
“`
amplifyの設定をします。
“`
amplify configure
“`
任意のregionとus
NIST CSFまとめ
##はじめに
先週DVAを合格しましたので、今日からセキュスペ学習を開始したのでその中ででてきた**NIST CSF**をまとめました。
よろしくお願いします(。・ω・)ノ゙##NIST CSFとは
NISTとは、**National Institute of Standards and Technology**の略で**「米国国立標準技術研究所」**という機関になる。
CSF(サイバーセキュリティフレームワーク)とはセキュリティ管理手法の概念・管理方針・体制の整備
NIST CSFは、コア・ティア・プロファイルという3つの要素で構成されています。** ・コア:分類ごとにまとめられたサイバーセキュリティ対策の一覧
・ティア:分類ごとに対策状況を数値化し、その成熟度評価基準(4段階)
・プロファイル:組織のサイバーセキュリティに対する対応状況の現在と目標**コアには「特定(Identity)」「防御(Protect)」「検知(Detect)」「対応(Respond)」「復旧(Recover)」と5つの分類がされています。それぞれに複数のカテゴリーが含まれ
[AWS IoT]証明書の作成・登録方法 Part2: Fleet Provisioning
# はじめに
AWS IoTにはいくつかの証明書の登録方法があります。[前回の記事](https://qiita.com/tsugunao/items/4f6bfba9be5a7c97c4d5)ではマネジメントコンソールからの証明書の作成について試してみましたが、今回はFleet Provisoningを試してみたいと思います。# 証明書登録方法の分類
[本家のAWSの資料](https://pages.awscloud.com/rs/112-TZM-766/images/EV_iot-deepdive-aws2_Sep-2020.pdf)に証明書の登録方法が分類されています。以下は資料の抜粋です。
![スクリーンショット 2021-07-22 12.15.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/80028/2719094b-c771-e9ba-f850-ab9857e6d945.png)
今回試してみるFleet Provisoningは、Amazonが管理するCAを使用して、大量のデ
Cisco Umbrella S3 からログ取得
### はじめに
・Umbrella S3 ログ取得方法について具体的な方法が説明されているドキュメントを見つけることができなかったのでやってみたメモ
・ログを取得は Cyberduck というクライアントソフトを利用 (version 7.10)### ログアクセス情報
デフォルトで無効。設定を有効にすると Cisco 管理の Amazon S3 ストレージに最長 30 日間ログを保管することが可能。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/437531/4114a743-f63e-5248-14a6-b61f7feed4d9.png)
この画面で表示されている情報をメモしておく(Secret Key はあとで参照できない)
Data Path と記載されている `s3://XXX/XXX` という箇所が AWS の世界でいう `s3://{bucket-name}/{key-name}` という構造になっている。(Virtual-hosted–style acce
Redmineにプラグインを追加する。
#概要
AWS Lightsail上に構築したRedmineにPluginを追加します。
今回はチケットのテンプレートを作成できるPluginを追加します。○プラグイン追加前
![スクリーンショット 2021-07-22 11.28.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/599049/0a56a4a2-70f3-cf61-8cdb-b79efd0bcac4.png)○プラグイン追加後
![スクリーンショット 2021-07-22 12.17.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/599049/9c5e8561-0bce-8cd1-351f-2eb4f14d3fff.png)##1.プラグイン追加
AWSの管理コンソールより、ブラウザからSSH接続する。
![スクリーンショット 2021-07-22 12.36.18.png](https://qiita-image-store.s3