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

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

Windows から AWS Amplify で Android アプリの作成体験3

# 学習の方向性変更

\ 関連のエラー解除が出来ないこともあり、
学習の方向性を見直す事にして、この試行は中止して、改めて以下を学習することにする

– 必要そうなサービスの利用方法の確認
– Cognito
– S3
– DynamoDB

色々学習した上で、対処が分かったら継続出来るといいな

# はじめに

以下の続きとして、

https://qiita.com/baku2san/items/8f3771c4af5de9dced6f

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/120072/6ce31a7f-19f1-cc0d-1799-1b8f98fbf43d.png)

これを実施中。ただし以下理由で苦戦中
– 知識不足
– チュートリアルが古過ぎて、そのまま実行しても warning/error 有で、調査&対処が必要

寝たら気付いたが・・Amplify の学習より以下を先にやった方がい

元記事を表示

AWS IaC向けのVSCodeリモートコンテナ

# IaC用のローカル開発環境のコンテナ

– AWS CloudFormation、terraformを実行する環境が欲しいと思い、リモートコンテナ用のDockerfileとdevcontainer.jsonを作成しました
– ベースとしているのは、以下のGitHubの情報
– https://github.com/toricls/aws-amplify-sns-workshop-in-vscode
– https://gist.github.com/gsweene2/aa4229c163d500965e5674ee4418bf7a
– https://gist.github.com/ssugimoto/132e0785212be58b0c0a6b4b7b42bc91

## インストールされる言語、ツール
– aws-cli , terraform, rain , node , python, java8(amazon correto 8)

– 2022-11-12 時点インストールされるバージョン
“`
root ➜ /workspaces $ pyt

元記事を表示

AWS Lambdaで.NET Core 3.1から.NET 6に移行したときにやったこと

# はじめに

AWS Lambdaで.NET6がサポートされました。ですが.Net Core 3.1のMicrosoftのサポート期限が2022/12/13まで、AWS Lambdaにおける.Net Core 3.1のランタイムサポートは2023/1/20までとなっており、.NET Core 3.1から.NET 6への移行が必要になりました。
やってみると、項目によって`net6.0`だったり`dotnet6`だったりと、意外と紛らわしかったので忘れないようにメモしておきます。

# やったこと

## ターゲットフレームワークの変更

まずは言わずもがなですが、プロジェクトファイルのターゲットフレームワークを変更します。

“`diff_xml:***.csproj
netcoreapp3.1
+ net6.0
“`

## aws-lambda-tools-defaults.jsonの修正

AWS Toolkit for

元記事を表示

AWS EC2で立ち上げたRails(unicorn)サーバーのログ確認方法

## 前提条件
RailsアプリをEC2(unicorn)にデプロイして、サーバー起動済みの場合のログ確認方法

## 結論
該当アプリのlogディレクトリで以下のコマンドを実行すればOK
“`terminal:terminal(EC2インスタンス内)
$ tail -f production.log
“`

## 詳細
デプロイしたリポジトリで以下のコマンドを実行してください!
“`terminal:terminal(EC2インスタンス内)
$ ls
Gemfile Gemfile.lock README.md Rakefile app bin config config.ru csv db lib log public spec storage tmp vendor

$ cd log

$ ls
production.log unicorn.stderr.log unicorn.stdout.log

$ tail -f production.log
以下にサーバーのログが流れてくる
“`

## tailコマンドについて
ファイルの

元記事を表示

Laravel9 + Fargate に Supervisor を導入

# はじめに

# 初期構築

下記記事を参考に初期構築をします。

https://qiita.com/hirai-11/items/241df305a90af3ccf973

リポジトリはこちら

# Supervisorを導入

## Dockerfileを編集
`./docker/php/Dockerfile`内を2箇所修正します。
“`diff_docker:./docker/php/Dockerfile
FROM php:8.1-fpm-bullseye

ENV TZ=Asia/Tokyo \
# locale
LANG=ja_JP.UTF-8 \
LANGUAGE=ja_JP:ja \
LC_ALL=ja_JP.UTF-8 \
# composer environment
COMPOSER_ALLOW_SUPERUSER=1 \
COMPOSER_HOME=/composer

COPY –from=composer:2.3 /usr/bin/composer /usr/bin/composer

RUN apt-get update

元記事を表示

VMware vSphereでADサーバを構築してみた

# はじめに

### 作成の背景
現職でADサーバのオンプレからVMware vSphere環境への移行プロジェクトに携わることになりました
プロジェクト概要としては

1:VMware vSphere環境上にADサーバを構築
2:既存ドメインコントローラーの降格
3:新規ドメインコントローラーの昇格
4:ドメインに参加しているサーバのDNSに切り替え

