雲のメモ帳

猫とクラウドと旅行が好きなインフラエンジニアです。 日々の調べたことや興味が持ったことをこのブログにアウトプットします。

boto3 でCloudWatchLogsの一覧を出力する

CloudWatchlogsはAWSの各種サービスのログやOSのログなどを簡単に保管できるのですが、気が付くと大量のロググループが作成されていて、料金もまぁまぁ発生したりしています。 今回Boto3使ってCloudwatchlogsの一覧を取得するスクリプトを作成しました。 保…

Jenkins SlaveタスクをFargate上で実行する

1. 環境 2. 作業 ① ECSプラグインをインストールする ② クラスター作成 ③ タスク定義作成 ④ Jenkins Slave Template 設定 ⑤ 動作確認 3. 最後に 1. 環境 OS : AmazonLinux2 Jenkins : 2.223-1.1 ECS プラグイン: Amazon Elastic Container Service (ECS) / F…

Lambda内で利用されるboto3のバージョンを調べてみた

Lambdaで実行するboto3のバージョンを調べたのでメモ。 調べ方 OSモジュールをインポートして、Lambdaのruntime情報が格納されているディレクトリを参照する。 以下はPython3系のLambdaを調べた時のコード。 import os import pprint as pp def lambda_handl…

boto3 でEC2とLambdaにアタッチされているIAMロール一覧を出力する

権限の見直しなどでEC2やLambdaのIAMロール回りを見直すことが多く毎回コンソールやCLIで確認するのが手間なので、CSVで出力できるようにしました。 以前IAMロールの一覧とアタッチされているIAMポリシーの一覧を作成するスクリプトを作りましたが、それを改…

CodePipeline から Lambda(Python)を実行した際に、「実行中」 からステータスが変わらない

最近 CI/CD環境の構築をしており、CodePipelineからLambdaを実行した際にハマったのでメモを残します。 問題 問題 環境 原因と解決方法 原因 解決方法 サンプルコード

異なるAWSアカウントのS3バケット間でコピーしたオブジェクトが「403 Access Denied 」になったときの対処法

異なるAWSアカウントのS3間のデータコピーをAWS CLIで実施した際に権限回りで少しはまったので備忘録です。 問題 原因と解決方法 最後に

S3 Select でParquetの中身を簡単に確認する

Parquetファイルは、テキストエディタなどでは中身を確認することがができず、中身を確認するのがすごく手間です。 S3にPaquetファイルを保管している場合は、S3 Select により簡単に中身が確認できるため、その手順を記載します。 手順 最後に

lambdaでWindowsのPathを指定する場合の注意点(エスケープシーケンス)

LamdbaからRun Command を実施するためにWindowsのPathを指定したところ、うまく実行できず詰まったのでメモ。 普通にWindowsのPathを指定すると \(バックスラッシュ) がPythonのエスケープシーケンスに変換されていたのが原因でした。 [参考サイト] エスケ…

SquidでHTTPS対応の透過的Proxyを構築する

http及びhttpsの通信を透過的に処理するProxyをAWS上に構築します。 https通信を透過的にproxyするには、一度通信の復号化が必要なため、Squidの「ssl-dump」機能を利用します。 本構成では、機能検証のため冗長性等は考慮していません。本番利用する場合に…

IAM Role 一覧とアタッチされているポリシーをCSVで出力

IAM ロールの一覧とそれにアタッチしているポリシーの一覧を作る必要があり、 手動だと手間がかかるので、Python(boto3)を使ってCSVで出力できるようにしました。 やったこと スクリプト