Yuta NakataのBlog

Python / AWS / ITについて役立つ情報を発信します

AWS

【サンプルコード有・コピペで行ける】EC2, ALB, CloudFrontをCloudFormationを使って書く

背景 EC2、ALB、Cloudfrontを使ってリソースをデプロイしたい。 めちゃくちゃあるあるな構成(SAAの試験に出てきそうなぐらい)なので、巷にそれらしい記事はいっぱいある。 しかし、、 マネコン操作があったり EC2とALBのみ 等、以外と同じことをしている記…

プログラミングコードの書き方一つでAWSのクラウドコストは大きく減らせる話【数値計算偏】

ランキング参加中AWS (Amazon Web Services) 背景 AWSを用いた数値計算は往々にして行われているかと思います。 計算にあたって、コンピューティングリソースは、EC2、ECS、Lambdaなど様々な選択肢があるかと思います。 一方で、数値計算をクラウド環境で行…

Step Functionsにて、次のStateに進めなかったエラーの話とその回避策について

ランキング参加中AWS (Amazon Web Services) 謎エラーの概要 StepFunctionsにて発生したエラー Lambda の処理が正常に完了した。が、次のStateに進むことができず。 エラー文としては、Timeoutと表記される ただし、このエラーは一度きり確認されたのち、同…

AWS Lambdaのランタイムサポートが終わるとどうなるか?

Lambdaのランタイムサポートが終わるとどうなる? AWS Lambdaは、FaaS(Function as a Service)、サーバーレスサービスの実現において非常に重要な役割を担っています。 一方で、サポートするランタイムの変遷も早く、適宜Version Upを行っていく必要性が求…

AWS/boto3でRate Exceeded の回避方法

結論 import boto3 from botocore.config import Config config = Config(retries = { 'max_attempts': 10, 'mode': 'standard' } ) client = boto3.client('s3', config=config) でOKです。 巷では、 pip install retrying https://github.com/rholder/retr…

LambdaでPandasを高速化するための方法

Lambda(Python)でPandasを使ってる方は、多いのではないのでしょうか? 弊社では、サーバーレスがファーストチョイスとしてよく使われるため、Lambdaの出現頻度が高いです。 このPandasですが、Lambdaの世界(FaaS)で使う際の高速化の方法についてお教えて…

立ち上げ時のSaaS/Webアプリに役立つサービスまとめ

私自身、立ち上げ期のSaaSサービス・Webサービスの開発、個人開発を通じて学んだ立ち上げ期に役に立つサービスをまとめます。 そもそも、なぜ立ち上げ期で役に立つのか? サービス立ち上げ時は、とにかく爆速でコンテンツの充実・プロダクトの中身を作ってい…

CfnでS3バケットを作成・削除、再作成すると、QuickSightのアクセス権外れるらしい

概要と結論 生じた問題 QuickSightのセキュリティ・アクセス権限から、特定のS3バケットを選択して、このバケットを使っています。 CloudFormationを用いて、 S3バケットの作成 を行ったのち、アクセス権の追加を行い、S3バケットを作成したCloudFormationを…

Lambdaでサードパーティライブラリを爆速で使う方法

ランキング参加中Python ランキング参加中AWS (Amazon Web Services) やりたいこと AWS Lambdaでサードパーティ製のライブラリを使う方法についてです。 今回はPythonを取り上げます。 結論 公式で出しているレイヤーを使う すでに公開されているレイヤーを…

AWSコストを半分に削減した方法

はじめに 弊社でAWSを使ったシステム開発をメインにしています。 年末の大掃除ということで、日頃使っているサービスのコスト見直しを行い、月数千ドルの削減を行いました。 はじめに、我々のチームで使っているAWSアカウントは下記のようなユースケースで使…

EBSのボリュームサイズを小さくする方法

はじめに EBSボリュームのサイズは増やすことしかできません。デフォルトでは、EBSを縮小することはできません。 AWS公式によれば、小さいボリュームを使用する場合、小さいボリュームを新たに作成し、それにデータを移行する必要があります。 repost.aws こ…

EC2でOS Error Not enough free space to write XXXXXX bytesが出た場合

EC2にログインしたのち、 OS Error Not enough free space to write XXXXXX bytes とエラーがデータ出た場合の解決方法です。 結論 以下の2STEPで解決できます。 根本的な原因は、EC2にアタッチされているEBS(Elastic Block Store)のストレージサイズの容…

QuickSightでWe cannot update the IAM Role. The reason could be one or more from the followingのエラー解決法

事象と経緯 QuickSightを用いてデータの可視化を行っています。 データセットとして、Athenaを使っており、セキュリティとアクセス権限から書き込み権限を追加しています。 起こったエラーとしては、対象バケットにアクセス権を追加した後に、下記のような書…

AWS CloudFormationでDELETE_IN_PROGRESSが終わらないときの対処法

状況 AWS CloudFormationでCloudFrontのリソースを削除しようとした。 DELETE_IN_PROGRESSが10分以上経っても、完了しない。 Eventを確認しても、エラーは確認できず、削除中っぽい。 対処法 とにかく待つしかないらしい 特に、CloudFront周りのネットワーク…

AWS EBS(Elastic Block Store)はEC2を止めても課金されます

ランキング参加中AWS (Amazon Web Services) Cost Explolerで状況確認 EBSの課金を停止する EBSと料金について 表題の件について解説していきます。 結論としては、 AWS EBS(Elastic Block Store)は、アタッチしているEC2を停止しても課金されます。なので…

AWS Lambdaで複数のファイルを並列で取得する

ランキング参加中Python ランキング参加中AWS (Amazon Web Services) 今日は、AWS Lambda, Python, 並列処理について書こうと思います。 背景 プログラム 背景 Lamdaでデータをダウンロードする時間を圧縮したい! プログラム 下記の例では、awswranglerを用…

LambdaでBoto3/Pandasを使うのをやめて、awswrangler(aws-sdk-pandas)を使いましょう

ランキング参加中Python ランキング参加中AWS (Amazon Web Services) 1. awswranglerってなに? 2. Boto3/Pandasではなく、awswranglerを使う実践的なコード 2-1. boto3/pandasを使う場合 2-2. awswranglerを使う場合 3. なんでawswrangler? 4. 参考文献 1.…

StepFunctionの基礎と概要【サンプルコード付き】

StepFunctionsとは? 概要 ハンズオン 今回やること 勉強教材 StepFunctionsとは? 概要 StepFunctionsとは、AWSのサービスの一つです。 複数のAWSサービスを簡単に組み合わせ・自動化でき、計算機リソースを分散・並列化させつつ大規模計算を可能にすること…

AWS利用コストをSlackに通知させるツールを作る

はじめに 弊社では、基本的にAWSをベースに開発をしており、クラウド・サーバーレスが基本になっています。 この環境は、様々な面でメリットをもたらす一方で、従量課金型のサービスであるパブリッククラウドにて、予期せぬ出来事が起きないように、利用料金…

AWS Lambda(Python) をローカルで実行する方法

ランキング参加中AWS (Amazon Web Services) ランキング参加中Python はじめに AWS Lambdaは、サーバーレスアプリケーション開発において、とても重宝します。 15分でタイムアウトや、メモリサイズ・エフェメラルストレージに制限があったり、サードパーティ…

AWS Solutions Architect Associate (SAA-C03)に合格するまでの話

はじめに AWS Solutions Architect Associate (SAA-C03)に2022/09/17に受験し、合格しました。 試験勉強をしていた時は、試験が改定されることを途中まで知らず、 え、試験内容改定されるの?しかも前情報が全然ないじゃん!! とめちゃくちゃ焦りました。 …