AWS関連のことを調べてみた2022年06月14日

AWS関連のことを調べてみた2022年06月14日
目次

【RDS】Amazon RDS インスタンスを 7 日以上停止する方法 (2021年10月18日時点)

## 問題点

– RDSを停止しても、7 日後にインスタンスが自動的に起動されてしまう仕様
– `ハードウェア、基盤となるオペレーティングシステム、またはデータベースエンジンのバージョンに必要なメンテナンス更新でインスタンスが遅れないようにするため` らしいです。

## 対策
– Lambda + EventBridgeで定期的に監視して停止させる
– 詳細は、 [RDSインスタンスを7日以上停止する方法 – AWS公式ドキュメント](https://aws.amazon.com/jp/premiumsupport/knowledge-center/rds-stop-seven-days/) 参照

元記事を表示

AWS CDK構築備忘録①(WAF+CloudFlont+S3)

# 内容
下記AWS WAF、CloudFront、S3の箇所をCDKで構築します。
* 証明書はACMで払い出し済みのものを使用
* ホストゾーンはRoute53でドメイン取得時に作成されたものを使用
* 環境作成後にCloudFrontのAレコード(Alias)をホストゾーンに追加

![cloudfront.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2523652/7aeb11b4-715b-2fcb-8b69-78529d794dd5.png)

# WAFスタック

## 準備
“`powershell
mkdir waf
cd waf
cdk init –language typescript
cdk bootstrap aws://ACCOUNT-NUMBER/us-east-1
npm install @aws-cdk/aws-wafv2
npx tsc -w
“`

## 作成
* デフォルトブロック、日本からのアクセスを許可するルールを追加
“`typescript:bi

元記事を表示

【機械学習 勉強メモ】機械学習についてインフラでできることを考える。

# はじめに

AWS MLS資格取得を目指して学んだことをまとめます。
機械学習を行うための構築について実践を交えて記載します。
構築で作業時間を少なくできるよう、自動化を行うことを心がけました。

# 機械学習の流れ

まず、機械学習ではどんなことをするのかをまとめます。
この記事では特にインフラに関することに注目します。

・ラベリング
 推論、学習などでデータを使いやすいように整形する。
 分類モデルのためにデータにラベル付けをする。
 大量のデータを保管、処理する。

・開発
 モデルを考えて、コードを書く。
 コードを書くためのツールを用意する。
 ツールを実行するためのリソースを用意する。

・学習
 大量のデータを用いて学習する。
 学習を繰り返してよりよくする。
 リソースのチューニング

・モデル変換
 推論用に学習済みモデルを変換する。

・推論
 学習済みモデルをデプロイして使う。

機械学習としてはデータを用意して、モデルを目標の精度まで学習させることが重要だと思っています。そのため、それ以外のことで頭を使いたくないのではないかと思います。そこで、インフラ面で

元記事を表示

モダンなWebアプリのあるべき姿 Twelve-Factor App (AWSやIaCであるTerraformと絡めたら)

# 概要

* 先日、弊社の情報システム部門で開催されている勉強会にお呼ばれいたしまして、「モダンなWebアプリのあるべき姿 The Twelve-Factor Appとは?」という内容でお話しさせていただきましたので、その内容についてブログとして記載していきたいと思います。
* 内容なのですが、The Twelve-Factor AppのそれぞれのベストプラクティスとAWSを使った場合の適合方法、それぞれについての理解とモダンなwebアプリ開発など絡めたものになっております。

# Twelve-factor Appって??

* モダンなWebアプリケーションのあるべき姿として、12のベストプラクティスにまとめた方法論
* Herokuプラットフォーム上で開発・運用・スケールした何百何千ものアプリケーションから得られた知見が基になっている
* 2012年に提唱。少々古い一面もあるが、現在でも示唆に富む数々のプラクティスが得らる

**対象 : サービスとして動くアプリを開発しているすべての開発者**

> 引用 : https://12factor.net/ja/

# 何が

元記事を表示

AWS + Redmine 5.0.0 AMIで環境構築(2)

## はじめに
前回、環境を作ってログインができるところまで確認ができたので、テーマとプラグインのインストールをやっていこうと思います。まだ、ver5.0.0がリリースされて日が浅いので、プラグインが対応できてないものもありそうなのですが、うまくいくもので試したいと思います。

## 環境
こちらは[前の記事](https://qiita.com/kuromame_09/items/1b1cd9a955dd4382f38b)を参照してください。

## テーマのインストール

まずはテーマを追加していきたいと思います。特にサイドバーを非表示にするプラグインを古いバージョンのRedmineでは使っていたんですが、
Redmine JPで公開されているテーマに含まれているのでこちらを使いたいと思います。

https://redmine.jp/glossary/t/theme/get-themes/

### bleuclairのテーマをインストール

テーマのインストールディレクトリで次のコマンドを実行します。※ver.5.0.0はredmine4.2のブランチでOKです。
“`sh

元記事を表示

OpenSearch + Logstashをインストールして試してみた

LogstashとOpenSearchの勉強のため、インストールしてログ収集する設定をします!

## OpenSearchとは
ElasticSeach + Kibanaを統合したツール。AWSマネージドサービス。OSSみたい。
https://aws.amazon.com/jp/opensearch-service/the-elk-stack/what-is-opensearch/

要件
– postfixメールログが検索できたらいい

環境
– メールサーバ
– postfix2.6.6
– CentOS6.8
– Logstash8.2.2 + Opensearch1.2 構成でログ収集を実現する

filebeatを使ってみたが、filebeatは正規表現が不必要な場合に向いているみたい。今回は正規表現を使っているためなし。

## OpenSearch ドメイン作成
[Dashboard](https://ap-northeast-1.console.aws.amazon.com/esv3/home?region=ap-northeast-1#opensearc

元記事を表示

AWS ソリューションアーキテクト アソシエイトC03とC02の試験範囲サービス比較

2022/8/30でソリューションアーキテクトアソシエイト(SAA)の試験が変更されます
現行のSAA-C02からC03になることで試験内容と試験範囲のサービス数が変わるので
どれくらいサービス数が変わるかを比較しました
# C03とC02の試験範囲サービス数
* C03:131個
* C02:63個
C03はC02の倍以上となっています

# 試験ガイド
* [SAA-C03](https://d1.awsstatic.com/ja_JP/training-and-certification/docs-sa-assoc/AWS-Certified-Solutions-Architect-Associate_Exam-Guide_C03.pdf)
* [SAA-C02](https://d1.awsstatic.com/ja_JP/training-and-certification/docs-sa-assoc/AWS-Certified-Solutions-Architect-Associate_Exam-Guide.pdf)

# C03とC02のサービス比較
サービス名の頭にあ

元記事を表示

AWSマネージメントコンソールの縦長設定画面を一枚の画像に収めたい

AWSマネージメントコンソールの縦長設定画像を作れるようにする。
![full.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2697194/c96dac48-3572-628f-49fa-3d9172729610.png)

## 結論
Google Chromeのデベロッパーツールでhtmlとcssを操作する。

– ヘッダーおよびフッターの削除
– コンテンツのheight調整

## 背景
最近マネージドコンソールベースの手順書を作成することになり、
各リソースの設定画面の画像が必要となりました。

可能であれば1つの設定画面ページは1枚の画像に収めてしまいたいと考え、色々と試行錯誤しました。

## ステップ1 : 全画面スクリーンショット
縦長のWebページを一枚の画像として保存する方法はいくつかあるのですが、ここではChromeのデベロッパーツールの機能を使いました。
下手にいろんな拡張機能を入れたくなかったので。
(もしかしたら拡張機能とか入れたら以降の悩みも勝手に解決してくれるかも?)

元記事を表示

AWS Price List Query API(aws pricingコマンド)でAmazonEC2サービスの情報を取得してみる

以前、下記記事にてPowerQueryでBulk APIを利用してみました。

[PowerQueryでAWS Price List API (AKA the Bulk API) からオファーファイルの一覧を取得する](https://qiita.com/SAITO_Keita/items/a41861a030efcfd1f46c)

今回はドキュメントにある`Query API`でAmazonEC2の情報を取得してみます。

[クエリ API を使用する](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/using-pelong.html)

## AWS Price List Query APIについて

[クエリ API を使用する](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/using-pelong.html)

上記ドキュメントに説明がありますが、`AWS Price List Query API`は`SKU`レベルの料金を

元記事を表示

RDSインスタンスのタイプを変更方法まとめ

[株式会社じげん](https://qiita.com/organizations/zigexn)の李です、
AWS RDS for MySQLのインスタンスタイプM3、R3については、2023年4月30日までがサポート期限となってます。
そのため、本番環境でRDSインスタンスタイプは`db.m5`へアップグレードしました、その手順とログを紹介していきます。

## 概要
– 前期調査
– 料金変更について
– 作業時間について
– 実行ログ
– RDSのスケールアップする
– フェイルオーバーで再起動する
– 参考資料

### 前期調査その1—料金
今回、DBインスタンスを`db.m3.large`から`db.m5.large`へ変更しました、比較表は下記です。
**m5へ変更後料金増えてないのは楽です。**
– [Amazon RDS の料金](https://aws.amazon.com/jp/rds/pricing/)により抜粋
– `アジアパシフィック (東京)リージョン`、`Multi-AZ`利用時の730時間分のオンデマンド料金
– [AWS 料金見

元記事を表示

開発サイクルのなかでの継続的モニタリング・継続的フィードバック

# 概要

DevOpsでは、モニタリングできる仕組みを組み込み、開発サイクルを回しながらモニタリングした情報やユーザーのフィードバックをもとに次のアイデアを検討し、実装リリースしていくという流れがあります。
モニタリングやフィードバックから得られる情報がサービス開発の様々な面において指針となるため、とても重要な要素と考えられます。

![devops_study_meeting_fundamentals_aws.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/43631/fba5fe79-b4b5-f061-9d2c-3e35aa77d44b.png)

今回はこの「モニタリング」と「フィードバック」に着目し、一例として私の実際に担当している社内システムを例に、行っている取り組みをまとめてみました。
まだ試行錯誤しているところが多いですが。何かの参考になれば幸いです。

## 背景
弊チームでは開発だけでなく運用や仕様の決定も担当しています。
対象システムは社内で使われますが、業務は常に変化しており、シ

元記事を表示

Daggerを使用してCIパイプラインを作成する

最近話題になっている?[Dagger](https://dagger.io/)を使用して
typescriptをトランスパイルしS3へdeployするパイプラインを作成してみました。

# Daggerとは
Daggerは、CICD向けのポータブルなdevkitです。

https://docs.dagger.io/

DaggerはDocker互換のランタイムでパイプラインが実行されるため、Docker互換のランタイムが動く環境であれば
Daggerをそのまま実行し、同一の結果を得ることができます。

Daggerではパイプラインの記述を一般的な `yaml` などではなくcuelangを使用して記述します。
module/packageや型定義などの強力な構文を使用することができます。

https://cuelang.org/

チュートリアルなども用意されています。

https://cuetorials.com/

# メリット

上記のことからDaggerを使用することで
+ 開発環境とCI環境の統一
+ CIロックインをなくすことができる

といったメリットを受けること

元記事を表示

S3APIを使用してLocalStackにデータをPUTしてみる

# 前提
LocalStackを構築してみたので、実際にデータをPUTしてみたいと思います。
AWSのS3APIが使用できるようなので、そちらを利用します。
前回の記事はこちら。

https://qiita.com/y5347M/items/200d3c4e23b800e433bb

# 環境
– macOS 11.6.4
– docker-compose: 2.0.0
– localstack: 0.14.3
– [S3API](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/index.html#cli-aws-s3api)

# 手順

### LocalStackが立ち上がっているか確認する
“`
XXX % docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS

元記事を表示

dockerコンテナを立ち上げたときに発生する`kernel BUG at include/linux/fs.h:3104!`の対応

# TL;DR
kernelバージョンを`linux-image-5.13.0-1031-gcp`に上げる

# 環境
GCPのVMインスタンスにSSH接続しています。
“`
$ cat /etc/issue
Ubuntu 20.04.2 LTS \n \l

$ uname -r
5.13.0-1030-gcp
“`

# 起こったこと
– いつものようにGCPのVMインスタンスにSSH接続し、`docker-compose up` を実行
– コンテナが立ち上がる前にSSH接続が切断されてしまう
– VMインスタンスのシリアルポートの出力を確認すると、`kernel BUG at include/linux/fs.h:3104!` とのこと

# 調べたこと
少し調べたら、こちらのツイートが出てきました。
カーネルのバージョンアップが原因だったようです。

元記事を表示

【AWS】LaravelアプリをEC2デプロイ

# 0.はじめに
新卒エンジニアが研修中に作成したアプリをデプロイした内容をまとめる為に投稿した記事です。
間違った内容が含まれているかもしれませんがご了承頂ければと思います。
また、その点をコメントでご指摘いただけると幸いです。

# 1.AWS構成図
![スクリーンショット 2022-06-13 10.07.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2640019/9570c1f6-dd72-cf31-e84b-8b7454272071.png)

# 2.AWS利用サービス一覧
– EC2
– VPC
– サブネット
– セキュリティグループ
– RDS
# 3.AWS利用サービス設定内容
**1. EC2(パプリックIPアドレスありで、ElasticIPをアタッチする)**
AMI:Amazon Linux 2 Kernel 5.10 AMI 2.0.20220426.0 x86_64 HVM gp2
インスタンスタイプ:t2.micro
ストレージ:1 ボリューム – 8 GiB

元記事を表示

[2022年]初心者向けAWS 書籍(参考書)

Amazon Web Serviceの書籍を紹介します。
プログラミングやIT系の勉強するときはKindleや電子書籍で勉強するのがおすすめです。
***
[AWSの知識地図[Amazon]](https://amzn.to/3xFPN2G)
![b.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2702119/709960f5-d494-2ff5-92e2-d69fd5d8c4e9.jpeg)
最短最速で今必要な知識を⾝につけるために、「情報のハブ」というコンセプトで書き下ろした新しいAWS⼊⾨書です。
– 第1章 AWSの全体像を押さえる
– 第2章 AWSでWeb環境を構築する
– 第3章 安全にAWSを使うための基礎知識を押さえる
– 第4章 現場でAWSを使いこなすサービスを押さえる
***
[図解まるわかり AWSのしくみ[Amazon]](https://amzn.to/3OamydO)
![aaa.jpg](https://qiita-image-store.s3.ap-northeas

元記事を表示

会社のサービスで自分専用のstaging環境を作った

22卒エンジニアしてますみっちーです。
メンターエンジニアの方からインフラ学習用に君専用のstaging環境作っていいよと言われ作ることになりました。

メンターの方の狙いとしては
– 新卒の自分にインフラ知識のキャッチアップ
– 非エンジニア、外部エンジニアの方の動作確認用の環境(こっちがメイン笑)

サービスの規模拡大に伴い関わる人も多くなってきて、staging環境が追加で必要になったため追加で作ることになりました。
自分としては無料でインフラ構築、学習ができてラッキーです。

# やったこと
– AWSのEC2インスタンス、S3、Route53、セキュリティ周り etc…(サーバー構築)
– CircleCIで環境変数とSSHパーミッションを設定、CI側でリポジトリをフォロしているかの確認
– CircleCI 設定ファイル(config.yml、その他三つくらいstging環境と同じもの追加)を作成
– 非エンジニアの方向けに特定ブランチにpush & deployしてくれるスクリプトの作成
– 非エンジニアの方にgithubの勉強会

# つまづいたこと
設定ファイル

元記事を表示

AirflowのタスクログをS3に保存する方法

# はじめに

Airflowのタスクログの保存先は、簡単に S3 や Google Cloud Storage のような外部ストレージに設定することができます。本番環境では、こうした外部ストレージを活用することで、ディスク容量不足による障害を防ぐ予防効果もあります。私はこの理由で、Airflow をクラウド上でデプロイする際に、タスクログを必ず外部ストレージに保存しています。

https://qiita.com/hankehly/items/1f02a34740276d1b8f0f#task-logging

この記事では、公式 [docker-compose.yaml](https://airflow.apache.org/docs/apache-airflow/stable/docker-compose.yaml) で開発環境を立ち上げて、[remote logging](https://airflow.apache.org/docs/apache-airflow/stable/logging-monitoring/logging-tasks.html) 機能で S3 にタスク

元記事を表示

【AWS DOP-C01】合格のための知識詰め込み

# はじめに
AWS DOPの試験対策で練習問題を解き、ひたすら知識を詰め込みます。
本質とは異なりますが、合格を最優先に考え作成します。

# デプロイ
## 開発
### CodePipeline
– runOrderを同じ値にすると並列に実行する
– バージョンの異なる複数のコードをデプロイする場合は、その分だけCodePipelineを作成する。
– JenkinsでCICDを実行する場合は、マルチマスターセットアップとしてデプロイし、CodeBuildプラグインを使用することでCodeBuildでビルドを実行する。
– 別のCodepipelineオプションを呼び出せない
– S3デプロイステップでアーティファクトを別リージョンのバケットにコピーできる。
– CodeCommitへの変更をトリガーにパイプラインを開始するにはCloudWatchイベントと連携する。

### CodeCommit
– マージのためには上級者の承認が必要
– CodeCommitでリポジトリを作成し、作業ブランチとmasterブランチを作成。上級開発者と開発者用に別々のIAMグループを作成

元記事を表示

【AWS】料金の管理~その1~

## 記事の対象者
インフラの勉強をしたいけど、AWSの料金が心配な方

## 経緯
以前投稿した[請求書の内訳が気になったお話](https://qiita.com/wark_ran/items/5e1ff2126839e7ab47c1)から、その他のサービスの料金についても調べることにしました。

## 注意点
あくまで個人で触った範囲でしか調べていないです。
情報に漏れがある可能性もあるので、参考程度に見て頂けると幸いです。

## 目次
①EC2
②EBS
③S3
④RDS
⑤EIP
⑥ALB
⑦AMI
⑧Route53

## EC2
AWSが提供する仮想サーバーです。
EC2の無料枠は、以下の通りです。

**1、AWSアカウント作成後、1年間
2、月750時間まで
3、無料のインスタンスタイプであること(私はt2.microだった)
4、EC2インスタンス全体でカウントされる**

## EBS
EC2で使用するブロックストレージです。
処理速度を高速化したいデータの保存に適しています。
参考URL : [AmazonS3とAmazonEBSの違い](https://bc

元記事を表示

OTHERカテゴリの最新記事