Python の boto3 でファイルを作らず、S3 上へオブジェクトを作成する
Python の boto3 から S3 へ「存在するファイルをアップロードする」サンプルはよく見かけるのですが、ファイルは生成せずに直接、オブジェクトをアップロードするサンプルは少ないように思えたので書いてみました。
Python の boto3 から S3 へ「存在するファイルをアップロードする」サンプルはよく見かけるのですが、ファイルは生成せずに直接、オブジェクトをアップロードするサンプルは少ないように思えたので書いてみました。
Python から boto3 を使って S3 上のファイルを操作するサンプルを書いたのでメモしておきます。
Cisco SD-WAN (Viptela) からアラート検知時にメール送信する設定方法は Configure Email Notifications for Alarms に記載されています。 設定方法は簡単なのでこの URL で十分だと思いますが、スクリーンショット付きで設定方法をメモしておきます。
Python から外部プロセスを起動する場合は subprocess モジュールを使う方法があります。 非同期処理等を考えない、簡単なサンプルをメモしておきます。 subprocess.run()
の実行結果はバイト配列なので sys.stdout.buffer.write()
を使って標準出力しています。
Python から AWS を操作出来るライブラリには有名な boto3 があります。 boto3 から EIP を扱うサンプルは Using Elastic IP Addresses in Amazon EC2 にまとまっています。 ほぼこの内容そのままですが、簡単なサンプルを書いてみたのでメモしておきます。
Python で falcon と gunicorn を使い、シンプルな Web アプリケーションを作り、更にそれを systemd に登録するまでの手順をメモしておきます。
macOS 10.15.2 (Catalina) に bash 5.x をインストールする手順をメモしておきます。
Windows 10 に Fluent Termianl をインストールする手順をメモしておきます。
しばしばテスト用の Amazon Linux2 を構築するのですが、自分なりの初期設定をスクリプト化してみました。「初期設定を手間なくすませる」方法は、他に以下が考えられると思います。
Ansible は手軽だし、エージェントも不要なので「良い手段」のひとつだと思います。 大量にテスト用 Linux を用意するのであれば AMI 化するのもひとつの方法だと思いますが、そこまで頻度が高いわけでは無いのであれば、毎回 AWS が提供する最新ベースイメージを Ansible やスクリプト等で設定しても良いと思います。 cloud-init も手軽な方法のひとつですが、「cloud-init が使えない環境には応用し辛い」という点はデメリットだと思います。
macOS のパッケージマネージャとしてお馴染みの homebrew が WSL にも対応したそうなので、実際に WSL2 へインストールしてみました。 インストール手順は公式サイトに記載されています。