となりますが、取り急ぎ
**VMware vSphere環境上にADサーバを構築** のステップを記事にさせていただきます。

### 環境
・vSphere client6.5
・Windows Server 2019
# 基礎知識

### ・VMware vSphereとは
これは、VMware社の仮想環境ハイパーバイザー製品の「ソフトウェアスイート」です。
つまり様々なツールの一式で、図にすると以下のようになります。

![スクリーンショット 2022-11-12 13.47.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/266612

元記事を表示

AWSハンズオン_2_IAM権限移譲

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

IAM権限移譲の手順は下記です
1,下記の情報をメモにする必要があります
・移譲元のアカウントID
2,移譲元でポリシーを作成(ソースに対するアクセス権限)
3,移譲元でロールを作ります(上記のポリシーをつかってもいいし、どのポリシーでもいいです)
4,下記の情報をメモにする
・ロール名
・ロールARN情報
5,移譲先でポリシーを作る。(4のメモ情報を使う)
6,新しいユーザを作って、ポリシーを付与するか、既存のユーザに付与するかは自由
7,移譲成功かを確認

それでは、始まります
2,移譲元でポリシーを作成(ソースに対するアクセス権限)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/488091/00c53948-de02-c140-2aa4-480bf0ff6bd7.png)

元記事を表示

AWS IAMユーザー・グループ 概要 ~ 作成手順の解説

# はじめに
IAMユーザーとIAMユーザーグループを学ぶ機会があったため、概要から作成手順までまとめました。

# IAMユーザーとは
IAMユーザーとは、AWSを使用する人に発行するユーザーです。
ポリシーを付与することで、行動に制限をかけることができます。

https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_users.html

## ルートユーザーとの違い
AWSを操作できる意味では一緒ですが、ルートユーザーの方が権限が大きいため、操作できる幅が広いです。
(詳細は、以下のURLから飛んでみてください。)

https://docs.aws.amazon.com/ja_jp/general/latest/gr/root-vs-iam.html

# 作成手順
1. IAMユーザーグループの作成
2. IAMユーザーの作成
3. IAMユーザーでログインし、MFA(2段階認証)を有効にする

:::note
IAMユーザーに直接ポリシーを付与することも可能です。
ただ、グループを先に作成後、グループにポリシーを付

元記事を表示

AWS GlueのSensitive data検出の日本向けパターン

# 初めに

AWS GlueではSensitive Data Detection featureとしてPII等の機微情報の検出やマスキングを行う機能があります。今までは日本固有のパターンは提供されていませんでしたが、2022/11/08に下記の日本固有のパターンが機能として追加されました。

![glue_pii_3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276167/2ec7b577-a6d0-cd94-f0e2-cdd21f146822.png)

日本固有の
– 銀行口座番号
– 運転免許証番号
– マイナンバー番号
– パスポート番号

の検出を行うことができるようになりました。

# 使用方法

GlueのAPIを使ってSensitive Data Detection featureを使うこともできますが、Glue Studioでより簡易に使用することができるので、ここではGlue Studioを使用します。

