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

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

[AWS]JenkinsでTerraformによるインフラデプロイをやってみた

# 目次
– [目次](#目次)
– [はじめに](#はじめに)
– [注意事項](#注意事項)
– [構成図](#構成図)
– [構成図の説明](#構成図の説明)
– [環境構築](#環境構築)
– [ネットワーク](#ネットワーク)
– [セキュリティグループ](#セキュリティグループ)
– [IAMポリシー&ロール](#iamポリシーロール)
– [EC2インスタンス](#ec2インスタンス)
– [S3バケット(Terraformのbackend用)](#s3バケットterraformのbackend用)
– [Jenkinsの構築](#jenkinsの構築)
– [Jenkinsのインストール](#jenkinsのインストール)
– [Jenkinsの初期設定](#jenkinsの初期設定)
– [Terraformプラグインのインストール](#terraformプラグインのインストール)
– [Githubリポジトリの作成](#githubリポジトリの作成)
– [JenkinsfileとTerraformコードの作成](#jenkinsfi

元記事を表示

Kinesis Data Streamsに指定したスループットでデータを送信する方法

# 初めに

Kinesis Data Streamsなどストリーム系のサービスに連続的に指定したスループットでデータを送信して性能測定をしたくなることはありませんか?
ある業務で実際に性能測定をすることがあったので、Kinesis Agentと独自のPythonプログラムでKinesis Data Streamsにデータを送信する構成を作ってみました。
以下のようにサンプルデータを用意して、Pythonプログラムがそのデータを繰り返しフェッチしログデータとして連続的に書き込んで行きます。Kinesis AgentはそのログデータをフェッチしKinesis Data Streamsに送信します。
![log-streaming.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276167/c47d4638-8e78-783a-74a5-39a40d60f1a1.png)

# セットアップ

セットアップにあたって、Pythonプログラム、Kinesis Agentが動作するEC2インスタンス等を

元記事を表示

Windowsで”context requires credentials to be passed as environment variables”と表示された際のトラブルシューティング

# この記事は誰向けのものか

– WindowsでWSL2(Windows Subsystem for Linux)を導入済みである
– WindowsでDocker Desktopを導入済みで、WSLと連携してDockerコンテナを運用している
– WindowsでAWS Cliを導入済みで、WSLで運用しているDockerコンテナをAmazon ECSにデプロイしようとしている

上記の環境にて難題に苛まれた同僚を救うべく、奔走した際の記録を情報資産として書き残す。
仮に取り扱うOSがMac OSやLinuxであった場合にも、一部は参考となるので困ったら読んでほしい。

# ”Too Long; Didn’t Read.”が欲しい方へ

– このエラーはdockerについて適切でないコンテキストが指定されている場合に発生するエラーメッセージである。AWSは関係があるようでない
– 安全かつ簡単確実な方法で解決するので安心してほしい
– `~/.docker/config.json` を編集して、利用するdocker contextを `”default”` にすれば治る

# 発

元記事を表示

【随時更新】AWS Dev Day 2022 Japan スライドまとめ

# Day 0

– [開発者を魅了するオープンソースソフトウェアSupabaseとは](https://speakerdeck.com/mats16/supabase-aws-devday-2022)

– [[レポート]OSSエンジニアのBetter than Nothingという生き方 〜 全力で5%を目指せ! #AWSDevDay | DevelopersIO](https://dev.classmethod.jp/articles/knqyf263-oss-better-than-nothing-awsdevday/)

– 【スペシャルプログラム】ついに決着!!犬派vs猫派 LT大会
[ぱっと見犬猫っぽいAWSアーキテクチャ図を Amazon Rekognitionで判定しよう](https://speakerdeck.com/kzkmaeda/patutojian-quan-mao-tupoiawsakitekutiyatu-wo-amazon-rekognitiondepan-ding-siyou)
[Introduction_of_CNSec_thr

元記事を表示

LaravelをインストールしたEC2 に Supervisor を導入する

# はじめに
LaravelのSupervisorを使用してworkerプロセスを管理するため、Ec2にSupervisorを導入する流れをまとめました。

# 初期構築

EC2 Laravelは、下記記事で構築済み。

https://qiita.com/hirai-11/items/ea6cfe997c254375e811

ルートディレクトリは、`/var/www/html`です。
`/var/www/html`配下に laravel の public や storage があります。

# Supervisorをインストール
まず、epelをインストール後、supervisorをインストールします。
“`terminal
$ sudo amazon-linux-extras install -y epel

$ sudo yum –enablerepo=epel install -y supervisor

$ supervisord -v
3.4.0
“`
`/etc/supervisord.d`配下に管理プロセスファイルを新規作成します。

“`terminal

元記事を表示

SAA-C03にリベンジを果たした話

# 目次
* はじめに
* 前回の反省
* 勉強で工夫した点
* 今後の抱負

# はじめに
こんにちは、中学校の先生です。
[前回](https://qiita.com/Daha/items/9c169c02a4912f0a86b3 “前回”)から約1か月経ち、ついにSAA-C03へリベンジを果たしました。
そこで反省した点、工夫した点、今後の抱負などを記録していきたいと思います。

# 前回の反省
前回は問題演習偏重型で、ひたすら数をこなすことに躍起になっていました。
教材は本がメインで、インターネットでは演習問題を探し回りながら取り組んでいました。
そこで細かい操作やサービスの組み合わせ、ネットワークの仕組みなどを突かれると弱いな、と感じました。
また、実際に触ったことが無い分ネットワークインフラのイメージが立てづらいことも感じていました。

# 勉強で工夫した点
* お金を惜しまない
Udemyでコースを買い、ハンズオンに取り組みました。そこでEC2の立ち上げやS3バケットのライフサイクル設定、アクセスのコントロールなど基本的であろう操作を練習しました。楽しいのはもちろん、これ

元記事を表示

EC2のメモリ使用率、プロセス、ログをささっと監視する

SaaSのSite24x7で実現する方法を共有します。前回の投稿で紹介したAWS連携と合わせて以下の手順を踏むとより便利に使えます。

流れ

  1. エージェントのインストール ※一括可
    • Windowsの場合(2分)
    • Linuxの場合(1分)
  2. 各種設定
    • メール通知(0分)
    • メモリ使用率監視(0分)
    • プロセス監視(1分)
    • ログ監視(1分)

前提

元記事を表示

Postfix/Dovecot 性能検証(POP3処理性能)

## 環境
– マシンA(自宅)
– AMD Ryzen7 4800H(8core/16thread) 16GBメモリ
– Windows 11 Home(ホストOS:VMware Workstation 16 Player): Thunderbird(POP3)
– Red Hat Enterprise Linux release 8.4 (Ootpa)(ゲストOS):postfix/dovecot
– ホスト4core/ゲスト4coreの割り当て。
– マシンB(AWS)
– t3.xlarge(4vCPU/16GBメモリ)
– Red Hat Enterprise Linux release 8.6 (Ootpa):postfix/dovecot

## 検証手順
postfixの設定は本番を意識したものではなくなる早で検証開始する目的
“`
#vi /etc/postfix/main.cf
#変更内容ポイント
myhostname = 環境の値を設定
inet_interfaces = all
home_mailbox = Maildir/

#最

元記事を表示

Security Hub が CIS AWS Foundations Benchmark v1.4.0 をサポート

## はじめに
AWS Security Hub が CIS AWS Foundations Benchmark v1.4.0 をサポートしました :tada::tada::tada:

https://aws.amazon.com/jp/about-aws/whats-new/2022/11/security-hub-center-internet-securitys-cis-foundations-benchmark-version-1-4-0/

これまでも AWS config rules の conformance pack では、v1.3.0 や v1.4.0 のルールセットが提供されていましたが、Security Hub のセキュリティ基準機能では長らく v1.2.0 のみをサポートしていました。これにより Security Hub で 既存の v1.2.0 の準拠状況をチェックしているユーザーも最新のベストプラクティスに対応することができます。

※CIS Benchamrk 本体は 2022 年 8 月に最新バージョンとなる CIS AWS Foundations B

元記事を表示

CloudFrontのキャッシュ削除をCLIでやる手順

CloudFrontのキャッシュ削除をCLIでやる手順をメモ

## 手順

“`bash
# CloudFrontのディストリビューションIDを入手
aws cloudfront list-distributions –profile {profile} | jq ‘.DistributionList.Items[] | .Id + ” ” + .Aliases.Items[0]’ -r
# 希望のディストリビューションIDとキャッシュ削除するパスを指定して作成
aws cloudfront create-invalidation –distribution-id {distribution id} –paths ‘{キャッシュ削除したいパス}’ –profile {profile}
# キャッシュ削除結果を確認、前のコマンドンの結果のjson Invalidation.Id を {invalidation id} に指定する
aws cloudfront get-invalidation –id {invalidateion id} –distribution-id

元記事を表示

golangとAWS Cognitoで認証機能を実装してみた

# 環境について
## Cognitoへのアクセス準備
Cognitoへ接続するためには
`aws_access_key_id`
`aws_secret_access_key`
がそれぞれ必要なので、[AWS SDK for Go](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#creating-the-credentials-file)を見て下記のファイルを作成します。
“`text:credentials
[default]
aws_access_key_id = xxxxxxxxxxxxxxxxxxxx
aws_secret_access_key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
“`
それぞれのKeyについてはIAMでCognitoへのアクセス権限を持ったユーザーを作成すると発行される。

上記で用意したDockerfileにコンテナ内へコピーするコマンドを追加
“`docker:Dokerfile
〜略〜
#

元記事を表示

AWS CLI の使い方メモ(windows)

# インストール方法
1. AWS 公式から [AWS CLI MSI インストーラ](https://awscli.amazonaws.com/AWSCLIV2.msi) をダウンロード
1. ダウンロードしたインストーラを実行して端末にインストールする
1. インストール後にコマンドプロンプトで以下を実行し、インストールできたか確認する
“`
$ aws –version
aws-cli/2.8.10 Python/3.9.11 Windows/10 exe/AMD64 prompt/off
“`
# 設定
以下の方法でユーザ情報を設定する
“`
$ aws configure
AWS Access Key ID [None]: {アクセスキー}
AWS Secret Access Key [None]: {シークレットアクセスキー}
Default region name [None]: ap-northeast-1
Default output format [None]: json
“`
# 使い方
* 指定したインスタンスIDで取得できるメトリクスの一覧を表示
`

元記事を表示

現役インフラエンジニアがAWS Certified Cloud Practitioner(CLF-C01) を受けた話

# きっかけ

急に受けてみたくなったので受けてみました。
さらっと合格できたので社内/社外向け備忘録レビューを書きます。

# 受けた人のスペック

受けた人はこんなスペックです。
2-3時間程度勉強したら合格しました。

– 新卒2年目インフラ/NWエンジニア
– おうちでESXiやルータを愛でている
– AWSの実務経験1年
– 高可用性のあるWebインフラをつくったことがある
– DirectConnectやDirectryService、ClientVPNも触ったことある

# 受験に必要なこと

– 試験をピアソンVUEで予約すること

これ一択です。後に引けなくなりますし1か月後くらいまでできるのでお勧めです。

# 思ったこと(個人の感想)

AWS用語クイズのような内容でしたがAWSをお客様に提案していく上ではとても重要な資格に感じました。
クラウドを一緒に提案するプランナーさんが持っているととても嬉しいなと思いました。
大学生の方はITパスポートと一緒に持っておくといいのかなと思いました。

# 思ったこと(試験内容)

## できたこと

EC2

元記事を表示

AWSハンズオン_1_IAM1_EC2からS3へアクセスするロールを作って、接続する

AWSの初心者のさとしです
AWSの現場仕事を触れるチャンスが全くないです
趣味として、ハンズオンする形で勉強メモを取ります
ご覧になったみんなさんにお役に立てればうれしいです
※:間違うところがあれば、ご指摘していただければ幸いです

EC2からS3へアクセスするロールを作る手順は下記です
1,S3へアクセスポリシーを作る
2,ロールを作る(1のポリシー)
3,EC2を起動して、ロールを付与する
4,teraTermでEC2へ接続して、S3を接続する

それでは、始まります
1,S3へアクセスポリシーを作る
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/488091/f8afdd9f-013d-336e-8f12-960ae3e1939f.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/488091/f30e5859-256a-6e58-59ca-791440

元記事を表示

[CDK pipelines]同一アカウント&同一リージョンに環境の数だけcdk pipelinesを実装する方法

# はじめに

複数人でのCDK開発を進める上でcdk pipelinesは非常に便利ですが、
**同一アカウント&同一リージョン上で環境別のcdk pipelinesを走らせる**といった要件で検討した際に

– gitのブランチ運用
– 環境変数の定義方法
– cdk pipelinesを動的に生成する為のスタック定義方法

等々、運用上考慮した点や工夫した点があった為、実際の構築例を紹介する記事となります。

## 対象
– 環境別(dev、test等)のcdk pipelinesを構築しようとお考えの方
– cdk内の環境変数を使いまわす方法を模索中の方

## 検証環境
cdk version
2.50.0 (build 4c11af6)
node -v
v18.12.1
tsc -v
Version 4.8.4

## ゴール

今回は`test1`、`test2`という環境用のcdk pipelinesを構築する想定です。

▼実際に作成したpipeline
![image.png](https://qiita-image-store.s3.ap-northeast-1

元記事を表示

AWSソリューションアーキテクトアソシエイト忘備録(暫定11月分)

目的として
AWSソリューションアーキテクトアソシエイトの資格取得のため、また、知識を蓄えて案件参画時に活かせるようにしたい!!
ということで、いつでも見返せるように以下にまとめる(量が多いため検索して該当の部分を参照できることをひとまず目的とする)

# 複数リージョンのS3バケット上にデータを保持し、それらのデータをバージョン管理するためのソリューション
 ⇒複数のリージョンでバージョン管理を行うS3バケットをそれぞれ作成してリージョン間のレプリケーションを有効にする

# 人為的なミスが原因でファイルを削除してしまった場合にどのような方法で復旧するかのソリューション
 ⇒S3には過去の履歴を保持しておくバージョニング機能があるため有効にしておくことにより古いバージョンのファイルも復元可能であり最適解となる

# オンプレミスシステムからクラウドシステムへのデータバックアップに関するソリューション
 ⇒StorageGatewayのファイルゲートウェイの利用によりオンプレミス環境にソフトウェアアプライアンスという形でVMを導入することでNFSやSMBプロトコルを使ってS3

元記事を表示

「ついで」に管理してたインフラに対する気付きを殴り書き

## 経緯
新卒から4.5年間, ソシャゲ運用のプロジェクトに携わっていました。
自分が担当した全てのプロジェクトでインフラ専門の方がいなかったので, 3年目くらいからアプリ運用の「ついで」に AWS 管理も行っていました。
当時はコストが大きくなりすぎずとりあえず動けばいいみたいな管理でした。

この記事はそんなとりあえず動いているインフラに少し手を加えるだけで改善しそうなことを、思いついたときに書き留めていきます
別業界のインフラエンジニアに転職したので気づいたことを備忘として書いてって、今後役に立てばいいなって思ってます。
思いつきで試してないので実際にやったら実用的じゃないことのほうが多いかもしれません。
もちろん間違ってることもあると思うんで信じすぎないようにお願いします。

qiita の使い方もよくわからんけどな

## 目次

1. EC2 インスタンスタイプは定期的に見直す
1. 機能別メンテナンスは ALB でできるかも
1. AWS Timestream 使ってみたい
1. このアーキテクチャ構成図すごくない?

### EC2 インスタンスタイプは定期的に見直す

元記事を表示

「手軽に、身軽に、行きたいお店」が見つかるサービスを作った話(ハッカソン参加レポート)

## はじめに

当資料はとあるハッカソンでの成果物をまとめたものです。※テクニカルサポーター賞(LINE)いただきました!

初めてのハッカソン参加でしたがいろいろと学びがあったので共有しようと思います。

ハッカソン自体の概要 ※運営の方に転載許可いただいています。

# ハッカソン概要
### テーマ:シン・ノーマル時代のHappy
2020年の緊急事態宣言から2年が経過をし、Covid-19の影響も少しずつ変化し、「ニューノーマル」は、それぞれの「新しいノーマル」に形を変えている。
本ハッカソンでは、そのような現在(シン・ノーマル時代)の幸せについて、改めて考察し、Happyな気持ちになるプロダクトを創造頂きます。

### 開催概要
##### 開催日程
– アイデアソン・チームビルディング(全員参加) :10/11(火) 10:00-16:00
– LINEハンズオン(任意参加・別途申し込み):10/26水 14:00-17:00
– M5Stack ハンズオン(任意参加・別途申し込み):10/25火

元記事を表示

【Rails】Carrierwaveを用いてAWSのS3にPDFのアップロードとダウンロードを可能にする。

# はじめに

PDF投稿機能。cloudinaryではpdfに対応していないので、AWSのS3を使ってPDF投稿を実現しました。

# 開発環境
– Ruby 3.0.4
– Rails 6.1.7

# 前提
– tweetsコントローラーで投稿機能作成済み
– tweetsテーブルにはpdfカラムstringで用意
– [AWSアカウント登録済](https://aws.amazon.com/jp/free/?gclid=Cj0KCQjwqoibBhDUARIsAH2OpWjwD6i56zlT62LqzwhLLLs-Pwqdqo91PMZ_10Pre8KXy7wURDGgIOkaAuJXEALw_wcB&trk=94c18984-27d1-4395-8dae-cdbf523f1ae5&sc_channel=ps&s_kwcid=AL!4422!3!568105078079!e!!g!!aws&ef_id=Cj0KCQjwqoibBhDUARIsAH2OpWjwD6i56zlT62LqzwhLLLs-Pwqdqo91PMZ_10Pre8KXy7wURDGgIOkaAuJ

元記事を表示

初心者エンジニアが『Hello, World!をサーバーレスで実行する』公式チュートリアルやってみた。

# はじめに
今回はAWS公式から出ている、『「Hello, World!」をサーバーレスで実行する』というチュートリアルをやっていきます。
この記事はAWSアカウントを作り終わってることが前提条件になりますので、下記URLから作成をお願いします。

https://aws.amazon.com/jp/getting-started/hands-on/run-serverless-code/

### 自分のスペック
新卒でエンジニアになったが、Pythonに関しては簡単なものを読解、コーディングするぐらいの知識しかないです。
ほとんど初心者な人が今回はやっていきます。

### 環境
* Windows10
* Chrome

# 実行していく
### 関数作成までの手順
まず、AWSに入ってもらって左上の検索ボックスで「lambda」と検索して**Lambda**をクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629918/4a9de036-5538-2b19-d56f-

元記事を表示

OTHERカテゴリの最新記事