らくがきちょう

なんとなく ~所属組織/団体とは無関係であり、個人の見解です~

AWS

Amazon Linux2 に Cacti をインストールする

Cacti は OSS の監視ツールです。 PHP ベースで動作します。 今回は Amazon Linux2 に Cacti をインストールする手順をメモしておきます。

WASABI のストレージ使用率を AWS CLI で確認する

wasabi のストレージ使用率を Web UI から確認しようとしたところ、以下のように Bucket size information is unavailable at this point in time. Sizes are calculated once daily. と表示されてしまいました。 しかし、AWS CLI であればいつでもストレー…

CloudFront では us-east-1 (北部バージニア) の ACM 証明書しか使えない

AWS

AWS の CDN サービスである CloudFront では、同じく AWS の証明書サービスである ACM で発行した証明書を利用することが出来ます。 AWS のサービスは以下に分類されます。 グローバル・サービス (リージョンに依存しないサービス) リージョナル・サービス (…

Linux と IAM ユーザ情報を同期し、SSH 鍵でログイン出来るようにする

aws-ec2-ssh を使うと EC2 上にある Linux ユーザ情報を IAM と同期させることが出来ます。 ログイン時に必要な SSH 公開鍵も IAM と同期出来る為、ユーザの追加・削除を (Linux では無く) IAM 上だけで完結出来るようになります。

Amazon Linux2 に Zabbix エージェントだけをインストールする

Amazon Linux2 に Zabbix エージェント だけを インストールする手順をメモしておきます。

AWS NLB は Source IP/Port を維持するが DSR 動作はしない

AWS

AWS Black Belt Online Seminar は毎回、素晴らしい内容です。 2017 年公開の資料なので、最新の情報ではありませんが NLB の基本的動作については ELB Update - Network Load Balancer (NLB) と関連サービス に分かりやすく、且つ、丁寧にかかれています。 …

AWS EC2 で Linux にセカンダリアドレスを割り当てる

AWS 上の Linux (等) に固定アドレスを割り当てたり、セカンダリアドレスを割り当てる手順をメモしておきます。 プライマリアドレスを固定設定する プライマリアドレスを固定設定してみます。 Step.1 インスタンスを作成する際、ネットワークインターフェイ…

AWS API Gateway + Lambda + mangum + FastAPI な Python アプリケーションに POST された JSON を処理する

以前に mangum + FastAPI で ASGI な Python アプリケーションを AWS Lambda + API Gateway 上で動かすというメモを書きました。 mangum と mangum-cli を使うと FastAPI を使った Web アプリケーションを AWS の Lambda と API Gateway を使って簡単に公開…

AWS CLI v2 をインストールし、ページャを無効化する

AWS CLI v2 is now generally available でアナウンスされましたが AWS CLI v2 が正式リリースされました。 従来は pip 経由でインストールしていましたが、v2 からは .zip ファイルをダウンロードし、インストーラを使ったインストール手順に変わっています…

mangum + FastAPI で ASGI な Python アプリケーションを AWS Lambda + API Gateway 上で動かす

mangum を使うと FastAPI や responder といった ASGI アプリケーションを AWS Lambda + API Gateway 上へ簡単にデプロイすることが出来ます。 今回は FastAPI で書いた ASGI アプリケーションを mangum を使って AWS 上でデプロイする手順をメモしておきま…

AWS Lambda で CloudWatch Event からトリガーした場合の event サンプル

AWS Lambda を cron 式で指定時間にトリガーする場合、トリガーには Cloud Watch Event を指定します。 この場合、Lambda のイベントハンドラへ渡される event (JSON オブジェクト) のサンプルは Event Patterns in CloudWatch Events に掲載されています。 …

python-lambda-local と lambda-uploader を使ってローカル環境で Lambda 開発を行う

AWS の Lambda で開発を行う際、Web 管理コンソール上で開発 / デバッグするのは大変です。 python-lambda-local を使うとローカル環境で Lambda を実行出来、更に lambda-uploader を使うとローカル環境から簡単に Lambda へ関数をアップロードすることが出…

GCP 上で Route53 DNS 認証を使い lego で Let's Encrypt のワイルドカード証明書を取得する

lego を利用して Let's Encrypt の証明書を取得する手順については以前に下記のメモを書きました。 Cisco ASA 9.1 に Let's Encrypt なワイルドカード証明書を SSL-VPN 用にインポートする AmazonLinux2 で lego を使い Route53 認証でサーバ証明書を取得す…

Lambda 用の .zip ファイルを作成する場合は「zip -r .」を使う方がベター

AWS Lambda で (標準パッケージ以外の) 外部パッケージを利用したい場合は、Python のソースコードと依存するパッケージを .zip アーカイブにして、Lambda へアップロードする必要があります。 詳しくは AWS Lambda Deployment Package in Python に記載され…

AWS S3 にアップロードされたファイルをコピー/移動する Lambda 関数

AWS S3 でファイルがアップロードされた際に、自動的にコピー (または移動) する Lambda 関数をメモしておきます。 尚、権限は適切に設定されているものとします。

AWS EC2 東京リージョンで日本のアドレスが払い出される確率は 0.7%

AWS

AWS でサービス / 地域ごとに利用されるグローバルアドレスについては AWS IP アドレスの範囲 で公開されています。 こちらの情報を元に「東京リージョンの EC2 で日本のアドレスが払い出される確率」を計算したところ、本日時点で 0.7028419% のようです (…

.NET Core 3.1 / C# から AWS S3 Bucket を表示するサンプル

.NET Core 3.1 上の C# で AWS S3 Bucket を表示するサンプルを書いたのでメモしておきます。

S3 互換のオブジェクトストレージ「wasabi」を申し込んでみる

AWS S3 互換のオブジェクトストレージサービスである「wasabi」は 1TB 以下であれば 5.99 ドル/月と非常に安価です。 また、データ転送量や API 呼び出しは課金されません。 今回は wasabi へ新規に申し込みを行い、Bucket を作成するまでの手順をメモしてお…

Visual Studio 2019 の C# で AWS Lambda + API Gateway を書く

Visual Studio 2019 上で直接、AWS Lambda 開発を行うことが出来ます。 今回は Visual Studio 2019 上で AWS Lambda 開発を行い、更にそれを API Gateway で公開する手順をメモしておきます。

AWS LightSail で Windows Server 2016 を日本語化する

AWS LightSail で Windows Server 2016 インスタンスを作成し、日本語化するまでの手順をメモしておきます。

Python の boto3 から Amazon SES を使ってメール送信する

Python の boto3 を使って Amazon SES からメール送信するサンプルプログラムをメモしておきます。 SES のサンドボックスの解除など、SES を使う上で必要な設定は済んでいる前提です。

AWS S3 でライフサイクルポリシーを使い、古くなったファイルを自動削除する

AWS の S3 ではライフサイクルポリシー機能)を使うことで、古くなったファイルを自動的に削除したり、退避することが可能です。 今回は「作成から 1 日経過したファイルを削除する」ライフサイクルポリシーを設定する方法をメモします。 今回はテスト用に「2…

Python の boto3 でファイルを作らず、S3 上へオブジェクトを作成する

Python の boto3 から S3 へ「存在するファイルをアップロードする」サンプルはよく見かけるのですが、ファイルは生成せずに直接、オブジェクトをアップロードするサンプルは少ないように思えたので書いてみました。

Python の boto3 で S3 の操作を行うサンプル

Python から boto3 を使って S3 上のファイルを操作するサンプルを書いたのでメモしておきます。

Python の boto3 で EIP の操作を行うサンプル

Python から AWS を操作出来るライブラリには有名な boto3 があります。 boto3 から EIP を扱うサンプルは Using Elastic IP Addresses in Amazon EC2 にまとまっています。 ほぼこの内容そのままですが、簡単なサンプルを書いてみたのでメモしておきます。

Amazon Linux2 初期化用シェルスクリプト

AWS

しばしばテスト用の Amazon Linux2 を構築するのですが、自分なりの初期設定をスクリプト化してみました。「初期設定を手間なくすませる」方法は、他に以下が考えられると思います。 Ansible で初期設定用の Playbook を作成する 初期設定を済ませた AMI を…

AWS S3 で同じ名前の Bucket を再作成する場合は時間を空ける必要がある

AWS

Amazon S3 で Bucket を「意図しないリージョン」で作成してしまった際、やむを得ず、一旦 Bucket を削除して「意図したリージョン」で作成するケースがあるかも知れません。 但し同じ名前で S3 Bucket を再作成する場合、(リージョンの一致・不一致に関わら…

Amazon Transcribe のテキスト化精度を試す

AWS

現時点における Amazon Transcribe の「日本語ファイルのテキスト化精度」を確認すべく、ネット上にあった音声サンプルをテキスト化してみました。 尚、Custom vocabulary は未使用です。 今回、テスト結果を記載したものは「コンピュータによって合成された…

Amazon Transcribe で日本語音声ファイルをテキスト化してみる

AWS

Amazon Transcribe を使うと「音声ファイル → テキスト」へ変換することが出来ます。 この Transcribe が日本語対応したので試してみました。

AmazonLinux2 へ Zabbix Server 4.0.14 をインストールする

Amazon Linux2 に Zabbix 4.0 TLS をインストールする手順をメモしておきます。 公式サイトのダウンロードページから Zabbix をインストールしたい環境を選択すると、その環境に合わせたインストール手順もガイドされます。 基本的にはこのガイドの手順に従…