Glue Studioのジョブ作成画面で `Action` → `D

元記事を表示

AWS MediaLiveを使った擬似リニア配信方法 ~実践編~

# ? 擬似リニア配信(Virtual Linear OTT)とは?

擬似リニア配信とは、24時間/365日、番組表などのスケジュールに従って時間通りに配信する仕組みになります。事前に収録済み動画ファイル(mp4など)を使ってあたかも生配信しているかのようにライブ映像として流します。いわゆるケーブルTVみたいなものです。本資料ではMediaLiveのスケジュールアクション機能使った擬似リニア配信の実現とより実践で使える設定・設計について説明します。

注: MediaLiveをMLと省略して説明します。

## MLで実現するための流れ ~基礎編~

1. 動画ファイルをs3にアップロードする
1. MLチャンネルを作成する
1. スケジュールアクションを登録する

### 1.動画ファイルをS3にアップロードする

配信したい動画を事前にs3にアップロードします。
| ファイルパス | 用途 |
|:———–|:————|
| s3://demo-bucket/CM.mp4 | 本編動画を流す前の動画、今回は仮でCM(宣伝)動画 |
| s3://d

元記事を表示

AWS CDKでSecrets ManagerのgenerateSecretString, secretObjectValue, secretStringValueを作ってみる

# 背景
`cdk`で `secrets manager`を使ってパスワードや環境変数を登録するときに、
1. `generateSecretString`
1. `secretObjectValue`
1. `secretStringValue`

のパターンをそれぞれまとめてみました。

# 環境
Typescript: ^4.8.2
aws-cdk: ^2.44.0

# generateSecretString オプションなし

## generateSecretString: コード

“`ts
const generateSecretString = new aws_secretsmanager.Secret(this, ‘GenerateSecretString’, {
generateSecretString: {
secretStringTemplate: JSON.stringify({ username: ‘postgres’, say: ‘hi mom’ }),
generateStringKey: ‘pa

元記事を表示

AWS,Azureの構成図をdiagrams.net(旧draw.io)で作る

## 構成図ってどうやって作るん???
技術系の記事によく出てくるこういう図↓ の作り方がよくわからず、少しネットの海をさまよったので、メモ程度に残しておきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/462497/8c43df25-7fa6-1bfc-c8a7-d091dc991a39.png)
[図の引用元](https://aws.amazon.com/jp/builders-flash/202204/way-to-draw-architecture/?awsf.filter-name=*all)

## なんてツール?
[**diagrams.net (旧draw.io)**](https://diagrams.net/)を使って書きます。
このツールは、Web上などで↓のようなデザインを書くことができ、データはローカル上、クラウド上(Google Drive,GitHubなど)に保持することができます。
![app.diagrams.net__src=about.png

元記事を表示

DatabricksにおけるAWS S3アクセスの最適化

[Optimizing AWS S3 Access for Databricks \- The Databricks Blog](https://www.databricks.com/blog/2022/11/08/optimizing-aws-s3-access-databricks.html)の翻訳です。

:::note warn
本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
:::

オープンなクラウドネイティブレイクプラットフォームであるDatabricksは、データウェアハウスとデータレイクのベストな機能を組み合わせることで、データ、分析、AIをシンプルにし、データチームが自身のデータとAIのユースケースを容易にデリバリーできる様に設計されています。

データとAIのアプリケーションを構築するという目的のもと、Databricksは2つのコアコンポーネントから構成されています: コントロールプレーンとデータプレーンです。コントロールプレーンはDatabricksによって完全に管理され、Web UI、ノートブック、ジョブ、

元記事を表示

【AWS】EBSボリュームタイプのGP2とGP3についてまとめる

## はじめに
EBSのボリュームタイプである GP2 と GP3 の違いについてご紹介します。

## GP2 と GP3 についての説明
### GP2とは?
– Amazon EC2 インスタンスのデフォルトの EBS ボリュームタイプ
– ボリュームはSSDを基盤としている

#### GP2の特徴
– 汎用 SSD (gp2) ボリュームのボリュームストレージの料金はプロビジョニングした容量 (GB/月) で決定される。
– ストレージを解放するまで毎月料金が発生する。
– gp2ボリュームのプロビジョニング済みストレージは、 1秒 毎に課金される.
– 最小課金時間は 60秒
– I/O はボリュームの料金に含まれている

##### 料金

| ボリュームタイプ | 料金 |
| —- | —- |
| 汎用SSD (gp2) ボリューム | 1ヶ月にプロビジョニングされたストレージ 1GB あたり 0.12USD |

##### 詳細情報

| 項目 | 特徴 |
| —- | —- |
| ボリュームタイプ |

元記事を表示

AWS Glue Flexオプションについて

# AWS Glue Flexオプション

AWS Glueでは2022/08/09にFlexタイプのジョブ実行モードというのが追加されました。
FlexタイプのジョブはEC2のスポットインスタンスのような非占有型のコンピュートキャパシティ上で動作します。
そのため、リソースの使用状況に応じてジョブの開始に時間がかかる場合などがありますが、その分コスト的には通常のジョブに比べ安価になっています。
テスト用途のジョブや実行時間の制約の緩い夜間のバッチジョブなどでコストを安価に抑えながらジョブを実行できるオプションになります。

# Flexオプションのコスト

2022年11月現在、東京リージョンではFlexオプションは通常のジョブに比べ最大34%のコスト削減効果があります。

|通常|Flex|
|:—|:—|
|$0.44 per DPU-Hour|$0.29 per DPU-Hour|

# Flexオプションの特徴

FlexオプションはGlue 3.0またはそれ以降のバージョンのETLジョブで利用可能です。
また、Flexオプションを有効にした場合は

元記事を表示

[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 スライドまとめ

# 履歴
– AWS上に構築したマイクロサービスに対する効率的な性能・負荷テストの実行方法 のスライドを追加しました
– どんな低スペックPCが割り振られても泣かないで!開発環境をCloudへ移行した話 のスライドを追加しました
– Amazon Neptuneとサーバーレスから始まった高速バス予約システム開発 のスライドを追加しました
– CloudbaseでのAWS CDKとStepFunctionsを用いたバッチ処理基盤の爆速構築 のスライドを追加しました

# 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-awsdevd

元記事を表示

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

元記事を表示

OTHERカテゴリの最新記事